Cette page est considérée comme vétuste et ne contient plus d'informations utiles.
Apportez votre aide…

PulseAudio

PulseAudio est un serveur de son pour les systèmes POSIX et Win32. Un serveur de son est une sorte d'intermédiaire obligé pour vos applications sonores. Il vous permet de procéder à des opérations avancées sur le son en s'intercalant entre la couche logicielle (L'application audio) et la couche matérielle (le pilote ALSA pour les versions actuelles d'Ubuntu). Ainsi, transférer le son sur une autre machine, changer le format d'échantillonnage ou le nombre de canaux audio et mélanger plusieurs sons en un seul, sont des opérations facilement réalisables avec un serveur de son.
Il permet en outre de gérer indépendamment le son de chaque application lancée.

Depuis Kinetic 22.10, c'est PipeWire qui est installé par défaut à la place de PulseAudio.

PipeWire fournit une couche de rétro-compatibilité via le paquet pipewire-pulse, également installé par défaut. Il n'y a donc rien à faire, et les applications compatibles PulseAudio devraient être fonctionnelles dès l'installations. Par contre mieux vaut utiliser des outils propres à PipeWire plutôt que PulseAudio pour monitorer ou travailler sur sa configuration.

PulseAudio est le serveur de son installé par défaut sur les versions et variantes d'Ubuntu actuellement soutenues.

Vous pouvez si vous le souhaitez, compléter l'installation en rajoutant les paquets suivants :

Régler le volume

Vous pouvez gérer simplement le volume de sortie par le contrôleur de volume applet Haut-parleur intégré dans la barre de notification (petit haut-parleur).
Vous pouvez accéder aux fonctions avancées de contrôle des volumes depuis les paramètres sonores… du menu du petit haut-parleur ou encore depuis l'entrée "son" des paramètres système.

Régler le volume de chaque application

Si plusieurs applications de lecture audio sont en service, vous pouvez régler celle-ci séparément:

  • Depuis le contrôleur de volume d'Unity, onglet "Application"
  • Depuis le contrôleur de volume Pavucontrol, onglet "lecture" et choisir "applications" dans le menu déroulant en bas à droite.

Égaliseur graphique

Vous pouvez régler aussi le son de votre système avec plus de nuances à l'aide d'un égaliseur graphique. Voir pulseaudio-equalizer.

Configuration du son multi-canaux (5.1,7.1 etc) en analogique pour un fichier son stéréo ou "upmixing"

Pour obtenir le 5.1 une petite manipulation est nécessaire, mais l'avantage de celle-ci étant de vous faire obtenir le 5.1 en émulation même lors de la lecture d'un Divx ou d'un MP3 classique, bref une pure merveille à un point d'en devenir totalement dépendant.

configuration spatiale

Configuration

Il faut indiquer à PulseAudio le nombre de canaux à utiliser (exemple 6 pour du 5.1) :

  1. Éditez le fichier /etc/pulse/daemon.conf (nécessite les droits d'administration) ou ~/.pulse/daemon.conf
    (Le ";" devant les lignes sert de commentaire)
  2. ajoutez ou remplacez :
    default-sample-channels = 6
  3. puis redémarrez PulseAudio en le tuant et en le relançant en saisissant dans un terminal les 2 commandes suivantes:
    pulseaudio -k
    pulseaudio -D

Avec la configuration ci-dessus on obtient bien la lecture de source 5.1 (DVD, etc.) en 5.1, mais la lecture de son (vos musiques en ogg, mp3) avec Audacious, VLC, Rhythmbox, etc. passe en 2.0. En effet, PulseAudio ne mixe plus la stéréo sur la sortie basses fréquences par défaut. Si vous avez un kit d'enceinte 5.1 avec une sortie basses fréquences dédiée, vous pourriez vouloir transformer la stéréo en son 2.1. Il faut alors éditer le fichier /etc/pulse/daemon.conf (nécessite les droits d'administration) ou ~/.pulse/daemon.conf et de vous assurer de trouver une ligne contenant "disable-lfe-remixing".

  • Si cette ligne commence par un ";", supprimez ce caractère pour activer la ligne
  • Donnez la valeur "no" à cette clé

Au final, ça donne

disable-lfe-remixing = no

Test

Pour tester cette configuration, lancez la commande suivante dans un terminal en indiquant le nombre de haut parleurs (ici 4) après le paramètre c (channel) :

 speaker-test -c4 -l1 -twav
  • Si le résultat n'est pas concluant, vérifiez dans le contrôleur de volume l'activation de surround, ainsi que peut-être d'éventuelles autres options qui se rapporteraient à votre problème (center, front, etc.)
  • Pour une carte son 7.1 avec un kit HP 5.1 en analogique, les HP arrières (fiche noire) doivent être connecté à la prise HP latérale (fiche grise).

