Vous n'êtes pas identifié(e).
Concernant le script sais-tu s'il serait possible de dire : si le profil Bluetooth est celui-ci alors exécute telle commande, sinon exécute une autre ?
Oui, savoir le profile c'est le but de la 3éme commande.
Mais chez moi elle fonctionne bien! Le retourne de la commande pactl list cards ne te renvoie que 2 carte Asla, chez moi elle me retourne aussi la carte Bluetooth. Le casque était branché?
La commande doit bien fonctionner car si tu fait
ça devrait te retourner "output:analog-stereo+input:analog-stereo".
pacmd list-cards te retourne toujours tes 2 carte audio + ta carte Bluetooth?
(si la carte Bluetooth n'apparait plus il faudrait commenter : Disable = Headset dans /etc/bluetooth/main.conf et redémarre. La commande te renvoie la carte Bluetooth?)
Si tu reçois 2 cartes pactl list cards et 3 cartes pacmd list-cards essaye donc
?
(je ne peux pas tester pacmd car chez moi la commande n’est pas présente.
Dernière modification par VBrice (24-06-2023 11:08:58)
Hors ligne
Dernière modification par GRC/Paco (24-06-2023 11:33:28)
Hors ligne
Hors ligne
La commande suivante ne fonctionne pas :
En revanche, si j'apporte la modification suivante à la dernière commande (celle qui ne fonctionne pas), voici le résultat :
J'ai remplacé "/bluez_card.E4_22_A5_BD_DA_B3" par "/org/bluez/hci0/dev_E4_22_A5_BD_DA_B3".
Hors ligne
C'est étrange que te commande renvoie 3 profils, elle devrait juste sortir le profil en cours.
Dernière modification par VBrice (24-06-2023 13:38:55)
Hors ligne
C'est mieux comme ça, non ? Ca ne prend pas en compte un casque spécifique mais bien le casque bluetooth (quel qu'il soit) connecté au PC. Enfin c'est ce que j'en comprends.
Dernière modification par GRC/Paco (24-06-2023 13:38:35)
Hors ligne
Ainsi que notre commande pour récupéré le profil actif:
On va pouvoir faire un script bash avec une simple condition IF.
Dernière modification par VBrice (24-06-2023 13:47:50)
Hors ligne
Oui, tu as raison, ca fonctionnera toujours comme ca si un jour tu change de casque
Du coups, je résume, on à nos 2 commande pour changer de profil A2DP et HFP :pacmd set-card-profile bluez_card.E4_22_A5_BD_DA_B3 a2dp_sink
pacmd set-card-profile bluez_card.E4_22_A5_BD_DA_B3 handsfree_head_unit
Est-ce que ces deux commandes peuvent elles aussi devenir génériques ?
Hors ligne
Hors ligne
Hors ligne
Hors ligne
Hors ligne
Dans le greffon, ça lance la commande quand tu branches le casque? Je ne pense pas, mais avec de la chance ^^
Hors ligne
Tu verras, vu que l'on a les commandes, ça devrait aller vite.
Par curiosité, si tu places la commandepacmd set-card-profile bluez_card.E4_22_A5_BD_DA_B3 a2dp_sinkDans le greffon, ça lance la commande quand tu branches le casque? Je ne pense pas, mais avec de la chance ^^
Malheureusement non ça ne fonctionne pas.
Je ne sais pas comment utiliser ce plugin.
Hors ligne
Enregistrez le dans un fichier texte et donner lui les droits d’exécution, dans le terminal placer vous dans le dossier ou ce situe le script:
Pour lancer le script depuis le terminal:
Sinon je pense aussi qu'il est possible d'associer une commande ou un script à un raccourcie clavier, cela peut être pratique.
Dernière modification par VBrice (30-06-2023 15:23:08)
Hors ligne
Dernière modification par VBrice (30-06-2023 15:23:52)
Hors ligne
#!/bin/bash
CarteSon="bluez_card.E4_22_A5_BD_DA_B3";
ProfilActif=$(pactl list cards | awk -v RS='' '/bluez_card/' | awk -F': ' '/Profil actif/ { print $2 }');
ProfilPrincipal="a2dp_sink";
ProfilSecondaire="handsfree_head_unit";
if [ $ProfilActif == $ProfilSecondaire ];then
echo "Profile pricipale > $ProfilPrincipal";
pactl set-card-profile $CarteSon $ProfilPrincipal;
elif [ $ProfilActif == $ProfilPrincipal ];then
echo "Profile secondaire > $ProfilSecondaire";
pactl set-card-profile $CarteSon $ProfilSecondaire;
else
echo "Profile pricipale > $ProfilPrincipal";
pactl set-card-profile $CarteSon $ProfilPrincipal;
fi
exit
Je ne pouvais espérer mieux, ton script fonctionne à merveille. Quand je clique sur mon lanceur ça me désactive le microphone automatiquement et quand je reclique sur le lanceur ça me le réactive. J'arrive donc à changer de profil très facilement et sans prise de tête.
Je te remercie beaucoup pour l'aide que tu m'as apportée VBrice
Je vais continuer à chercher s'il est possible de désactiver le profil HFP par défaut. En attendant, ce script me facilite grandement la vie (car c'était assez fastidieux d'ouvrir blueman-manager à chaque fois, de localiser le casque et de changer le profil...).
Hors ligne
Je n'ai pas de carte audio externe pour tester. Si tu veux le faire, redémarre l'ordinateur après la modification. Ça remettra peut-être le précédent profil lors du branchement du casque (s’il était en a2dp il le remettra peut-être).
Dernière modification par VBrice (01-07-2023 09:08:38)
Hors ligne
Sinon dans ton fichier /etc/pulse/default.pa tu as le module load-module module-card-restore présent.
Il y aurait une option pour restaurer le profile précédent soit sauvegarder avec restore_bluetooth_profile=true
On aurait donc
load-module module-card-restore restore_bluetooth_profile=true
Je n'ai pas de carte audio externe pour tester. Si tu veux le faire, redémarre l'ordinateur après la modification. Ça remettra peut-être le précédent profil lors du branchement du casque (s’il était en a2dp il le remettra peut-être).
Ça a l'air de bien fonctionner ! J'ai éteint et rallumé mon casque plusieurs fois et à chaque fois c'est bien le profil A2DP qui est utilisé.
Bon du coup j'ai un lanceur et la solution au problème initial.
Tu me gâtes
Merci beaucoup VBrice
Hors ligne
Dernière modification par VBrice (01-07-2023 13:00:01)
Hors ligne
Hors ligne