Problème de widget de volume avec le branchement à chaud de la carte son

8

Lorsque vous branchez une carte son USB, la sortie audio actuelle (par exemple, les haut-parleurs Banshee et PC) peut parfois changer immédiatement. Mais les commandes de volume (widget audio dans la barre d'état système, touches du clavier de volume) sont bloquées sur l'ancienne carte son.

Branchez une carte son et un amplificateur tandis que le volume est réglé sur ultra élevé pour les haut-parleurs du PC. Vous ne pouvez pas contrôler le volume sans ouvrir les paramètres sonores ou alsamixer. Cela pourrait probablement perturber les voisins dans certains pays. Vous ne pouvez pas le contrôler avec le widget audio du systray ni les touches du clavier de volume.

Comment désactiver le basculement automatique de la sortie audio matérielle ou activer le basculement automatique des commandes de volume du logiciel? Ce serait formidable de rendre le comportement du logiciel cohérent avec celui du matériel.

Ubuntu 11.10 vanilla à jour.

jpic
la source
Pas une solution, mais une solution consiste à brancher et débrancher un casque. Cela force une bascule des contrôles.
RobotHumans
Au lieu de brancher à chaud, il s'agit là encore d'une solution de pansement, vous pouvez peut-être le laisser branché et, lorsqu'il n'est pas utilisé, basculer manuellement son profil sur «off»?
AyaneForever
3
Troisième solution de pansement: baissez le volume matériel de votre carte son USB avant de la brancher - généralement la meilleure pratique avec tous les appareils audio (numériques et analogiques) est de mettre à zéro tous les niveaux avant de connecter les choses ensemble.
adempewolff

Réponses:

2

Vous pouvez réaliser ce que vous voulez en utilisant une règle udev écrite pour agir sur certains événements. Dans ce cas, ces événements consistent à brancher la carte son USB et à la débrancher. Selon cette réponse du forum, la solution possible est la suivante:

  1. Ouvrez le fichier qui a les règles udev de la carte son USB:

    sudo -H nautilus /etc/udev/rules.d/10-usb-sound-card.rules
    
  2. Coller et copier

    KERNEL=="pcmC[D0-9cp]*", ACTION=="add", PROGRAM="/bin/sh -c 'K=%k; K=$${K#pcmC}; K=$${K%%D*}; echo defaults.ctl.card $$K > /etc/asound.conf; echo defaults.pcm.card $$K >>/etc/asound.conf"
    
    KERNEL=="pcmC[D0-9cp]*", ACTION=="remove", PROGRAM="/bin/sh -c 'echo defaults.ctl.card 0 > /etc/asound.conf; echo defaults.pcm.card 0 >>/etc/asound.conf'"
    
  3. Enregistrez le fichier et donnez

    sudo udevadm trigger --action=add /etc/udev/rules.d/10-usb-sound-card.rules
    

commander. Testez ensuite cette règle en branchant et débranchant votre carte son USB.

J'espère que cela t'aidera.

numand
la source