我对 Linux 还很陌生——本周第一次安装 Ubuntu。我遇到了一个让我完全不知所措的问题。在设置 - 声音我的输出设备被检测到,但是我的输入设备没有被检测到,这意味着例如我的声音无法在网络摄像头视频等上听到。
我的笔记本电脑是 HP Envy x360,配备 Ryzen 5 4500 CPU。我有双启动,也运行 Windows 10。在 Windows 中我的麦克风被检测到并且工作正常。
我正在寻找自己的方法,但我按照 2.1 中的步骤操作:https://wiki.archlinux.org/index.php/PulseAudio/Troubleshooting#Microphone_not_detected_by_PulseAudio
arecord -l
制作:
**** List of CAPTURE Hardware Devices ****
card 1: Generic_1 [HD-Audio Generic], device 0: ALC245 Analog [ALC245 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
因此,根据 Arch Linux 页面,我的声卡被称为
hw:1,0
然后我按照说明进行操作并/etc/pulse/default.pa
通过在load-module module-alsa-source device=hw:1,0
此处输入进行编辑:
### Automatically load driver modules depending on the hardware available
.ifexists module-udev-detect.so
load-module module-alsa-source device=hw:1,0
load-module module-udev-detect
.else
在 PulseAudio 音量控制中我现在有一个输入设备:
但没有输入设备设置 - 声音麦克风仍然无法使用
我也尝试按照以下步骤操作:https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/1840725
我安装并运行hdajackretask
。当我尝试覆盖未连接的引脚 12 并单击“应用”时,我收到以下错误消息:
要重置用户配置我输入:
rm -r ~/.config/pulse; pulseaudio -k
然后注销并重新登录。现在我已检测到麦克风(进展顺利!)...但没有录制声音...
编辑23/6
我取得了一些进展,但麦克风仍然无法正常工作。
我曾经hdajackretask
将黑色麦克风、左侧引脚 ID:0x19 设置为内置麦克风,选择覆盖并安装启动覆盖。
然后我就可以在 PulseAudio 的配置 - 配置文件中选择模拟立体声双工。以前这个功能是“不可用”的。
现在,奇怪的是……当我的笔记本电脑上播放音乐或通知等声音时,PulseAudio 麦克风的监视器栏会做出响应,显示它正在检测信号。但是,当我对着它说话时,没有任何反应。如果我从命令行录制音频,音频文件会保持静音,例如
sudo arecord -f S16_LE -c 2 -d 5 -r 44100 --device="hw:1,0" /tmp/test-mic.wav
aplay /tmp/test-mic.wav
编辑:24/6
回应下面的评论,这是 Alsa 搅拌机,据我所见,没有什么异常?
答案1
该设备使用数字麦克风,您在 hdajackretask 中选择的是设备左侧的 3.5 毫米插孔,而不是内部数字麦克风。
我认为 SOF-Firmware 驱动程序应该可以解决您的问题。
答案2
我的解决方案也是自定义内核。我有一台最新的 HP Envy 笔记本电脑(HP ENVY x360 笔记本电脑 - 15z-ds100),配备 Ryzen 4700u Renoir 处理器并运行 ubuntu 20.04。为了让内置麦克风正常工作,我构建了最新的内核并进入 menuconfig 并导航到设备驱动程序 -> 声卡支持 -> 高级 linux 声音架构 -> ALSA 用于 SoC 音频支持。我启用了 AMD 音频协处理器 - renoir 支持和 AMD Renoir 对 DMIC 的支持作为模块。
$ grep -i renoir .config
CONFIG_SND_SOC_AMD_RENOIR=m
CONFIG_SND_SOC_AMD_RENOIR_MACH=m
构建内核包的说明可以在这里找到:https://wiki.ubuntu.com/KernelTeam/GitKernelBuild
开机后麦克风工作
uname -a
Linux envy15 5.8.0-rc4-custom #1 SMP Fri Jul 10 11:36:25 EDT 2020 x86_64 x86_64 x86_64 GNU/Linux
请注意,驱动程序 snd_rn_pci_acp3x 正由设备 AMD Raven/Raven2/FireFlight/Renoir 音频处理器使用。之前显示 N/A。
$ inxi -Fxxxz
System: Kernel: 5.8.0-rc4-custom x86_64 bits: 64 compiler: N/A Desktop: Gnome 3.36.3
wm: gnome-shell dm: GDM3 3.34.1 Distro: Ubuntu 20.04 LTS (Focal Fossa)
Machine: Type: Convertible System: HP product: HP ENVY x360 Convertible 15-ds1xxx v: N/A
serial: <filter> Chassis: type: 31 serial: <filter>
Mobo: HP model: 87A9 v: 27.16 serial: <filter> UEFI: AMI v: F.03 date: 05/25/2020
Battery: ID-1: BAT0 charge: 4.0 Wh condition: 56.6/56.6 Wh (100%) volts: 13.8/15.1
model: 333-AC-31-A SA04055XL type: Li-ion serial: <filter> status: Discharging
Device-1: hid-0018:04F3:29CD.0001-battery model: ELAN2514:00 04F3:29CD serial: N/A
charge: N/A status: N/A
CPU: Topology: 8-Core model: AMD Ryzen 7 4700U with Radeon Graphics bits: 64 type: MCP
arch: Zen rev: 1 L2 cache: 4096 KiB
flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm bogomips: 31940
Speed: 1397 MHz min/max: 1400/2000 MHz boost: enabled Core speeds (MHz): 1: 1397
2: 1397 3: 1397 4: 1397 5: 1397 6: 1397 7: 1397 8: 1397
Graphics: Device-1: AMD Renoir vendor: Hewlett-Packard driver: amdgpu v: kernel bus ID: 04:00.0
chip ID: 1002:1636
Display: x11 server: X.Org 1.20.8 driver: ati,fbdev unloaded: modesetting,radeon,vesa
compositor: gnome-shell resolution: 1920x1080~60Hz
OpenGL: renderer: AMD RENOIR (DRM 3.38.0 5.8.0-rc4-custom LLVM 10.0.0)
v: 4.6 Mesa 20.0.8 direct render: Yes
Audio: Device-1: AMD vendor: Hewlett-Packard driver: snd_hda_intel v: kernel bus ID: 04:00.1
chip ID: 1002:1637
Device-2: AMD Raven/Raven2/FireFlight/Renoir Audio Processor vendor: Hewlett-Packard
driver: snd_rn_pci_acp3x v: kernel bus ID: 04:00.5 chip ID: 1022:15e2
Device-3: AMD Family 17h HD Audio vendor: Hewlett-Packard driver: snd_hda_intel
v: kernel bus ID: 04:00.6 chip ID: 1022:15e3
Sound Server: ALSA v: k5.8.0-rc4-custom
Network: Device-1: Intel Wi-Fi 6 AX200 driver: iwlwifi v: kernel bus ID: 02:00.0
chip ID: 8086:2723
IF: wlo1 state: up mac: <filter>
IF-ID-1: br-66529c8dff06 state: down mac: <filter>
IF-ID-2: docker0 state: down mac: <filter>
Drives: Local Storage: total: 506.22 GiB used: 131.75 GiB (26.0%)
ID-1: /dev/mmcblk0 model: 00000 size: 29.28 GiB serial: <filter> scheme: MBR
ID-2: /dev/nvme0n1 vendor: Intel model: SSDPEKNW512G8H size: 476.94 GiB
speed: 31.6 Gb/s lanes: 4 serial: <filter> rev: HPS0 scheme: GPT
Partition: ID-1: / size: 239.31 GiB used: 131.67 GiB (55.0%) fs: ext4 dev: /dev/nvme0n1p5
Sensors: System Temperatures: cpu: 45.0 C mobo: 38.0 C gpu: amdgpu temp: 44 C
Fan Speeds (RPM): N/A
Info: Processes: 332 Uptime: 19m Memory: 15.07 GiB used: 1.88 GiB (12.5%) Init: systemd
v: 245 runlevel: 5 Compilers: gcc: 9.3.0 alt: 8/9 Shell: bash v: 5.0.16
running in: gnome-terminal inxi: 3.0.38
答案3
内核 5.8rc6 解决了 Ubuntu 20.04 中的麦克风问题。仍在研究如何解决顶部扬声器问题。使用 HDAJackRetask 的各种设置均未解决。我实现的最好结果是前置 L 和 R,顶部 R 代表 L 和 R,仍在寻求帮助来解决这个剩余的问题。
答案4
更新:现在我的 Archlinux 终于可以使用该线程提供的内核补丁来运行自定义内核了:https://forum.manjaro.org/t/configuring-amd-ryzen-4500u-laptop/144712/43
它显示为“ACP 多通道输入 - HP-HPENVYx360Convertible13_ay0xxx-Type1ProductConfigId-876E”。