Passthrough should be possible. As it works fine on the Blu-ray app. So it’s merely being able to access the correct libraries/HW parts to be able to implement it.
Also the HDMI handshake provides which formats your receiver or TV supports so that should work without problems even if certain formats aren’t supported Plex would be able to recognize that and transcode the audio, that’s what it does now as well for devices that can’t decode certain formats.
Plex on windows switches between the app and web based depending on if its full screen or not. (I had a terrible time finding the settings for audio and video because it wasnt full screen.) HTML5 you say. It seems the windows version of plex player is doing something similar. When will plex be able to work the same way on the xbox one x?
@BK89 said:
Every 4K file I’ve tried with Plex just simply transcodes. Even if the hardware iIplay it on supports it. Which leaves me to think I’ll have to wait for yet another update from Plex.
When the file is played with the “Movies & TV” app the files plays without a hitch, but as soon as I try the same file through the Plex app it fails horribly. Refuses to use DirectPlay and transcodes the file instead. And fails because the server is far from powerfull enough.
What’s going on? What is holding Plex back here?
Both server and Xbox is connected by gbit ethernet.
just curious what you are changing int the settings for trans-coding. Is direct stream and play checked off in both the xbox and the plex server?
Is there any updates to this? I was considering buying the Samsung Atmos 5.1.4 soundbar system but it sounds like it might be useless. My Xbox one s is my main source in my theatre setup. Also side question. Being new to the Atmos world, which formats should I be looking at with what channel count? Thanks in advance.
The app can play X265 and HDR, but there are currently 2 outstanding bugs that make playing files that require transcoding almost impossible. (IE transcoding for unsupported audio/image based subtitles). A platform bug causes the transcoded stream to enter a buffering loop that stops all playback. Transcoded video streams also strip out HDR so the video needs to either be direct played or direct streamed to keep HDR.
Dolby Atmos support is lacking. The only format that currently can be played is Atmos spatial tracks encoded with AC3/eAC3 audio. True Dolby Atmos tracks cannot direct play and need to be transcoded by the server. This causes the spatial streams to be removed during transcoding. From my experience almost all Atmos tracks are not AC3/eAC3 encoded and will end up being transcoded. The Dolby headphones app is able to output Atmos from the Xbox One, but it creates it’s own spatial track and is not necessarily the original track from the file.
Overall, fixing the HDR/HEVC bug is currently waiting for a platform fix from Microsoft and Atmos support has two ways forward: Pass through support allowing users to pick and choose to allow Atmos to be decoded after the Xbox or Atmos decoding support being added by Microsoft.
I am having the same issue, the Xbox One X & LG Smart TV sometimes do not take the 4K HDR movie. Sometimes for a minute or two, then it starts ‘abusing’ the server CPU. (Transcoding). While I know for sure that it can play it Direct Play. I have done it in the past. And even sometimes the first minutes it does it. But somehow it ‘decides’ for you that I should transcode.
Anyhow, I hope this gets full focus. Really nice all those podcast and other features. But ‘streaming’ is the core business of Plex, and should get massive attention in my opinion.
Without saying me too, I have xbox one x and lg oled hdr tv and have seen the following play out.
With plex client on lg tv, no subtitles chosen, any audio chosen (5.1 or trueHD), video plays flawlessly with direct stream from server for both video and audio and HDR is active on tv and it looks great! As soon as I choose any subtitle format, the video stops and resumes with no HDR active on tv and video is transcoding from plex server.
So the trick with lg plex client is to make sure no subtitles are selected.
With xbox one x client it doesn’t matter what option you choose. If I start with method above, no subtitles chosen and making sure 5.1 audio selected to avoid audio transcode of tureHD audio, video plays with direct stream from server and HDR is active on tv… for about a minute or so. Then without warning plex client buffers as server decides to transcode video and HDR is lost.
Xbox client seems to do what lg client does if you choose subtitles without choosing subtitles… so frustrating.
I know what you are saying, and I can confirm. But somehow (I feel) that the ‘direct stream’ is different than ‘direct play’. Also sometimes it gets a bit choppy (I am playing 60-70 gig HEVC file).
I have been playing around for the past hours, and I put that file on my NAS (and PC as well). Shared it with the DLNA protocol, with NO encoding possible.
I used the native Video app of LG WebOS, worked instantly and looked better (shows HDR icon top right).
On Xbox One X I tried it with “Movies&TV” app, it does see the file, but it won’t play.
All in all, I have the ‘feeling’ that the picture quality is less through Plex.
The Xbox One app cannot play audio streams that are not the secondary audio track. So what you are seeing is the Xbox One try and direct play the file, after about 30 seconds because the 5.1 track is not the first audio track in the file the media player reports an error. The App then see’s this error and falls back to transcoding to allow playback.
Direct Play and Direct Stream are two different things. Direct play means the file is playing completely as is while Direct Stream means that one or more streams can be direct played but something with the other needs either to be converted or in this case the audio needs to be moved to the first audio track.
You are also correct in that HDR is lost during transcoding because the server converts to h264 1080p and does not support HDR → HDR conversion so the HDR gets down converted.
Direct stream and direct play are different, so you’re feelings are correct.
If the Xbox One app is not triggering HDR on the TV then 1 of 3 things is happening:
The Video file is not HDR
The Xbox thinks the TV does not support HDR
The video is being transcoded
Without more details I would guess that some limitation is triggering the video to transcode. As I stated above the server currently can only transcode to H264 1080p so that would definitely strip out the HDR.
The most common causes of that are:
Subtitles
The scenario above where the app encounters an error and falls back into transcoding
A bandwidth limitation
With the Xbox One X number 2 seems to be the most common problem right now and causes some weird logging in the information panel during playback. (It looks like the app is reporting playing audio it can’t play but instead is playing a different audio track which triggers the crash)
While it’s not much help, Moussa is still working with Microsoft to get this problem fixed, but until then the only work around right now is to manually move the audio tracks around and set the AC3/AAC audio as the default track. Every other method I tried resulted in the same types of crashes, or just transcoding the video which strips the HDR and not what most people want.
I also have a LG HDR TV and as long as HDR is being triggered during playback (In both apps it shows in the top right corner at start of playback) the quality appears to be exactly the same. But if the Xbox isn’t triggering that HDR it almost guaranteed to be transcoded down to 1080p SDR which would be a major decrease in quality.
I also am fairly sure it is point 2 as you said. Something is not going as it should.
I will patiently wait a few updates and see how it goes. I am now putting my UHD content on my Diskstation and access them by DLNA on the LG native Video player app. (HDR even works with Subtitles).
I’ve always found it odd that Plex forces transcode with subs, while MPC and many other apps use near 0% cpu and just show the subs on top. quite annoying. But hey, thank god I barely use subs.
The Xbox One app will stream SRT subtitles without transcoding, this support was added in October of 2017 when the app transitioned to the new media framework. Image based subtitles still require burn in as most frameworks do not support soft subtitle support for them.
In my testing I have found if the file even CONTAINS a TrueHD track (i.e. another language) the mere presence of that track causes Plex to transcode.
I have even seen this behavior with some video files containing DTS 7.1 tracks.
If I use ffmpeg to strip all but the AAC/AC3 then things seem to work correctly. I have had mixed results with files containing EAC3 tracks.
Luckily I do not have much 4K content so manually fixing these files isn’t a big deal, right now. But this will become very tedious if Plex can’t figure it out.
Another oddity I have found was when I turn on verbose logging and try to play one of the troublesome 4K videos I see these errors:
Dec 15, 2018 16:19:27.434 [0x80b89ba00] DEBUG - Auth: authenticated user 1 as ME@ME.COM
Dec 15, 2018 16:19:27.434 [0x80d82da00] DEBUG - Request: [10.10.0.120:49984 (WAN)] GET /library/parts/16762/1543776628/file.mkv (21 live) TLS GZIP Signed-in Token (ME@ME.COM)
Dec 15, 2018 16:19:27.439 [0x80d82da00] DEBUG - Content-Length of /media/Movies/Avengers Infinity War 2018/Avengers Infinity War (2018) REMUX1 2180p.mkv is 55526396113.
Dec 15, 2018 16:19:27.480 [0x80b89ba00] DEBUG - Failed to stream media, client probably disconnected after 2244608 bytes: 32 - Broken pipe
Dec 15, 2018 16:19:27.480 [0x80b89ba00] DEBUG - Completed: [10.10.0.120:49984] 200 GET /library/parts/16762/1543776628/file.mkv (21 live) TLS GZIP 46ms 2244608 bytes (pipelined: 1) (range: bytes=3940810752-55526396112)
ANd I don’t know why it says X-Plex-Device-Screen-Resolution => 1280x720 when I have 4K Enabled in the display settings on the Xbox
Dec 15, 2018 18:24:40.552 [0x80fa13500] VERBOSE - * X-Plex-Device => Xbox One X
Dec 15, 2018 18:24:40.552 [0x80fa13500] VERBOSE - * X-Plex-Device-Name => XBOXONE
Dec 15, 2018 18:24:40.552 [0x80fa13500] VERBOSE - * X-Plex-Device-Screen-Resolution => 1280x720
Dec 15, 2018 18:24:40.552 [0x80fa13500] VERBOSE - * X-Plex-Language => en
Dec 15, 2018 18:24:40.552 [0x80fa13500] VERBOSE - * X-Plex-Platform => Xbox One
Dec 15, 2018 18:24:40.552 [0x80fa13500] VERBOSE - * X-Plex-Platform-Version => 10.0.17763.3066
Dec 15, 2018 18:24:40.552 [0x80fa13500] VERBOSE - * X-Plex-Product => Plex for Xbox One
Dec 15, 2018 18:24:40.552 [0x80fa13500] VERBOSE - * X-Plex-Session-Identifier => ds23hkt4xogir3pm2dxeu8b5
It will start in Direct Play, buffer for a quick second, fall back to Direct Stream, then after about 10 minutes it just STOPS. Dead STOP. Plex STOPS sending data.
There seems to be a disconnect here. DTS/TrueHD tracks cannot direct play on the Xbox One, so no matter what they will trigger a remux at best or a transcode at worse. The remux happens because the App can only direct play the very first audio track. (Forcing direct play on other tracks causes crashes and other bad behavior). This means that if the primary track is TrueHD/Atmos (Which is the most common I have seen for 4K movies) The app has to remux the file for playback, which in general should be able to be handled by almost any server. ( This is the direct streaming you see in your screenshot)
With AAC/AC3 I haven’t seen any problems myself. I haven’t tried eAC3, but I have heard from a person or so that eAC3 sometimes has the potential to carry the extra Atmos data, which could be causing a problem. (In theory it shouldn’t and would just be ignored, but that might be something to take a peak at?)
So those errors are actually what you should be seeing (unless that is a file you stripped out additional audio tracks from). The GET with file.mkv means the file is trying to direct play. With TrueHD this normally looks like it works fine for about ~10-30s then it chokes and dies. The choking and dying is what you see with the Failed to stream media … broken pipe error message. The server see’s that it the client isn’t responding any more so it knows the stream failed, but doesn’t get a response back to actually state why it failed so it gives that generic error.
Now, if this is one you did strip out the other audio tracks from, that means there is some kind of bigger issue going on. Like I said above the file.mkv means the file is direct playing, and if you’re getting the broken pipe message that means something in that file is killing the player on the xbox one. The only way to see what it would be, is to create a sample of the file that reproduces the issue and send it in. While I have a few extra debugging options, I can’t see any diagnostics in depth enough to tell what is crashing the player and it would need to be one of the developers or microsoft who would be able to see that.
If that message is where I think it is, that is due to the dashboard resolution and not the actual playback resolution. If that is not the case, you should be able to bring up the debugging information during playback and see what the actual resolution is during playback. I know on my LG TV when I playback 4K/HDR movies I see an indicator when the movie starts that I am in HDR mode, so that could be something to look for as well?
Unfortunately, I can’t explain this one without seeing the logs to see what actually is happening. Based on my previous testing this looks like what happened when I was testing with a file that looked like:
mkv/hevc(hdr)/truehd with a secondary track of AC3
In that situation the app was trying to direct play the TrueHD on first start, which would error out after a few seconds, then it would try to direct stream but was selecting the same track that was erroring out, so then the player would crash. The server would see that it crashed (because it stopped responding to the server) and would stop sending data, but it seemed like the player took a bit to get back to the menu after crashing if I just left it.
I have just started ripping my 4k movies in MakeMKV and onto my Plex server (Just got some Atmos speakers) and seem to be experiencing a lot of what people are reporting here. I appreciate all the info everyone is providing and it certainly has given me some insight into the issues with the Xbox One X. With all that said, can’t Microsoft just allow for audio passthrough within the app like they do with the Blu-Ray player app? If it’s a simple setting toggle in the system settings why can’t they just do that for Plex audio?
knowing MS and DOLBY, there are probably also licencing issues involved.
if you really want to use xbox for plex 4k, try putting the ATMOS/HD audio as the 2ND audio stream, and put either the stereo or 5.1 dolby digital/dts track as the 1st and default audio track.
the root issue with xbox not supporting atmos passthrough is otherwise going to be a deal breaker, if or until MS changes that behavior.
if you are serious about 4k/hdr/atmos, the most simple and painless option is nvidia shield.
and if you don’t already have one, you also need an atmos/4k/hdr receiver too.
I gotta echo the nvidia Shield solution. If this was gonna be fixed, it be fixed by now. Stop breaking your own balls and buy the cheap and best solution.
This one is actually not 100% on Microsoft. From my current understanding, apps using the new media framework (not so new now) have the ability to trigger the pass-through settings. Old apps frozen on the old media framework have absolutely no way to use pass-through at all. Plex now falls on the ‘new’ framework and has the ability to use the pass-through audio option.
Now from that point, Plex does not typically release the roadmap of features or their priority. I do know that pass through support was definitely mentioned by the developers as a feature they want to implement, but I do not have any timeframe, priority, or complexity for implementing that feature.
From previous discussions, I remember one of the bigger issues was that it wasn’t a simple implementation of ‘click this box for pass-through’ because of the additional information the server/MDE/player would need to properly implement the feature without breaking general playback of items. There was also some additional discussion about convenience type features, but I have not been given any additional information about where the pass-through support feature current stands. But I did want to let you know that it is possible now and something the developers had added to the list of features users requested/suggested.
When I mentioned the presence of the TrueHD track, I meant if the top track for english was removed, and track 5 or 6 is like French TrueHD, then the mere presence of that seems to choke plex.
The one showing the broken pipe errors, for Avengers Infinity War does have ALL audio stripped except for AC3 5.1 and eAC3 – I’ll try to strip eAC3 out as well and see if that helps,
Also I have noticed that on my xbox the “setting - allowac3:” is set to FALSE with no conceivable way to change that setting.