From mboxrd@z Thu Jan 1 00:00:00 1970 From: VDR User Subject: Re: Missing surround channels with Nvidia HDMI & snd-hda-intel driver Date: Tue, 14 Nov 2017 14:21:13 -0800 Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mail-lf0-f42.google.com (mail-lf0-f42.google.com [209.85.215.42]) by alsa0.perex.cz (Postfix) with ESMTP id 188E62674D7 for ; Tue, 14 Nov 2017 23:21:14 +0100 (CET) Received: by mail-lf0-f42.google.com with SMTP id a132so24073762lfa.7 for ; Tue, 14 Nov 2017 14:21:14 -0800 (PST) In-Reply-To: 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: Takashi Iwai Cc: "mailing list: alsa-dev" List-Id: alsa-devel@alsa-project.org 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 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 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 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: >>> >> 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 >>> >> _______________________________________________ >>> >> Alsa-devel mailing list >>> >> Alsa-devel@alsa-project.org >>> >> http://mailman.alsa-project.org/mailman/listinfo/alsa-devel >>> >> >>>