最近我买了华硕 Xonar SE,以便使用 S/PDIF 设备进行播放。这是我能找到的最新、价格最好的产品,亚马逊上的人们评论说它在 Ubuntu 上可以正常工作(阅读12.04&14.04没问题)。现在,我不知道他们是怎么做到的,但我就是无法让它工作。我尝试了很多方法来解决与我在 Ubuntu/Linux 上遇到的音频相关问题,但到目前为止没有任何效果。
我想使用 S/PDIF 输出,但也尝试使用卡上的模拟输出,但没有成功:我没有看到播放。
该卡本身有点奇怪。它使用 C-Media 的 USB(是的,尽管它是 PCIe)音频处理器(CM6620A)来自 AsMedia 的 USB 主控制器(ASM1042A)和S1220A来自 Realtek 的 DAC。
华硕的声卡在 Windows 10 中运行良好(我的 PC 是双启动的参考文献),安装了华硕提供的 CD 上的软件后(因此不存在硬件问题)
现在软件(步骤):
我已在 Ubuntu 设置面板中正确设置了声音的输出设备(如下所示:https://i.stack.imgur.com/Nu2Hj.jpg)。我也尝试过在 PulseAudio 工具中更改为不同的数字配置文件,但也没有成功。
我已经在终端中使用了 Alsamixer,并尝试通过静音音量解决问题,但没有成功。现在的情况如下:https://i.stack.imgur.com/ovLQA.jpg 对我来说,最奇怪的是,所有输出都没有正确标记,而 Alsamixer 中正常工作的 (正常) 卡都是这样。全部都是“PCM...”
我尝试的另一件事是搜索机器上的编解码器,然后它返回了以下内容:
==> /proc/asound/card0/codec#0 <==
Codec: Realtek ALC892
==> /proc/asound/card0/codec#2 <==
Codec: Intel Kabylake HDMI
从返回的结果中aplay -l
我可以看到 Xonar SE 是card#1
,但是通过我上面运行的命令没有可用的编解码器(= head -n 1 /proc/asound/card*/codec#*
)。
aplay-l
输出:
**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC892 Analog [ALC892 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
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
card 1: SoundCard [Xonar SoundCard], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: SoundCard [Xonar SoundCard], device 1: USB Audio [USB Audio #1]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: SoundCard [Xonar SoundCard], device 2: USB Audio [USB Audio #2]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: SoundCard [Xonar SoundCard], device 3: USB Audio [USB Audio #3]
Subdevices: 1/1
Subdevice #0: subdevice #0
它生成的完整 Alsa 信息输出对我来说似乎相当复杂。我发现很难从那里获取信息,但我在这里得到了输出:http://alsa-project.org/db/?f=2a945544a53708b95cd185596fd636a60f1c1e62
顺便提一句:我还尝试了不同的 Ubuntu 版本(USB 上的 18.04 LTS)和 Mint 19.2。同样没有成功,结果与上述所有信息相同。
有谁知道我可以采取什么步骤来实现这一点?或者如何诊断问题?
已经谢谢了
答案1
我已经设法让它工作了。@CL。指出,通过使用,aplay -D plughw:1,x something.wav
您可以检查您的设备是否会输出任何声音。我已经用x
2 替换了,这是用于数字输出,并用文件sample.wav
替换了播放。所以现在的问题是如何让所有 Ubuntu 播放card 1
。device 2
我确信(也使用 PulseAudio 等)有很多方法可以做到这一点,但我刚刚将它添加到新创建的配置文件(/etc/asound.conf
):
defaults.pcm.card 1
defaults.pcm.device 2
现在它将始终card 1
与一起使用device 2
。这会因用户而异,但通过使用aplay-l
(如我的问题所示),您可以找到有关卡和设备的更多信息。
关于此配置更改的更多信息可以在这里找到Unix StackExchange 问题。
答案2
解决问题的方法是步骤3
- /etc/asound.conf 是默认值
添加
"CardName" X
到/usr/share/alsa/cards/USB-Audio.conf
文件。'
CardName
' 是 'Xonar SoundCard
' 并且我发现了它aplay -l
。我发现'
X
' 与aplay -D plughw:CARD=SoundCard,DEV=X something.wav
。带有 CM6620A 芯片的 Xonar SE 卡的 S/PDIF 接口是第三个 (DEV=2
)