SON SUR HDMI : Alsa et Pulseaudio sont sur un bateau

Bonjour à tous,

J’essaye de m’en sortir dans la jungle du son sous Debian… mais j’avoue je ne comprend pas tout. Je poste ici dans l’espoir que quelqu’un éclaircisse ma voie, voici toute l’histoire :slightly_smiling:

Il y a quelque année (2006), j’étais jeune et fougueux et donc sous Debian SID et je me souviens avoir galéré lors de l’apparition de Pulse audio et donc de m’être rapatrié sur Alsa.

Après mon chemin s’est orienté vers Ubuntu (et pulse audio qui marchait bien).

Récemment (remercions Unity), lors d’une réinstall de pc je suis passé Debian stable (car je suis moins fougeux maintenant). Donc à la base le son marchait bien après l’install, mais j’ai eu le malheur de changer ma TV (d’ailleurs, je donne un écran cathodique Sony Trinitron de bonne qualité mais très encombrant sur la région Rennaise)

Je peux maintenant gouter aux joies d’afficher mon écran via la sortie HDMI et cela marche “out of the box”. J’ai aussi appris que le son passait dans ce merveilleux nouveaux format (moi qui en était resté au SVGA)… mais ce fut le début des ennuis car le son ne passe pas sur la télé.</ma vie>

A travers des recherches sur le net, j’ai vu qu’il fallait utiliser une commande pour savoir de quoi mon hardware retourne :

Cette commande me renvoie le résultat suivant :

carte 0: PCH [HDA Intel PCH], périphérique 0: ALC271X Analog [ALC271X Analog] Sous-périphériques: 1/1 Sous-périphérique #0: subdevice #0 carte 0: PCH [HDA Intel PCH], périphérique 3: HDMI 0 [HDMI 0] Sous-périphériques: 1/1 Sous-périphérique #0: subdevice #0

Ce qui signifierait que j’ai en fait deux cartes son une pour le PC et une pour le HDMI.

Je m’empresse de tester :

…et ça ne marche pas, je retourne à mes recherches sur internet, j’y lis des conseils qui indiquent que désintaller pulse audio n’est pas une mauvaise idée, car Alsa fait très bien le boulot (et vu mon historique avec cette appli je m’empresse de le faire).

sudo aptitude purge pulseaudio

…et j’installe les outils supplémentaires pour gérer alsa de manière moderne

sudo aptitude install alsa-base alsa-utils alsa-tools libasound2 sudo aptitude install volumeicon-alsa

ô joie, la commande :

Fait du bruit sur ma télé toute neuve… seul soucis je n’arrive pas à configurer Iceweasel, vlc et Co pour que le son soit joué sur la carte son du PC quand le HDMI n’est pas branché et sur celle du HDMI quand le PC est branché. (à la rigueur si déjà je pouvais faire ce réglage manuellement je suis aussi preneur)

Avez vous des idées sur la manière de faire cela ?

Si quelqu’un à une doc (même en anglais) pas trop mal fichues qui explique clairement le fonctionnement du son sous Linux je suis aussi preneur, j’ai vraiment du mal à conceptualiser comment cohabite mon haut parleur PC, la sortie HDMI, vlc, iceweasel, la (les) cartes sons, le kernel, oss, alsa, pulseaudio…

Merci d’avance

Salut !

Je pense que tu peux te faire deux [mono].asounrc[/mono], un qui correspond a ta carte son PC, et l’autre pour le HDMI. Tu as toutes les informations pour faire ça via [mono]aplay -l[/mono]. Tu regarde le status du HDMI dans /sys/class (selon le modèle de ta carte graphique) et tu le lances le script correspondant. Enfin, une règle UDEV a la détection du l’event de plug sur le port HDMI pour que le tout se fasse automatiquement.

Toutes les informations que je te donne sont basés sur un tuto que j’ai trouvé pour ArchLinux, mais tu dois pouvoir l’adapter pour ta debian.

Voici le lien :
http://www.ms.unimelb.edu.au/~trice/linux/tricks/hdmi/

J’espère que ça te servira.

