Envoyer via bluetooth l’audio d’un mobile vers un PC sous linux/XFCE

Pour le fun j’ai configuré bluetooth de ma station Linux sous mageia 6/XFCE pour qu’elle rediffuse sur ses hauts parleurs le son provenant d’un mobile. Tout d’abord j’ai installé les packages suivants pulseaudio-module-bluetooth, blueman, bluez et obexftp. Ils sont en théorie installés par défaut sur une distribution linux récente, mais sait-on jamais. J’ai dû bidouiller manuellement la configuration du serveur audio pulseaudio pour qu’il reconnaisse en tant que sortie/entrée audio les périphériques audio bluetooth en rajoutant en fin du fichier /etc/pulse/system.pa les lignes suivantes:

[pastacode lang= »bash » manual= »load-module%20module-bluetooth-policy%0Aload-module%20module-bluetooth-discover » message= » » highlight= » » provider= »manual »/]

et en rajoutant le fichier /etc/dbus-1/system.d/pulseaudio-bluetooth.conf contenant:

[pastacode lang= »bash » manual= »%3Cbusconfig%3E%0A%0A%20%20%3Cpolicy%20user%3D%22pulse%22%3E%0A%20%20%20%20%3Callow%20send_destination%3D%22org.bluez%22%2F%3E%20%0A%20%20%3C%2Fpolicy%3E%0A%0A%3C%2Fbusconfig%3E » message= » » highlight= » » provider= »manual »/]

on relance pulseaudio avec systemd

[pastacode lang= »bash » manual= »systemctl%20stop%20pulseaudio%0Asystemctl%20start%20pulseaudio » message= » » highlight= » » provider= »manual »/]

on vérifie que le bluetooth est bien activé sur la machine en tapant systemctl status bluetooth. Cela doit donner quelque chose comme cela :

[pastacode lang= »bash » manual= »%E2%97%8F%20bluetooth.service%20-%20Bluetooth%20service%0A%20%20%20Loaded%3A%20loaded%20(%2Fusr%2Flib%2Fsystemd%2Fsystem%2Fbluetooth.service%3B%20enabled%3B%20vendor%20preset%3A%20enabled)%0A%20%20%20Active%3A%20active%20(running)%20since%20dim.%202017-11-19%2009%3A24%3A34%20CET%3B%205h%2040min%20ago%0A%20%20%20%20%20Docs%3A%20man%3Abluetoothd(8)%0A%20Main%20PID%3A%20966%20(bluetoothd)%0A%20%20%20Status%3A%20%22Running%22%0A%20%20%20CGroup%3A%20%2Fsystem.slice%2Fbluetooth.service%0A%20%20%20%20%20%20%20%20%20%20%20%E2%94%94%E2%94%80966%20%2Fusr%2Flibexec%2Fbluetooth%2Fbluetoothd%0A%0Anov.%2019%2009%3A24%3A34%20predator.kervao.fr%20systemd%5B1%5D%3A%20Starting%20Bluetooth%20service…%0Anov.%2019%2009%3A24%3A34%20predator.kervao.fr%20bluetoothd%5B966%5D%3A%20Bluetooth%20daemon%205.45%0Anov.%2019%2009%3A24%3A34%20predator.kervao.fr%20systemd%5B1%5D%3A%20Started%20Bluetooth%20service.%0Anov.%2019%2009%3A24%3A34%20predator.kervao.fr%20bluetoothd%5B966%5D%3A%20Starting%20SDP%20server%0Anov.%2019%2009%3A24%3A34%20predator.kervao.fr%20bluetoothd%5B966%5D%3A%20Bluetooth%20management%20interface%201.14%20initialized » message= » » highlight= » » provider= »manual »/]

Pour appairer en ligne de commande on tapera la commande bluetoothctl qui va nous donner au premier lancement:

[pastacode lang= »bash » manual= »%5BNEW%5D%20Controller%2040%3AE2%3A30%3A4B%3A65%3AEE%20ChromeLinux_2B7B%20%5Bdefault%5D%0AAgent%20registered » message= » » highlight= » » provider= »manual »/]

on peut voir notre contrôleur interne bluetooth qui sera reconnu avec le nom ChromeLinux_2B7B avec son adresse spécifique. Avec la commande show au prompt [bluetooth]# on a un peu plus de détails:

[pastacode lang= »bash » manual= »Controller%2040%3AE2%3A30%3A4B%3A65%3AEE%0A%20%20%20%20%20%20%20%20Name%3A%20predator.kervao.fr%0A%20%20%20%20%20%20%20%20Alias%3A%20ChromeLinux_2B7B%0A%20%20%20%20%20%20%20%20Class%3A%200×000104%0A%20%20%20%20%20%20%20%20Powered%3A%20yes%0A%20%20%20%20%20%20%20%20Discoverable%3A%20yes%0A%20%20%20%20%20%20%20%20Pairable%3A%20yes%0A%20%20%20%20%20%20%20%20UUID%3A%20Generic%20Attribute%20Profile%20(00001801-0000-1000-8000-00805f9b34fb)%0A%20%20%20%20%20%20%20%20UUID%3A%20A%2FV%20Remote%20Control%20%20%20%20%20%20%20%20(0000110e-0000-1000-8000-00805f9b34fb)%0A%20%20%20%20%20%20%20%20UUID%3A%20PnP%20Information%20%20%20%20%20%20%20%20%20%20%20(00001200-0000-1000-8000-00805f9b34fb)%0A%20%20%20%20%20%20%20%20UUID%3A%20Generic%20Access%20Profile%20%20%20%20(00001800-0000-1000-8000-00805f9b34fb)%0A%20%20%20%20%20%20%20%20UUID%3A%20A%2FV%20Remote%20Control%20Target%20(0000110c-0000-1000-8000-00805f9b34fb)%0A%20%20%20%20%20%20%20%20Modalias%3A%20usb%3Av1D6Bp0246d052D%0A%20%20%20%20%20%20%20%20Discovering%3A%20no » message= » » highlight= » » provider= »manual »/]

