Direct Play vs Direct Stream - any real world difference?

I’ve been having stuttering issues playing have HEVC files on my Apple TV 4k Gen 2. I’m not sure if this is a new thing… I think it may have been happening before.

On the TvOS Plex App I have now turned direct play off. The same files that previously direct played are now direct streaming.

I understand direct streaming is just remuxing. My question - is there any reason to try and solve the direct play issue if everything seems to be compatible when direct streaming, files still seem to play fast (e.g., no real lag starting, fast forward, etc.)?

Does it not make more sense to keep direct play off for good … or am I actually losing quality or a feature somewhere?

Thanks

Direct Play is when the device that is playing back the content is decoding both the audio and video. Direct stream is when the server does the work and sends the best stream to the player based on what Plex knows about it. which is why when you direct stream it doesnt stutter. the apple TV is probably having issues decoding some of the files youre playing back based on the the AV codec that the file is in.

I understand that… but I’m wondering if I actually lose anything (besides Plex remuxing the streams and a bit of cpu load) by streaming vs direct play?

Seems to me if I’m not losing the original format (e.g., 4k + Atmos Sound, for example), it makes more sense to turn off direct play so I don’t have any compatibility issues playing files?

wellllllllll, If youre talking about 4k content. thats a whole new ball game and I cant tell you how that will play out since I dont use an apple TV so I wouldnt be able to give you feedback from a user perspective. What i Can say is that 4K playback can be a very time consuming issue to figure out and use on a consistent basis. I have been curating a 4k library via Plex for at least 3 years now and even now I have issues depending on the file and Codec’s involved. there is a thread with everything 4K. Have you checked that out yet? Also, you can wait and see if anyone with an Apple TV replies. One thing for sure is that 4K + Atmos does not work for plex and will always be transcoded or converted. Not sure if that is the case for the apple TV but that would explain the stuttering. are you able to look at your server dashboard when you direct play vs direct stream and see what it is doing like below? Then you can actually see exactly what is happening.

image

TLDR, It’s complicated and each file/player combo will have different results. ( In My Opinion )

Direct stream is when the server remuxes the existing codecs into a different container.

Like from mkv to mp4.

The video/audio codecs remains the same.

Transcoding is when a codec is converted to another, as in hevc to x264, or truehd to ac3.

Direct stream is detrimental in some cases, because it can prevent “pass through” of the audio and trigger an otherwise unnecessary transcode…

This is dependent on the device and content in question.

Direct stream itself has no quality impact, as the original codec data is unchanged.

As far as the op, you should always refer to your server dashboard (and logs) to see what is going on with a stream, if everything is actually direct playing, then that should be the fastest, most simple, and efficient method of playback.

Direct stream is generally not a “fix” or solution for problems with direct play.

1 Like

Here is what the dashboard says - video is stuttering… doesn’t say much to me? See next message for screenshot of Direct Stream.

Screen Shot 2021-11-17 at 2.15.28 PM

1 Like

… and here is what I get with direct streaming. Video is great with no stuttering. Notice how the MBPS is different in direct play vs stream? Any significance?

I will also note that if I turn off the enhanced player, direct play works fine … but the colors are noticably darker… almost too dim to watch.

1 Like

No real significance in regards to the Mbps. The Apple TV is probably just struggling to convert the content. you’re good to go with the direct stream from what I can see. #enjoy. What interests me is are you able to visually see any differences? HDR has been an issue on and off depending on content. not sure if Plex has fixed this issue and with EAC3, you won’t have any issues but I would love to see what happens when you try to play something with Atmos audio.

If everything is working, Direct Stream isn’t a problem that needs to be fixed.

A few situations where Direct Stream is useful -

  1. Obvious: The player can’t parse the original container/file format, but can decode the video and audio streams/codecs when they’re extracted and repackaged. This is automatic when it’s necessary.

  2. Somewhat common: the original file contains multiple extra streams, which would require significant additional bandwidth (such as high-def audio). Direct Stream only sends the active streams.

  3. Somewhat common: The original file was poorly muxed, and remuxing delivers video and audio packets at a better cadence. Bad muxing can require extra bandwidth, or in the worst case prevent playback entirely.

  4. Rare: aspect ratio or rotation flags may be set differently in the video stream and the container itself. If the player reads the “incorrect” data, disabling Direct Play can help - forcing the flags to be set consistently in the new remuxed container.

  5. Niche: the original file contains many subtitles, which some players simply can’t handle (Samsung? TVs, I think.)

  6. Niche: other compatibility issues. For example, Roku devices would stutter with AAC audio in some containers, but not when Direct Streamed.

  7. Note: On Apple TV and iOS, the Old Video Player has different capabilities than the current one. I believe MKV must be Direct Streamed to the Old Video Player.

I think the biggest examples of this are HD audio, which is better supported in MKV than MP4, and the myriad HDR/DV variations.

The Apple TV is a great player, and your examples above are fine. The Apple TV has Dolby Vision and HD Audio limitations that aren’t related to Direct Play vs. Direct Stream.

If you find that you want HD Audio from Blu-ray originals, you probably want a Shield Pro. In most other situations, the Apple TV does a great job of emitting LPCM, and it has the best built-in multichannel audio → AC3 transcoder available, if that’s necessary.

Generally you should leave Direct Play and Direct Stream enabled. The server & client should switch from Direct Play to Direct Stream when necessary. Check the dashboard if there are issues.

Manually disabling Direct Play can be a useful troubleshooting step when there are playback issues. That’s a strong indication that there’s a compatibility, container, or file structure issue.

There are other forum complaints about the ATV 4K gen 2 behaving differently than the gen 1. I don’t have any sense if there’s an Apple issue, a Plex issue, or an intersection of the two. There was a lot of ATV weirdness during the iOS 15 beta period - which seems better to me, but I don’t have anything concrete to say.


TLDR: Don’t worry, be happy. Your video and audio are playing at their maximum, original quality, and you aren’t missing out on anything.

That definitely seems weird to work better DS vs DP.

I don’t have a 4K atv to test on unfortunately, hopefully some one with better atv experience/knowledge can help out.

Edit
@nkouts_1 a thought generated by volts comments, what does the bandwidth graph look like.

If the mkv does indeed have several extra audio or other streams, it potentially could be using more actual bandwidth than is calculated for the video stream.

1 Like

If you’d like to upload the file somewhere, or DM me a link, I’m curious to take a look.

I’m also curious - do you have either of the “Match Content” options enabled in the Apple TV’s Settings -> Video and Audio?

I do but it makes no difference in the stuttering if I turn them off.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.