Pulseaudio> = 1.0
Al editar el /etc/pulse/default.pa
podemos cargar el módulo de módulo de pulseaudio -switch-on-connect para conectarse automáticamente a un receptor de audio tan pronto como se presente al servidor de sonido pulseaudio. Necesitamos insertar la siguiente línea
load-module module-switch-on-connect
Versiones anteriores de pulseaudio
Los dispositivos Bluetooth se reconocen en PulseAudio tan pronto como están presentes. Sin embargo, la conexión debe hacerse manualmente en la configuración de audio. Hay una GUI que permite la conexión de un clic a dispositivos BT ( stream2ip ).
Editar: desde la versión 0.2.5 stream2ip permite la conexión automática a dispositivos Bluetooth.
Editar: puede configurar su dispositivo bluez como dispositivo predeterminado (por ejemplo, usando pactl o en la configuración de configuración) con retroceso al audio interno si no hay un dispositivo bluetooth presente.
Editar: Aquí hay un script Python rápido y sucio para darle una idea de cómo hacer el trabajo:
#!/usr/bin/env python
#-*- coding: utf-8 -*-
#
# bt-autoconnect
# Autoconnects Bluetooth Devices to PulseAudio
# (c) Takkat Nebuk
# Licence: GPLv3
# usage:
# bt-autoconnect <MAC> <timeout>
import subprocess
import time
import sys
import string
cli_options = sys.argv
def main():
MAC = cli_options[1]
timeout = cli_options[2]
PMAC = string.replace(MAC,':','_') # PA don't know ':', needs '_'
pa_args = ['pacmd set-default-sink bluez_sink.' + PMAC]
bt_args = ['sdptool browse ' + MAC]
err = False
while err == False:
if subprocess.call(bt_args, shell=True) == 0:
err = subprocess.call(pa_args, shell=True)
time.sleep(int(timeout))
exit()
if __name__ == "__main__":
main()
Simplemente copie este script y guárdelo como bt-autoconnect.py . Haga que el script sea ejecutable o ejecútelo desde la línea de comandos (recomendado) cd /script/directory
y luego escriba:
python bt-autoconnect.py [MAC] [timeout]
Reemplace MAC por el MAC de su dispositivo Bluetooth (por ejemplo, 00: 0C: 78: 4F: B6: B5) y establezca un tiempo de espera deseado (por ejemplo, 10) en segundos cuando el script busca el dispositivo. Este script escuchará el MAC dado cada tiempo de espera de un dispositivo Bluetooth y lo conectará a PulseAudio si está presente. El script se ejecutará para siempre hasta que se elimine o se cierre el terminal virtual.
A veces, PulseAudio parece no darse cuenta de que el dispositivo está presente nuevamente después de haberlo apagado. Con algo de esperanza pulseaudio -k
hace que reaparezca.
No es lujoso, no tiene interfaz gráfica de usuario, pero al menos en mi configuración funcionó bien.
Edite para los interesados: se lanza bt-autoconnect con GUI para una configuración conveniente. Por favor, presente errores o sugerencias allí. Gracias por probar
sudo service pulseaudio restart
o reiniciar para que el cambio surta efecto.Desafortunadamente, solo he visto la respuesta de Takkat, parece ser la mejor manera que la mía.
Supongo que esto podría ser relevante para Pulseaudio <1.0. No utiliza sondeo, pero escucha eventos de Bluetooth en dbus:
fuente