Live TV on underpowered NAS without transcoding

I have a Drobo 5N running Plex, with TV coming from an HDHomeRun Extend.

Watching live or in-progress TV doesn’t work. It tries, but stutters and freezes constantly. My understanding is that Plex is trying to transcode the video for playback, and the Drobo can’t handle the load.

HDHomeRun Extend already transcodes the video to a streamable (H.264) format. So it’s not clear what Plex is trying to do, or why. Would it be possible to adjust this so that HDHomeRun Extend streams are passed directly to the player?

I post this frequently. I wish it were in the TV FAQs.

There’s more to video files (and Live TV) than the internal video stream encoding type that the Extend does (h264 is just one part).
h264 encoding is a tiny part of a larger video file equation.
It’s a way to encode a stream inside a container such as (most North American broadcasts) Mpeg-TS , or MP4, or MKV.
h264 is part of the guts. Plex still has to work with the whole “body” of the file type.
Though the Extend (or other hardware based TV reciever) takes ALOT of the horsepower required in changing from MPEG2 video codec to h264 out of the equation,
Live TV on a Plex Server still;

  • is doing time shifting(DVR recording) while watching live.
  • may be converting the container - MPEG2-TS to (MP4/MKV?) (many devices don’t do mpeg2-ts over IP, even if HDHR Extend encodes video inside it to h264)
  • may be converting the Transport Stream (TS) to compatible HLS.
  • may be transcoding live ~20mbps+ TS stream bitrate down to lower mbps depending on client Plex setting
  • may be converting 60fps streams to compatible 30fps (depending on 1) network broadcast source and Plex client capability.
  • may be/is converting the audio stream to stereo if your device isn’t connected by HDMI to a 5.1 Dolby (AC3) receiver.

Just some pointers.

Those are good explanations of what is probably going on, but to answer my “would it be possible” question, those things would need some justification.

Without having a deep knowledge of these things, I’d guess the first three are pretty lightweight, and the last three are what the Drobo can’t handle. But I’ve set the Extend to “High Quality (30fps limit)” which should produce a reasonable bitrate and frame rate; and the player (an Apple TV) handles AC3 audio.

More to the point: the HDHomeRun app plays things back just fine, without any further processing. So any extra transcoding/etc. is demonstrably unnecessary.

Some comments in other threads make me think that some players will do direct play in the right circumstances. But no luck for me using the web client, iPhone player, or Apple TV.

I have the same problem as OP except my setup is Hauppage Quad tuner with PMS installed on Windows 7. Playing live TV using Plex has constant buffering. If I use WinTV8 that came with the tuner it plays live TV flawlessly. Before testing live tv with Plex I did uninstall WinTV8. So there should be no conflict.

My question is, if WinTV8 can handle the live stream without transcoding why can’t Plex?

Sorry if I should have started this in a different thread.

@dansmith21 said:
More to the point: the HDHomeRun app plays things back just fine, without any further processing. So any extra transcoding/etc. is demonstrably unnecessary.

@ataboyx1 said:
My question is, if WinTV8 can handle the live stream without transcoding why can’t Plex?

Have either of you tried to put a Windows/Linux VM on your NAS and boot it, remote to it, install the TV app, and watch videos using client apps for the TV tuner on the NAS? (If so, please, let me know how that went)

Though much more complexity is involved, the simplest answer applies to you both.
Plex server is designed to do the heavy work so your client devices don’t have to.

Most apps (HDHomerun/WinTV8/VLC/whatever) do all the conversion work on the client end, where as Plex is majority designed to do the work on the server, using profiles that tell the transcoder what the (supported/known) client device talking to it are capable of.

Due to support of multiple devices in the same ‘family’, the profile may contain information that works on the oldest device. Example, my years old Ipad2 won’t do the capabilities my newest Ipad Pro will, but sure enough, Plex plays on them both with no issue.

Plex devs have, do, and occasionally will make multiple profiles.
That doesn’t mean every profile is tweaked for the highest end latest greatest client though.
Perfect example, the IOS phone - plex has 6 profile files for them - reality though… most point to 2 actual files. So, no matter what IOS phone you have, you get one profile or another.
I’ve not looked, but I get the idea my Roku would be the same - several profiles, but only 2-3 real ones depending on age of device.

I understand you want to use all the great features Plex has to offer, but, low power CPUs are not normally capable of doing all Plex can.

@JamminR said:
Though much more complexity is involved, the simplest answer applies to you both.
Plex server is designed to do the heavy work so your client devices don’t have to.

My suspicion is that Plex is greatly underestimating what my client is capable of, or—more likely—blindly applying some transcoding rules that don’t really make sense in this context.

Due to support of multiple devices in the same ‘family’, the profile may contain information that works on the oldest device. Example, my years old Ipad2 won’t do the capabilities my newest Ipad Pro will, but sure enough, Plex plays on them both with no issue.

It’s a theory, but I suspect the video coming from the HDHomeRun Extend is good enough for direct play on all iOS devices. Would be great to get confirmation otherwise.

I understand you want to use all the great features Plex has to offer, but, low power CPUs are not normally capable of doing all Plex can.

Limitations and trade-offs are fine, but I just want to confirm that I’m facing real technical limitations, not accidents that arose because the software wasn’t developed with this combination of hardware in mind.

What players are you trying; you never did specify.
Most can’t do MpegTS streams (Newer Xboxes, unsure if both ‘one’ or ‘360’ can)
Many mobile devices don’t do AC3 5.1 direct (I figure most companies don’t figure you’ll try to play 5.1 on a 1 to 2 speaker system - AAC is most common)
I believe HDHR Extend outputs in ‘DASH’ protocol, but most devices expect “HLS” protocol.

