From mboxrd@z Thu Jan 1 00:00:00 1970 From: VDR User Subject: Missing surround channels with Nvidia HDMI & snd-hda-intel driver Date: Sun, 12 Nov 2017 10:01:14 -0800 Message-ID: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mail-lf0-f53.google.com (mail-lf0-f53.google.com [209.85.215.53]) by alsa0.perex.cz (Postfix) with ESMTP id C97E4266A73 for ; Sun, 12 Nov 2017 19:01:16 +0100 (CET) Received: by mail-lf0-f53.google.com with SMTP id a132so15947385lfa.7 for ; Sun, 12 Nov 2017 10:01:16 -0800 (PST) List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: alsa-devel-bounces@alsa-project.org To: "mailing list: alsa-dev" List-Id: alsa-devel@alsa-project.org 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. 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: 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: Kernel driver in use: snd_hda_intel Kernel modules: snd_hda_intel