web-dev-qa-db-fra.com

Comment passer d'un casque à un autre sans débrancher le casque

Lorsque je branche mon casque, le périphérique de sortie audio bascule sur le casque de mes haut-parleurs.

Plutôt que de brancher/débrancher le casque tout le temps, ce qui finira par user mon cordon/ma prise, je voudrais simplement utiliser un commutateur logiciel.

Lorsque j'ouvre les réglages du son et que je passe de "Casque -> Audio intégré" à "Sortie ligne -> Audio intégré", aucun son ne sort de mon haut-parleur ou de mon casque.

J'ai ouvert alsamixer pour voir ce qui se passe lorsque je branche/débranche les écouteurs.

Casque en: Headphones in

Sortie casque: Headphones out

Avec le casque branché, j'ai modifié manuellement tous les paramètres pour qu'ils correspondent aux paramètres lorsque le casque est sorti et que le son n'est toujours pas émis par le haut-parleur.

Par ailleurs, le fait de modifier le périphérique de sortie audio via les "Paramètres son" entraîne les mêmes modifications pour alsamixer.

20
user276318

Avoir les haut-parleurs et les écouteurs branchés et basculer dans le logiciel à la volée

De par sa conception, Pulseaudio désactive automatiquement la sortie ligne lorsque des écouteurs sont branchés et utilise le curseur Casque à la place. Vous pouvez observer ce comportement dans alsamixer. Ce que nous voulons, c'est que les curseurs Headphone et Line Out fonctionnent séparément et simultanément. Ceci est extrêmement utile si vous souhaitez remapper les prises Realtek pour avoir, par exemple, Rear Green pour les écouteurs et Blue pour les haut-parleurs (avec l’aide de hdajackretask d’alsa-tools).

Pour ce faire, vous devez directement éditer la configuration du mixeur Pulseaudio.

1. Nous disons à pulseaudio que les écouteurs sont toujours branchés.

Modifier:

/usr/share/pulseaudio/alsa-mixer/paths/analog-output-lineout.conf

Trouver:

[Jack Headphone]
state.plugged = no
state.unplugged = unknown

Remplacez no par yes.

Si vous utilisez les prises situées à l'avant du boîtier de votre ordinateur, changez plutôt [Jack Front Headphone].

2. Par défaut, le volume de Line Out est uniquement contrôlé par le maître et non par le curseur Line Out.

Nous voulons fusionner Line Out avec Master. Ajoutez cet extrait à la fin du fichier:

[Element Line Out]
switch = mute
volume = merge

3. Nous devons couper complètement la sortie ligne lorsque nous utilisons des écouteurs.

Modifier:

/usr/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf

Ajoutez cet extrait à la fin du fichier:

[Element Line Out]
switch = off
volume = off

Sur certains systèmes, vous devrez peut-être également désactiver Front en ajoutant cet extrait:

[Element Front]
switch = off
volume = off

4. Comme Pulseaudio, Alsa coupe elle-même les haut-parleurs lorsque des écouteurs sont branchés.

Ouvrez alsamixer: alsamixer -c0 ou alsamixer -c1

Utilisation / en mode de mise en sourdine automatique. Désactiver le mode de sourdine automatique avec . Fermer alsamixer avec Esc.

Enregistrez vos modifications avec: alsactl store

5. Redémarrez Pulseaudio

$ pulseaudio -k
$ pulseaudio --start

Vous avez maintenant deux ports distincts sur le même évier dans pulseaudio. Ils se coupent mutuellement afin que vous puissiez passer au casque et cela coupera Line Out, et inversement. Pour basculer entre les ports, vous pouvez utiliser le mélangeur de sons Gnome ou Plasma ou installer l'extension de bureau appropriée.


Source

9
WinEunuuchs2Unix

Pour permettre de basculer entre les haut-parleurs et les écouteurs, procédez comme suit:

  1. Exécutez alsamixer.
  2. Si nécessaire, sélectionnez votre carte son avec F6.
  3. Naviguez jusqu'à "Auto-Mute" avec la flèche droite .
  4. Désactivez-le avec la flèche vers le bas .
  5. Presse Esc pour quitter.

