我想使用 Rodecaster Pro 混音器来运行我的音频。它在我的笔记本电脑上运行良好,但在我的台式机上运行不佳(两者都运行内核为 5.8.18 的 Ubuntu 20.04)。
在我的桌面上,麦克风的输入正常,但声音输出播放速度非常慢并且失真,就像采样下来一样 - 有趣的是,来自 YouTube 的媒体播放在我的屏幕上也变慢了。以前从未见过这样的事情:-)
太长了;博士
同时,我已在以下位置提交了错误报告:https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/1927255
目前,我得到的最好的提示以及我正在调查的:Rodecaster Pro 似乎只能处理设置为 24 位、48kHz 的音频。虽然 Linux 内核在 Rodecaster Pro 的一些额外的怪异处理程序中设置了 48kHz,但我认为我需要以某种方式重新配置 ALSA 以满足 24 位要求(尽管我不知道为什么它在我的笔记本电脑上运行没有任何问题,只是不在我的桌面上)。
aplay
当前状态:我一直在尝试通过使用播放 wav(以 PCM 32 位小端格式以 48000kHz 编码)样本
aplay -f S32_LE -c 2 -r 48000 -D hw:x ~/sample.wav
其中 x 是适当的卡号,其余参数满足 Rodecaster 的规范。它在笔记本电脑上运行良好,但在台式机上却失真。 ALSA 有可能在其中之一上进行或不进行一些重新采样(要么破坏台式机上的某些内容,要么修复笔记本电脑上的某些内容)?据我了解,情况不应该是这样,因为我没有使用插件,对吗?那么,ALSA 和 Rodecaster 之间一定发生了什么事情,可能是与 USB 相关的事情吗?
观察结果
我在下面有更多详细信息,但到目前为止,我最有可能得到的提示来自于dmesg -w
插入 Rodecaster 时在两台机器上运行。输出是:
桌面
[ 156.337116] usb 1-4: new high-speed USB device number 6 using xhci_hcd
[ 156.517968] usb 1-4: New USB device found, idVendor=19f7, idProduct=0011, bcdDevice= 2.11
[ 156.517972] usb 1-4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 156.517975] usb 1-4: Product: RODECaster Pro
[ 156.517976] usb 1-4: Manufacturer: RODE Microphones
[ 156.517978] usb 1-4: SerialNumber: 00000000001A
[ 156.539362] hid-generic 0003:19F7:0011.0006: hiddev3,hidraw5: USB HID v1.10 Device [RODE Microphones RODECaster Pro] on usb-0000:16:00.0-4/input0
[ 156.566513] mc: Linux media interface: v0.10
[ 156.583527] usb 1-4: parse_audio_format_rates_v2v3(): unable to retrieve number of sample rates: set it to a predefined value (clock 1).
[ 156.609377] usb 1-4: parse_audio_format_rates_v2v3(): unable to retrieve number of sample rates: set it to a predefined value (clock 1).
[ 156.632745] usbcore: registered new interface driver snd-usb-audio
笔记本电脑
[ 122.098370] usb 2-2: new high-speed USB device number 4 using xhci_hcd
[ 122.246967] usb 2-2: New USB device found, idVendor=19f7, idProduct=0011, bcdDevice= 2.11
[ 122.246973] usb 2-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 122.246976] usb 2-2: Product: RODECaster Pro
[ 122.246979] usb 2-2: Manufacturer: RODE Microphones
[ 122.246982] usb 2-2: SerialNumber: 00000000001A
[ 122.285806] hid: raw HID events driver (C) Jiri Kosina
[ 122.301802] usb 2-2: parse_audio_format_rates_v2v3(): unable to retrieve number of sample rates: set it to a predefined value (clock 1).
[ 122.303041] usb 2-2: parse_audio_format_rates_v2v3(): unable to retrieve number of sample rates: set it to a predefined value (clock 1).
[ 122.304413] usbcore: registered new interface driver snd-usb-audio
[ 122.307003] usbcore: registered new interface driver usbhid
[ 122.307005] usbhid: USB HID core driver
[ 122.348391] hid-generic 0003:19F7:0011.0001: hiddev0,hidraw0: USB HID v1.10 Device [RODE Microphones RODECaster Pro] on usb-0000:00:14.0-2/input0
因此,据我了解,在我的笔记本电脑上加载了一些接口驱动程序来完成这项工作,对吗?但不在我的桌面上。如何进一步检查两个平台上可能存在的差异,以确定如何使 Rodecaster Pro 也能在我的桌面上运行?我已经了解了一些关于声音在 Linux 上如何工作的知识 - 并且我愿意了解更多:-DI 假设这可能是某种形式的 modprobe 配置问题?
更新:我发现了
hid: raw HID events driver (C) Jiri Kosina
usbcore: registered new interface driver usbhid
usbhid: USB HID core driver
在桌面的 dmesg 日志中进一步查看
mc: Linux media interface: v0.10
我想,在笔记本电脑的日志中,没有什么真正的区别。死路。
评论中建议的附加信息
sudo udevadm 监视器
桌面
KERNEL[1865.590942] add /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4 (usb)
KERNEL[1865.601419] add /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.0 (usb)
KERNEL[1865.612569] add /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.0/0003:19F7:0011.0007 (hid)
KERNEL[1865.612799] add /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.0/usbmisc/hiddev3 (usbmisc)
KERNEL[1865.612974] add /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.0/0003:19F7:0011.0007/hidraw/hidraw6 (hidraw)
KERNEL[1865.613056] bind /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.0/0003:19F7:0011.0007 (hid)
KERNEL[1865.613151] bind /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.0 (usb)
KERNEL[1865.616426] add /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.1 (usb)
KERNEL[1865.677444] add /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.1/sound/card5 (sound)
KERNEL[1865.677677] add /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.1/sound/card5/pcmC5D0p (sound)
KERNEL[1865.677912] add /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.1/sound/card5/pcmC5D0c (sound)
KERNEL[1865.678075] add /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.1/sound/card5/controlC5 (sound)
KERNEL[1865.678150] bind /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.1 (usb)
KERNEL[1865.678230] add /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.2 (usb)
KERNEL[1865.678271] bind /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.2 (usb)
KERNEL[1865.678306] add /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.3 (usb)
KERNEL[1865.678342] bind /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.3 (usb)
KERNEL[1865.678383] bind /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4 (usb)
UDEV [1865.689608] add /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4 (usb)
UDEV [1865.693927] add /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.0 (usb)
UDEV [1865.695025] add /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.3 (usb)
UDEV [1865.696323] add /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.0/0003:19F7:0011.0007 (hid)
UDEV [1865.696398] add /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.1 (usb)
UDEV [1865.697069] add /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.2 (usb)
UDEV [1865.697653] bind /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.3 (usb)
UDEV [1865.698513] add /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.0/usbmisc/hiddev3 (usbmisc)
UDEV [1865.699314] bind /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.2 (usb)
UDEV [1865.699793] add /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.1/sound/card5 (sound)
UDEV [1865.699910] add /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.0/0003:19F7:0011.0007/hidraw/hidraw6 (hidraw)
KERNEL[1865.701496] change /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.1/sound/card5 (sound)
UDEV [1865.701919] bind /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.0/0003:19F7:0011.0007 (hid)
UDEV [1865.702558] add /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.1/sound/card5/pcmC5D0p (sound)
UDEV [1865.703109] add /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.1/sound/card5/pcmC5D0c (sound)
UDEV [1865.703403] bind /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.0 (usb)
UDEV [1865.707163] add /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.1/sound/card5/controlC5 (sound)
UDEV [1865.708834] bind /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.1 (usb)
UDEV [1865.712130] bind /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4 (usb)
UDEV [1865.714516] change /devices/pci0000:00/0000:00:02.1/0000:16:00.0/usb1/1-4/1-4:1.1/sound/card5 (sound)
笔记本电脑
KERNEL[73.917616] add /devices/pci0000:00/0000:00:14.0/usb2/2-1 (usb)
KERNEL[73.918469] add /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.0 (usb)
KERNEL[73.918672] add /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.1 (usb)
KERNEL[73.918782] add /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.2 (usb)
KERNEL[73.918889] add /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.3 (usb)
KERNEL[73.919019] bind /devices/pci0000:00/0000:00:14.0/usb2/2-1 (usb)
UDEV [73.935752] add /devices/pci0000:00/0000:00:14.0/usb2/2-1 (usb)
UDEV [73.953007] add /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.2 (usb)
KERNEL[73.956636] add /module/snd_usbmidi_lib (module)
UDEV [73.957630] add /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.3 (usb)
KERNEL[73.961972] add /module/hid (module)
KERNEL[73.962835] add /bus/hid (bus)
KERNEL[73.962873] add /class/hidraw (class)
UDEV [73.966103] add /bus/hid (bus)
KERNEL[73.972181] add /module/snd_usb_audio (module)
UDEV [73.973275] add /module/hid (module)
UDEV [73.974278] add /module/snd_usb_audio (module)
KERNEL[73.975143] bind /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.2 (usb)
KERNEL[73.975886] bind /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.3 (usb)
KERNEL[73.975924] add /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.1/sound/card2 (sound)
KERNEL[73.976038] add /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.1/sound/card2/pcmC2D0p (sound)
UDEV [73.977321] add /module/snd_usbmidi_lib (module)
KERNEL[73.977364] add /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.1/sound/card2/pcmC2D0c (sound)
UDEV [73.977407] add /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.1 (usb)
KERNEL[73.977435] add /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.1/sound/card2/controlC2 (sound)
KERNEL[73.977470] bind /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.1 (usb)
KERNEL[73.977489] add /bus/usb/drivers/snd-usb-audio (drivers)
KERNEL[73.979239] add /module/usbhid (module)
UDEV [73.981525] add /module/usbhid (module)
UDEV [73.981982] add /bus/usb/drivers/snd-usb-audio (drivers)
KERNEL[73.984631] add /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.0/0003:19F7:0011.0001 (hid)
KERNEL[73.984795] bind /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.0 (usb)
KERNEL[73.984915] add /bus/usb/drivers/usbhid (drivers)
UDEV [73.985188] add /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.0 (usb)
UDEV [73.987952] add /class/hidraw (class)
UDEV [73.989622] add /bus/usb/drivers/usbhid (drivers)
UDEV [73.998682] bind /devices/pci0000:00/0000:00:14.0/usb2/2-1 (usb)
UDEV [74.002632] add /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.1/sound/card2 (sound)
UDEV [74.007862] bind /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.2 (usb)
UDEV [74.008550] bind /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.3 (usb)
UDEV [74.011974] add /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.1/sound/card2/pcmC2D0p (sound)
UDEV [74.013611] add /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.1/sound/card2/pcmC2D0c (sound)
KERNEL[74.013656] change /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.1/sound/card2 (sound)
KERNEL[74.015404] add /module/hid_generic (module)
KERNEL[74.015782] add /class/usbmisc (class)
KERNEL[74.016175] add /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.0/usbmisc/hiddev0 (usbmisc)
KERNEL[74.016485] add /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.0/0003:19F7:0011.0001/hidraw/hidraw0 (hidraw)
KERNEL[74.016799] bind /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.0/0003:19F7:0011.0001 (hid)
KERNEL[74.017129] add /bus/hid/drivers/hid-generic (drivers)
UDEV [74.017415] add /module/hid_generic (module)
UDEV [74.017632] add /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.0/0003:19F7:0011.0001 (hid)
UDEV [74.019223] add /bus/hid/drivers/hid-generic (drivers)
UDEV [74.020516] add /class/usbmisc (class)
UDEV [74.023101] bind /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.0 (usb)
UDEV [74.028094] add /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.0/usbmisc/hiddev0 (usbmisc)
UDEV [74.030285] add /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.1/sound/card2/controlC2 (sound)
UDEV [74.035919] bind /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.1 (usb)
UDEV [74.038564] add /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.0/0003:19F7:0011.0001/hidraw/hidraw0 (hidraw)
UDEV [74.041016] bind /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.0/0003:19F7:0011.0001 (hid)
UDEV [74.045640] change /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.1/sound/card2 (sound)
lsmod
桌面
Module Size Used by
xt_conntrack 16384 2
xt_MASQUERADE 20480 2
nf_conntrack_netlink 49152 0
nfnetlink 20480 2 nf_conntrack_netlink
xfrm_user 36864 1
xfrm_algo 16384 1 xfrm_user
xt_addrtype 16384 2
iptable_filter 16384 1
iptable_nat 16384 1
nf_nat 49152 2 iptable_nat,xt_MASQUERADE
nf_conntrack 147456 4 xt_conntrack,nf_nat,nf_conntrack_netlink,xt_MASQUERADE
nf_defrag_ipv6 24576 1 nf_conntrack
nf_defrag_ipv4 16384 1 nf_conntrack
libcrc32c 16384 2 nf_conntrack,nf_nat
bpfilter 16384 0
br_netfilter 28672 0
bridge 212992 1 br_netfilter
stp 16384 1 bridge
llc 16384 2 bridge,stp
overlay 122880 0
nls_iso8859_1 16384 1
edac_mce_amd 32768 0
snd_hda_codec_ca0132 114688 1
snd_hda_codec_hdmi 61440 2
snd_usb_audio 286720 8
snd_hda_intel 53248 10
kvm 729088 0
snd_intel_dspcfg 24576 1 snd_hda_intel
snd_hda_codec 143360 3 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec_ca0132
snd_hda_core 94208 4 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_codec_ca0132
uvcvideo 98304 0
snd_usbmidi_lib 36864 1 snd_usb_audio
snd_hwdep 20480 2 snd_usb_audio,snd_hda_codec
rapl 20480 0
videobuf2_vmalloc 20480 1 uvcvideo
snd_seq_midi 20480 0
videobuf2_memops 20480 1 videobuf2_vmalloc
snd_seq_midi_event 16384 1 snd_seq_midi
snd_rawmidi 36864 2 snd_seq_midi,snd_usbmidi_lib
videobuf2_v4l2 28672 1 uvcvideo
snd_seq 73728 2 snd_seq_midi,snd_seq_midi_event
videobuf2_common 57344 2 videobuf2_v4l2,uvcvideo
input_leds 16384 0
snd_pcm 118784 6 snd_hda_codec_hdmi,snd_hda_intel,snd_usb_audio,snd_hda_codec,snd_hda_core,snd_hda_codec_ca0132
snd_seq_device 16384 3 snd_seq,snd_seq_midi,snd_rawmidi
videodev 245760 3 videobuf2_v4l2,uvcvideo,videobuf2_common
mousedev 20480 0
joydev 28672 0
snd_timer 40960 2 snd_seq,snd_pcm
mc 57344 5 videodev,snd_usb_audio,videobuf2_v4l2,uvcvideo,videobuf2_common
xpad 40960 0
snd 94208 48 snd_seq,snd_seq_device,snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_usb_audio,snd_usbmidi_lib,snd_hda_codec,snd_timer,snd_pcm,snd_hda_codec_ca0132,snd_rawmidi
ff_memless 20480 1 xpad
wmi_bmof 16384 0
blackmagic_io 1904640 1
k10temp 20480 0
efi_pstore 16384 0
ccp 102400 0
soundcore 16384 1 snd
mac_hid 16384 0
nvidia_uvm 1011712 0
sch_fq_codel 20480 2
parport_pc 45056 0
ppdev 24576 0
lp 20480 0
parport 65536 3 parport_pc,lp,ppdev
ip_tables 32768 2 iptable_filter,iptable_nat
x_tables 45056 5 xt_conntrack,iptable_filter,xt_addrtype,ip_tables,xt_MASQUERADE
autofs4 45056 2
dm_crypt 53248 1
hid_generic 16384 0
usbhid 57344 0
hid 135168 2 usbhid,hid_generic
nvidia_drm 53248 8
nvidia_modeset 1183744 14 nvidia_drm
amdgpu 5853184 3
crct10dif_pclmul 16384 1
iommu_v2 20480 1 amdgpu
crc32_pclmul 16384 0
gpu_sched 36864 1 amdgpu
nvidia 19771392 634 nvidia_uvm,nvidia_modeset
ghash_clmulni_intel 16384 0
i2c_algo_bit 16384 1 amdgpu
ttm 106496 1 amdgpu
aesni_intel 372736 2
drm_kms_helper 225280 2 amdgpu,nvidia_drm
syscopyarea 16384 1 drm_kms_helper
sysfillrect 16384 1 drm_kms_helper
crypto_simd 16384 1 aesni_intel
sysimgblt 16384 1 drm_kms_helper
cryptd 24576 3 crypto_simd,ghash_clmulni_intel
fb_sys_fops 16384 1 drm_kms_helper
glue_helper 16384 1 aesni_intel
cec 53248 1 drm_kms_helper
rc_core 53248 1 cec
r8169 94208 0
drm 557056 17 gpu_sched,drm_kms_helper,amdgpu,nvidia_drm,ttm
realtek 24576 1
i2c_piix4 28672 0
ahci 40960 3
xhci_pci 20480 0
libahci 36864 1 ahci
xhci_pci_renesas 20480 1 xhci_pci
wmi 32768 1 wmi_bmof
video 49152 0
backlight 24576 3 video,amdgpu,drm
gpio_amdpt 20480 0
gpio_generic 20480 1 gpio_amdpt
笔记本电脑
Module Size Used by
hid_generic 16384 0
usbhid 57344 0
snd_usb_audio 282624 2
hid 131072 2 usbhid,hid_generic
snd_usbmidi_lib 36864 1 snd_usb_audio
rfcomm 81920 4
ccm 20480 6
cmac 16384 3
algif_hash 16384 1
algif_skcipher 16384 1
af_alg 28672 6 algif_hash,algif_skcipher
bnep 24576 2
nls_iso8859_1 16384 1
intel_rapl_msr 20480 0
uvcvideo 98304 0
videobuf2_vmalloc 20480 1 uvcvideo
videobuf2_memops 20480 1 videobuf2_vmalloc
videobuf2_v4l2 28672 1 uvcvideo
videobuf2_common 53248 2 videobuf2_v4l2,uvcvideo
videodev 245760 3 videobuf2_v4l2,uvcvideo,videobuf2_common
mc 57344 5 videodev,snd_usb_audio,videobuf2_v4l2,uvcvideo,videobuf2_common
intel_rapl_common 28672 1 intel_rapl_msr
snd_hda_codec_realtek 131072 1
snd_hda_codec_generic 81920 1 snd_hda_codec_realtek
ledtrig_audio 16384 2 snd_hda_codec_generic,snd_hda_codec_realtek
x86_pkg_temp_thermal 20480 0
iwldvm 241664 0
intel_powerclamp 20480 0
snd_hda_codec_hdmi 61440 1
mac80211 917504 1 iwldvm
snd_hda_intel 53248 4
coretemp 20480 0
snd_intel_dspcfg 24576 1 snd_hda_intel
snd_hda_codec 143360 4 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec_realtek
snd_hda_core 94208 5 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek
snd_hwdep 20480 2 snd_usb_audio,snd_hda_codec
libarc4 16384 1 mac80211
snd_seq_midi 20480 0
snd_seq_midi_event 16384 1 snd_seq_midi
iwlwifi 364544 1 iwldvm
snd_pcm 118784 5 snd_hda_codec_hdmi,snd_hda_intel,snd_usb_audio,snd_hda_codec,snd_hda_core
kvm_intel 282624 0
btusb 57344 0
snd_rawmidi 36864 2 snd_seq_midi,snd_usbmidi_lib
btrtl 24576 1 btusb
snd_seq 73728 2 snd_seq_midi,snd_seq_midi_event
btbcm 16384 1 btusb
btintel 28672 1 btusb
joydev 28672 0
snd_seq_device 16384 3 snd_seq,snd_seq_midi,snd_rawmidi
kvm 729088 1 kvm_intel
snd_timer 40960 2 snd_seq,snd_pcm
bluetooth 626688 31 btrtl,btintel,btbcm,bnep,btusb,rfcomm
at24 24576 0
mei_me 40960 0
rapl 20480 0
cfg80211 782336 3 iwldvm,iwlwifi,mac80211
intel_cstate 20480 0
input_leds 16384 0
serio_raw 20480 0
ecdh_generic 16384 2 bluetooth
mei 110592 1 mei_me
snd 94208 25 snd_hda_codec_generic,snd_seq,snd_seq_device,snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_usb_audio,snd_usbmidi_lib,snd_hda_codec,snd_hda_codec_realtek,snd_timer,snd_pcm,snd_rawmidi
ecc 32768 1 ecdh_generic
soundcore 16384 1 snd
tpm_infineon 20480 0
mac_hid 16384 0
sch_fq_codel 20480 6
parport_pc 45056 0
ppdev 24576 0
lp 20480 0
parport 65536 3 parport_pc,lp,ppdev
ip_tables 32768 0
x_tables 45056 1 ip_tables
autofs4 45056 2
dm_crypt 49152 1
rtsx_pci_sdmmc 28672 0
i915 2273280 17
crct10dif_pclmul 16384 1
crc32_pclmul 16384 0
ghash_clmulni_intel 16384 0
aesni_intel 372736 10
crypto_simd 16384 1 aesni_intel
cryptd 24576 4 crypto_simd,ghash_clmulni_intel
glue_helper 16384 1 aesni_intel
i2c_algo_bit 16384 1 i915
drm_kms_helper 225280 1 i915
syscopyarea 16384 1 drm_kms_helper
sysfillrect 16384 1 drm_kms_helper
psmouse 159744 0
sysimgblt 16384 1 drm_kms_helper
fb_sys_fops 16384 1 drm_kms_helper
cec 53248 2 drm_kms_helper,i915
ahci 40960 3
i2c_i801 32768 0
rc_core 53248 1 cec
libahci 36864 1 ahci
i2c_smbus 20480 1 i2c_i801
r8169 94208 0
xhci_pci 20480 0
rtsx_pci 90112 1 rtsx_pci_sdmmc
drm 561152 10 drm_kms_helper,i915
lpc_ich 24576 0
xhci_pci_renesas 20480 1 xhci_pci
realtek 24576 1
wmi 32768 0
video 49152 1 i915
aplay --dump-hw-params -D hw:x -t raw /dev/zero
跑步
pulseaudio -k
aplay --dump-hw-params -D hw:x -t raw /dev/zero
其中 x 是各自的卡号,台式机和笔记本电脑的结果相同:
Playing raw data '/dev/zero' : Unsigned 8 bit, Rate 8000 Hz, Mono
HW Params of device "hw:x":
--------------------
ACCESS: MMAP_INTERLEAVED RW_INTERLEAVED
FORMAT: S32_LE
SUBFORMAT: STD
SAMPLE_BITS: 32
FRAME_BITS: 64
CHANNELS: 2
RATE: 48000
PERIOD_TIME: (166 1365334)
PERIOD_SIZE: [8 65536]
PERIOD_BYTES: [64 524288]
PERIODS: [2 1024]
BUFFER_TIME: (333 2730667)
BUFFER_SIZE: [16 131072]
BUFFER_BYTES: [128 1048576]
TICK_TIME: ALL
--------------------
aplay: set_params:1343: Sample format non available
Available formats:
- S32_LE
更多细节
我已经尝试过使用不同的 USB 端口,2.0 和 3.0 等。没有什么区别。
我已通过禁用其他音频设备
pavucontrol
- 无济于事。我已经禁用了主板的声卡,并且物理上删除了所有其他音频输出接口 - 删除了 Soundblaster 和可以通过 HDMI 输出音频的显卡。没有什么区别。
我从笔式驱动器(内部没有其他音频硬件)启动了普通的 Ubuntu 21.04 - 不起作用。
我杀死了脉冲音频(
pulseaudio -k
)并使用运行了一个wav样本aplay
。声音仍然失真。Rodecaster Pro 注册为 USB HID 设备,但不支持 UAC2_CS_RANGE usb 函数调用。这就是为什么 Linux 内核引入了特殊处理(https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/sound/usb/format.c?h=v5.8#n412),但这很好 - 嗯,至少在脉冲音频中列出。
我的 Rodecaster Pro 运行固件 2.1.1,但这应该不相关,因为它可以在我的笔记本电脑上运行。
答案1
部分答案:
如果 Rodecaster Pro 的麦克风输入正常,则表示确实被 ALSA 内核驱动程序接收。所以你还应该看到
usbcore: registered new interface driver snd-usb-audio
某处,可能更靠上(如果其他设备正在使用 snd-usb-audio),也可能更靠下。
如果在没有 Pulseaudio 的情况下声音失真,则可能是 ALSA 驱动程序中的问题。您的设备可能snd-usb-audio
需要一个“怪癖”,因为错误消息表明某些功能无法正常工作。
调试:
- 确保内核版本是绝对地完全相同的。
- 禁用脉冲音频。
aplay --dump-hw-params -D hw:0 -t raw /dev/zero
将显示硬件参数,请使用正确的 ALSAhw
设备而不是hw:0
.看看是否有任何差异。- 如果这没有给出任何提示,您将必须
snd-usb-audio
使用您的设备进行调试。我建议针对内核开发人员列表提交错误,开发人员可以为您提供如何获取他们需要的信息的详细信息。