Plex on Windows 10… Player Version 1.84.1.4069-ff740b6d
Output via MB HDMI to Pioneer AVR. AVR is set to “Auto-Surround” where normally, when it detects any of the support formats, will automatically decode bitstream.
It seems that when I play a 24/96 DTS file - it works fine… AVR sees DTS, (shows on display) decodes properly. When I play 24/44.1 - AVR still sees DTS but somehow it is always 24/96 PCM… and this results in an immediately noticeable pitch and speed change.
I’ve been mucking about all afternoon and cannot seem to solve this. All this used to be so easy in WMC…
Passthrough of 44.1khz DTS and Dolby Digital (AC3) content is “broken”. This is an issue with mpv, not Plex.
Ac3/DTS is transmitted as 2ch@48Khz bit stream.
I assume, that 44.1khz content should be streamed as 2ch@44.1khz bit stream. This is only an assumption, I have not tested this. If it’s the case it would need a smarter logic in mpv.
I wouldn´t be that harsh about mpv. mpv is a very capable video renderer, that outperforms almost all competitors. (yes, also madvr in some areas) The audio side of things is good but could see some love… Anyway, I´m very happy with the decision Plex made back when they introduced these desktop players, way better than starting from scratch and creating a new playback engine. (I´m sure they would have made a good one, but that is a very demanding task…)
Playback of DTS/AC3 44.1khz passthrough content was never working in mpv, so the issue has been there since the beginning. Nobody noticed due to the lack of much 44.1khz dts/ac3 content and the fact that not many devs are using a setup where they can test audio passthrough… I only have two 44.1khz ac3 files on my server and both have been created (wrongly) by me… I have never seen anyone really using such content in the wild.
When it’s a mpv issue, we head over to github and make some noise about the problem there… When it’s big enough of an issue they fix it… Now comes the nice part. When it’s fixed, we don´t need to wait until Plex publishes a new update. We can simply change the mpv.dll in the install folder ourselves. Isn´t that nice? With a proprietary playback engine, this wouldn´t be possible.
So for your problem, you have the option to head over to GitHub and make some noise, recode your files to 48khz, or disable passthrough. Not ideal… I know…
Being honest here, if we had to make our own playback engine, the desktop apps wouldn’t exist. At best they would use an HTML5 player but doing that makes one question “what’s the point of making an app when you can just use a browser?”
I actually have some 44.1kHz AC3 files … somewhere. I was fiddling with them back in the days when I worked on the A52 audio component on Mac. Doing passthrough with these is tricky and as pointed out they are quite rare.
I am sorry to disagree; but neither of you have made ANY case on why Plex has a proper audio player. I get that you might be vested in it… but you cannot use adjectives like “very capable” with a straight face here… and if you are, then you are barking up the wrong tree.
If you have an audio engine that cannot play audio without the gross distortion of playing them at the wrong speed and pitch, then you have a crap audio engine; and IMHO, its that simple.
…and I’m certainly not giving anyone a “pat on the head” for playing mp3’s - or FLAC files.
Anyway - thanks for the Plex education; I’ll shut-up now… not really more I can say. Harsh? PLEX has no business using the word “audiophile” or “professional” on their web-site.
Well, to be honest, because DTS says so. What you have to keep in mind is the fact that the audio is not downconverted to a pcm stream or something and then bit streamed to the AVR. No - that’s not how it works. The code inside mpv/ffmpeg repackages (without altering the actual audio data) the DTS 5.1 48khz or DTS 24/96 frames to a 2ch@48khz and actually a 16bit bitstream that can be bitstreamed as 1 and 0 in a specific way to the AVR. So no, this is not an audio quality downgrade - its a repackaging so it can be transferred over HDMI (or whatever…)
The linked fix now only correctly “slices” the DTS 44.1khz data into small packages (that rely on a 44.1khz output mode) that the avr can understand. I hope the explanation makes sense to you.
Well… I tried. There are no instructions so I simply renamed the old DL by adding the word OLD… added the new one to the directory and then restarted the machine.
That did not work: playback was still pitched.
The real question, is why Plex has not integrated the update, tested it with their beta team and made a general release?
They are for Plex HTPC but it’s the same on Plex for Desktop…
Please try again. The fix works on my end. Yesterday I fully tested it on my end. With the unpatched mpv my AVR would not even play any sound with 44.1khz dts content… The patched one works perfectly.
Now rename the mpv-2.dll originally found in the install folder to something like mpv-2.dll.old. Now rename the libmpv-2.dll to mpv-2.dll and start Plex for Desktop. Now you are ready to go.
Thank-you for those instructions. That did the job. I tested a number of files that used to play at the wrong pitch; and they all seem fine. I’ll do more testing in the next few days…