Ou vous pouvez faire toutes ces étapes avec une seule commande:

  1. Terminal ouvert
  2. lancer amixer -c 1 set 'Auto-Mute Mode' Disabled

Vous pouvez maintenant changer de haut-parleur ou d’écouteur avec le contrôle de volume PulseAudio.

Après avoir appliqué ces instructions, vous pouvez vous simplifier la vie en utilisant indicateur de changement de son pour basculer rapidement entre le casque et les haut-parleurs.

8
GoodGuyNick

hdajackretask est un outil qui permet de réaffecter la fonction à vos prises pour différentes entrées, sorties ou désactivées. Par exemple, transformez votre prise Mic en un casque supplémentaire, ou pourquoi ne pas en faire des sorties ligne et les connecter à votre récepteur surround?

Installer alsa-tools-gui

Sudo apt-get update
Sudo apt-get install alsa-tools-gui

Exécutez hdajackretask Then Pour remplacer l’un de vos jacks:

  1. Sélectionnez un codec
  2. Cliquez sur la case "Remplacer" pour cette broche et sélectionnez la nouvelle fonction souhaitée.
  3. Cliquez sur "Appliquer maintenant"

    Remarque: Si la prise pour casque dispose d'un commutateur matériel intégré qui redirige le son, alors vous êtes SOL (Désolé, rien ne va plus) . Cependant, si le système d'exploitation détecte le branchement d'une ligne dans la prise casque, l'audio n'est probablement pas commuté mécaniquement .

J'ai constaté qu'écraser les écouteurs et les haut-parleurs en même temps fonctionnait mieux.


hdajackretask Capture d'écran pour passer le casque aux haut-parleurs:

enter image description here


Après avoir cliqué sur "Appliquer maintenant", un script Shell est créé pour apporter les modifications et vous invite à exécuter le mot de passe superutilisateur. Le script est également enregistré dans /tmp, qui peut être copié puis exécuté avec Sudo à partir de la ligne de commande.

enter image description here

Exécution en ligne de commande

Comme mentionné précédemment, hdajackretask crée un script, script.sh in /tmp, similaire à /tmp/hda-jack-retask-QW1EEZ/ pour les fonctions de prise souhaitées:

#!/bin/sh
echo "0x12 0x90a60140" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/hda-jack-retask-WFEIEZ/errors.log
echo "0x14 0x90170150" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/hda-jack-retask-WFEIEZ/errors.log
echo "0x17 0x40000000" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/hda-jack-retask-WFEIEZ/errors.log
echo "0x18 0x411111f0" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/hda-jack-retask-WFEIEZ/errors.log
echo "0x19 0x411111f0" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/hda-jack-retask-WFEIEZ/errors.log
echo "0x1a 0x411111f0" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/hda-jack-retask-WFEIEZ/errors.log
echo "0x1b 0x411111f0" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/hda-jack-retask-WFEIEZ/errors.log
echo "0x1d 0x40700001" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/hda-jack-retask-WFEIEZ/errors.log
echo "0x1e 0x411111f0" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/hda-jack-retask-WFEIEZ/errors.log
echo "0x21 0x40f000f0" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/hda-jack-retask-WFEIEZ/errors.log
echo 1 | tee /sys/class/sound/hwC0D0/reconfig 2>>/tmp/hda-jack-retask-WFEIEZ/errors.log


Copiez ce script ailleurs sur votre système (autre que/tmp)

cd /tmp/hda-jack-retask-QW1EEZ
cp script.sh ~username/speaker.sh

Puis éditez speaker.sh

cd ~username
nano speaker.sh

Ajoutez la ligne killall pulseaudio & en haut du fichier. Cela est nécessaire car la fonction de prise ne peut pas être modifiée pendant que pulseaudio est en cours d'exécution. Par défaut, pulseaudio réapparaîtra. Modifiez également le chemin d'accès au fichier errors.log en /tmp ou à l'endroit souhaité:

#!/bin/sh
killall pulseaudio &
echo "0x12 0x90a60140" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/errors.log
echo "0x14 0x90170150" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/errors.log
echo "0x17 0x40000000" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/errors.log
echo "0x18 0x411111f0" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/errors.log
echo "0x19 0x411111f0" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/errors.log
echo "0x1a 0x411111f0" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/errors.log
echo "0x1b 0x411111f0" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/errors.log
echo "0x1d 0x40700001" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/errors.log
echo "0x1e 0x411111f0" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/errors.log
echo "0x21 0x40f000f0" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/errors.log
echo 1 | tee /sys/class/sound/hwC0D0/reconfig 2>>/tmp/errors.log


