4 votes

Peut basculer de profil bluetooth uniquement après 3 redémarrages du bluetooth

Je possède un casque Bluetooth August EP650 et j'ai des problèmes pour basculer le profil audio.

Je passe souvent du mode téléphonie (HSP/HFP) au mode écoute de musique (A2DP), donc c'est assez agaçant.

Chaque fois que je démarre mon système, je peux basculer le profil en utilisant l'interface graphique :

Dialoguer Pour le Basculage

Dans le syslog, j'obtiens :

16 août 08:59:20 orange pulseaudio[7711]: [pulseaudio] bluez5-util.c:     
   Transport Acquire() a échoué pour le transport 
   /org/bluez/hci0/dev_00_12_D0_02_90_27/fd0 (Opération Non Autorisée)

J'ai déjà effectué la modification comme suggéré ici :

Modifier le fichier :
/etc/pulse/default.pa
et commenter (avec un # au début de la ligne) la ligne suivante :
#load-module module-bluetooth-discover
maintenant modifier le fichier :
/usr/bin/start-pulseaudio-x11
et après les lignes :
   if [ x”$SESSION_MANAGER” != x ] ; then
    /usr/bin/pactl load-module module-x11-xsmp “display=$DISPLAY session_manager=$SESSION_MANAGER” > /dev/null
    fi
ajouter la ligne suivante :
    /usr/bin/pactl load-module module-bluetooth-discover

Mais le problème persiste.

Maintenant, si j'exécute environ 3 fois sudo service bluetooth restart et que mon casque se déconnecte, je peux reconnecter le casque et le basculement fonctionne parfaitement.

Comment puis-je résoudre ce problème?

modification

pacmd -> list-cards affiche

profils :
    headset_head_unit: Casque audio (HSP/HFP) (priorité 20, disponible : inconnu)
    a2dp_sink: Lecture Hi-Fi (A2DP) (priorité 10, disponible : oui)
    off: Désactivé (priorité 0, disponible : oui)

Mais dans le cas ci-dessus, je suis connecté à headset_head_unit - et je ne peux toujours pas passer à a2dp_sink

modification2

J'ai découvert que lorsque je retire complètement le chargement du module du x11-pulseaudio puis que je charge le module après avoir connecté manuellement le casque via

$ pacmd
Bienvenue dans PulseAudio 8.0! Utilisez "help" pour des informations d'utilisation.
>>> load-module module-bluetooth-discover

ça fonctionne directement - la question est, comment puis-je automatiser cela?

0voto

iplustech.net Points 55

Essayez-le à partir de la ligne de commande. Vous pouvez utiliser pacmd pour changer les options audio. La commande pour changer le périphérique de sortie par défaut est

$ sudo pacmd set-default-sink "NOMDUSORTIE"

La commande pour changer l'entrée est

$ sudo pacmd set-default-source "NOMDELENTRÉE"

Je pense que le problème pourrait être que vous n'avez peut-être pas de privilèges sudo. Cependant, je ne suis pas sûr si pacmd nécessite des privilèges root. Essayez-le et dites-moi si ça marche.

Si vous ne connaissez pas le nom du périphérique de sortie que vous voulez, essayez de les lister

$ sudo pacmd list-sinks

Si vous avez besoin d'aide supplémentaire, faites-le moi savoir dans les commentaires.

0voto

kitingChris Points 307

J'ai trouvé une solution de contournement qui m'a aidé à résoudre le même problème avec un Bose OE Soundlink.

On dirait que le module-bluetooth-discover ne fonctionne correctement que lorsqu'il est chargé après le démarrage de la session X11.

Vous pouvez donc utiliser le contournement suivant :

Dans le fichier /etc/pulse/default.pa, commentez la ligne

load-module module-bluetooth-discover

pour qu'elle ressemble à ceci :

#load-module module-bluetooth-discover

Ensuite, ajoutez /usr/bin/pactl load-module module-bluetooth-discover dans le fichier /usr/bin/start-pulseaudio-x11 pour qu'il ressemble à ceci :

set -e

if [ x"$DISPLAY" != x ] ; then

    /usr/bin/pactl load-module module-x11-publish "display=$DISPLAY" > /dev/null
    /usr/bin/pactl load-module module-x11-bell "display=$DISPLAY" "sample=bell.ogg" > /dev/null
    /usr/bin/pactl load-module module-x11-cork-request "display=$DISPLAY" > /dev/null

    if [ x"$KDE_FULL_SESSION" = x"true" ]; then
       /usr/bin/pactl load-module module-device-manager "do_routing=1" > /dev/null
    fi

    if [ x"$SESSION_MANAGER" != x ] ; then
    /usr/bin/pactl load-module module-x11-xsmp "display=$DISPLAY session_manager=$SESSION_MANAGER" > /dev/null
    fi
    /usr/bin/pactl load-module module-bluetooth-discover
fi

Il est maintenant assuré que le module-bluetooth-discover est chargé après le démarrage de X11.

Redémarrez et vous devriez être en mesure de changer le profil.

-1voto

Amias Points 4968

J'ai trouvé ça avec mon casque Plantronics BackBeat Pro se connectant à une Intel Corporation Wireless 7260 sur 16.04, il se connectera d'abord en mode HSP et ne passera pas en A2DP sauf s'il est déconnecté et rebranché, alors il permettra le changement. Je peux le faire sans aucun réel retard en utilisant l'applet du panneau de configuration des paramètres sonores

Cela semble correspondre aux 3 fois que vous avez suggérées et est systématiquement reproductible, ce n'est pas parfait mais ça fonctionne.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X