42 votos

¿Puedo usar mi pc como un A2DP receptor?

En primer lugar, el problema: estoy usando un reproductor MP3 Cowon como mi principal reproductor de música básicos de tapones para los oídos.

Ofrece A2DP y me gustaría tener mi netbook (que se ejecuta UNE 10.04) actuar como receptor.

Algunos recursos en la web sobre a2dp, pero la mayoría están fuera de la fecha:

48voto

slangasek Puntos 1742

Para utilizar su máquina de Ubuntu como un a2dp dispositivo Bluetooth, debe configurar primero es registrarse como un "a2dp receptor" de la estación.

El bluez paquete en Ubuntu (10.04 y arriba) incluye una utilidad llamada sdptool que puede ser utilizado para comprobar si un dispositivo Bluetooth está configurado como un a2dp fregadero o no. Aquí está la salida de sdptool ejecutar en contra de mi auricular Bluetooth (la dirección que está tomando en la "configuración de Bluetooth" en el diálogo de gnome-control-center):

$ sdptool search --bdaddr 00:18:16:3A:3B:D4 a2snk
Searching for a2snk on 00:18:16:3A:3B:D4 ...
Service RecHandle: 0x10002
Service Class ID List:
  "Audio Sink" (0x110b)
Protocol Descriptor List:
  "L2CAP" (0x0100)
    PSM: 25
  "AVDTP" (0x0019)
    uint16: 0x102
Profile Descriptor List:
  "Advanced Audio" (0x110d)
    Version: 0x0102

$

y aquí está la salida cuando se ejecuta en contra de mi local de la máquina de Ubuntu:

$ sdptool search --bdaddr local a2snk
Searching for a2snk on FF:FF:FF:00:00:00 ...
$

Esto muestra que la máquina de Ubuntu no es la publicidad a sí mismo como un a2dp fregadero. Se anuncia como un a2dp fuente, sin embargo:

$ sdptool search --bdaddr local a2src
Searching for a2src on FF:FF:FF:00:00:00 ...
Service Name: Audio Source
Service RecHandle: 0x10003
Service Class ID List:
  "Audio Source" (0x110a)
Protocol Descriptor List:
  "L2CAP" (0x0100)
    PSM: 25
  "AVDTP" (0x0019)
    uint16: 0x102
Profile Descriptor List:
  "Advanced Audio" (0x110d)
    Version: 0x0102

Esto permite que la máquina de Ubuntu para emparejar correctamente con el auricular como una fuente de audio, pero no permitir el uso de la máquina de Ubuntu como una salida (receptor) de audio Bluetooth.

Si edita /etc/bluetooth/audio.conf, puede habilitar a2dp disipador de apoyo mediante la adición de esta línea debajo de la [General] sección:

  Enable=Source