Pour exécuter le script:

Sudo ./speaker.sh



À partir de la alsa-tools-1.1.5/hdajackretask/README documentation:

Documentation pour hdajackretask

La plupart des cartes son Intel HDA sont, dans une certaine mesure, réutilisables, mais elles peuvent être utilisées à plusieurs fins. Cet outil est une interface utilisateur graphique facilitant la modification des tâches de vos prises. Par exemple, transformez votre prise Mic en un casque supplémentaire, ou pourquoi ne pas créer des sorties de ligne et les connecter à votre récepteur surround?

Démarrage rapide

Démarrez l'application "hdajackretask" à partir de la ligne de commande. Sélectionnez un codec dans la barre du haut. certaines personnes n’en ont qu’un - si vous en avez plusieurs, l’un est le "principal" et les autres sont probablement des codecs HDMI.

Toutes les prises (et autres entrées/sorties) sont présentées dans "Configuration des broches". Pour remplacer l'une de vos prises, cochez la case "Remplacer" de cette broche et sélectionnez la fonction souhaitée. Remarque: Si vous sélectionnez une substitution "Sortie de ligne (arrière)", vous devez également disposer d'une substitution "Sortie de ligne (avant)". Une substitution "Sortie de ligne (Centre/LFE)" ne fonctionnera qu'avec les deux précédentes, et ainsi de suite.

Vous pouvez essayer votre nouvelle configuration en cliquant sur "Appliquer maintenant". Pour définir votre nouvelle configuration comme valeur de démarrage par défaut, cliquez sur "Installer le remplacement du démarrage". Faire l'une ou l'autre de ces opérations nécessite des privilèges root, il vous sera donc probablement demandé votre mot de passe.

Quickend

Avez-vous foiré? Cliquez sur le bouton "Supprimer le remplacement du démarrage", puis, une fois le processus terminé, éteignez votre ordinateur, attendez un peu et rallumez-le. Vous devriez maintenant être de retour là où vous avez commencé.

Cela a-t-il fonctionné?

Si c'était le cas, soyez heureux, partagez votre joie, faites quelque chose de gentil!

Si ce n'est pas le cas, voici quelques choses à essayer:

  • Allez dans alsamixer et voyez s’il existe de nouveaux contrôles de volume, et vérifiez s’ils sont non désactivés et réglés sur une valeur raisonnable.

  • Parfois, le pilote n’éteint pas les broches non connectées (s’ils ne le sont pas, pourquoi s’inquiéter?). Vous pourrez peut-être résoudre ce problème en éteignant complètement votre ordinateur pendant un moment.

  • Voir l'option "model = auto" ci-dessous

Si cela ne vous aide pas, il y a de fortes chances que vous rencontriez un pilote ou une limitation matérielle. Vous pourriez rencontrer des problèmes de pilotes (peut-être que personne n’a jamais testé quatre casques auparavant!). Si vous le faites, n'hésitez pas à les signaler sur la liste de diffusion alsa-devel: toutefois, en raison du manque de main-d'œuvre, il est fort probable que cette question sera traitée avec une priorité très faible (avoir un son qui fonctionne parfaitement pour une configuration standard, plus important que de supporter des configurations étranges). Cependant, si vous êtes un hacker du noyau et que vous proposez un correctif qui résout votre problème sans rien foirer, il y a de fortes chances qu'il soit fusionné.

Si vous pensez que le problème vient de cette application graphique plutôt que du pilote du noyau, n'hésitez pas à m'envoyer un courrier électronique (et si vous le souhaitez, incluez un correctif!). Si oui, écrivez à [email protected].

