Skip to main content

5 - Les serveurs son : JACK, PipeWire, PulseAudio et autres...


[résolu] Plus de son ou très très saccadé

Bonjour,

Jusqu'a présent, tout marchait bien (QjackCtl & qSynth) avec mon AKAI LPK25 😊, mais pour une raison qui m'est inconnu, je n'ai plus de son, ou alors, rarement, et extrêmement saccadé.

J'ai ces erreurs (jackd démarre correctement) :
Copy to clipboard
08:24:25.169 Réinitialisation des statistiques. 08:24:25.177 Changement des connexions ALSA. 08:24:25.180 DBUS : le service n'est pas disponible (org.jackaudio.service soit jackdbus). connect(2) call to /dev/shm/jack-1000/default/jack_0 failed (err=Aucun fichier ou dossier de ce type) attempt to connect to server failed 08:24:28.085 Changement du graphique des connexions ALSA. 08:24:28.194 Changement des connexions ALSA. 08:24:28.237 Changement du graphique des connexions ALSA. 08:24:28.396 Changement des connexions ALSA. 08:24:28.483 Changement du graphique des connexions ALSA. 08:24:28.598 Changement des connexions ALSA. 08:24:28.926 Changement du graphique des connexions ALSA. 08:24:29.000 Changement des connexions ALSA. 08:24:58.420 Changement du graphique des connexions ALSA. 08:24:58.457 Changement des connexions ALSA. 08:25:05.310 Changement des connexions JACK. 08:25:05.360 Client activé. 08:25:05.360 Baie de brassage désactivée. 08:25:05.364 Changement de la taille du tampon (64). 08:25:05.378 Récupération désynchronisation (XRUN) (1). 08:26:20.762 Récupération désynchronisation (XRUN) (13681). 08:26:21.598 Récupération de désynchronisation (XRUN) (66 sauté). 08:26:25.950 Récupération désynchronisation (XRUN) (13748). 08:26:27.616 Récupération de désynchronisation (XRUN) (120 sauté). 08:26:29.637 Récupération désynchronisation (XRUN) (13869). 08:26:31.628 Récupération de désynchronisation (XRUN) (222 sauté). 08:26:31.995 Récupération désynchronisation (XRUN) (14092). 08:26:33.637 Récupération de désynchronisation (XRUN) (211 sauté). 08:26:35.644 Récupération de désynchronisation (XRUN) (40 sauté). 08:26:36.801 Récupération désynchronisation (XRUN) (14345). 08:26:37.653 Récupération de désynchronisation (XRUN) (124 sauté). 08:26:39.661 Récupération de désynchronisation (XRUN) (537 sauté). 08:26:41.684 Récupération de désynchronisation (XRUN) (310 sauté). 08:26:43.694 Récupération de désynchronisation (XRUN) (358 sauté). 08:26:44.379 Récupération désynchronisation (XRUN) (15678). 08:26:45.702 Récupération de désynchronisation (XRUN) (137 sauté). 08:26:46.281 Récupération désynchronisation (XRUN) (15816). 08:26:47.711 Récupération de désynchronisation (XRUN) (375 sauté).


J'ai testé sous mon Ubuntu 16.04 LTS avec le noyau temps "low latency" ou pas.

Une idée ?

Merci
Fabrice
Moi je commencerais l'enquete dans plusieurs directions :
- as tu du son sans jack ? (video youtube par exemple ?)
- quelles sont les reglages d'entrees sorties / buffers/echantillonnage avec lesquels tu lances jack ? (voir dans qjackctl)
- as tu installé quelque chose tout récement ?
- q'uen est il des connections et des niveaux avec alsamixer ?
Salut,

Oui, j'ai du son sans jack, mais dès que je le lance, évidemment, non 😊