Récupérer le son des applications utilisant OSS

Padsp est un « wrapper » qui va convertir les flux oss en flux pulseaudio. Il a l'avantage d'être plus stable et d'offrir plus de fonctionnalités. Il est installé d'office avec PulseAudio.

Exemple :

padsp <mon_programme>

Configuration du son pour une sortie numérique

PulseAudio sur le réseau local

Maintenant, si vous avez installé paman (les outils Pulse) et paprefs, vous pouvez lancer l'application "Préférences de Pulseaudio".

N'utilisez les trois fonctionnalités ci-dessous que si vous désirez que votre serveur Audio soit accessible à partir d'autres stations sur votre réseau. Si ce n'est pas le cas, n'implémentez pas ces options !
  1. Dans l'onglet Network Access
    • Cochez l'option "Make discoverable PuleAudio network sound devices available locally". Ceci va permettre aux autres ordinateurs possédant PulseAudio sur votre réseau d'accéder à vos périphériques sonores.
  2. Dans l'onglet Mulitcast/RTP
    • Cochez Enable Multicast/RTP Receiver. Ceci va permettre de recevoir des flux multicast d'autres systèmes sur votre LAN.
    • Cochez Enable Multicast/RTP Sender. Ceci va permettre d'envoyer des flux multicast (Une source envoie des paquets, les autres les recevront simultanément)
      Laissez les autres options décochées pour maintenant, sauf si vous voulez boucler les flux sortant à travers les haut-parleurs locaux.
  3. Ensuite allez dans le menu Système → Préférences → Son et vérifiez dans l'onglet Sons que la case « Activer le mixage son logiciel (ESD) » est cochée.
    Par ailleurs, dans l'onglet Périphériques, j'ai mis les périphériques en « Détection Automatique ».
  4. Enfin allez dans Applications → Son et vidéo → PulseAudio Device Chooser. Une icône apparaît dans la zone de notification :
    • faîtes un clique gauche et sélectionnez Preferences….
    • Cochez l'option Start applet on session login. Cette option démarrera l'applet pulseaudio lors de l'ouverture de votre session utilisateur
  5. Redémarrez votre machine afin d'appliquer les changements de serveur de sons.

Un tour d'horizon de l'applet PulseAudio

Sur le client, après avoir installé le paquet padevchooser, lancer (Menu Son et Vidéo, peut se lancer au démarrage, voir les options) dans la zone de notification cliquer sur l'icône et choisir son serveur : soit on précise manuellement (Other → nom de la machine) soit il est découvert auto-magiquement par Avahi.

Padevchooser n'est pas disponible pour Ubuntu Precise 12.04. Une implémentation naissante nommée indicator-paselector existe pour tenter de le remplacer.

Utilisation dans un script

Voici un petit bout de script permettant de modifier directement le volume d'une application. C'est aussi par ce biais qu'on peut utiliser un volume supérieur à 100% (attention à la saturation).
FIXME : dans un terminal? dans un fichier? Que faire de ces lignes ?

Indications: à utiliser dans un script, en remplaçant Mumble par le nom de l'application voulue et la valeur de volume_level, sachant que 65536 est à 100%

application="Mumble"
volume_level=85000 #65536 = 100%

pa_sink_index=$(pacmd list-sink-inputs | egrep "index|application\.name" | grep -B1 "$application" | grep index | sed 's/.*index: //')
pacmd "set-sink-input-volume $pa_sink_index $volume_level"

Appliquer des effets sur le son

PulseEffects

Ensemble graphique de filtres que vous pouvez appliquer sur le son de votre ordinateur :

PulseEffects est un compresseur, un égaliseur, un limiteur d'entrée et une réverbération. Il utilise PulseAudio, le serveur de son que votre bureau Linux utilise le plus probablement. Cela lui permet de modifier le son provenant de n'importe quelle application que vous utilisez. Vous pouvez manipuler ou tout son, ou le faire sur une base par application. Vous pouvez trouver l'application sur Flathub.

Elle est destinée aux applications Pulseaudio de votre système Linux. Vous pouvez appliquer des effets audio à la sortie du microphone en même temps qu'il les applique pour la sortie des applications. Il est livré avec limiteur d'entrée, compresseur, filtre passe-haut Butterworth, filtre passe-bas Butterworth, égaliseur paramétrique 30 bandes, excitateur, amplificateur de graves, amplificateur stéréo, freeverb, Stereo Panorama, Maximizer, Output Limiter et Spectrum Analyzer.