maintenant on allume à proximité un périphérique bluetooth pour ma part un smartphone Lenovo B. Au prompt [bluetooth]# on tape scan on et voilà le résultat:

[pastacode lang= »bash » manual= »%5BNEW%5D%20Device%2048%3A88%3ACA%3A48%3AF9%3A18%20Lenovo%20A2016a40″ message= » » highlight= » » provider= »manual »/]

on l’appaire en tapant pair 48:88:CA:48:F9:18 et voici le résultat :

[pastacode lang= »bash » manual= »Attempting%20to%20pair%20with%2048%3A88%3ACA%3A48%3AF9%3A18%0A%5BCHG%5D%20Device%2048%3A88%3ACA%3A48%3AF9%3A18%20Connected%3A%20yes%0ARequest%20confirmation%0A%5Bagent%5D%20Confirm%20passkey%20920234%20(yes%2Fno)%3A » message= » » highlight= » » provider= »manual »/]

il faudra d’abord autoriser la connexion sur le mobile avant d’écrire yes. Et voilà le résultat:

[pastacode lang= »bash » manual= »%5BCHG%5D%20Device%2048%3A88%3ACA%3A48%3AF9%3A18%20Modalias%3A%20bluetooth%3Av000Fp1200d1436%0A%5BCHG%5D%20Device%2048%3A88%3ACA%3A48%3AF9%3A18%20UUIDs%3A%2000001105-0000-1000-8000-00805f9b34fb%0A%5BCHG%5D%20Device%2048%3A88%3ACA%3A48%3AF9%3A18%20UUIDs%3A%200000110a-0000-1000-8000-00805f9b34b%0A%5BCHG%5D%20Device%2048%3A88%3ACA%3A48%3AF9%3A18%20UUIDs%3A%200000110c-0000-1000-8000-00805f9b34fb%0A%5BCHG%5D%20Device%2048%3A88%3ACA%3A48%3AF9%3A18%20UUIDs%3A%200000110e-0000-1000-8000-00805f9b34fb%0A%5BCHG%5D%20Device%2048%3A88%3ACA%3A48%3AF9%3A18%20UUIDs%3A%2000001112-0000-1000-8000-00805f9b34fb%0A%5BCHG%5D%20Device%2048%3A88%3ACA%3A48%3AF9%3A18%20UUIDs%3A%2000001115-0000-1000-8000-00805f9b34fb%0A%5BCHG%5D%20Device%2048%3A88%3ACA%3A48%3AF9%3A18%20UUIDs%3A%2000001116-0000-1000-8000-00805f9b34fb%0A%5BCHG%5D%20Device%2048%3A88%3ACA%3A48%3AF9%3A18%20UUIDs%3A%200000111f-0000-1000-8000-00805f9b34fb%0A%5BCHG%5D%20Device%2048%3A88%3ACA%3A48%3AF9%3A18%20UUIDs%3A%200000112f-0000-1000-8000-00805f9b34fb%0A%5BCHG%5D%20Device%2048%3A88%3ACA%3A48%3AF9%3A18%20UUIDs%3A%2000001132-0000-1000-8000-00805f9b34fb%0A%5BCHG%5D%20Device%2048%3A88%3ACA%3A48%3AF9%3A18%20UUIDs%3A%2000001200-0000-1000-8000-00805f9b34fb%0A%5BCHG%5D%20Device%2048%3A88%3ACA%3A48%3AF9%3A18%20UUIDs%3A%2000001800-0000-1000-8000-00805f9b34fb%0A%5BCHG%5D%20Device%2048%3A88%3ACA%3A48%3AF9%3A18%20UUIDs%3A%2000001801-0000-1000-8000-00805f9b34fb%0A%5BCHG%5D%20Device%2048%3A88%3ACA%3A48%3AF9%3A18%20ServicesResolved%3A%20yes%0A%5BCHG%5D%20Device%2048%3A88%3ACA%3A48%3AF9%3A18%20Paired%3A%20yes%0APairing%20successful » message= » » highlight= » » provider= »manual »/]

pour ne pas avoir à refaire la connexion à chaque fois, on déclarera le périphérique de confiance en tapant trust 48:88:CA:48:F9:18 cela donne :

[pastacode lang= »bash » manual= »%5BCHG%5D%20Device%2048%3A88%3ACA%3A48%3AF9%3A18%20Trusted%3A%20yes%0AChanging%2048%3A88%3ACA%3A48%3AF9%3A18%20trust%20succeeded%0A » message= » » highlight= » » provider= »manual »/]

On peut continuer longtemps encore en ligne de commande, mais le plus simple est encore de passer en mode graphique avec l’applet blueman-manager de XFCE. On veillera à la configuration du périphérique à le déclarer comme une source audio.

on fera en sorte sur le smartphone d’autoriser l’accès aux paramètres audio au PC en cochant la case qui va bien ci-dessous.

et voilà, il suffit maintenant de lancer de l’audio sur le portable qui sera renvoyé directement sur les hauts parleurs du PC. On notera qu’un périphérique bluetooth a fait automatiquement son apparition dans le gestionnaire audio de pulseaudio.

 

 

Laisser un commentaire