[alsa-devel] Missing surround channels with Nvidia HDMI & snd-hda-intel driver

VDR User user.vdr at gmail.com
Tue Nov 14 23:21:13 CET 2017


It just tried kernel 4.6-rc1 and the problem is present there as well.
Is there a list of patches between stable kernel 4.5.7 and 4.6-rc1
somewhere? I can try to revert each of them one at a time if so.
Unless someone has any better idea to narrow this down to the
offending commit?

Thanks
Derek

On Tue, Nov 14, 2017 at 7:22 AM, VDR User <user.vdr at gmail.com> wrote:
> Ok so after compiling a bunch of older kernels, I found that the
> problem started with 4.6.0. Kernel 4.5.7 worked fine. With 4.6.0 I
> get:
>
> ~$ speaker-test -c 6 -t wav
>
> speaker-test 1.1.3
>
> Playback device is default
> Stream parameters are 48000Hz, S16_LE, 6 channels
> WAV file(s)
> Rate set to 48000Hz (requested 48000Hz)
> Buffer size range from 64 to 5440
> Period size range from 32 to 2720
> Using max buffer size 5440
> Periods = 4
> was set period_size = 1088
> was set buffer_size = 5440
>  0 - Front Left
>  1 - Front Right
>  3 - Rear Right
>  2 - Rear Left
>  4 - Unknown
>  5 - Unknown
> Time per period = 8.524856
>
>
> However, with 4.5.7 it was:
>
> ~$ speaker-test -c 6 -t wav
>
> speaker-test 1.1.3
>
> Playback device is default
> Stream parameters are 48000Hz, S16_LE, 6 channels
> WAV file(s)
> Rate set to 48000Hz (requested 48000Hz)
> Buffer size range from 64 to 5440
> Period size range from 32 to 2720
> Using max buffer size 5440
> Periods = 4
> was set period_size = 1088
> was set buffer_size = 5440
>  0 - Front Left
>  4 - Front Center
>  1 - Front Right
>  3 - Rear Right
>  2 - Rear Left
>  5 - LFE
> Time per period = 8.524740
>
> In both cases the audio announced the correct speaker position, but
> the Front Center & LFE channels are labeled/reported incorrectly as
> "Unknown" starting in 4.6.0. I looked at the 4.6 changelog audio
> section (https://kernelnewbies.org/Linux_4.6#head-59f6bad0670ddd6511d239b83c36575b139798bf)
> but didn't see anything Nvidia-specific, or anything that sounded like
> it would cause this problem. Any ideas on the best way to proceed
> finding the offending commit?
>
> Thanks!
> Derek
>
>
> On Mon, Nov 13, 2017 at 11:03 AM, Takashi Iwai <tiwai at suse.de> wrote:
>> On Mon, 13 Nov 2017 18:18:39 +0100,
>> VDR User wrote:
>>>
>>> Hi Takashi,
>>>
>>> Thanks for your reply. I have no clue unfortunately as I just noticed
>>> it now. Is there a previous kernel you could recommend I try prior to
>>> any or big changes to how snd-hda-intel works?
>>
>> Well, nothing I can think of for now, that's why I asked about testing
>> the older kernel.  I'd do a bisection, e.g. try stable kernels like
>> 4.4.x or 4.9.x, depending on the "previously working" version you
>> remember, then go to the middle between them if it hits the
>> regression.
>>
>>
>> Takashi
>>
>>>
>>> -Derek
>>>
>>> On Mon, Nov 13, 2017 at 8:40 AM, Takashi Iwai <tiwai at suse.de> wrote:
>>> > On Sun, 12 Nov 2017 19:01:14 +0100,
>>> > VDR User wrote:
>>> >>
>>> >> Hi. I just noticed that I'm missing some surround channels and I think
>>> >> it may be a bug in the alsa drivers because my current setup used to
>>> >> work just fine.
>>> >
>>> > If it's a regression, which kernel did work and which started a
>>> > regression?  This alone would be a good help for tracking down the
>>> > problem.
>>> >
>>> >
>>> > Takashi
>>> >
>>> >> I'm running Debian Testing, stable kernel 4.13.12,
>>> >> alsa-utils 1.1.3-1. My ~/.asoundrc is:
>>> >>
>>> >> ~$ cat .asoundrc
>>> >> pcm.!default "hdmi:NVidia,1"
>>> >> ~$
>>> >>
>>> >> I am not setting anything on my kernel load line:
>>> >>
>>> >>         echo    'Loading Linux 4.13.12-amd ...'
>>> >>         linux   /vmlinuz-4.13.12-amd
>>> >> root=UUID=6df5733d-b089-450c-9ec6-661dd013c7c0 ro
>>> >>         echo    'Loading initial ramdisk ...'
>>> >>         initrd  /initrd.img-4.13.12-amd
>>> >>
>>> >> The driver being used is snd-hda-intel with an Nvidia GT520 video
>>> >> card. And lastly I do not have Pulse or a desktop environment. This is
>>> >> a minimal HTPC setup that runs only an xserver to provide video
>>> >> output, with audio/video being sent to my surround receiver via HDMI.
>>> >>
>>> >> The first thing I noticed was mpv-player was downmixing 5.1 to 3.1 and
>>> >> giving the following log message:
>>> >>
>>> >> [ao/alsa] trying to set ALSA channel map: FL FR FC LFE RL RR
>>> >> [ao/alsa] channel map reported by ALSA: FL FR FC LFE UNKNOWN UNKNOWN
>>> >> [ao/alsa] which we understand as: fl-fr-fc-lfe-na-na
>>> >> [ao/alsa] using the ALSA channel map.
>>> >> [ao/alsa] hw pausing supported: yes
>>> >> [ao/alsa] buffersize: 2720 samples
>>> >> [ao/alsa] period size: 160 samples
>>> >> [ao/alsa] device buffer: 2720 samples.
>>> >> [ao/alsa] using soft-buffer of 8820 samples.
>>> >> [cplayer] AO: [alsa] 44100Hz fl-fr-fc-lfe-na-na (3.1) 6ch s32
>>> >> [cplayer] AO: Description: ALSA audio output
>>> >> [af] Adding filter lavrresample
>>> >> [lavrresample] Remix: 5.1 -> 3.1
>>> >> [af] Audio filter chain:
>>> >> [af]   [in] 44100Hz 5.1 6ch floatp
>>> >> [af]   [lavrresample] 44100Hz fl-fr-fc-lfe-na-na (3.1) 6ch s32 [a]
>>> >> [af]   [out] 44100Hz fl-fr-fc-lfe-na-na (3.1) 6ch s32
>>> >> [af]   [ao] 44100Hz fl-fr-fc-lfe-na-na (3.1) 6ch s32
>>> >>
>>> >> That makes it look like Rear Left/Right channels are absent. I think
>>> >> ran speaker-test. 4 and 5 show as "Unknown" but correctly audibly
>>> >> announced as "front center" and "subwoofer" respectively:
>>> >>
>>> >> ~$ speaker-test -c 6 -t wav
>>> >>
>>> >> speaker-test 1.1.3
>>> >>
>>> >> Playback device is default
>>> >> Stream parameters are 48000Hz, S16_LE, 6 channels
>>> >> WAV file(s)
>>> >> Rate set to 48000Hz (requested 48000Hz)
>>> >> Buffer size range from 64 to 5440
>>> >> Period size range from 32 to 2720
>>> >> Using max buffer size 5440
>>> >> Periods = 4
>>> >> was set period_size = 1088
>>> >> was set buffer_size = 5440
>>> >>  0 - Front Left
>>> >>  1 - Front Right
>>> >>  3 - Rear Right
>>> >>  2 - Rear Left
>>> >>  4 - Unknown
>>> >>  5 - Unknown
>>> >>
>>> >> Additional information that may be of use:
>>> >>
>>> >> ~$ aplay -l
>>> >> **** List of PLAYBACK Hardware Devices ****
>>> >> card 1: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0]
>>> >>   Subdevices: 1/1
>>> >>   Subdevice #0: subdevice #0
>>> >> card 1: NVidia [HDA NVidia], device 7: HDMI 1 [HDMI 1]
>>> >>   Subdevices: 0/1
>>> >>   Subdevice #0: subdevice #0
>>> >>
>>> >> ~$ cat /proc/asound/card1/eld#0.1
>>> >> monitor_present         1
>>> >> eld_valid               1
>>> >> monitor_name            SONY AVAMP
>>> >>
>>> >> connection_type         HDMI
>>> >> eld_version             [0x2] CEA-861D or below
>>> >> edid_version            [0x3] CEA-861-B, C or D
>>> >> manufacture_id          0xd94d
>>> >> product_id              0xf02
>>> >> port_id                 0x200
>>> >> support_hdcp            0
>>> >> support_ai              0
>>> >> audio_sync_delay        0
>>> >> speakers                [0x5f] FL/FR LFE FC RL/RR RC RLC/RRC
>>> >> sad_count               12
>>> >> sad0_coding_type        [0xc] MLP (Dolby TrueHD)
>>> >> sad0_channels           2
>>> >> sad0_rates              [0x1ec0] 44100 48000 88200 96000 176400 192000
>>> >> sad1_coding_type        [0xc] MLP (Dolby TrueHD)
>>> >> sad1_channels           6
>>> >> sad1_rates              [0x1ec0] 44100 48000 88200 96000 176400 192000
>>> >> sad2_coding_type        [0xc] MLP (Dolby TrueHD)
>>> >> sad2_channels           8
>>> >> sad2_rates              [0x6c0] 44100 48000 88200 96000
>>> >> sad3_coding_type        [0xb] DTS-HD
>>> >> sad3_channels           2
>>> >> sad3_rates              [0x1ec0] 44100 48000 88200 96000 176400 192000
>>> >> sad4_coding_type        [0xb] DTS-HD
>>> >> sad4_channels           6
>>> >> sad4_rates              [0x1ec0] 44100 48000 88200 96000 176400 192000
>>> >> sad5_coding_type        [0xb] DTS-HD
>>> >> sad5_channels           8
>>> >> sad5_rates              [0x6c0] 44100 48000 88200 96000
>>> >> sad6_coding_type        [0x1] LPCM
>>> >> sad6_channels           2
>>> >> sad6_rates              [0x1ee0] 32000 44100 48000 88200 96000 176400 192000
>>> >> sad6_bits               [0xe0000] 16 20 24
>>> >> sad7_coding_type        [0x1] LPCM
>>> >> sad7_channels           6
>>> >> sad7_rates              [0x1ee0] 32000 44100 48000 88200 96000 176400 192000
>>> >> sad7_bits               [0xe0000] 16 20 24
>>> >> sad8_coding_type        [0x1] LPCM
>>> >> sad8_channels           8
>>> >> sad8_rates              [0x1ee0] 32000 44100 48000 88200 96000 176400 192000
>>> >> sad8_bits               [0xe0000] 16 20 24
>>> >> sad9_coding_type        [0x2] AC-3
>>> >> sad9_channels           6
>>> >> sad9_rates              [0xe0] 32000 44100 48000
>>> >> sad9_max_bitrate        680000
>>> >> sad10_coding_type       [0x7] DTS
>>> >> sad10_channels          6
>>> >> sad10_rates             [0x6e0] 32000 44100 48000 88200 96000
>>> >> sad10_max_bitrate       1536000
>>> >> sad11_coding_type       [0xa] E-AC-3/DD+ (Dolby Digital Plus)
>>> >> sad11_channels          8
>>> >> sad11_rates             [0xc0] 44100 48000
>>> >>
>>> >> 02:00.0 VGA compatible controller: NVIDIA Corporation GF119 [GeForce
>>> >> GT 520] (rev a1) (prog-if 00 [VGA controller])
>>> >>         Subsystem: eVga.com. Corp. GF119 [GeForce GT 520]
>>> >>         Flags: bus master, fast devsel, latency 0, IRQ 25
>>> >>         Memory at fd000000 (32-bit, non-prefetchable) [size=16M]
>>> >>         Memory at f0000000 (64-bit, prefetchable) [size=128M]
>>> >>         Memory at fa000000 (64-bit, prefetchable) [size=32M]
>>> >>         I/O ports at ec00 [size=128]
>>> >>         [virtual] Expansion ROM at 000c0000 [disabled] [size=128K]
>>> >>         Capabilities: <access denied>
>>> >>         Kernel driver in use: nvidia
>>> >>         Kernel modules: nvidia
>>> >>
>>> >> 02:00.1 Audio device: NVIDIA Corporation GF119 HDMI Audio Controller (rev a1)
>>> >>         Subsystem: eVga.com. Corp. GF119 HDMI Audio Controller
>>> >>         Flags: bus master, fast devsel, latency 0, IRQ 17
>>> >>         Memory at fea7c000 (32-bit, non-prefetchable) [size=16K]
>>> >>         Capabilities: <access denied>
>>> >>         Kernel driver in use: snd_hda_intel
>>> >>         Kernel modules: snd_hda_intel
>>> >> _______________________________________________
>>> >> Alsa-devel mailing list
>>> >> Alsa-devel at alsa-project.org
>>> >> http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
>>> >>
>>>


More information about the Alsa-devel mailing list