now I know why my Plex on XONE S is getting a huge performance penalty unlike Samsung JS8500 w/ Orca’s unofficial client… Does anybody have an ETA (date) on DTS codec release for XONE? All my files are HEVC with most of 'em DTS-HD MA…
Picture quality is superior due to XONE S upscaling (the tv set does not have to upscale based on frame analysis as it receives 4K resolution already) and sound quality is also much better… (even w/ AAC) because of forced transcoding I cannot use XONE S for as much entertainment activities as I would like to as movies stutter.
UPDATE: I managed to get rid of stuttering by setting following values in Plex Server:
Transcode Quality: Prefer Quality encoding (downgraded from make my CPU hurt)
Transcoder default duration: 150 (upgraded from 120)
Transcoder default throttle buffer: 1000 (upgraded from 600)
Background transcoding x264 preset: Super fast (downgraded from Very fast)
Setup:
Macbook Pro 13" Early 2015 dual core i5 (2,8 - 3,1 Ghz) (ac WiFi)
TimeCapsule 2TB (ac WiFi) (this is where the source media is stored it is used as a NAS)
Xbox One S 2TB (ac WiFi)
Samsung UE48JS8500 (ac WiFi)
I do not know exactly which setting took part in eliminating stuttering. For now I am good with these settings, any suggestions / comments are welcome - I am no Plex expert)
VALIDATED:
XONE S 4K upscaling is a huge improvement over JS8500 TV set upscaling. Sound is much better and more balanced through XONE S as well. I tried both Orca’s unofficial client and XONE S client in a 5 minute timeframe and the picture quality is on another level in favour of XONE S.
Can’t wait for native direct play support for XONE S where no transcoding needed from HEVC to H.264 and from DTS to AAC.
UPDATE 2: I am trying right now to optimize for TV. For some sources where CGI plays a big role and scenes are moving fast even above settings are not enaugh. Will post the outcomes.
I too would love DTS-MA and HEVC. i doubt we will see DTS-MA anytime soon from MS unfortunately. I was giving my demo a test last night LIfe of Pie, and it crushed my server causing huge freezes.
Media
Video Resolution 4K
Duration 2:06:55
Bitrate 66342 kbps
Width 3840
Height 2160
Aspect Ratio 1.78
Container MKV
Video Frame Rate 24p
Audio Profile dts
Video Profile main 10
Part
Duration 2:06:55
File Life of Pi.mkv
Size 58.82 GB
Audio Profile dts
Container MKV
Video Profile main 10
Codec HEVC
Bitrate 64038 kbps
Bit Depth 10
Chroma Subsampling 4:2:0
Color Range tv
Color Space smpte170m
Duration 2:06:55
Frame Rate 23.976 fps
Frame Rate Mode cfr
Height 2160
Pixel Format yuv420p10
Profile main 10
I take it there have been updates to the Xbox One Plex client since this announcement? I have had no problem direct playing h.265/HEVC content in mkv containers since ripping everything over the last few months.
That’s right, there’s a limitation with HLS streams at the moment that requires a full transcode if the audio codec isn’t compatible. We’re hoping we can lift that limitation in the future.
In other news I’ve just enabled direct play support for DVR recordings in the Xbox One app. Let me know if you have any playback issues.
Well, even for videos I have to transcode (MKVs with 7.1 FLAC), it’s not choppy when playing, which is great— I can’t even find a single macOS player that plays high bitrate HEVC smoothly when I’m playing the file on my laptop off my SSD. Yeah, I’m making my i7 MacBook Pro Haswell burn, but usage (taking into account 4 cores x2 threads) is only about 50%, compared to close to 100% on all other clients (Vizio, Roku, etc) . So this is totally fine with me because it makes it way more convenient not to have to convert these huge files.
I’m guessing that the client is the difference here rather than a PMS update?
@Moussa said:
That’s right, there’s a limitation with HLS streams at the moment that requires a full transcode if the audio codec isn’t compatible. We’re hoping we can lift that limitation in the future.
I am not sure to understand correctly.
So we’re saying that:
Plex Server supports H264 and H265
Plex Server supports Dolby (Digital aka AC3, TrueHD, Atmos too??) but not any DTS (Surround, HDMA, X)
Xbox One handles natively H264, H265, Dolby, DTS
Am I right?
So then, why PMS just can’t have a dedicated profile for XBO that Direct Play all the things to the XBO?
I feel like I am missing something. Seems too simple.
Plex Server supports Dolby (Digital aka AC3, TrueHD, Atmos too??) but not any DTS (Surround, HDMA, X)
No, The Server supports All the audio formats but most devices do not. When a newer format is recognized as that newer format the older clients will sometimes request it be transcoded instead of pulling out the core audio stream. For example a device that supports AC3 but not TrueHD can technically play the AC3 stream embedded in the TrueHD stream, but the client doesn’t know that stream exists (And it’s not always mandatory for core audio streams to be embedded in the HD audio formats) and will request that the TrueHD be transcoded into a format supported.
Xbox One handles natively H264, H265, Dolby, DTS
No, the xbox one does not handle any DTS, HD audio (ie TrueHD/DTS-MA), and currently has an audio limit of 5.1 set. In addition the Xbox App cannot switch system settings so when playing 5.1 audio on a 7.1 setup it has been reported to come out of the wrong speakers (The rear’s instead of sides)
So then, why PMS just can’t have a dedicated profile for XBO that Direct Play all the things to the XBO?
The profile only direct plays things that the Xbox Supports. The problem that moussa described above is with the streaming implementation. For example you have a file that is an MKV with HEVC and DTS audio. The Xbox One supports MKV’s and Supports HEVC, but it does not support DTS. Because of this the Xbox One requests the audio to be transcoded to AC3 which it does support. This is where the HEVC is lost. During a transcode the server is using the HLS format for streaming. This means that the file produced from the transcoder is going to be a MpegTS with HEVC and AC3 audio. But that won’t work because the HLS protocol (The one used for streaming the file to the Xbox) does not support HEVC so this forces the server to also transcode that HEVC stream to H264.
So in the end what happens is your MKV with HEVC and DTS audio must then be converted to MPEGTS with H264 and AC3 audio. It’s not because the the Xbox doesn’t support HEVC, but because the protocol connect the Xbox One to the Server does not. The reason why it works when everything is playable by the Xbox is because then it treated almost exactly like a simple file transfer.
@jmckee
Wow, thanks for the explanation! Any tips on which configuration options to use for the best sound given the current limitations? I just setup a Dolby Atmos receiver with a 5.1.4 setup. I know direct play is not an option for the most part, but which option will give me the best audio? I’m thinking bitstream out with DTS selected. For some reason it seems like selecting DTS produces a better audio experience vs selecting Dolby, but I could be imagining things.
Thank you so much for that full and clear explanation @jmckee
I suppose there is no other protocol nor modification planned for HLS… Do we have an idea on which ideas are working Microsoft/Plex? (I read on one of the support article that there is an open issue.)
@mbarylski said:
Wow, thanks for the explanation! Any tips on which configuration options to use for the best sound given the current limitations? I just setup a Dolby Atmos receiver with a 5.1.4 setup. I know direct play is not an option for the most part, but which option will give me the best audio? I’m thinking bitstream out with DTS selected. For some reason it seems like selecting DTS produces a better audio experience vs selecting Dolby, but I could be imagining things.
Unfortunately, I don’t have Atmos setup so I don’t really know how that will interact with everything. I did read that Microsoft was adding Atmos support, but normally with HD audio sources it is only supported when played directly from a disk and not from network players such as Plex or even their own DLNA player (Although video players that use their own custom video player instead of the built in decoders may still be able to work around this or they could surprise us and add it all the way through).
My assumption is that since it is still a 5.1.4 setup the normal channels should still work accordingly, I wouldn’t think you would run into the channel mapping issue I spoke of above unless you moved to a 7.x.x setup. But since the device will be outputting in DTS (Which the app has no decoder for from microsoft) the channel mapping will be almost exclusively up to the Xbox One (This is where the rears get mapped into the rear speakers instead of the side speakers for 7.1 audio to 5.1 speakers). After getting it all hooked up I would test the channels with one of the free 5.1 channel tester clips just to make sure things are going out to the proper channels. I use the Dolby 5.1 video clip from this site myself when testing my 5.1: http://www.demo-world.eu/dolby-dts-thx-wmv-distributor-trailers-sd/
@willemavjc said:
Thank you so much for that full and clear explanation @jmckee
I suppose there is no other protocol nor modification planned for HLS… Do we have an idea on which ideas are working Microsoft/Plex? (I read on one of the support article that there is an open issue.)
As you have read there are a few open issues. Plex has attempted to use both HLS and DASH for HEVC playback and ran into issues with both. So far the only stable playback they can get is during direct playback anything that is requiring a repackage is breaking the playback.
So while yes they do intend to get this working, there isn’t really a timeframe on trying to track down what is causing the breakage or if it is something they can workaround to get audio conversion working with HEVC streams for playback.
Use fMP4 container. The UWP apis on XBox will support the fMP4 container and h.265 within it. The support for ac-3, eac-3, and aac continues. DASH rather than HLS is also supported.
perhaps time to retire mpegts for some of the Plex clients like XBox, Apple things, etc.
@diablodale said:
Use fMP4 container. The UWP apis on XBox will support the fMP4 container and h.265 within it. The support for ac-3, eac-3, and aac continues. DASH rather than HLS is also supported.
The current app is not a part of the UWP so it doesn’t have access to those API’s. So to use that functionality you will either need to wait for a rewrite/port of the app or for the fMP4 to finish being added to HLS (which will still require a software update from Microsoft).
DASH was tested and had the same problems. Which is why the developers went with the HLS solution that was already added instead of looking to convert the entire app over to DASH with no additional benefits.
The developers are looking at different solutions to get Direct Streaming of HEVC material working, but there isn’t a simple ‘switch to this’ type of solution at this time.
The Xbox One S is a bridge console between the standard edition and the Scorpio in that it has faster processing and 4K video output, but stops short at full Ultra HD gameplay.