Maccast Members #169 - Plex
- I have been loading more and more content into my iTunes Library using iVI Pro.
- The main reason is that I want to be able to access the content from my iOS devices and my Apple TV.
- I really like iVI Pro because it does a great job getting the metadata and does everything in one step.
- Tech geeks I know who are really into this home theater stuff all seem to be big fans of Plex.
- Plex is more open and available on many platforms, built into NAS devices, and even on set top boxes like the Roku and Chromecast.
- There also is a way to get Plex to work with 2nd and 3rd gen Apple TV, so I thought I should at least give it a try.
What is Plex?
- A home media server and playback system
- Uses a centralized server running on your home network
- Access content with clients
- Server software can be run on OS X, Linux, Windows, and popular NAS systems like Synology, ReadyNAS, and Drobo
- Clients available for many platforms and systems, including OS X, iOS, Linux, windows, Android, consoles, and set top boxes.
- Plex offers a collection of apps and services
- Plex Server
- once installed there is a web interface for managing and configuring
- Plex App for accessing content from the server.
- web browser
- dedicated app, iOS, Android, Chromcast, etc.
- Media Center app.
- Also has DNLA support
- PlexSync, lets you pull content from your sever to the app for offline viewing
- Plex Home Theater app
- 10 foot interface
- For Mac and Windows
- Also a port for Raspberry PI
- Web Service
- MyPlex
- Sign up for a plex account
- view and access content from the MyPlex website
- helps apps remotely find your home Plex Server
- PlexCloud
- Let’s you set up syncing of Plex content with services like Dropbox, SkyDrive, Box.net, Bitcasa, etc.
- Gives you access to content from the Plex app when your server isn’t available.
- What are the advantages over iTunes?
- A more “open” system. You are not limited to iTunes for managing and syncing content.
- extreme metadata support
- You can set up your own, “iTunes in the Cloud” for your media.
- Supports movies, TV, music, and photos all in one place.
- can set up remote access to the server, so all content can be access, streamed, and synced from anywhere you have Internet access.
- sync’d content is transcoded
- Plex Pass
- A premium service that lets you access some of the more advances web services and features
- Plex Sync, Plex Cloud, MultiUser Control
- Plex Pass costs $3.99/mo. or $29.99/yr. or $79.99/lifetime
Setting up Plex
- You can run the Plex server on the Mac you are also using to use as a player
- you might also want to dedicate a system to be the server. A good use of an older Mac
- system requirements
- No transcoding, Intel Core 2 Duo processor 1.6 GHz or better and at least 1GB RAM
- Transcoding, Intel Core 2 Duo processor 2.4 GHz and at least 2GB RAM
- Transcoding is CPU intensive, so a faster CPU will give better performance and support more devices and connections simultaneously.
- Download the server app and install it on your Mac.
- Prepare your media files
- Unlike iTunes, Plex uses folder structure and file names for it’s organization
- Files and folders can also be placed in many different locations and all brought into the Plex system
- you’ll organize the files in Plex into “Libraries”, but a library can point to many folders and files.
- Plex will try to figure out the metadata associated with a file by it’s name, so a good naming structure is advised
- it’s recommended that you use the movie name, with underscores, and the year, in parentheses, plus the file extension as a default naming structure. i.e. Movie_Name (release year).ext
- You can also place movies in folders, though it’s not required. This let’s you add posters, subtitle files, etc. for the movie and to keep them all together.
- Plex will recognize the extra files and use them, but again they aren’t required.
- TV Shows should include season and episode in the name, i.e. “Dexter s01e01.mp4”.
- TV show should also be in a Show/Season/Episodes.mp4 folder structure.
- Run and configure the server
- once you launch the server it will place a Plex icon in your menu bar
- from there you select and launch the “Media Manager” which runs as a web app.
- connects to http://localhost:32400/web, locally
- Basically Plex sets up a local web server and manages your files from there
- for the technically inclined to me it seems like it uses a combination of Python, SQLite, and web technologies.
- the local server typically runs in port 32400, of course you can change it.
- you can also set up a MyPlex account and get a hosted version of your library, not the files themselves, to access from everywhere
- MyPlex also lets you set up multiple accounts to share a Plex Library
- the multiple account feature requires a Plex Pass subscription.
- At the first launch you’ll get a setup wizard
- walks you through the process of setting up Libraries
- a library is set up by media type, Movie, TV Show, Home Videos, Music, Photos
- you point the Library at folders that contain the media.
- a library can point at multiple folders and those can be in different locations, different, drives, etc.
- Plex will then scan the folder based on media type. Movies, TV Shows, Music, Photos
- the scanner will get and populate the metadata using an agent
- the agent it will search internet sources to enhance any missing data
- you can configure the scanner and setting for each library.
- the wizard will also ask if you want to add any Channels
- these are external sources of content, like YouTube, Vimeo, PBS, TWiT, etc.
- finally you’ll be asked to set up or connect you local Plex Media server to your MyPlex account.
- this is optional, but think of it like Home Sharing that can work over the Internet
- in each Plex client you can connect to your account and always have access to your server from anywhere you have a connection.
- locally the Plex client will use Bonjour to locate your Plex Server
- Once your Plex Server is all set up you’ll want to load your content and set up your clients.
- loading content is as easy as adding new media to your Plex Server folders or adding new folders to a Library.
- then use the web interface to “scan” for new data
- plex will use it’s scanner and agents to pull in the new files and metadata
- you can use the web interface to edit, correct, and supplement any missed or incorrect data.
Plex Clients
- On your Macs you can use the Plex Web interface to access and play content, but you’ll probably want to install the Plex Home Theater app.
- it give you a really nice “10 foot” interface for accessing content.
- For iOS, there is the Plex App, $4.99 in the App Store
- once installed it will just find the Plex server on your network
- if you have a Plex Pass, you can sync content from your Plex Server to your device
- and if you have local content your iOS device can actually become a server and share content to other Plex apps and client devices.
- Other devices
- Chromecast, needs a Plex Pass, or so it seems.
- Roku, Samsung Smart TV, Google TV
- Apple TV doesn’t have an official app yet, but…
Plex on Apple TV
- There is a really clever project called PlexConnect
- Make sure you get it from the GitGub page, by iBaa. You DON’T need to pay for PlexConnect. The Plex Connect.org site is a scam.
- what Plex Connect will do is “hijack” an existing Apple TV app and server your Plex Media server content to it.
- The basic idea is, to:
- re-use a native AppleTV app (in this case Apple Trailers)
- re-route the Trailers app requests to your local Plex Media Server
- re-work the reply to fit into AppleTV’s XML communication scheme
- let iOS do the rest
- enjoy Plex on your unmodified AppleTV
- And it works really well and is supported on Apple TV 2 and 3 with firmware 5.2 or later.
- there is an OS X install guide on the site
- basically you need to install Python 2.7 on your Mac, any OS X 10.7 or newer mac should already have it.
- download the Plex Connect files (python)
- generate SSL certificates and install them
- required because Apple makes the Trailers requests via SSL
- Run PlexConnect
- Requires running from the terminal to start the web service
- configure your Apple TV to route requests to the Mac running the Plex Connect software.
- basically you are doing a DNS proxy.
- plex connect will watch for requests to trailers.apple.com and rewrite them to your Plex Media Server.
- Non Trailers requests are simply passed through.
- it uses Google DNS by default to handle other DNS requests, but you can change that in the configuration.
- if yow want to can run PlexConnect as a launch daemon
- if all this sounds too complicated there is an App for that.
- Plexify
- Available on the App Store
- This is a GUI and will handle all the set up, install the software, generate the certificate, etc.
Transcoding Content
- So why am I doing all this?
- I’m in the process of archiving my DVD collection
- Tools I’m using
- Right now I am putting the files both in my iTunes and on my Plex Media Server
- doing both because i have iTunes purchased content and that is not natively supported on the Plex Server, although there is a “channel” for accessing it and playing on the Mac. On the remote apps you’ll only have access to non DRM’d content.
- storage on an external USB drive and Drobo 5D
- After listening to Renie Ritchie’s Vector Episode 22 interview with Don Melton, I did a lot of testing with Don’s encoding scripts
* its like three hours long on transcoding video
* Don Melton, former Engineering Director of Internet Technologies at Apple
* His scripts use the Handbrake CLI (command line interface) to transcode MKV rips as the optimal quality for multiple Apple devices.
* basically he says matches Apple’s process for iTunes content.
* means that Plex shouldn’t need to re-transcode during playback.
- Here’s the thing, I don’t think it matters for DVD, standard definition, videos too much.
- I had a hard time telling the difference between rios using Don’s scripts and once done inside iVI Pro.
- the advantage of iVI Pro is everything, ripping, metadata, transcoding are all handled in one step and it’s fast.