[pulseaudio-discuss] Weak bass in stereo mode – possibility of virtual 2.1 sound profiles

Alexander E. Patrakov patrakov at gmail.com
Sat Oct 13 17:29:33 UTC 2018


On 10/7/18 6:27 PM, Alexander E. Patrakov wrote:
> вс, 7 окт. 2018 г. в 16:42, Karl Ove Hufthammer <karl at huftis.org 
> <mailto:karl at huftis.org>>:
> 
>     Alexander E. Patrakov skreiv 07.10.2018 09:44:
>      >
>      >     I don’t understand why this is happening. Shouldn’t
>      >     ‘remixing-use-all-sink-channels = no’ just affect *upmixing* of
>      >     sound,
>      >     and leave 5.1 material alone?
>      >
>      >
>      > This is a known bug that appears because there are two 5.1
>     standards:
>      > proper 5.1 and 5.1 Side. The video player (I guess you use mpv)
>     says:
>      > the extra two channels have to come from the side.
> 
>     Looks like you’re right. If I run ‘ffprobe’ on my 5.1 test file, it
>     returns:
> 
>         Stream #0:1[0x1100]: Audio: dts (DTS-HD MA) ([134][0][0][0] /
>     0x0086), 48000 Hz, 5.1(side), s32p (24 bit)
> 
>     So the video file (and mpv) seems to  use the ‘5.1(side)’ standard.
>     (Which is a bit strange, since this is supposed to be a video file to
>     test a normal 5.1 setup, AFAICS.)
> 
> 
> (speaking with my "DTS encoder author" hat on)
> 
> The issue is that it is a DTS file. DTS uses completely different 
> channel names than what's found in PulseAudio source. The proper 
> normative reference is:
> 
> https://www.etsi.org/deliver/etsi_ts/102100_102199/102114/01.03.01_60/ts_102114v010301p.pdf
> page 19, table 5.4 (note that the presence of the LFE channel is 
> transmitted separately).
> 
> Your file uses AMODE=0b001001=9, so the list of channels is: "Center", 
> "Left", "Right", "Surround Left", "Surround Right". And there is also a 
> 64x downsampled LFE channel. FFMmpeg-based decoders map "Surround" to 
> "Side" because "Rear" also exists in other channel layouts and means 
> something different. There is no way in DTS to express a layout with 
> "Rear" but no "Surround" channels.
> 
> 
> 
>      > But your system does not have speakers there, it has them on the
>     rear.
>      > So PulseAudio attempts to remix. In fact, sound both with and
>     without
>      > remixing-use-all-sink-channels is wrong.
> 
>     What’s wrong about the remixing when one uses
>     ‘remixing-use-all-sink-channels = yes’?
> 
> 
> The rear channels will get not a copy of the side, but an average of 
> front and side.

As promised, here is a patch.

Note that I am unhappy with it, because it fixes only a particular 
common problem case, while other related issues stay unfixed. E.g. if 
one tries to play 5.1 audio on 7.1 system, with or without this patch:

- Front, Center and LFE channels are mapped 1:1, which is correct
- Rear (or what mpv calls "Side") source channels are mapped to Side, 
which is also correct, because it's the Side speakers in the ITU-T 7.1 
layout, not Rear, which have the nearest position to what Dolby 
specifies for Surround AC3 speakers.
- The true rear channels get a mix between Front and Side, which is 
clearly incorrect. ITU R-REC-BS.775-3-201208 says that both sets of 
surround channels should be fed the same signal.

But the needed refactoring (e.g. choosing what to mix where based on 
speaker azimuths) is way too big, so I decided to postpone it.

-- 
Alexander E. Patrakov

-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-resampler-Fix-confusion-between-rear-and-side-channe.patch
Type: text/x-patch
Size: 2819 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/pulseaudio-discuss/attachments/20181013/84ed250f/attachment.bin>


More information about the pulseaudio-discuss mailing list