Nvidia HDMI 音频是一个被广泛询问的话题,但我还没能找到适合我的情况的答案。
卡牌展示者lspci
$ lspci
...
01:00.0 VGA compatible controller: NVIDIA Corporation GF114 [GeForce GTX 560 Ti] (rev a1)
01:00.1 Audio device: NVIDIA Corporation GF114 HDMI Audio Controller (rev a1)
显示的设备aplay
$ aplay -l
...
card 2: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: NVidia [HDA NVidia], device 7: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: NVidia [HDA NVidia], device 8: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: NVidia [HDA NVidia], device 9: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
所有输出均取消静音alsamixer
但是该卡没有出现在系统设置的声音控制器中。
我目前正在使用“nvidia-325”驱动程序,但我尝试了“nouveau”和其他几个版本
我的 HDMI 输出被检测为/proc/asound/card2/eld#1.0
$ cat /proc/asound/card2/eld#1.0
monitor_present 1
eld_valid 1
monitor_name DENON-AVAMP
connection_type HDMI
...
speaker-test
找不到设备
$ speaker-test -c 2 -r 48000 -D hw:2,3
speaker-test 1.0.25
Playback device is hw:2,7
Stream parameters are 48000Hz, S16_LE, 2 channels
Using 16 octaves of pink noise
Playback open error: -19,No such device
有人能帮我解决我的问题吗?或者至少告诉我为什么我的设备没有出现在声音设置中?
答案1
我自己也遇到了一些问题,但到目前为止我发现你需要测试不同的 id:
speaker-test -c [2/6] -r 48000 -D hw:2,[3,7,8,9]
-c [2/6]
- 以立体声或 5.1 进行测试
hw:2,[3,7,8,9]
- 2 是您的卡的 ID,但正如您从列表中看到的,有 4 个不同的选项。其中只有一个能提供音频。
我不知道为什么这会如此复杂,所以我很想看到有人更彻底地回答这个问题,但我希望我的回答至少能对你有所帮助。
答案2
当 Speaker-test 失败时,所有使用 alsa-lib 的其他程序也应该失败,并出现 -D hw:2,3。
Playback open error: -19,No such device
看起来扬声器测试尝试打开错误的设备:
prompt:> strace -o trace.log speaker-test -c 2 -r 48000 -D hw:2,3
prompt:> less trace.log
应该会显示 alsa-lib 尝试打开的设备名称。
从第一眼看,我认为这是 alsa-lib 中的一个错误,因为它尝试打开 card0、device3 而不是 card2、device3。临时修复方法是使用指向正确设备的符号链接...