Les options

  • Afficher les broches non connectées Votre BIOS est responsable de la configuration des broches du codec connectées à quelque chose et de celles qui ne le sont pas. Parfois, le BIOS est un buggy, et ne montrera pas tous vos jacks. Si vous avez un jack dans votre BIOS, vous pouvez essayer d’activer des pins aléatoires et voir si cela fonctionne.

  • Set Model = auto Certains codecs, en particulier les plus anciens et sur les noyaux 3.8 et inférieurs, sont codés en dur pour utiliser un modèle spécifique et ne se soucient donc pas de vos substitutions. Dans de nombreux cas et avec un noyau raisonnablement nouveau, l'analyseur automatique fonctionne également bien pour ces codecs. Vous pouvez forcer l'utilisation de l'analyseur automatique en cochant cette case. Dans certains cas, cependant, le modèle explicite existe pour une raison. Si c'est le cas, vous êtes bloqué.

  • Priorité avancée Ceci est réservé aux experts. Cela vous permet de sélectionner chaque champ de configuration individuellement, au lieu de quelques valeurs prédéfinies ayant un sens. Notez que la plupart des combinaisons ici ne sont pas valides d'une manière ou d'une autre. Vous ne devriez donc probablement pas vous tromper, à moins que vous n'ayez lu et compris la section "Configuration par défaut" de la spécification HD Audio. (Qui, au moment de la rédaction de cet article, est disponible ici: http://www.intel.com/content/dam/www/public/us/fr/documents/product-specifications/high-definition- audio-specification.pdf )

  • Conseils d'analyse Cela vous permet d'envoyer des "conseils" spéciaux au pilote qui provoquent un comportement différent de l'analyse. Laissez-les au réglage "par défaut" sauf si vous avez lu la documentation du pilote. (Ce qui, au moment de la rédaction de cet article, est disponible ici: https://www.kernel.org/doc/Documentation/sound/alsa/HD-Audio.txt - voir la "Chaîne de conseil " section. )

4
stumblebee

Dans KDE, cela peut être fait:

paramètres système -> multimédia -> paramètres audio et vidéo -> onglet configuration du matériel audio> sélectionnez la carte son appropriée> sous Connecteur, vous verrez l'option des écouteurs et haut-parleurs.

system settings

2
haytham-med haytham

Sélecteur Audio-Sortie Extension Gnome-Shell

le moyen le plus simple consiste simplement à installer extension du commutateur de sortie audio

ou vous pouvez directement cloner avec git:

git clone https://github.com/adaxi/audio-output-switcher.git ~/.local/share/gnome-Shell/extensions/audio-output-switcher@anduchs

screenshot

Cette extension ajoute une petite entrée au menu d'état qui montre le périphérique de sortie audio-impulsion actuellement sélectionné. Cliquez sur pour ouvrir un sous-menu contenant tous les périphériques de sortie disponibles et vous permettant de choisir celui à utiliser.

1
Jastria Rahmat

Vous pouvez utiliser Indicateur de changement de son , si l’ajout d’un PPA ne vous dérange pas.

Cela vous donnera un indicateur dans la barre d'état système sur lequel vous pouvez cliquer pour changer les sources audio d'entrée ou de sortie. Vous pouvez en lire plus à http://yktoo.com/fr/software/indicator-sound-switcher .

Méthode du terminal

Pour installer, à l’aide d’un terminal, entrez les informations suivantes.

Sudo add-apt-repository ppa:yktooo/ppa
Sudo apt-get update
Sudo apt-get install indicator-sound-switcher

Méthode graphique

Pour installer, à l'aide de l'interface graphique, procédez comme suit:

  1. Lancez l'application Software & Updates à partir du tableau de bord Unity.

  2. Cliquez sur l'onglet "Autres logiciels". Ajoutez ensuite la nouvelle source suivante:

    deb http://ppa.launchpad.net/yktooo/ppa/ubuntu vivid main
    

    (N'oubliez pas de remplacer "vivid" par votre version d'Ubuntu. Les versions prises en charge sont répertoriées à l'emplacement suivant: http://ppa.launchpad.net/yktooo/ppa/ubuntu/dists/ ).

  3. Lancez le Centre logiciel Ubuntu à partir du tableau de bord Unity.

  4. Recherchez "Indicateur de sélecteur d’entrée/sortie audio" et installez-le.

Remarque: cette solution ne fonctionnera pas si votre système dispose d'un commutateur matériel à l'intérieur de la prise casque, comme suggéré par Terrance ci-dessus.

0
PJ Singh