Voilà la conf de jack :
Copy to clipboard
[Defaults] ConnectionsTabPage=2 MessagesStatusTabPage=0 PatchbayPath= SessionSaveVersion=true [Geometry] qjackctlConnectionsForm\geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x2\0\0\0\0\t\x12\0\0\0\x18\0\0\v\xac\0\0\x2\xf\0\0\t\x12\0\0\0\x34\0\0\v\xac\0\0\x2\xf\0\0\0\x1\0\0\0\0\x5\xa0) qjackctlConnectionsForm\visible=true qjackctlMainForm\geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x2\0\0\0\0\x6\xb5\0\0\0-\0\0\b\xe0\0\0\0\xac\0\0\x6\xb5\0\0\0I\0\0\b\xe0\0\0\0\xac\0\0\0\x1\0\0\0\0\x5\xa0) qjackctlMainForm\visible=true qjackctlMessagesStatusForm\geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x2\0\0\0\0\x3+\0\0\0\x84\0\0\x6\x34\0\0\x3\x1e\0\0\x3+\0\0\0\xa0\0\0\x6\x34\0\0\x3\x1e\0\0\0\0\0\0\0\0\x6\x90) qjackctlMessagesStatusForm\visible=true qjackctlPatchbayForm\geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x2\0\0\0\0\x6\xcc\0\0\0h\0\0\n\x12\0\0\x1\xb0\0\0\x6\xcc\0\0\0h\0\0\n\x12\0\0\x1\xb0\0\0\0\x1\0\0\0\0\x5\xa0) qjackctlPatchbayForm\visible=false qjackctlSessionForm\geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x2\0\0\0\0\0'\0\0\0\x18\0\0\x2\xc5\0\0\x1\xbe\0\0\0'\0\0\0\x18\0\0\x2\xc5\0\0\x1\xbe\0\0\0\0\0\0\0\0\x6\x90) qjackctlSessionForm\visible=false [History] MessagesLogPathComboBox\Item1=qjackctl.log PostShutdownScriptShellComboBox\Item1=killall jackd && pulseaudio --start & PostShutdownScriptShellComboBox\Item2=killall jackd ServerConfigNameComboBox\Item1=.jackdrc ServerNameComboBox\Item1=(par d\xe9\x66\x61ut) ServerPrefixComboBox\Item1=/usr/bin/jackd ServerPrefixComboBox\Item2=jackd ServerPrefixComboBox\Item3=jackdmp ServerPrefixComboBox\Item4=jackstart ShutdownScriptShellComboBox\Item1=killall jackd && pulseaudio --start & StartupScriptShellComboBox\Item1=killall pulseaudio XrunRegexComboBox\Item1=xrun of at least ([0-9|\\.]+) msecs XrunRegexComboBox\Item2=d\xe9synchronisation (XRUN) d'au moins ([0-9|\\.]+) ms [Options] ActivePatchbay=false ActivePatchbayPath= ActivePatchbayReset=false AliasesEditing=false AliasesEnabled=false AlsaSeqEnabled=true BaseFontSize=0 BezierLines=false ConnectionsFont="Sans Serif,10,-1,5,75,0,0,0,0,0" ConnectionsIconSize=0 DBusEnabled=true DisplayBlink=true DisplayEffect=true DisplayFont1="Sans Serif,12,-1,5,75,0,0,0,0,0" DisplayFont2="Sans Serif,6,-1,5,75,0,0,0,0,0" JackClientPortAlias=0 JackClientPortMetadata=false JackDBusEnabled=true KeepOnTop=false LeftButtons=true MessagesFont="Monospace,8,-1,5,75,0,0,0,0,0" MessagesLimit=true MessagesLimitLines=1000 MessagesLog=false MessagesLogPath=qjackctl.log PostShutdownScript=true PostShutdownScriptShell=killall jackd && pulseaudio --start & PostStartupScript=false PostStartupScriptShell= QueryClose=true QueryDisconnect=true QueryShutdown=false RightButtons=true ServerConfig=true ServerConfigName=.jackdrc ServerConfigTemp=false ShutdownScript=false ShutdownScriptShell=killall jackd && pulseaudio --start & Singleton=true StartJack=false StartupScript=true StartupScriptShell=killall pulseaudio StdoutCapture=true StopJack=true SystemTray=false SystemTrayQueryClose=true TextLabels=true TimeDisplay=0 TimeFormat=0 TransportButtons=true XrunRegex=xrun of at least ([0-9|\\.]+) msecs [Presets] DefPreset=qjack-midi Preset1=qjack-midi [Program] Version=0.4.2 [Settings] Audio=0 Chan=0 Dither=0 Driver=alsa Frames=128 HWMeter=false HWMon=false IgnoreHW=false InChannels=0 InDevice= InLatency=0 Interface= MidiDriver=aucun Monitor=false NoMemLock=false OutChannels=0 OutDevice= OutLatency=0 Periods=2 PortMax=256 Priority=5 Realtime=true SampleRate=44100 Server=/usr/bin/jackd ServerName= ServerSuffix= Shorts=false SoftMode=false StartDelay=2 Timeout=500 UnlockMem=false Verbose=false Wait=21333 WordLength=16 qjack-midi\Audio=0 qjack-midi\Chan=0 qjack-midi\Dither=0 qjack-midi\Driver=alsa qjack-midi\Frames=64 qjack-midi\HWMeter=false qjack-midi\HWMon=false qjack-midi\IgnoreHW=false qjack-midi\InChannels=0 qjack-midi\InDevice= qjack-midi\InLatency=0 qjack-midi\Interface= qjack-midi\MidiDriver=aucun qjack-midi\Monitor=false qjack-midi\NoMemLock=false qjack-midi\OutChannels=0 qjack-midi\OutDevice= qjack-midi\OutLatency=0 qjack-midi\Periods=2 qjack-midi\PortMax=256 qjack-midi\Priority=5 qjack-midi\Realtime=true qjack-midi\SampleRate=44100 qjack-midi\Server=/usr/bin/jackd qjack-midi\ServerName= qjack-midi\ServerSuffix= qjack-midi\Shorts=false qjack-midi\SoftMode=false qjack-midi\StartDelay=2 qjack-midi\Timeout=500 qjack-midi\UnlockMem=false qjack-midi\Verbose=false qjack-midi\Wait=21333 qjack-midi\WordLength=16 [Splitter] AlsaConnectView\sizes=272, 74, 297 AudioConnectView\sizes=269, 90, 269 InfraClientSplitter\sizes=12, 12 MidiConnectView\sizes=38, 20, 38 PatchbayView\sizes=38, 20, 38


