插入 USB 后,如何将网络摄像头麦克风设置为默认麦克风?

插入 USB 后,如何将网络摄像头麦克风设置为默认麦克风?

乍一看,为了实现我的目标,我应该使用udev。简单规则检测到网络摄像头已连接并启动脚本:

SUBSYSTEM=="usb", ATTR{idVendor}=="046d", ATTR{idProduct}=="081b", RUN+="/usr/local/bin/webcam_hotplug_udev.sh"

该脚本设置了一些环境变量并启动pacmd设置默认麦克风:

#!/bin/bash
user_UID=1000
pulseaudio_user=pi
idvendor="046d"
idproduct="081b"
srcname=`sudo -u $pulseaudio_user XDG_RUNTIME_DIR=/run/user/$user_UID pacmd dump | grep "set-card-profile.*$idvendor.*$idproduct.*input" | sed -ne 's/.*\.\([^ ]*\) input:\(.*\)/alsa_input.\1.\2/p'`
sudo -u $pulseaudio_user XDG_RUNTIME_DIR=/run/user/$user_UID pacmd set-default-source $srcname

更方便的方法是较早的答案同样的疑问。

但从那时起,Ubuntu 发生了一些变化。网络摄像头麦克风只能设置为默认脚本来自udev规则已执行完毕。我尝试使用&并添加一些睡觉使用前pacmd。同样的问题。可能与systemd

相关内容