Plex Media Server (follow-up)

October 10, 2012
Tags: ,

Roku encoding all our movies
A couple weeks ago we installed a Roku with a Plex channel on it so we can access our home media archive from the bedroom TV (and our mobile devices). I have discovered over the past two weeks that none of our files can be direct-played on the Roku; they all need re-encoded. I have perused the forums and followed a number of procedures to convert a test file to be playable directly, without encoding. All without success. The realization hit me that time was being wasted, to just accept the fact they’ll need encoding on the fly. We watched a number of movies without a single hiccup so I figured it would be fine. The CPU on the virtual machine worked hard but it was keeping up.

ESXi server over taxed
Three nights ago I was backing up a large vm using ghettoVCB. My wife decided to watch a local movie on the Roku. Several times during the movie (the parts when I was actually awake) the picture “garbaged” up for several seconds at a time. It was very noticeable and bothered me, and I knew what was causing it. The plex media server was reading from the openfiler virtual SAN and furiously encoding the movie, while the ghettoVCB job was hitting the same discs backing up 300GB of data to the backup server. The ESXi box was just too stressed and was occasionally hiccuping.

Now I’ll say right now the problem could have been easily solved by just throwing money at it. An ESXi server upgrade (to a single Xeon chip or perhaps dual chips) would have certainly eliminated the CPU bottleneck. But we are not made of money (although a new server would certainly be fun). Another option would be to ignore the problem but there are already times where the kids are streaming to two devices so it is only a matter of time before a third device gets added and everything pixelates again. There had to be another answer.

This problem percolated in my head the next day until a solution presented itself. Sitting right next to the VMware server is my backup machine, an AMD 3.3Ghz tri-core with 8GB of RAM. Aside from backups that occur in the dead of night, it just sits there, patiently idling. The thought was that there was a perfectly good machine for a plex server.

Now, I didn’t want to just move PMS from the virtual machine to the backup PC. I decided to create another PMS instance on the backup server and leave the original instance running on the VM. I renamed the original plex server ‘plexserver_mobile‘ and pointed the Nook Color at it. This instance pointed Music to the MP3 mirror of our FLAC collection, as the NC cannot handle FLAC files nor would they sound any better than MP3 on its microscopic speakers The new PMS instance, which I named ‘plexserver_media‘, instead pointed Music to the FLAC folder. The Roku’s audio goes into my older Onkyo receiver so we could benefit from the higher fidelity FLAC brings. Other than that, everything else was the same. I pointed the Roku to the new instance and it was happy. Now I have more horsepower driving the Roku’s encoding, and have eliminated possible contention from mobile devices. For. Zero. Dollars.

While slower than the XBMC box (with its locally cached thumbnails and database on SSD), the Roku/Plex combination has proven itself to be quite good. The ability to watch our movies (and other content, such as streamed HGTV) in the bedroom is nice. The incremental cost was less than $60 (which includes the long cat5 run used for the Poor Man’s WAP that cured the weak wireless signal), which was a fantastic value.

Leave a Reply