I can’t find any current information on the Apple TV and whether it can handle interlaced video but the documents I did find all indicate that it does not, however the pages are 2 years old. If the Apple TV does not support interlaced content then it must be transcoded by Plex. Your Drobo 5N server you mentioned according to the Plex NAS Compatibility page shows it is not able to transcode SD, HD (720), or HD (1080) content. The Highest Quality setting you have the Extend set to does convert the incoming mpeg2 video to h264 but does not alter the frames so if the video is interlaced it will be sent interlaced from the HDHR to Plex. Plex must then transcode the video to remove the interlaced content for your Apple TV. Since the Drobo Plex Server is unable to handle transcoding video you are experiencing the issue with Live TV. My suggestion would be to change the Extend setting to High Quality which does the same h264 transcoding but also converts the interlaced content before sending to Plex.

@johnm_ColaSC - Educational even to me, thanks. Might add that to my repertoire of ‘why is tv buffering’ answers

@johnm_ColaSC
@dansmith21

Basically, it looks like everything coming from the HDHR Extend requires transcoding for playback on the Apple TVs, including part of the H264 stream like johnm_colaSC indicates

Apple TV 4th Gen

Video Formats
H.264 video up to 1080p, 60 frames per second, High or Main Profile level 4.2 or lower
H.264 Baseline Profile level 3.0 or lower with AAC-LC audio up to 160 Kbps per channel, 48kHz, stereo audio in .m4v, .mp4, and .mov file formats
MPEG-4 video up to 2.5 Mbps, 640 by 480 pixels, 30 frames per second, Simple Profile with AAC-LC audio up to 160 Kbps, 48kHz, stereo audio in .m4v, .mp4, and .mov file formats

Audio Formats
HE-AAC (V1), AAC (16 to 320 Kbps), protected AAC (from iTunes Store), MP3 (16 to 320 Kbps), MP3 VBR, Apple Lossless, AIFF, and WAV; Dolby Digital 5.1 and Dolby Digital Plus 7.1

Apple TV 3rd Gen

Video Formats
H.264 video up to 1080p, 30 frames per second, High or Main Profile level 4.0 or lower, Baseline profile level 3.0 or lower with AAC-LC audio up to 160 Kbps per channel, 48kHz, stereo audio in .m4v, .mp4, and .mov file formats
MPEG-4 video up to 2.5 Mbps, 640 by 480 pixels, 30 frames per second, Simple Profile with AAC-LC audio up to 160 Kbps, 48kHz, stereo audio in .m4v, .mp4, and .mov file formats
Motion JPEG (M-JPEG) up to 35 Mbps, 1280 by 720 pixels, 30 frames per second, audio in ulaw, PCM stereo audio in .avi file format

Audio Formats
HE-AAC (V1), AAC (16 to 320 Kbps), protected AAC (from iTunes Store), MP3 (16 to 320 Kbps), MP3 VBR, Apple Lossless, AIFF, and WAV; Dolby Digital 5.1 surround sound pass-through

@JamminR said:
What players are you trying; you never did specify.

Sorry, should have made this more prominent.

My test case:
HDHomeRun Extend
Plex Server 1.11.1.4760 on a Drobo 5N
Web player 3.35.2 on macOS 10.13.2, Safari 11.0.2, MacBook Pro
iOS player 4.24.1 on iOS 11.2.5, iPhone 8 Plus
Apple TV player 1.23 on tVOS 11.2.5, Apple TV 4K

Server is set to get “High quality (30fps limit)” from the Extend.

If we want to focus on a single player, Apple TV is the one I care most about.

@johnm_ColaSC said:
The Highest Quality setting you have the Extend set to does convert the incoming mpeg2 video to h264 but does not alter the frames so if the video is interlaced it will be sent interlaced from the HDHR to Plex.

My suggestion would be to change the Extend setting to High Quality which does the same h264 transcoding but also converts the interlaced content before sending to Plex.

Yep, it has always been on “High quality”, not “Highest quality”. So interlacing is (probably?) not an issue.

@JamminR said:
Basically, it looks like everything coming from the HDHR Extend requires transcoding for playback on the Apple TVs, including part of the H264 stream like johnm_colaSC indicates

If interlacing isn’t an issue, is there something else about these specs that would be incompatible? I can’t find a good description of the Extend’s output format(s).

Another point that makes me suspect this shouldn’t be a problem: using the DVR feature, I’m able to record two shows at once, and when they’re done it takes just a few seconds to produce a playable video. So the NAS is able to produce two playable videos in real time, using whatever data it gets from the Extend. There’s not time to do a hefty transcode of the video or audio streams.

If you are set on High Quality then interlacing should not be the issue in this case. There is a description of the settings from another Plex user on his blog: https://ultramookie.com/2016/2016-12-20-making-hdhr-work-my-way.html. Reading back through his blog I see he specifically mentions the Apple TV 4 app in the article.

What do you see in the Now Playing section on the server when viewing a Live TV Session?

@johnm_ColaSC said:
What do you see in the Now Playing section on the server when viewing a Live TV Session?

“Buffering” or “Playing” (mostly the first)
Video: transcoding H264 to H264
Audio: transcoding AC3 to AAC

So it is transcoding the Audio. Do you have the Apple TV connected directly to the TV?

@johnm_ColaSC said:
So it is transcoding the Audio. Do you have the Apple TV connected directly to the TV?

Sorry, that was for playback in the web client. Playing on the Apple TV, I get “Audio: transcoding AC3 to AC3”.

The Apple TV is connected to a receiver, and successfully plays 5.1 audio via the Plex player.