BYO DVR using Plex

We’ve recently delved into learning more about Plex as a means for aggregating and consuming content from a central repository.  This solution is one of many robust offerings that offer the services necessary to access a diverse media library.  Recent versions of the product possess the capability to serve as a digital video recorder for over-the-air or cable content if the appropriate network-connected hardware is present.  The recent acquisition of a SiliconDust HDHomeRun Connect network tuner allowed us to meet the prerequisite for this functionality.  The reasonable price of this unit (~$100 through a variety of retailers) represents an incredible value on its own.  The capability to combine two networked tuners with low cost or no cost software simplifies adding television viewing capability to rooms that may not possess a hard wired coaxial connection.  The ability to stream OTA TV when one is outside of their local viewing area opens up the potential to view regional programming without limits.  Recording those streams for later viewing is a feature that normally has some type of subscription charge for the associated appliance and ongoing use of the platform.  The Windows Media Center edition has been phased out by Microsoft; the competition that is filling this void have created solutions that are mostly ready for mass market consumption.

Plex is not a free product when using advanced functionality such as Live TV streaming, DVR, and photo management/synchronization.  There is a subscription charge associated with Plex Pass to enable the necessary bells and whistles.  The product is iterated upon with timely and frequent updates, which provides value for the associated cost.  We’ve thoroughly tested Plex on three distinct platforms over the past month, including the following configurations:

  1. Native Synology installation on a DS1817+ NAS (quad-core Intel Atom C2538, 16 GB of system memory)
  2. Windows Server 2012 VM (2 vCPU, 4 GB RAM)
  3. Ubuntu 16.04.3 LTS VM (4 vCPU, 8 GB RAM)

The third configuration is overkill for most use cases unless you’re going to be transcoding multiple streams simultaneously.  The first configuration struggled to keep up with time shifting recorded media while simultaneously transcoding.  The operating system platform that will host the Plex Media Server (PMS) along with associated services is equally capable across all available platforms.  Our recommendation is to use whichever operating system you are most comfortable with as any troubleshooting efforts may involve upgrading or downgrading versions to resolve errata.  Once the installation completes, the majority of administration and configuration is handled through the web interface.  After you’ve signed into PMS with your Plex Pass credentials, libraries can be established, supported network or physical tuners can be scanned, and schedules can be implemented for recording shows from the antenna.  The electronic programming guide may take a while to fully populate.  The structure of the available listing options makes it easy to find those shows that you’re interested in, as well as to schedule the desired recording.

The capabilities to customize exactly what is recorded with Plex are well thought out and account for most circumstances.  Before kicking off your first recording, verify that the time on the system is correct.  Synchronize with a trusted source of time, validate that your time zone is correct, and spot-check the system time against the anticipated broadcast of a given show.  If things do not line up (excluding ~30 seconds to a minute of advertising prior to the official start of the show), further modification of the PMS host’s clock may be combined with adjusting time synchronization to correct the issue.  The recording process defaults will attempt to record in whichever format the broadcast presents, which can be modified to mandate only high definition content.  Additional minutes can be added to record further in advance of the program’s start time as well as beyond the end of the program’s end time.  This feature allows adjustments to be made on Sundays, where football games that go into overtime (or longer) end up further extending the start and end times for the content broadcast.  Programs can be set to record only new airings or new and repeat airings.  Both options have been tested and the results have been dependable.  The last option, which is a personal favorite of ours, is the ability to restrict recordings to specific channels.  If you have the appropriate setup with respect to a properly positioned and capable antenna, the potential exists to receive multiple iterations of a given channel.  Some of these signals will be received directly, meaning the antenna is facing in the direction that the signal is being broadcast.  Other signals that may appear to come in clear are reflective, meaning the antenna is not aimed in the general direction of the broadcast tower yet is able to pick up the signal indirectly.  However, the reflective signals may be prone to interference or intermittent loss if temporary obstructions enter the field where the reflected transmission is coming from.  Testing and research using the conflicting sources of information on the Internet will be required to identify stations that are prone to interference.  If an alternative broadcast that is not susceptible to artifacting or temporary loss of signal exists, manually setting the specific channel will reduce the risk of missing parts of the recorded program.

Once the schedule is set, the shows record to the library designated in the basic recording setup.  This is what we’d all expect until it arbitrarily stops working.  Searches for “100% complete DVR Plex” or “Recording not completing Plex” highlight the price of progress.  DVR functionality was in beta status in Version 1.6.1 of PMS, but worked reliably with multiple tuners.  Yes, if you were so inclined, you can connect multiple networked units to the DVR functionality of Plex and record 4, 6, or 8 shows at the same time.  Between version 1.6.1 and version 1.7.0, there was a transcoder change noted in the update logs that are readily available in the Plex forums.  From 1.7.0 to 1.9.2 (current of this writing), the problem remains and the DVR service is not reliable.  We’ve lost a number of season premieres due to this bug.  If you restart the actual PMS service, you’ll normally lose the recording or end up with a small clip of the total recording.  A survey that is being conducted by one of the forum members highlights this issue well.  Some users of Plex within the voting sample set have moved to Emby, MythTV, or another platform.  The only immediate loss of functionality within the client software (when paired with 1.6.1) is the lack of adjustment for the recording schedule through the client.  Everything else works remarkably well.  The photo synchronization and upload is a reliable and low cost means to dumping your phone or tablet camera roll to a central repository.  The DVR function in 1.6.1 is rock solid with absolutely no hangups.  We’ve been recording for over two weeks on this platform and have not lost a single show nor encountered a single transcoder error or 100% complete recording stuck condition.

Hopefully, the Plex development team can track down the anomaly with the new transcoder and make a version greater than 1.9.2 reliable.  Even with the noted quirks and weeks of research and troubleshooting required to establish a reliable OTA DVR solution, we’d still recommend Plex.  It’s robust, actively supported, offers hooks for advanced uses or workflows via scripting, and it keeps getting better.  The support community is incredibly helpful in sharing their findings or helping to troubleshoot problems related to more complex setups.  While it would be easier to have a direct channel to engage support and the developers with a traditional ticket system, the forums are the only available method of engagement.  Fortunately, they’re not neglected.

Leave a Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.