我在我的电脑上安装了Ubuntu 20.04。我的屏幕上有内置扬声器。声音只是通过我的屏幕的扬声器,这是通过HDMI连接。它们不够强大,我想将我的扬声器与主输出连接起来。在声音设置中,我没有其他输出选项,Ubuntu甚至在alsamixer上也无法识别我的本地声卡。
这是lspci -v | grep -A7 -i "audio"的输出:
00:1f.3 Multimedia audio controller: Intel Corporation Cannon Point-LP High Definition Audio Controller (rev 30)
DeviceName: Onboard - Sound
Subsystem: Intel Corporation Cannon Point-LP High Definition Audio Controller
Flags: bus master, fast devsel, latency 32, IRQ 139
Memory at a1338000 (64-bit, non-prefetchable) [size=16K]
Memory at a1000000 (64-bit, non-prefetchable) [size=1M]
Capabilities: <access denied>
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel, snd_sof_pciaplay -l:
**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 7: HDMI 1 [HDMI 1]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 8: HDMI 2 [HDMI 2]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 9: HDMI 3 [HDMI 3]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 10: HDMI 4 [HDMI 4]
Subdevices: 1/1
Subdevice #0: subdevice #0在我的/etc/modprobe.d/alsa-base.conf的末尾:
# Prevent abnormal drivers from grabbing index 0
options bt87x index=-2
options cx88_alsa index=-2
options saa7134-alsa index=-2
options snd-atiixp-modem index=-2
options snd-intel8x0m index=-2
options snd-via82xx-modem index=-2
options snd-usb-audio index=-2
options snd-usb-caiaq index=-2
options snd-usb-ua101 index=-2
options snd-usb-us122l index=-2
options snd-usb-usx2y index=-2
# Ubuntu #62691, enable MPU for snd-cmipci
options snd-cmipci mpu_port=0x330 fm_port=0x388
# Keep snd-pcsp from being loaded as first soundcard
options snd-pcsp index=-2
# Keep snd-usb-audio from beeing loaded as first soundcard
options snd-usb-audio index=-2如果我尝试选择另一张声卡,这就是我的alsamixer所显示的:

我知道我的问题是重复的,但我在网上尝试了很多建议,但没有一个对我有用。
发布于 2021-11-07 13:51:45
第二张卡也应列出/加载。对于不需要的HDMI-设备,我使用模块pci_存根在加载snd-模块之前声明音频设备。添加行后,如果我没有记错,就必须执行update-initramfs -u。
要在您不需要的声卡上使用PCI_stub,您必须使用lspci -nn获得PCI-Vendor-Info。在我的例子中,如下所示
lspci -nn |grep -i audio
01:00.1 Audio device [0403]: NVIDIA Corporation TU116 High Definition Audio Controller [10de:1aeb] (rev a1)
06:00.0 Audio device [0403]: Creative Labs Sound Core3D [Sound Blaster Recon3D / Z-Series] [1102:0012] (rev 01)因为我想摆脱‘音频卡’从我的GPU,被通缉的ID是“10de:1 1aeb”。然后将pci_stub ids=10de:1aeb放入文件/etc/initramfs-tools/modules中。
该文件中的列表模块将在自动加载模块之前加载,其中设备通常会获得正确的模块/驱动程序。需要使用ids=10de:1aeb或其他字符串,以便选择正确的PCI-Card (我认为没有它甚至无法工作),然后通过pci_stub-模块阻止正确的'snd-*‘模块的自动加载。因此,没有/dev/snd/hwXYZ-设备将被创建,而alsa将不会将其识别为声卡。
lspci -s 01:00.01 -v
01:00.1 Audio device: NVIDIA Corporation TU116 High Definition Audio Controller (rev a1)
Subsystem: Gigabyte Technology Co., Ltd TU116 High Definition Audio Controller
Flags: bus master, fast devsel, latency 0, IRQ 10, IOMMU group 1
Memory at df080000 (32-bit, non-prefetchable) [size=16K]
Capabilities: [60] Power Management version 3
Capabilities: [68] MSI: Enable- Count=1/1 Maskable- 64bit+
Capabilities: [78] Express Endpoint, MSI 00
Capabilities: [100] Advanced Error Reporting
Kernel driver in use: pci-stub
Kernel modules: snd_hda_intel在这里您可以看到“正在使用的内核驱动程序”
由于阻塞了NVIDIA卡,我只得到了一张识别卡。
aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: Creative [HDA Creative], device 0: ALC898 Analog [ALC898 Analog]
Subdevices: 0/1
Subdevice #0: subdevice #0这并不直接是你的问题,但也许会有所帮助。:-)
在我的例子中声音有效,但是把硬件In转换成alsa之类的东西...*******..我的显示器连扬声器都没有。
https://askubuntu.com/questions/1374078
复制相似问题