Un PPA est disponible pour installer cette application :

sudo add-apt-repository ppa:mikhailnov/pulseeffects -y
sudo apt update
sudo apt install pulseeffects pulseaudio --install-recommends

Puis, redémarrez votre ordinateur, ou relancez PulseAudio.

Module audio ladspa

Il est possible d'appliquer divers effets sur le son grâce au module module-ladspa-sink. Ce module permet d'utiliser les plugins ladspa disponibles dans le paquet swh-plugins pour obtenir des effets utiles (ou pas) sur le son.
Il est possible grâce à ce système d'avoir un compresseur dynamique ou encore un équaliseur.

Commencez d'abord par installer les effets, pour cela :installez le paquet swh-plugins swh-plugins, ensuite il vous faudra éditez le fichier /etc/pulse/default.pa pour charger le module.

Si vous utilisez PulseAudio en tant que daemon système (ce n'est pas le comportement par défaut dans Ubuntu), vous devez éditer le fichier /etc/pulse/system.pa. Mais normalement, vous devriez le savoir si c'est le cas.

Voici un exemple avec le compresseur dynamique (ceci est à ajouter à la fin du fichier) :

load-module module-ladspa-sink sink_name=compresseur plugin=dyson_compress_1403 label=dysonCompress control=-4,0.5,,4

Le système de configuration est assez simple.

  • sink_name donne un nom au sink, mettez ce que vous voulez.
  • plugin est le nom du fichier .so qui correspond au plugin, la liste est disponible directement dans Synaptic ou bien à cette adresse.
  • label est le libellé du plugin. La liste des plugins est disponible à cette adresse.
  • control sont les paramètres du plugin. Pour l'ordre il faut se reporter au site ci-dessus et entrer les paramètres dans l'ordre de leur apparition.

Après avoir relancé PulseAudio, un sink supplémentaire sera disponible dans l'applet PulseAudio, il vous suffira de le sélectionner pour profiter de l'effet sur le son.

Tout les plugins ne fonctionnent pas encore avec PulseAudio malheureusement. Si après avoir édité le fichier Pulseaudio refuse de démarrer, c'est probablement que le plugin n'est pas supporté. Supprimez alors l'entrée dans le fichier ou commentez-la, et vous pourrez relancer PulseAudio.

Exemple : Equalizer avec mbeq_1197

Dans default.pa:

#tsched=0 ici car problème de craquement du son avec ma carte
load-module module-alsa-sink device=hw:0,0 sink_name=alsa_out tsched=0
#redirection de alsa_out sur l'equaliser [changer les paramètres de control selon vos gouts]: réduction des graves
load-module module-ladspa-sink sink_name=ladspa_out master=alsa_out plugin=mbeq_1197 label=mbeq control=-15,-15,-10,-1,-5,-1,-1,0,0,0,0,0,0,0,0

Dans client.conf :

; Assigner ladspa_out comme sortie par défaut :
default-sink = ladspa_out

Amélioration/Resampler en 16bit - 48 kHz (selon votre carte)

La majorité des cartes acceptent au maximum du 16 bit - 48 kHz, alors ne vous privez pas d'utiliser votre carte son au maximum.

Pour les professionnels les cartes son sont généralement en 24 bit - 96 khz.

resampler une source audio, par exemple un CD en 16 bits / 44 khz , à une résolution/échantillonnage supérieur, n'améliorera pas la qualité audio du son, et peut même ajouter de la distorsion plus ou moins audible (cela dépend la qualité de l'algorithme de rééchantillonnage utilisé)

La manipulation se fait également dans le fichier /etc/pulse/daemon.conf.

Pour plus de renseignement sur les options :

man pulse-daemon.conf

Soyez sûr de retirer le point virgule (;) à chaque fois. Les valeurs par défaut sont celles de Karmic 09.10.

Changer :

; default-sample-rate = 44100

Par :

default-sample-rate = 48000

Changer :

; default-sample-format = s16le

Par :

default-sample-format = float32le

(pour ceux qui disposent d'une carte son ou DAC 24 bit/ 96khz, remplacez les valeurs mentionnées ci-dessus par :  default-sample-rate = 96000 / default-sample-format = float32le ; s24le )

Les autres formats disponibles sont ( mais doivent être supportés par votre carte ): u8, s16le, s16be, s24le, s24be, s24-32le, s24-32be, s32le, s32be float32le, float32be, ulaw, alaw. Vous pouvez aussi changer le resample-method mais il faut savoir que la consommation du processeur augmente avec la qualité de la méthode choisie. Vous pouvez avoir la liste des méthodes supportées par :

pulseaudio --dump-resample-methods

Changer :

; resample-method = speex-float-0

Par :

resample-method = src-sinc-best-quality

Par défaut dans karmic

; high-priority = yes

sinon changer en

high-priority = yes

Relancer pulseaudio :

pulseaudio -k
pulseaudio -D

Rediriger le son vers une "entrée" virtuelle

Il est possible avec PulseAudio de récupérer le son que vous écoutez et le rediriger vers un périphérique d'entrée virtuel. Ce qui peut permettre d'enregistrer le son en écoute, à l'aide d'une application permettant l'enregistrement de son.

Pour ce faire, il faut utiliser le contrôleur du volume de PulseAudio pavucontrol. Voir ce chapitre de la page de Pavucontrol.

Rediriger le son vers plusieurs périphériques

Si vous souhaitez rediriger le flux à la fois vers la carte son interne (pour utiliser des enceintes branchées directement sur celle-ci) et aussi vers le casque, installez paprefs puis ouvrez-le (Système → Préférences → Préférences de PulseAudio) puis dans l'onglet "Sorties simultanées" et cochez la case "Ajouter un périphérique de sortie virtuel pour une sortie simultanée sur toutes les cartes sons locales".

Il ne vous reste plus qu'à redémarrer PulseAudio (ou simplement le système) puis ouvrez les préférences du son (Système → Préférences → Son) puis dans l'onglet "Sortie" sélectionnez la nouvelle sortie appelée "Simultaneous output to <vos différentes cartes son>".

Rediriger l'entrée de la carte son vers la sortie

Dans cette section il est conseillé de baisser fortement le son de ses hauts parleurs avant de lancer ces commandes, car si l'entrée n'est pas la bonne ou si le microphone est trop près de l'ordinateur, il y a un risque pour que le micro s'enregistre lui même, ce qui peut produire rapidement un bruit fort, désagréable et potentiellement dangereux pour les hauts parleurs (effet Larsen).

Methode 1 : léger décalage

Il suffit de lancer dans un terminal cette commande pour que l'entrée soit redirigée vers les hauts parleurs :

parec | pacat

et pour annuler, faites Ctrl+c. Le problème de cette technique est qu'il y a un décalage d'environ une seconde entre l'entrée et la sortie. Elle est donc à utiliser si la réactivité n'est pas importante, et le plus souvent pour de courts tests.

Le choix de l'entrée peut-être fait via le contrôleur de volume pavucontrol dans l'onglet "Enregistrement".

Méthode 2 : sans décalage

Si vous souhaitez par exemple faire sortir le son de votre micro sur vos enceintes, lancez la commande suivante :

pactl load-module module-loopback

Si vous souhaitez que ce soit fait automatiquement à chaque démarrage, vous pouvez le faire en ajoutant la ligne :

load-module module-loopback

dans le fichier /etc/pulse/default.pa

Pour éditer ce fichier lancer la commande :

gksudo gedit /etc/pulse/default.pa
Choisir entrée en mode graphique

Le choix de l'entrée peut être fait via l'outil graphique pavucontrol dans l'onglet "Enregistrement" en pensant à choisir dans le menu en bas à gauche "Afficher : all Stream"

Choisir l'entrée en mode console

Si vous avez plusieurs entrées ou sorties, vous pouvez choisir l'entrée et la sortie en les spécifiant à pactl :

pactl load-module module-loopback source=<input device> sink=<output device>

Pour connaître le numéro de l'entrée, regardez les entrées qui sont listées ici :

pactl list sources | grep -E "Source|Description"

Si cette commande ne renvoie rien ou si vous désirez une description plus précise des sources, faites pactl list sources

De même, pour connaître le numéro de la sortie :

pactl list sinks | grep -E "Sink|Description"

Et pour une description plus complète faites pactl list sinks

Méthode 3 : sans décalage

Fonctionne sous 18.04. Dans un terminal, taper :

amixer cset iface=MIXER,name='Mic Playback Switch' on

Annuler la redirection audio

Antidote de la méthode 2

Pour annuler la redirection, au moment où l'on lance la commande "pactl load-module", un numéro nous est donné : c'est l'ID du module. Pour désactiver ce module, faites :

pactl unload-module <ID>

Pour connaitre l'ID du module si vous l'avez oublié, regardez la sortie de :

pactl list modules

Antidote de la méthode 3

Dans un terminal, taper :

amixer cset iface=MIXER,name='Mic Playback Switch' off

Compresser le flux sonore et le diffuser en http

Grâce à la possibilité d'utiliser le protocole RTP avec PulseAudio, il est possible de se servir de VLC pour compresser le son avant de l'envoyer vers le réseau local ou sur Internet pour être lu avec n'importe quel lecteur multimédia sur toute les plate-formes.

Selon que vous utilisez PulseAudio en tant que daemon système ou en mode utilisateur, éditez les fichiers /etc/pulse/system.pa ou /etc/pulse/default.pa et ajoutez les deux lignes suivantes :

##rtp stream
load-module module-null-sink sink_name="rtp"
load-module module-rtp-send source="rtp.monitor" destination="192.168.1.42" port="10002"

Le premier module permettra d'avoir un sink défini pour la sortie RTP, mais il est possible de configurer la source du module-rtp-send sur le principal si vous le souhaitez, pensez dans ce cas à lui donner un nom dans le fichier de configuration.

La destination doit être l'adresse IP de votre machine (pour une raison obscure, ça ne semble pas fonctionner en utilisant l'adresse locale 127.0.0.1). Vous pouvez changer le port si celui-ci est déjà utilisé par une autre application.

Ensuite, il sera nécessaire de récupérer le flux RTP et de le ré-encoder avec VLC pour le diffuser sur le réseau en http. La commande suivante vous fera ça très bien :

cvlc rtp://192.168.1.42:10002 --sout '#transcode{acodec=mp3,ab=320}:std{access=http,mux=ts,dst=192.168.1.42:10001}'

Pensez encore une fois à bien configurer les bonnes adresses IP.

Pour que VLC puisse continuer à fonctionner en permanence, utilisez une instance screen (le paquet screen doit être installé).

Cette méthode est tout à fait adaptée pour réaliser une webradio.

Flash

Pour faire fonctionner certaines applications récalcitrantes comme Flash de façon propre, il suffit de désactiver PulseAudio pour n'utiliser que la couche Alsa.
La procédure consiste à désactiver les paquets de PulseAudio, puis à installer quelques outils pour faciliter les réglages éventuels d'Alsa.

Documentation initiale expliquant les détails de la méthode :

Skype

Skype ne fonctionne pas toujours avec les entrées / sorties de PulseAudio. Ce problème est décrit sur le wiki de PulseAudio (en).

Note : Ce problème a été réglé dans la version 2.1. Le texte suivant reste valide pour les versions antérieures de Skype.

Une solution efficace (source (en)) consiste à déclarer des entrées / sorties audio spécifiques. Cela permet à Skype de contourner PulseAudio.

Editer le fichier ~/.asoundrc :

Rajouter les options suivantes à la fin du fichier :

pcm.skypeout
{
	type plug
	slave.pcm "dmix"
}
ctl.skypeout
{
	type hw
	card 0
}
pcm.skypein
{
	type plug
	slave.pcm "input"
}
ctl.skypein
{
	type hw
	card 0
}

Redémarrer. Ouvrir Skype et configurer les réglages audio sous Skype ("Options" → "Son") avec "skypeout" pour "son sortant" et "sonnerie". (NB : à priori, il est possible d'utiliser "skypein" pour le "son entrant" mais je n'ai pas fait la manipulation et j'ai laissé le device hardware par défaut).

Cette configuration permet de faire fonctionner Skype correctement sur les ressources audio locales mais il n'est en revanche plus possible d'utiliser les ressources audio d'un autre serveur PulseAudio distant pour Skype !

Une solution complémentaire, préconisée par Skype (Support Skype), consiste à ajouter ou éditer le fichier ~/.pulse/client.conf en y ajoutant la ligne suivante :

autospawn=no

Lecteur audio MPD

Si vous rencontrez des problèmes entre le lecteur audio MPD et Pulseaudio, voir la page de MPD

Le son "craque"

Il se peut que le son "craque" depuis la dernière version (0.9.14).

Le problème semble être dû à la fonction "tsched" activée par défaut. Pour corriger ceci, trouver dans le fichier default.pa (dans ~/.pulse généralement) la ligne load-module module-hal-detect et ajouter tsched=0 :

load-module module-hal-detect  tsched=0

Si vous utilisez module-alsa-sink, ajouter lui aussi "tsched=0"

load-module module-alsa-sink device=hw:0,0 sink_name=alsa_out tsched=0

Si vous ne trouvez pas la ligne "load-module module-hal-detect" editer le fichier " /etc/pulse/default.pa " et remplacer la ligne;

load-module module-udev-detect

par ;

load-module module-udev-detect tsched=0

Cependant si vous changer "/etc/pulse/default.pa" il faut également modifier "/etc/pulse/daemon.conf" et retirer le ; devant

default-script-file = /etc/pulse/default.pa

Il se peut que PulseAudio soit moins stable (plante au changement de musique par exemple). En augmentant default-fragment-size-msec dans daemon.conf, le problème est moins présent :

default-sample-channels = 2
high-priority = yes
default-fragments = 8
default-fragment-size-msec = 25

Ne pas oublier de tuer

$ pulseaudio -k

puis de relancer le démon

$ pulseaudio -D

Autre problème possible : si l’enceinte est connectée en Bluetooth et que le son craque, cela peut s’arranger en choisissant le profil A2DP plutôt que HSP/HSF.

SDL

Les applications SDL (une majorité de jeux comme les fps ou xmoto) utilisent Alsa, mais ces applications renvoient une erreur de greffon. pour y remédier, deux solutions :

Sortie SDL pulseaudio native :

sudo apt-get install libsdl1.2debian-pulseaudio
export SDL_AUDIODRIVER="pulse"

Mais pas encore assez mure, le son n'est pas terrible.

L'autre solution est de passer par esd :

sudo apt-get install libsdl1.2debian-esd
export SDL_AUDIODRIVER="esd"

Maintenant les flux de sortie de ces applications sont disponibles dans pulseaudio et réglables avec pavucontrol.

Autres problèmes

D'autres problèmes non traités ici ont leur solution sur cette page : PulseAudio Perfect Setup (en)

Plusieurs cartes son (enceintes ou casque USB par exemple)

Il se peut que les hauts parleurs usb ne fonctionnent pas. Il faut alors installer pavucontrol pour rediriger le flux vers les enceintes USB, c'est-à-dire mettre ces enceintes "par défaut". L'effet n'est pas immédiat, il faut relancer.

Correction du problème sur Xubuntu 13.10

FIXME Encore d'actualité sur Trusty 14.04 ?

Veuillez spécifier le problème que ça résout.

Pour corriger le problème de PulseAudio sur Xubuntu 13.10, modifiez le fichier /usr/share/dbus-1/services/indicator-sound.service :

sudo nano /usr/share/dbus-1/services/indicator-sound.service

Le fichier doit ressembler à ça :

[D-BUS Service] Name=com.canonical.indicator.sound
Exec=/usr/lib/x86_64-linux-gnu/indicator-sound/indicator-sound-service</code>

Commentez la dernière ligne et ajoutez celle-ci :

<code>Exec=/usr/lib/indicator-sound-gtk2/indicator-sound-service

Redémarrez.

La sourdine est toujours activée au démarrage

Copier le fichier /etc/pulse/default.pa dans le dossier $HOME/.pulse/ et ajouter à la fin de ce fichier :

set-sink-mute 0 no

Pulseaudio mute les canaux au démarrage

On peut vérifier qu'aucun canal ne soit muté (anglicisme courant pour "mis en sourdine") en ouvrant alsamixer (commande alsamixer) ou gnome-alsamixer. La mise en sourdine d'un canal est indiquée par la lettre M (MM pour une tranche stéréo).

ALSA contrôle le son au niveau du pilote de la carte son, donc cette console de mixage est indépendante des contrôleurs PulseAudio ou PipeWire qu'on utilise habituellement pour contrôler le volume du système.

Il arrive que certains canaux soient mutés à chaque redémarrage (et alors que l'indicateur du son n'est pas sur muet au niveau du tableau de bord).1)

Éditer le fichier /etc/pulse/default.pa, rechercher la ligne :

load-module module-device-restore

et la commenter (c'est çà dire ajouter le signe # au début) :

#load-module module-device-restore

Sauvegarder.

Problème de son avec KDE

(Rencontré avec : Kubuntu Trusty 14.04)

Les symptômes : Ralentissement à l'ouverture de session, pas de son.

La solution :

  • Ouvrez un terminal
  • Allez dans le dossier /etc/xdg/autostart/
  • Si vous trouvez deux fichiers pulseaudio.desktop et pulseaudio-kde.desktop
  • Supprimez le fichier pulseaudio.desktop.
  • Redémarrez, le problème devrait être réglé.

linuxadvantage.blogspot.fr|Source

Pulseaudio en tant que démon système

Depuis Jaunty, il arrive que le son saccade avec PulseAudio. Chez moi, le son saccade toujours, malgré le temps réel. Mais lancé en tant que root, plus de problèmes.

éditez le fichier /etc/pulse/daemon.conf comme ceci :

# This file is part of PulseAudio.
#
# PulseAudio is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# PulseAudio is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with PulseAudio; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
# USA.

## Configuration file for the PulseAudio daemon. See pulse-daemon.conf(5) for
## more information. Default values a commented out.  Use either ; or # for
## commenting.

daemonize = no
fail = yes
disallow-module-loading = no
disallow-exit = no
use-pid-file = yes
system-instance = yes
disable-shm = no
shm-size-bytes = 0 # setting this 0 will use the system-default, usually 64 MiB

high-priority = yes
nice-level = -11

realtime-scheduling = yes
; realtime-priority = 5

; exit-idle-time = 20
; module-idle-time = 20
; scache-idle-time = 20

; dl-search-path = (depends on architecture)

; load-default-script-file = yes
; default-script-file = 

; log-target = auto
; log-level = notice

resample-method = src-linear
; disable-remixing = no
; disable-lfe-remixing = yes

no-cpu-limit = yes

; rlimit-fsize = -1
; rlimit-data = -1
; rlimit-stack = -1
; rlimit-core = -1
; rlimit-as = -1
; rlimit-rss = -1
; rlimit-nproc = -1
; rlimit-nofile = 256
; rlimit-memlock = -1
; rlimit-locks = -1
; rlimit-sigpending = -1
; rlimit-msgqueue = -1
; rlimit-nice = 31
; rlimit-rtprio = 9
; rlimit-rtttime = 1000000

; default-sample-format = s16le
; default-sample-rate = 44100
 default-sample-channels = 2

default-fragments = 8
default-fragment-size-msec = 5

Par défaut, les flux ne pourront pas êtres modifiés par pavucontrol. Pour cela, décommentez la ligne de /etc/pulse/default.pa :

load-module module-esound-protocol-tcp

Enfin, il faut indiquer au lanceur d'Ubuntu qu'on souhaite utiliser PulseAudio en tant que démon système. Pour celà, rendez-vous dans le fichier /etc/default/pulseaudio et réglez la valeur de PULSEAUDIO_SYSTEM_START à 1 :

PULSEAUDIO_SYSTEM_START=1

Ajouter son utilisateur aux groupes pulse et pulse-access :

adduser monuser pulse
adduser monuser pulse-access

Vous pouvez maintenant redémarrer PulseAudio

    pulseaudio -k
    sudo /etc/init.d/pulseaudio start

Lien du thread sur le forum : http://forum.ubuntu-fr.org/viewtopic.php?pid=2675978#p2675978

Volume PCM a 100%

Le son est beaucoup trop fort & limiter le volume maximum

Certains ont pu constater que le volume général pouvait être trop fort et qu'un dérapage sur la molette de volume pouvait avoir des conséquences désastreuses sur le voisinage et les baies vitrées environnantes.

C'est peut-être votre cas si vous possédez des enceintes ne possédant pas de réglage de volume autre que celui de la carte son… Dans mon cas je possède un ensemble 5.1 d'un peu plus de 200W (altec lansing ada995 pour être précis). Ce dernier est déjà pré-amplifié et possède un bon rendement acoustique, le seul réglage disponible sur mon kit est le niveau du double-subwoofer. Je vais donc vous présenter la méthode que j'utilise afin de limiter le volume maximum ainsi qu'obtenir une plage de réglage plus élevée.

La méthode est simple: il suffit de régler (via alsamixer par exemple) une première fois le volume du PCM avec le volume master à fond puis ensuite faire en sorte d'ajuster seulement le volume master. Ainsi vous pourrez ajuster le curseur master entre 0 et 100 % (au lieu de 0-10%) sans que le son soit trop fort, vous aurez donc gagné en précision tout en limitant le volume maximum disponible via les touches multimédia de votre clavier ou l'applet en haut à droite

Toutefois, depuis l'apparition de pulseaudio vous ne pouvez plus régler le PCM de manière indépendante sans quelques petites modifications. En effet, pulseaudio gère la totalité des niveaux de volume et ne laisse pas (à première vue) la main à l'utilisateur: lorsque vous tentez de baisser le PCM, il remonte automatiquement à 100% et baisse le volume master à la place…

  • Il va donc falloir dans un premier temps dire à pulseaudio d'ignorer le volume PCM:
    ouvrez avec votre éditeur préféré le fichier présent dans /usr/share/pulseaudio/alsa-mixer/paths qui correspond à votre configuration
    sudo nano /usr/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common
  • Repérez le bloc [Element PCM]:
    remplacez «volume = merge» par
    volume = ignore
  • Enregistrez le fichier
  • Redémarrez Pulseaudio pour que les changements prennent effet:
    killall pulseaudio

    Pulseaudio redémarrera automatiquement. Il vous suffit de relancer les applications qui communicaient avec pulseaudio et voilà…

Vous pouvez maintenant régler le volume PCM comme expliqué dans le troisième paragraphe.

Une autre méthode pour diminuer le volume un peu plus élégante

Au lieu d'agir sur le volume PCM comme expliqué précédemment on peut directement agir sur le volume maximun de Pulseaudio.

  • Pour cela on peut utiliser le même fichier qu'en haut pour limiter le volume globalement. Mais on peut égalemment utiliser /usr/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf si l'on veut limiter uniquement la sortie casque (normalement la sortie jack). Utile pour ne pas limiter le volume des enceintes intégrées dans un pc portable.
    sudo nano /usr/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf
  • Repérez le bloc [Element Master]:
    Ajouter la ligne ci dessous. Comme valeur j'ai personellement mis sur mon portable 19, mais pour certains il s'agit de valeurs inférieures à 1 voire en dessous de 0.1.
    volume-limit = [valeur]


  • Enregistrez le fichier
  • Redémarrez Pulseaudio de la même manière que dans le paragraphe du dessus
    killall pulseaudio

Sur Ubuntu, Pulseaudio est très implanté, et le supprimer est une méthode radicale. Peut-être trop pour certains. Cela peut être utile pour des émulateurs console ou tout autre programme qui ne supporte pas pulse-audio.

A essayer en premier

Décocher le démarrage automatique de pulse audio dans Préférences>Applications au démarrage

Copier le fichier /etc/pulse/client.conf dans son répertoire $HOME/.pulse/ et remplacer la ligne

; autospawn = yes

par

autospawn = no

puis tuer pulseaudio par

$ pulseaudio -k

L'affaire est classée. Et pour que pulseaudio ne redémarre pas à la session suivante, il suffit créer un fichier .pulse_a11y_nostart à la racine de son répertoire $HOME

$ touch ~/.pulse_a11y_nostart

Si on change d'avis, il suffit de relancer pulseaudio

$ pulseaudio --start

et de remettre autospawn en commentaire (";") ou à yes. Pour un redémarrage normal à la session suivante, il suffira juste de virer le fichier "~/.pulse_a11y_nostart"…

Cette méthode marche sur Lucid 64 bits, sans enlever le méta paquet ubuntu-desktop ou autre. Pour retrouver un réglage de son vous pouvez installer le mixeur alsa.

Source forum ubuntu : http://forum.ubuntu-fr.org/viewtopic.php?pid=3441970#p3441970

Toujours des problèmes

Il suffit de défaire toute les modifications citées au dessus, puis :

Ouvrez Synaptic et cherchez esound, un autre serveur de son, que vous cochez pour installer. Puis recherchez tout ce qui se rapproche a pulseaudio et cliquez pour faire une désinstallation complète. Si Synaptic vous signale que ca enlève des paquets gnome, vous décochez bien entendu. Cette méthode désinstalle ubuntu-desktop qui n'est utile que pour migrer d'une version à une autre.

Appliquez vos opérations, redémarrez votre PC.

Autre méthode

Si vous avez un problème avec Pulseaudio, vous pouvez le désinstaller ! (Car le logiciel libre c'est aussi le droit de ne pas l'utiliser quand on en veut pas. ;-) ) Pour désinstaller Pulseaudio, rien de plus simple. Il suffit de désinstaller les paquets: pulseaudio et gstreamer0.10-pulseaudio

Une fois ceci fait, au prochain démarrage vos applications utiliseront automatiquement Alsa sans passer par PulseAudio !

Malgré tout il reste un problème si vous utilisez Ubuntu (Gnome) … Et de taille ! Car vous ne pouvez plus régler le son !

Avec XFCE et xubuntu

tapez dans le terminal :

sudo apt-get remove --purge pulseaudio

et redémarrez simplement

Si vous voulez plus de renseignements sur ce qu'est ou n'est pas PulseAudio, visionnez la vidéo de Lennart Poettering.

Quelques liens parlant de PulseAudio :


Contributeurs : Kamilion (traduction), Ghost (création), Prometee (traduction et améliorations), ste (normalisation de la page), Manu_95 (optimisation Skype), loulouch (démon système), HacKurx (son en 5.1), Theozzfancometh (mise à jour et clarification de la page), Id2ndR (nettoyage), Syrion (Précision config), Psychederic (resample et précision de format), ignace72 (sourdine).


1)
Signalement de bogue sur Launchpad
  • pulseaudio.txt
  • Dernière modification: Le 21/03/2024, 11:37
  • par krodelabestiole