et la conf alsamixer : Alsamixer
alors ya un truc qui est pas évident, c'est que le AKAI LPK25 n'est pas une carte son, mais un clavier maitre. Donc une question à se poser c'est est ce qu'il y a des coupures de son quand le clavier n'est pas branché ?

un autre point à regarder c'est la conso CPU lorsque tu lance jack. C'est possible qu'a ce moment là t'ai un logiciel qui se mette à déconner à l’arrêt de pulseaudio.
Pour la conso, rien d'anormal 😊

Comment je teste le son avec jack ?, avec un clavier virtuel ?. Je n'ai pu le faire qu'avec Qsynth.

- Dans LMMS, avec jack chargé (donc, pas de son ALSA) cela grésille à mort avec ça saccade aussi.
- Dans LMMS, avec ALSA, tout est bon.
personnellement, je ne comprends pas tres bien le fichier de conf de jack que tu mets, peut etre si tu faisais plutot une copie d'ecran de la page de parametres de qjackctl (l'utilises tu pour lancer jack ?)
tu as visiblement un probleme spécifique à jack.
France
"Échantillon/période : 64" -> ça me paraît très (voire trop) bas. Essaies avec 512 puis, si ça fonctionne bien, redescend à 256, puis éventuellement à 128.
Non, toujours aucun son en 512 😢, mais uniquement en 1024 !!! 😬 . J'ai pourtant le voyant de Qsynth qui s'allume lorsque j'appuie sur une touche du clavier.

logs jack :
Copy to clipboard
09:46:55.121 Client désactivé. 09:46:55.124 Script post-extinction... 09:46:55.125 killall jackd && pulseaudio --start & 09:46:55.528 Script post-extinction terminé avec succès. 09:48:29.206 Script de démarrage... 09:48:29.216 killall pulseaudio 09:48:29.621 Script de démarrage terminé avec succès. 09:48:29.621 JACK démarre... 09:48:29.621 /usr/bin/jackd -dalsa -dhw:0 -r44100 -p512 -n2 09:48:29.627 JACK a été démarré avec le PID=12742. 09:48:31.689 Changement des connexions JACK. 09:48:31.691 Configuration du serveur enregistrée dans « /home/fabrice/.jackdrc ». 09:48:31.692 Réinitialisation des statistiques. 09:48:31.701 Client activé. 09:48:31.701 Baie de brassage désactivée. 09:48:31.705 Changement de la taille du tampon (512).