Esto es contradictorio con nombre, ya que lo que estamos añadiendo aquí es Bluetooth disipador de apoyo, no es fuente de apoyo-y en contradicción con el comentario de este archivo, que pretende que todos los servicios implementados están habilitados de forma predeterminada. :(

Después de realizar este cambio, tendrá que reiniciar bluetoothd por ejecutar sudo service bluetooth restart.

Si previamente ha emparejado el dispositivo Android y Ubuntu equipo, mientras que tratando de conseguir este trabajo, será necesario eliminar el acoplamiento en ambos lados y re-par de ellos con el fin de obtener de Android para reconocer a Ubuntu como un dispositivo de audio disponible.

Una vez que hayas hecho esto, el dispositivo Android debe aparecer como un dispositivo de entrada bajo PulseAudio. Si PulseAudio no detecta la nueva fuente de audio Bluetooth, es posible que deba instalar y cargar el módulo Bluetooth, desde la línea de comandos:

 sudo apt-get install pulseaudio-module-bluetooth
 pactl load-module module-bluethooth-discover

Entonces usted necesita decirle a PulseAudio para esta ruta de entrada de audio a la salida/fregadero (tales como los altavoces o de los auriculares Bluetooth) usando una conexión de bucle invertido (una línea recta desde una fuente a un receptor).

Las versiones posteriores de PulseAudio puede tener el módulo bluetooth política incluida y puede que ya han establecido un dispositivo de loopback para usted, pero este no parece ser el caso más común.

Una manera semiautomática para configurar la conexión de bucle invertido - si usted también tiene el pavucontrol GUI programa instalado - es simplemente cargar el módulo de bucle invertido y configurarlo mediante pavucontrol, desde PulseAudio recordará la configuración. Cargar el módulo se realiza desde el comando usando pactl:

 pactl load-module module-loopback

No se preocupe si usted no oye nada, o si te extraño efectos de retroalimentación, tenemos que decirle a la recién creada dispositivo de fuente para obtener los insumos y el lavabo para enviar la salida a la primera.

Abierto pavucontrol y abrir su ficha Configuración. Asegúrese de que su dispositivo Bluetooth se muestra aquí (después de la vinculación con el uso de blueman-gerente u otro de Bluetooth de la herramienta) y el perfil A2DP. Cambie a la Entrada de la ficha dispositivos y asegúrese de que su dispositivo se muestra aquí y no está silenciado. Ahora cambie a la pestaña de Grabación y hacer que el recién creado conexión de bucle invertido utilizar el dispositivo como una fuente con la casilla de selección al lado del botón de silencio. Cambie a la pestaña de Reproducción para seleccionar el fregadero de la conexión de bucle invertido debe utilizar de la misma manera. Si el dispositivo de loopback no se muestran en las pestañas, asegúrese de que todos los flujos se muestran mediante el selectbox en la parte inferior de cada ficha.

Ahora debería escuchar el audio de su dispositivo, si está jugando, en los altavoces, o cualquiera de salida sink seleccionado. Cuando el dispositivo se desconecta el dispositivo de loopback se reserva a un receptor y de origen, que puede no ser deseable, así que asegúrese de silenciar el dispositivo loopback hasta que usted lo necesite. La conexión de bucle invertido restaurará el mismo sink/fuente la próxima vez que el mismo dispositivo Bluetooth está conectado gracias al módulo-*-restauración de los módulos.

Si eso no funciona, o no tiene pavucontrol instalado, puede configurar el retorno usando el siguiente método:

 pactl load-module module-loopback source_dont_move=yes source=$BTSOURCE sink=$SINK

(Reemplace $BTSOURCE con el nombre de la fuente para su dispositivo Bluetooth como se ve por PulseAudio, por ejemplo bluez_source.14_DA_E9_2A_D7_57; y reemplace $SINK con el nombre de la salida PulseAudio desea enviar el flujo de audio, e.g: alsa_output.pci-0000_00_1b.0.analog-stereo. Usted puede dejar el fregadero argumento completo y tenerlo de reserva activa fregadero, y cambiar más adelante a través de pavucontrol.)

  • Usted puede encontrar $SINK con pactl list sinks, se muestra después de la Name:
  • Del mismo modo, usted puede ver el $BTSOURCE con pactl list sources
  • El source_dont_move argumento impide la conexión de bucle invertido de recurrir a otra fuente de audio cuando el dispositivo Bluetooth está desconectado. Es lugar retirado y tendrás que configurar de nuevo la próxima vez.

He aquí un ejemplo de lo que a uno le parezca (Recuerde volver a colocar la : con _ en la dirección de Bluetooth!):

pactl load-module module-loopback source_dont_move=yes source=bluez_source.14_DA_E9_2A_D7_57 sink=alsa_output.pci-0000_00_14.2.analog-stereo

Si la carga de la reserva módulo falla, pruebe a quitar el source_dont_move=yes argumento, fue primero en la versión 1.0. Entonces tenga cuidado sin embargo, para eliminar esta conexión de bucle invertido antes de dejar este audio, o si, por ejemplo, su ordenador portátil micrófono está silenciado, usted puede conseguir algunos muy malos comentarios. Al caer este bucle de conexión manualmente cuando haya terminado, ejecute:

pactl unload-module $(pactl list short modules | grep "loopback.*$BTSOURCE" | cut -f1)

De nuevo, sustituya $BTSOURCE con el nombre de la PulseAudio fuente que se refiere a su dispositivo Bluetooth. Usted también puede descargar el módulo mediante el identificador devuelto por la carga del módulo de comando:

$ pactl load-module module-loopback source_dont_move=yes source=bluez_source.14_DA_E9_2A_D7_57 sink=alsa_output.pci-0000_00_14.2.analog-stereo
15
$ pactl unload-module 15

Referencias:

  • Blog de esbozar algunos de los detalles de cómo se está fijo en Ubuntu.

13voto

user47059 Puntos 128

Yo uso blueman, instalado desde el centro de software de Ubuntu. Haga clic en el blueman icono*-> "servicios locales" -> audio-> Marque la casilla "advanced audio de recepción" se inclinó. Por cierto, yo lo uso para escuchar en mi Ubuntu 11.10 portátil lo puedo jugar en mi teléfono android.

*El blueman icono se muestra en la esquina inferior derecha en gnome shell + ubuntu 11.10, que es mi caso. Espero que esto sea útil de alguna manera para usted.

7voto

Toasty Puntos 71

Es muy fácil ahora en Ubuntu 12.04

Conecte su dispositivo bluetooth

La búsqueda del dispositivo bluetooth y tomar nota del número de origen:

pactl list sources 

Hacer un bucle para el dispositivo bluetooth:

pactl load-module module-loopback source=$SOURCE_NUMBER  

Donde $SOURCE_NUMBER es el número que previamente tomó nota de.

Por ejemplo, yo entré a la siguiente para obtener la reproducción de audio para el trabajo:

$ pactl load-module module-loopback source=3  

Eso es todo! He encontrado la solución en la parte superior de contestar a ser un poco complicado, así que he simplificado de esta manera (y mucho menos a escribir y copiar/pegar). Aunque mi solución probablemente va a romper si se quita de la lista de dispositivos de audio antes de que el dispositivo bluetooth por pactl list sources.

También, no se olvide de quitar el bucle de módulo antes de desconectar el dispositivo de bluetooth:

Tome nota del número del módulo del dispositivo de loopback que ha creado:

pactl list short modules

Retire el dispositivo de loopback:

pactl unload-module $MODULE_NUMBER

Las respuestas anteriores fueron escritos antes de la 12.04 de la versión, así que estoy seguro de que hubo algunos cambios. Por ejemplo, yo no tenía que habilitar manualmente el uso de dispositivos bluetooth como una fuente de audio (activada por defecto). Sin embargo, yo a veces para alternar los "Medios de comunicación de Audio" perfil en mi configuración de bluetooth de mi teléfono (Samsung Captivate corriendo CyanogenMod 9.1.0).

Probablemente, hay una manera de aprovechar dbus-monitor usando un script de shell para ver por bluetooth A2DP conexiones del dispositivo y automáticamente la carga de un módulo de bucle invertido para ella, pero eso es un poco por encima de mi cabeza.

Esperemos que no habrá necesidad de hacerlo manualmente en Ubuntu 12.10.

3voto

user184485 Puntos 21

Para 13.04, par su dispositivo fuente con el ubuntu portátil y funciona! Muy fresco para descubrir que era fácil que ahora.

0voto

Solución aún más sencilla que la de la respuesta.

Usted puede simplemente ir

sudo apt-get install pulseaudio*

A continuación, reiniciar el sistema. Después de reiniciar el equipo, conectar el Bluetooth y simplemente reproducir la música en su teléfono. Todo va a ser transmitido a su equipo y jugar en los altavoces del ordenador.

Y sí! eres bienvenido.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: