#1 Le 01/05/2026, à 19:42
- Guig2000
[tuto][hdmi][pipewire] Premières secondes de chaque son/flux sont KO
Bonjour,
Problème:
Quelque soit votre système d'exploitation,
Vous utilisez un ampli audio HDMI (home cinema) ou peut être un DAC HDMI ou numérique en général (spdif),
Il manque toujours les 1 à 3 premières secondes de son de vos musiques et vidéos, y compris lors de la reprise après une pause,
Vous n'entendez pas les court sons de notification.
Ce phénomène est dû au fait que quand il n'y a pas de son à envoyer, le PC ... n'envoie rien. L'ampli numérique se met donc en attente d'un flux de données audio et il lui faut un certain temps pour s'activer. Sur un ampli analogique, il n'y a pas ce problème, l'ampli vas juste amplifier 0v mais ne vas pas s'arrêter. Si vous avez activé des sons de notification, leur durée est possiblement plus courte que le temps de réactivation de l'ampli et donc vous ne les entendez pas.
Sur Ubuntu 24 et dérivés, c'est par défaut après 5s que le système stoppe le flux audio numérique. Donc si vous écoutez de la musique ou une vidéo, si vous mettez en pause plus de 5s, votre ampli audio désactiveras sa sortie, par défaut de données en entrée.
Solution pour Ubuntu 24:
Beaucoup de tutos que j'ai trouvé pour essayer de régler ce problème ne fonctionnent pas car trop anciens ou proposent une solution peut élégante telle que jouer un son inaudible en permanence.
Ubuntu utilise pipewire/plumber pour l'audio, et il est possible dans les paramètres de désactiver la mise en sommeil audio. Voici un script, qui fonctionneras pour les Ubuntu 24 et dérivés Je ne sais pas pour les versions plus récentes ou plus anciennes, cela devrai fonctionner à partir du moment où elles utilisent pipewire:
#!/bin/bash
mkdir ~/.config/wireplumber
mkdir ~/.config/wireplumber/main.lua.d
cp /usr/share/wireplumber/main.lua.d/50-alsa-config.lua ~/.config/wireplumber/main.lua.d
sed -i 's/\-\-\["session.suspend\-timeout\-seconds"\] = 5/["session.suspend-timeout-seconds"] = 0/' ~/.config/wireplumber/main.lua.d/50-alsa-config.lua
systemctl --user restart wireplumber pipewire pipewire-pulseVous pouvez copier ces lignes dans un fichier texte en .sh et l'exécuter (ce que je vous conseilles) ou bien exécuter chaque ligne, sauf la première, une par une.
Explications:
Le script copie le fichier de configuration /usr/share/wireplumber/main.lua.d/50-alsa-config.lua dans /home/[nomdecompte]/.config/wireplumber/main.lua.d/
Puis actives le paramètre "session.suspend\-timeout\-seconds" à 0 ce qui as pour effet de désactiver la mise en veille audio. Avant:
--["session.suspend-timeout-seconds"] = 5, -- 0 disables suspendAprès:
["session.suspend-timeout-seconds"] = 0, -- 0 disables suspend ( -- = commentaire).
Puis redémarre les services audio pour prise en compte immédiate.
Il aurais été possible de modifier directement /usr/share/wireplumber/main.lua.d/50-alsa-config.lua en utilisant sudo, mais c’est plus sûr d'utiliser une copie dans /home/.config.
J'ai aussi trouvé:
pulse.idle.timeout = 5 # pause after 5 seconds of underrun dans le fichier /usr/share/pipewire/pipeware-pulse.conf
Il est peut être possible que faire la même chose avec cette valeur aurais aussi fonctionné, mais je n'ai pas essayé.
A noter que j'ai exactement le même problème sous windows, mais le délai est plus de 20s ou 30s que les 5s de Ubuntu et que je ne sais pas le résoudre!
Testé sous Kubuntu 24.04 LTS.
Sources qui m'ont aidé à résoudre ce problème:
mint Re: [SOLVED] Turning off pulse audio suspend-on-idle
sed-replace-specific-line-in-file
wikibooks Regex
Dernière modification par Guig2000 (Le 10/05/2026, à 11:00)
Hors ligne