logs Qsynth :
Copy to clipboard
**** alsa_pcm: xrun of at least -2048578.176 msecs **** alsa_pcm: xrun of at least -2048582.784 msecs jack main caught signal 15 JACK died - calling shutdown handler fluidsynth: error: Help! Lost the connection to the JACK server JACK died - calling shutdown handler fluidsynth: error: Help! Lost the connection to the JACK server 09:50:16.514 Silence: Arrêt du lecteur MIDI... 09:50:16.517 Silence: Attends que le lecteur MIDI s'arrête... 09:50:16.518 Silence: Destruction du lecteur MIDI... 09:50:16.519 Silence: Destruction du pilote MIDI... 09:50:16.547 Silence: Destruction du routeur MIDI... 09:50:16.548 Silence: Destruction du pilote audio... 09:50:16.549 Silence: Chargement de la banque de son : "/home/fabrice/Musique/soundfont/hammersound/synthLead/mja_pulsar.SF2" (SFID=1)... 09:50:16.551 Silence: Destruction du moteur du synthétiseur... 09:50:16.552 Silence: Moteur du synthétiseur arrêté. 09:50:17.152 Silence: Création du moteur de synthèse... 09:50:17.187 Silence: Chargement de la banque de son : "/home/fabrice/Musique/soundfont/hammersound/synthLead/mja_pulsar.SF2" (décalage de banque 0)... 09:50:17.189 Silence: Création du pilote audio (jack)... 09:50:17.208 Silence: Création du routeur MIDI (alsa_seq)... 09:50:17.209 Silence: Création du pilote MIDI (alsa_seq)... 09:50:17.209 Silence: Création du lecteur MIDI... 09:50:17.210 Silence: Moteur du synthétiseur démarré. 09:50:17.210 Silence: fluid_synth_set_gain(0.23) 09:50:17.211 Silence: fluid_synth_set_reverb(0.03,0.03,1,0.91) 09:50:17.211 Silence: fluid_synth_set_chorus(3,0.91,0.3,8.6,0) fluidsynth: warning: No preset found on channel 9 [bank=128 prog=0] fluidsynth: warning: Instrument not found on channel 3 [bank=0 prog=3], substituted [bank=0 prog=0] fluidsynth: warning: Instrument not found on channel 4 [bank=0 prog=4], substituted [bank=0 prog=0] fluidsynth: warning: Instrument not found on channel 5 [bank=0 prog=5], substituted [bank=0 prog=0] fluidsynth: warning: Instrument not found on channel 6 [bank=0 prog=6], substituted [bank=0 prog=0] fluidsynth: warning: Instrument not found on channel 7 [bank=0 prog=7], substituted [bank=0 prog=0] fluidsynth: warning: Instrument not found on channel 8 [bank=0 prog=8], substituted [bank=0 prog=0] fluidsynth: warning: No preset found on channel 9 [bank=128 prog=9] fluidsynth: warning: Instrument not found on channel 10 [bank=0 prog=10], substituted [bank=0 prog=0] fluidsynth: warning: Instrument not found on channel 11 [bank=0 prog=11], substituted [bank=0 prog=0] fluidsynth: warning: Instrument not found on channel 12 [bank=0 prog=12], substituted [bank=0 prog=0] fluidsynth: warning: Instrument not found on channel 13 [bank=0 prog=13], substituted [bank=0 prog=0] fluidsynth: warning: Instrument not found on channel 14 [bank=0 prog=14], substituted [bank=0 prog=0] fluidsynth: warning: Instrument not found on channel 15 [bank=0 prog=15], substituted [bank=0 prog=0] fluidsynth: warning: Instrument not found on channel 3 [bank=0 prog=3], substituted [bank=0 prog=0] fluidsynth: warning: Instrument not found on channel 4 [bank=0 prog=4], substituted [bank=0 prog=0] fluidsynth: warning: Instrument not found on channel 5 [bank=0 prog=5], substituted [bank=0 prog=0] fluidsynth: warning: Instrument not found on channel 6 [bank=0 prog=6], substituted [bank=0 prog=0]


Par contre, pourquoi lorsque je teste avec Ubuntu Studio en live USB, pulseaudio reste chargé (config de base) pendant l'utilisation du serveur Jackd, alors que là, il faut l'éteindre (pulseaudio) et le relance après ?

Fabrice
  1. 1 Heu.... alors là... no comprendo : jack n'est pas démarré (ni pulseaudio) , et j'ai bien du son 😕 !, le clavier marche 😀
==> update : En fait non, c'est Qsynth qui démarre jackd, mais QjackCtl ne le "voit" pas, ni dans l'interface, ni dans les messages 😑

Par contre, evidemment, rien dans VLC, Youtube ou LMMS... normal car pulseaudio n'est pas démarré.

  1. 2... houlala, j'ai lancé alsamixer et bim.... fini, plus de son à partir du synthé, mais j'ai en dans VLC !?, alors que ni jack ni pulseaudio marche :
    Copy to clipboard
    fabrice@:~$ pulseaudio --check fabrice@:~$ pulseaudio -k E: [pulseaudio] main.c: Impossible de tuer le démon : Aucun processus de ce type fabrice@:~$ ps aux | grep jack fabrice 12429 0.8 1.2 892380 207100 ? SLl 09:42 0:17 /usr/bin/qjackctl
Jack doit etre en route.
sinon tu peux aussi essayer en enlevant le mode duplex, vu que tu n'enregistres rien sur ta carte son, et en selectionnant les entrees sorties separement, de plus 3 buffers seraient sans doute mieux que 2.

quand a l'extinction de pulseaudio , c'est le killall pulsaudio que tu as mis dans tes options qui le fait.
la question de pouvoir avoir a la fois jack et du son dans youtube est une autre question.
d'abord faire fonctionner jack correctement...
et je confirme, 64 en taille buffer c'est des xruns quasi garantis avec les cartes son internes, dont le symptomes principal est : un son saccadé voir inexistant 🎅
ok; cela fonctionne en 128, merci 😊
J'ai mis "3" en tampons, et pour l'instant, c ok aussi.

Donc, maintenant, faudrait avoir du son avec le systeme lorsque jackd est chargé 😊. Mais apparement, pulseaudio et jackd ne sont pas tres pôtes 😊
France
Ils peuvent l'être si le système est configuré correctement. Pour cela, regarde du côté d'un paquet qui devrait s'appeler "pulseaudio-module-jack".
Ok, je vais voir çà. Merci

Ma seconde étape est de réussir en enregistrer dans LMMS en temps réel 😊.
France
Pas possible d'enregistrer dans LMMS si je me souviens bien. Il va te falloir de trouver un autre enregistreur, mais c'est pas ça qui manque.
Ha, y'a de quoi faire dans les enregistreurs 😊. J'avais commencé à tester avec Ardour, mais sans succès... aucun son n'arrive du clavier.