Quand tu veux tester un réglage particulier de fail2ban, tu ne désinstalles pas openssh-server pour autant.
Il est inutile de désinstaller pulseaudio pour tester ALSA.
Pulseaudio peut fonctionner comme un daemon que tu stoppes et que tu relances. Conserver pulseaudio et le stopper temporairement le temps d’effectuer les tests.

Le test et ses conclusions avec d’un côté «pulseaudio ça marche pas» et de l’autre «ALSA fait du bruit» est digne d’un banc d’essais de Phoireux-nix … Aucune chance donnée à pulseaudio. Il conviendrait de te demander pourquoi «ça marche pas» avec pulseaudio et ce qu’il serait possible de mettre en oeuvre pour que «pulseaudio, ça marche» avant de l’éliminer, le désinstaller sans appel.

freedesktop.org/wiki/Softwar … ultDevice/

[quote]
How to set the default device

If you, for example, plug in a new sound card and want it to be the default device from now on, you can tell PulseAudio to change the fallback sink to the new sound card, but that will only have effect on programs that PulseAudio hasn’t seen before. For this particular use case the current (as of 2010-01-23) state-of-the-art method to move everything to the new sound card is to use gnome-volume-control version 2.28, which modifies the stream-restore database when you set some device as the default.

The second alternative is to use pavucontrol to move streams to the new sound card whenever you notice that some program is playing to a wrong sound card.

The third alternative is to first set the fallback device, then stop PulseAudio, then erase the stream-restore database by deleting the file containing the string “stream-volumes” in its name in the ~/.pulse directory, and finally restarting PulseAudio.

There is also the fourth option to make default sink and source to work to all applications by disabling stream target device reading from the stream cache. Simply modify the load-module module-stream-restore line that should already be in your /etc/pulse/default.pa, so that it looks like this:

load-module module-stream-restore restore_device=false

Then restart PulseAudio.

Now all opened streams will open to default sink or source even in the case that there is a record in the stream-volumes for the stream. Now you can plug an USB audio device and set it as default sink and source and all opened streams (new and or already seen) will go to the new device. Only streams that are open need to be moved by pavucontrol or re-opened.[/quote]

Et bien MissJane merci pour la manip, on comprend exactement ce que l’on fait et ça marche nickel !

Sinon, etxeberrizahar, rien ne sert de s’enflammer, j’ai cru comprendre que pulseaudio était une surcouche d’Alsa et ne servait qu’à multiplexer le son entre les applis. Personnellement, c’est une fonctionnalité qui ne m’intéresse pas. Je n’écoute du son que provenant d’une seule application à la fois. Si ça sert à d’autre chose, je suis preneur d’explications, parceque pour l’instant le son fonctionne impeccablement sur ma machine sans utiliser pulseaudio.

Et puis, comme je le mentionnais dans mon message précédent :

[quote]Si quelqu’un à une doc (même en anglais) pas trop mal fichues qui explique clairement le fonctionnement du son sous Linux je suis aussi preneur, j’ai vraiment du mal à conceptualiser comment cohabite mon haut parleur PC, la sortie HDMI, vlc, iceweasel, la (les) cartes sons, le kernel, oss, alsa, pulseaudio…
[/quote]

Tu as raison ça ne sert à rien de s’enflammer avec les contempteurs aveugles de pulseaudio qui ne connaissent qu’une réponse à leurs problèmes audio.

Éreinter gratuitement pulseaudio,cracher sa bile sur les forums sur la foi d’expériences passées peu probantes. Ça fait des années que ça dure.
Certains linuxeurs ont appris à utiliser pulseaudio après avoir reconsidéré leurs premières impressions négatives. D’autres, comme toi, ne cherchent toujours pas à comprendre. Nous ne fatiguerons donc pas à communiquer des liens à cette dernière catégorie d’utilisateurs.

Désinstaller pulseaudio n’est pas la solution universelle à tous les problèmes audio.
Si tu as des crosses avec l’audio, ce n’est pas forcément la faute de pulseaudio. La plupart des utilisateurs qui incriminent automatiquement pulseaudio comme tu le fais sont des utilisateurs qui ne pensent pas à regarder ailleurs, par exemple, ce que fait flashplayer dans leur navigateur.