[pulseaudio-discuss] [PATCH] format: Fix rate for HBR passthrough formats
peter.fruehberger at gmail.com
Sat May 26 09:59:23 UTC 2018
Am Sa., 26. Mai 2018 um 11:47 Uhr schrieb Alexander E. Patrakov <
patrakov at gmail.com>:
> 2018-05-25 22:15 GMT+08:00 Arun Raghavan <arun at arunraghavan.net>:
> > On Tue, 22 May 2018, at 4:32 PM, Alexander E. Patrakov wrote:
> >> There is some Microsoft documentation that contradicts this code.
> >> """
> >> Dolby TrueHD (MAT)
> >> Dolby TrueHD content is transmitted over IEC 60958 at 176.4 kHz / 8
> >> channels (requiring an IEC 60958 frame rate of 705.6 kHz) for content
> >> sample rates of 44.1, 88.2 and 176.4 kHz, and 192 kHz / 8 channels
> >> (requiring an IEC 60958 frame rate of 768 kHz) for content sample
> >> rates of 48, 96 and 192 kHz.
> >> """
> > Based on Peter's input in a private thread, seems this is not the case
> on Linux:
> I have looked, and also obtained a copy of IEC 61937-5-2006 standard,
> and I think I understand where this discrepancy comes from. The issue
> is that the standard does not define at all what to do if the sample
> rate of DTS audio is not a multiple of 48 kHz. I.e., it does not even
> cover the DTS CD case (44.1 kHz) that de-facto exists!
> Still, I think that diverging from what Windows does is not a good
> thing. Has anyone tested that passthrough works with DTS-HD streams
> that are not with a sample rate that is a multiple of 48 kHz? Does
> anyone have such DTS-HD stream at all?
We are using this in kodi since first introducing HBR bitstream support.
For DTS our sync code also can cope with 44.1 khz. But recently an issue
occured for DTS-HD HR vs. DTS-HD MA that some new receivers don't like
being sent 192/8, see this discussion here:
https://github.com/Nevcairiel/LAVFilters/issues/167 - this most likely
means that we have to distinguish between different DTS-HD formats.
Hendrik's workaround was:
sending 192 khz / 2 channels for HR bitrates.
> > Cheers,
> > Arun
> >> 2018-05-22 12:13 GMT+08:00 Arun Raghavan <arun at arunraghavan.net>:
> >> > In high bitrate mode, we force 192kHz/8ch as the sample format, which
> >> > the expectation for HBR formats (as that is what allows for the
> >> > possible packet size).
> >> > ---
> >> > src/pulsecore/core-format.c | 3 +++
> >> > 1 file changed, 3 insertions(+)
> >> >
> >> > diff --git a/src/pulsecore/core-format.c b/src/pulsecore/core-format.c
> >> > index 862a74b5d..096acc3a2 100644
> >> > --- a/src/pulsecore/core-format.c
> >> > +++ b/src/pulsecore/core-format.c
> >> > @@ -248,6 +248,9 @@ int pa_format_info_to_sample_spec_fake(const
> pa_format_info *f, pa_sample_spec *
> >> >
> >> > if (f->encoding == PA_ENCODING_EAC3_IEC61937)
> >> > ss->rate *= 4;
> >> > + else if ((f->encoding == PA_ENCODING_TRUEHD_IEC61937) ||
> >> > + (f->encoding == PA_ENCODING_DTSHD_IEC61937))
> >> > + ss->rate = 192000;
> >> >
> >> > return 0;
> >> > }
> >> > --
> >> > 2.17.0
> >> >
> >> > _______________________________________________
> >> > pulseaudio-discuss mailing list
> >> > pulseaudio-discuss at lists.freedesktop.org
> >> > https://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss
> >> --
> >> Alexander E. Patrakov
> Alexander E. Patrakov
Fingerprint: 4606 DA19 EC2E 9A0B 0157 C81B DA07 CF63 1A99 5A9B
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the pulseaudio-discuss