Cada vez que quiero usar Skype, tengo que ir a las preferencias de sonido. Y allí, gire la entrada de audio a " cámara web " y desactive el botón " silenciar ". Es bastante molesto. ¿Hay alguna manera de mantener siempre la misma configuración?
Cada vez que quiero usar Skype, tengo que ir a las preferencias de sonido. Y allí, gire la entrada de audio a " cámara web " y desactive el botón " silenciar ". Es bastante molesto. ¿Hay alguna manera de mantener siempre la misma configuración?
Respuestas:
Al ejecutar pulseaudio, todos los ajustes se pueden definir colocando archivos de configuración personalizados en el .pulse
directorio oculto de su INICIO. Si estos archivos aún no existen, puede usar los archivos estándar /etc/pulse/
como plantilla. La mayoría de las entradas tienen explicaciones detalladas en estos archivos.
~/.pulse/default.pa
para cargar módulos y definir valores predeterminados~/.pulse/client.conf
configurar un cliente para el servidor de sonido~/.pulse/daemon.conf
para definir frecuencias de muestreo y tamponesPara hacer que su cámara web sea la fuente predeterminada, necesitamos conocer el nombre y el número de esta fuente mirando la lista producida por el siguiente comando en una terminal:
pacmd list-sources
Luego editamos la siguiente línea en ~/.pulse/default.pa
:
set-default-source [name]
y reemplace [name]
por el nombre o el número de fuente de la fuente deseada. Luego debemos asegurarnos de que la fuente no esté silenciada agregando esta línea:
set-source-mute [name]|[#n]> 0
Dé el nombre o el índice de su fuente. Puede agregar una variedad de otras configuraciones a las que se hace referencia en el Wiki de PulseAudio (ahora en la página del manual:) man pulse-cli-syntax
.
Se recomienda probar primero todos los comandos a través de la interfaz de línea de comandos antes de cambiar los archivos de configuración. Esto se puede abrir pacmd
en una terminal
/etc/pulse/default.pa
. Use este archivo o cópielo ~/.pulse
antes de editarlo.
pacmd list-sources
. Es decir, para mi dispositivo lo era set-default-source alsa_input.usb-0d8c_USB_PnP_Sound_Device-00-Device.analog-mon
.
Estoy de acuerdo en que el problema es que Pulseaudio no configura un dispositivo USB como predeterminado porque no está presente cuando se inicia el pulso.
Entonces, mi solución a esto es conectarme al sistema que se da cuenta cuando se conecta un dispositivo USB ... ¡UDEV!
Por cierto, estas instrucciones son un poco extravagantes, y supongo que se siente cómodo haciendo cosas en la línea de comandos, y convirtiéndose en el usuario raíz para actualizar archivos udev y hacer que los scripts sean ejecutables.
El primer paso es conectar su cámara web y encontrar el vendedor mágico y los números de producto escribiendo
lsusb
Estoy usando una Microsoft Lifecam, y se muestra como
Bus 001 Device 013: ID 045e:072d Microsoft Corp.
la parte importante es 045e: 072d
Luego, mientras la cámara web está conectada, averigüe el nombre del dispositivo pulseaudio. Tipo
pacmd list-sources
Nuevamente, estoy buscando la línea que comienza y name:
luego tiene algo acerca de una Microsoft Lifecam ... aquí está
name: <alsa_input.usb-Microsoft_Microsoft___LifeCam_VX-5500-02-VX5500.analog-mono>
entonces mi nombre de dispositivo pulseaudio será alsa_input.usb-Microsoft_Microsoft___LifeCam_VX-5500-02-VX5500.analog-mono
Luego hice una nueva regla udev que se activa cuando se inserta un dispositivo USB con vendor = 045e y product = 072d. Para hacer una regla, cree un nuevo archivo llamado /etc/udev/rules.d/
ALGO.rules
(llamé a mi archivo /etc/udev/rules.d/95-webcam-mic.rules
).
Pon esta línea en el archivo
SUBSYSTEMS=="usb", ATTR{idVendor}=="045e", ATTR{idProduct}=="072d", ACTION=="add", GROUP="audio", RUN+="/usr/local/bin/webcam-mic"
Recuerde reemplazar ATTR {idVendor} y ATTR {idProduct} con los valores de su cámara web.
Lo que hace esta regla es ejecutar un script para configurar el dispositivo usb para la entrada, esa es la RUN+="/usr/local/bin/webcam-mic"
parte.
Tiempo de resumen rápido. Cada vez que conecto mi cámara web quiero ejecutar el comando
pacmd set-default-source alsa_input.usb-Microsoft_Microsoft___LifeCam_VX-5500-02-VX5500.analog-mono
Pero el comando debe ejecutarse como yo (el usuario que ejecuta el escritorio), pero udev se ejecuta como usuario raíz, por lo que cuando udev ejecuta mi comando, necesito que cambie a mi usuario y luego ejecute el comando.
Entonces tenemos 2 opciones.
Rápido y sucio . Haga que la regla de udev se ejecute, su james -c pacmd set-default-source...
esto es tan incorrecto que ni siquiera puedo terminar de escribir el comando. ¿Qué pasa si cambias las webcams? ¿Qué pasa si instala esto para otro usuario?
Ligeramente más limpio . Ejecute un script que lea un archivo predeterminado que tenga el nombre del dispositivo pulseaudio y su nombre de usuario. Si quieres los archivos están en GitHub. Primero el guión /usr/local/bin/webcam-mic
. El archivo predeterminado /etc/default/webcam-mic
solo necesita definir las 2 variables de shell, según el comentario en la esencia. Ponga el script en /usr/local/bin/
y hágalo ejecutable. Luego, coloque el archivo predeterminado /etc/defaults/
y edítelo para usar su nombre de usuario y el dispositivo pulseaudio de antes.
¡Buena suerte!
La solución de Takkat no estaba funcionando para mí, aquí está mi solución para cualquiera que todavía tenga un problema con esto.
Hubo dos problemas para mí con la solución de Takkat. Primero, me di cuenta de que debe haber una demora después del inicio antes de que se pueda cambiar al micrófono (utilizo el comando 'dormir' en mi solución a continuación). Además, el comando 'set-default-source' estaba funcionando para encender el micrófono USB, pero de alguna manera Skype no lo estaba reconociendo y continuó usando el micrófono interno.
Para que esto funcione, primero es útil instalar pavucontrol. En pavucontrol, abra la pestaña 'Configuración' y observe lo que sucede con los comandos a continuación para verificar que las cosas funcionen según lo previsto.
Luego, desde una terminal ingrese:
pacmd
Desde allí, ingrese:
list-cards
En la salida, busque el número de índice del audio USB que desea (en mi caso, fue '1'). Luego, eche un vistazo a las líneas enumeradas en 'perfiles' tanto para la tarjeta predeterminada como para la tarjeta USB. Deben ser los mismos que los enumerados en pavucontrol, y pueden ser algo como 'salida: entrada + salida', 'apagado' o 'entrada: analógico-mono', etc. Aún en la línea de comando pacmd, el comando set-card-profile <index number> <profile name>
debería cambiar la configuración en pavucontrol. Lo que queremos hacer aquí es cambiar el audio interno de dúplex a salida solamente, y el USB a entrada.
Una vez que encontremos los perfiles apropiados, queremos crear un comando de inicio para cambiar algunas configuraciones justo después del inicio. Para crear un comando de inicio, abra el tablero y busque 'aplicaciones de inicio', luego haga clic en 'agregar', luego ingrese el nombre de su elección y el comando apropiado a continuación.
Después de la prueba y error, mi comando de inicio terminó así:
bash -c "sleep 30 && pacmd set-card-profile 0 output:analog-stereo && pacmd set-card-profile 1 off && pacmd set-card-profile 1 input:analog-mono"
Explicación: Descubrí que el comando 'dormir' era necesario, esto significa que el comando se ejecuta después de una pausa, que configuré en 30 segundos (creo que esto puede ser menos, juegue con esto). El siguiente comando (después de '&&') es obtener el perfil de tarjeta predeterminado (interno) para cambiar de entrada + salida (dúplex, que es el valor predeterminado) a solo salida. El siguiente comando es para la tarjeta de sonido USB (en mi caso, el número es '1') para apagar. El último comando es que esta misma tarjeta se vuelva a encender en el modo 'input: analog-mono'
Es posible que tenga que jugar con esta configuración para encontrar la que funcione.
Ahora, cuando inicio, mi micrófono USB está listo para usar después de 30 segundos, y Skype usa el micrófono correcto.
intente esto, haga clic en el icono del altavoz en el panel superior, las preferencias de clic. allí puede seleccionar una opción de entrada predeterminada para su micrófono y probablemente cambiar alguna configuración de hardware para que funcione correctamente.