Par contre, j'ai essayé d'utiliser "pulseaudio-module-jack" avec cet article, mais apparemment, cela ne fonctionne pas avec jackd 1 :
Copy to clipboard
09:44:43.673 Réinitialisation des statistiques. 09:44:43.684 Changement des connexions ALSA. 09:44:43.710 DBUS : le service est disponible (org.jackaudio.service soit jackdbus). 09:47:28.220 Script de démarrage... 09:47:28.220 pactl load-module module-jack-sink && pactl load-module module-jack-source && pactl set-default-sink jack_out && pacmd set-default-source jack_in && pacmd list-sink-inputs | grep index | sed 's/ *index: *//g' | xargs -I{} pacmd move-sink-input "{}" jack_out 09:47:34.652 Script de démarrage terminé avec statut de sortie=256. 09:47:34.707 DBUS : le serveur JACK démarre… 09:47:34.710 DBUS : le serveur JACK a été démarré (org.jackaudio.service soit jackdbus). Sun Jan 15 09:47:34 2017: Starting jack server... Sun Jan 15 09:47:34 2017: JACK server starting in realtime mode with priority 10 Sun Jan 15 09:47:34 2017: self-connect-mode is "Don't restrict self connect requests" Sun Jan 15 09:47:34 2017: Acquired audio card Audio0 Sun Jan 15 09:47:34 2017: creating alsa driver ... hw:PCH,0|hw:PCH,0|128|3|44100|0|0|nomon|swmeter|-|32bit Sun Jan 15 09:47:34 2017: configuring for 44100Hz, period = 128 frames (2.9 ms), buffer = 3 periods Sun Jan 15 09:47:34 2017: ALSA: final selected sample format for capture: 32bit integer little-endian Sun Jan 15 09:47:34 2017: ALSA: use 3 periods for capture Sun Jan 15 09:47:34 2017: ALSA: final selected sample format for playback: 32bit integer little-endian Sun Jan 15 09:47:34 2017: ALSA: use 3 periods for playback Sun Jan 15 09:47:34 2017: graph reorder: new port 'system:capture_1' Sun Jan 15 09:47:34 2017: New client 'system' with PID 0 Sun Jan 15 09:47:34 2017: graph reorder: new port 'system:capture_2' Sun Jan 15 09:47:34 2017: graph reorder: new port 'system:playback_1' Sun Jan 15 09:47:34 2017: graph reorder: new port 'system:playback_2' Sun Jan 15 09:47:34 2017: New client 'PulseAudio JACK Sink' with PID 9294 Sun Jan 15 09:47:34 2017: Connecting 'PulseAudio JACK Sink:front-left' to 'system:playback_1' Sun Jan 15 09:47:34 2017: Connecting 'PulseAudio JACK Sink:front-right' to 'system:playback_2' Sun Jan 15 09:47:34 2017: New client 'PulseAudio JACK Source' with PID 9294 Sun Jan 15 09:47:34 2017: Connecting 'system:capture_1' to 'PulseAudio JACK Source:front-left' Sun Jan 15 09:47:34 2017: Connecting 'system:capture_2' to 'PulseAudio JACK Source:front-right' Sun Jan 15 09:47:35 2017: Saving settings to "/home/fabrice/.config/jack/conf.xml" ... 09:47:36.940 Changement des connexions JACK. 09:47:36.942 Configuration du serveur enregistrée dans « /home/fabrice/.jackdrc ». 09:47:36.943 Réinitialisation des statistiques. 09:47:36.946 Client activé. 09:47:36.947 Baie de brassage désactivée. 09:47:36.956 Changement du graphique des connexions JACK. Sun Jan 15 09:47:36 2017: New client 'qjackctl' with PID 11229

Copy to clipboard
fabrice@:~$ /usr/bin/jackd -v jackdmp 1.9.11 Copyright 2001-2005 Paul Davis and others. Copyright 2004-2014 Grame.

J'ai installé jackd2 (ubuntu 16.04), mais je vois pas où il a été installé. Un "locate" et "whereis" ne donne pas grand chose :
Copy to clipboard
fabrice@:~$ locate jackd2 /var/lib/dpkg/info/jackd2.list /var/lib/dpkg/info/jackd2.postrm

Fabrice
France
"jackdmp 1.9.11" : c'est jack2
jack1 a des versions du genre : 0.125

Ces 2 versions de jack fournissent la même commande jackd.

(oui, c'est pas très intuitif)
ha ok merci 😊

Oui, effectivement, c'est pas intuitif du tout 😂. Bon, en tout cas, pulseaudio et jackd, j'ai pas reussi à le faire fonctionner.

Merci à tous 😊
Maintenant, je m'attelle à Hydrogen et surtout, à Ardour !
tu veux enregistrer ce que tu joues sur ton clavoier maitre ?
dans ce cas tu ferais aussi bien sinon mieux d'enregistrer en midi en fait
oui, j'ai mon AKAI LPK25 et j'aimerai enregistrer ce que je joue, en midi bien sur. Sur LMMS, c'est la misère 😑

PS : J'ai lu ici qu'il faut mieux avoir plusieurs softs dédiés, plutôt qu'un gros qui fait tout..... mais pas forcément tout bien ;(. Vrai ?
France
Ah, alors, c'est peut être possible que tu puisses enregistrer les notes MIDI dans LMMS. Il faut vérifier. Je pensais que tu parlais d'enregistrement audio (ce qui n'est pas possible avec LMMS).

À voir donc.
Page: 1/2  [Suivant]
1  2