Chargement...
 
Skip to main content

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


[Résolu] Qjackctl ne se lance pas avec 2 périphériques différents en entrée/sortie

Salut,

j'ai cette carte son Creative Labs SB Audigy 1 trouvée dans mon grenier qui marche bien avec pulse audio.
Lorsque je veux lancer jack en sélectionnant mon micro usb en entrée et cette carte son en sortie, j'ai ce message

"Dbus impossible de démarre le serveur jack, désolé".
D'autres fois j'ai "erreur de communication serveur"
Parfois ça crashe et qjackctl se ferme, parfois non.

A noter que j'ai réussi une fois à lancer jack avec audigy en entrée et en sortie mais je n'ai pas réussi à reproduire cet exploit. Le message qui s’affiche quand je réessaie :

Copy to clipboard
14:23:05.355 Baie de brassage désactivée. 14:23:05.378 Réinitialisation des statistiques. 14:23:05.411 Changement des connexions ALSA. 14:23:05.432 DBUS : le service est disponible (org.jackaudio.service soit jackdbus). Cannot connect to server socket err = Aucun fichier ou dossier de ce type Cannot connect to server request channel jack server is not running or cannot be started 14:23:05.478 Changement du graphique des connexions ALSA. 14:23:16.610 DBUS : impossible de démarrer le serveur JACK. Désolé Thu Oct 27 14:23:16 2016: Starting jack server... Thu Oct 27 14:23:16 2016: JACK server starting in realtime mode with priority 30 Cannot connect to server socket err = Aucun fichier ou dossier de ce type Cannot connect to server request channel jack server is not running or cannot be started Thu Oct 27 14:23:16 2016: ERROR: cannot register object path "/org/freedesktop/ReserveDevice1/Audio2": A handler is already registered for /org/freedesktop/ReserveDevice1/Audio2 Thu Oct 27 14:23:16 2016: ERROR: Failed to acquire device name : Audio2 error : A handler is already registered for /org/freedesktop/ReserveDevice1/Audio2 Thu Oct 27 14:23:16 2016: ERROR: Audio device hw:Audigy,1 cannot be acquired... Thu Oct 27 14:23:16 2016: ERROR: Cannot initialize driver Thu Oct 27 14:23:16 2016: ERROR: JackServer::Open failed with -1 Thu Oct 27 14:23:16 2016: ERROR: Failed to open server Thu Oct 27 14:23:18 2016: Saving settings to "/home/pikachu/.config/jack/conf.xml" ... 14:23:20.015 Impossible de connecter le serveur JACK comme client. - L'opération a échoué. - Incapable de se connecter au serveur. Veuillez consulter la fenêtre des messages pour plus d'informations. Cannot connect to server socket err = Aucun fichier ou dossier de ce type Cannot connect to server request channel jack server is not running or cannot be started


J'ai le même message
Copy to clipboard
ERROR: Failed to acquire device name

avec le H2n quand c'est lui qui est en entrée.


J'ai essayé de changer les périodes/tampon comme indiqué dans un autre message de forum pour la SB audigy 2, mais ça ne fait rien.
Le wiki indique qu'on peut changer un paramètre dans alsamixer pour cette même audigy 2, mais je ne le trouve pas. De plus ca n'a pas vraiment l'air de venir de là.

Je suis sous Trisquelgnu/linux avec un noyau lowlatency et j'ai testé avec iognu/linux qui ne reconnaît même pas la carte son au démarrage.

Le cat /proc/asound/cards sur trisquel

Copy to clipboard
0 [SIS966 ]: HDA-Intel - HDA SIS966 HDA SIS966 at 0xfdff0000 irq 18 1 [NVidia ]: HDA-Intel - HDA NVidia HDA NVidia at 0xfcffc000 irq 17 2 [Audigy ]: Audigy - SB Audigy 1 [SB0092] SB Audigy 1 [SB0092] (rev.3, serial:0x531102) at 0xf900, irq 18 3 [H2n ]: USB-Audio - H2n ZOOM Corporation H2n at usb-0000:00:03.0-4, full speed


Solution :
1 fixation de l'ordre de chargement des périphériques audio
Copy to clipboard
sudo gedit /etc/modprobe.d/alsa-base.conf


2 effacement du fichier de configuration de qjackctl avec la commande
Copy to clipboard
rm ~/.config/rncbc.org/QjackCtl.conf

France
Le fichier de config de Qjackctl peut s'effacer, il faut tout re-paramètrer ensuite,
sur ta distro je ne sais, sur Debian la commande suivante efface le fichier

Copy to clipboard
rm ~/.config/rncbc.org/QjackCtl.conf


Vérifie que le fichier Qjackctl.conf se trouve au même endroit (home/.config/rnbc.org)
car c'est peut être différent sur trisquel.
Ca c'est cool parce qu'on avance ! Merci sub26nico !

J'ai supprimé le fichier de conf et ça a fonctionné une fois !

Comme ceci :
interface par défaut
périphérique d'entrée H2n hw2
périphérique de sortie audigy hw3

J'ai ensuite éteint jack, puis changé les échantillons/période de 1024 à 256 pour avoir une latence correcte, ce qui a planté avec le message suivant :
Copy to clipboard
09:55:18.907 Baie de brassage désactivée. 09:55:18.930 Réinitialisation des statistiques. 09:55:18.944 Changement des connexions ALSA. 09:55:19.045 DBUS : le service est disponible (org.jackaudio.service soit jackdbus). Cannot connect to server socket err = Connexion refusée Cannot connect to server request channel jack server is not running or cannot be started 09:55:19.058 Changement du graphique des connexions ALSA. 09:56:12.506 DBUS : le serveur JACK démarre… Cannot connect to server socket err = Connexion refusée Cannot connect to server request channel jack server is not running or cannot be started 09:56:12.529 DBUS : le serveur JACK a été démarré (org.jackaudio.service soit jackdbus). Thu Nov 3 09:56:12 2016: Starting jack server... Thu Nov 3 09:56:12 2016: JACK server starting in realtime mode with priority 10 Thu Nov 3 09:56:12 2016: Acquired audio card Audio1 Thu Nov 3 09:56:12 2016: Acquired audio card Audio3 Thu Nov 3 09:56:12 2016: creating alsa driver ... hw:Audigy|hw:H2n|1024|2|44100|0|0|nomon|swmeter|-|32bit Thu Nov 3 09:56:12 2016: configuring for 44100Hz, period = 1024 frames (23.2 ms), buffer = 2 periods Thu Nov 3 09:56:12 2016: ALSA: final selected sample format for capture: 16bit little-endian Thu Nov 3 09:56:12 2016: ALSA: use 2 periods for capture Thu Nov 3 09:56:12 2016: ALSA: final selected sample format for playback: 16bit little-endian Thu Nov 3 09:56:12 2016: ALSA: use 2 periods for playback Thu Nov 3 09:56:12 2016: graph reorder: new port 'system:capture_1' Thu Nov 3 09:56:12 2016: New client 'system' with PID 0 Thu Nov 3 09:56:12 2016: graph reorder: new port 'system:capture_2' Thu Nov 3 09:56:12 2016: graph reorder: new port 'system:playback_1' Thu Nov 3 09:56:12 2016: graph reorder: new port 'system:playback_2' Thu Nov 3 09:56:13 2016: Saving settings to "/home/pikachu/.config/jack/conf.xml" ... 09:56:14.775 Changement des connexions JACK. 09:56:14.777 Configuration du serveur enregistrée dans « /home/pikachu/.jackdrc ». 09:56:14.778 Réinitialisation des statistiques. 09:56:14.806 Client activé. 09:56:14.838 Changement du graphique des connexions JACK. Thu Nov 3 09:56:14 2016: New client 'qjackctl' with PID 3038 09:56:16.003 Client désactivé. 09:56:16.122 DBUS : le serveur JACK s'arrête… Thu Nov 3 09:56:15 2016: Client 'qjackctl' with PID 3038 is out Thu Nov 3 09:56:16 2016: Stopping jack server... Thu Nov 3 09:56:16 2016: Client 'system' with PID 0 is out 09:56:16.128 DBUS : le serveur JACK a été arrêté (org.jackaudio.service soit jackdbus). Thu Nov 3 09:56:16 2016: Released audio card Audio1 Thu Nov 3 09:56:16 2016: Released audio card Audio3 09:57:07.711 DBUS : impossible de démarrer le serveur JACK. Désolé Thu Nov 3 09:56:42 2016: ------------------ Thu Nov 3 09:56:42 2016: Controller activated. Version 1.9.10 (unknown) built on Sat Oct 19 18:11:48 2013 Thu Nov 3 09:56:42 2016: Loading settings from "/home/pikachu/.config/jack/conf.xml" using expat_2.1.0 ... Thu Nov 3 09:56:42 2016: setting parameter 'engine':'driver':'(null)' to value "alsa" Thu Nov 3 09:56:42 2016: setting parameter 'engine':'realtime':'(null)' to value "true" Thu Nov 3 09:56:42 2016: setting parameter 'engine':'verbose':'(null)' to value "false" Thu Nov 3 09:56:42 2016: setting parameter 'engine':'client-timeout':'(null)' to value "500" Thu Nov 3 09:56:42 2016: setting parameter 'drivers':'alsa':'device' to value "hw:H2n" Thu Nov 3 09:56:42 2016: setting parameter 'drivers':'alsa':'capture' to value "hw:H2n" Thu Nov 3 09:56:42 2016: setting parameter 'drivers':'alsa':'playback' to value "hw:Audigy" Thu Nov 3 09:56:42 2016: setting parameter 'drivers':'alsa':'rate' to value "44100" Thu Nov 3 09:56:42 2016: setting parameter 'drivers':'alsa':'period' to value "1024" Thu Nov 3 09:56:42 2016: setting parameter 'drivers':'alsa':'nperiods' to value "2" Thu Nov 3 09:56:42 2016: setting parameter 'drivers':'alsa':'hwmon' to value "false" Thu Nov 3 09:56:42 2016: setting parameter 'drivers':'alsa':'hwmeter' to value "false" Thu Nov 3 09:56:42 2016: setting parameter 'drivers':'alsa':'duplex' to value "true" Thu Nov 3 09:56:42 2016: setting parameter 'drivers':'alsa':'softmode' to value "false" Thu Nov 3 09:56:42 2016: setting parameter 'drivers':'alsa':'monitor' to value "false" Thu Nov 3 09:56:42 2016: setting parameter 'drivers':'alsa':'dither' to value "n" Thu Nov 3 09:56:42 2016: setting parameter 'drivers':'alsa':'shorts' to value "false" Thu Nov 3 09:56:42 2016: Listening for D-Bus messages Thu Nov 3 09:56:42 2016: Starting jack server... Thu Nov 3 09:56:42 2016: JACK server starting in realtime mode with priority 10 Thu Nov 3 09:56:42 2016: Acquired audio card Audio1 Thu Nov 3 09:56:42 2016: Acquired audio card Audio3 Thu Nov 3 09:56:42 2016: creating alsa driver ... hw:Audigy|hw:H2n|256|2|44100|0|0|nomon|swmeter|-|32bit Thu Nov 3 09:56:42 2016: configuring for 44100Hz, period = 256 frames (5.8 ms), buffer = 2 periods Thu Nov 3 09:56:42 2016: ALSA: final selected sample format for capture: 16bit little-endian Thu Nov 3 09:56:42 2016: ALSA: use 2 periods for capture Thu Nov 3 09:56:42 2016: ALSA: final selected sample format for playback: 16bit little-endian Thu Nov 3 09:56:42 2016: ALSA: use 2 periods for playback Thu Nov 3 09:56:47 2016: ERROR: JackPosixProcessSync::LockedTimedWait error usec = 5000000 err = Connection timed out Thu Nov 3 09:56:47 2016: ERROR: Driver is not running Thu Nov 3 09:56:47 2016: ERROR: Cannot open client name = dbusapi Thu Nov 3 09:56:47 2016: ERROR: failed to create dbusapi jack client Thu Nov 3 09:56:47 2016: ERROR: Unknown request 4294967295 Thu Nov 3 09:56:47 2016: ERROR: CheckSize error size = 0 Size() = 12 Thu Nov 3 09:56:47 2016: ERROR: CheckRead error Cannot connect to server socket err = Aucun fichier ou dossier de ce type Cannot connect to server request channel jack server is not running or cannot be started 09:57:37.892 Impossible de connecter le serveur JACK comme client. - L'opération a échoué. - Erreur de communication serveur. Veuillez consulter la fenêtre des messages pour plus d'informations. Cannot read socket fd = 21 err = Succès CheckRes error JackSocketClientChannel read fail Cannot open qjackctl client Thu Nov 3 09:57:37 2016: ERROR: JackPosixProcessSync::LockedTimedWait error usec = 5000000 err = Connection timed out Thu Nov 3 09:57:37 2016: ERROR: Driver is not running Thu Nov 3 09:57:37 2016: ERROR: Cannot create new client Thu Nov 3 09:57:37 2016: ERROR: Unknown request 4294967295 Thu Nov 3 09:57:37 2016: ERROR: CheckSize error size = 0 Size() = 12 Thu Nov 3 09:57:37 2016: ERROR: CheckRead error


Je peux reproduire ça mais il faut que je tue jackdbus à chaque fois, sinon il veut pas redémarrer, même avec 1024 comme échantillons/période.
Quand je mets 512 ça démarre aussi, mais 256 pas moyen.

Si je mets
interface H2n
périphérique d'E/S par défaut

ça démarre avec échantillons/périodes 256 et donc une latence acceptable.
France
Par rapport à ta capture d'écran de la page précédente, je vois quelques différences avec mes réglages :

- dans la case serveur, j'ai jackd, alors que toi tu as jackdmp,

- autre chose qui avait causé des soucis, tous les noms de préréglages 'par défaut', je les ai remplacé par 'default'

- dans tes priorités, nombres de ports maxi, aussi c'est différent chez moi.

Bref, il se peut qu'en changeant 2/3 petites choses ça fonctionne, mais sans garanties.
Je poste ma config de Qjackctl, en espérant que ça t'aide.

Capture Réglages   Kit De Connexion Audio JACK
C'était la config d'allany.

Voici la mienne avec des paramètres qui me permettent de lancer qjackctl, et quelques xruns en enregistrant avec audacity.
Capture Du 2016 11 03 11:11:55

Je considère qu'on approche de la résolution et qu'il reste quelques limites à priori matérielles :

N'est-il pas possible d'améliorer la latence ou le nombre de xruns simplement en doublant ma ram (2go>4go)?

Ma carte audio audigy, même si je devine qu'elle commence à dater ne devrait elle pas me permettre d'avoir plus de rapidité ? J'ai pas encore comparé avec le chispet SIS, mais pour l'instant c'est pas fameux...
Ne puis-je pas en tirer de meilleures performances ? En utilisant la sortie spdif par exemple ? je me suis laissé dire que c'était un port plus rapide.
France
Augmenter la Ram ne fait jamais de mal 😎
mais le processeur et la carte son elle même y joue un rôle.
Pour le spdif, je ne peux te renseigner.
France
Pour améliorer ta latence, il faut surtout être sûr que ton système soit adapté :
  • utilisateur dans le groupe "audio"
  • accès au temps réel pour les applications
  • option du noyau "threadirq" activé, et rtirq installé et configuré

bonnes optimisations à toi !
@olinuxx : on avait vérifié le PAM. Ce devrait être OK, de ce côté-là.

@Sasaki : en effet, ce serait bien que tu vérifies que rtirq soit bien installé.
Ca coule de source sur la plupart des distrib's MAO mais on n'a pas regardé, chez toi...

A+
Ah ! Peut-on installer rtirq sur un noyau lowlatency ? la page ne le précise pas, elle dit juste qu'il faut un noyau temps réel.

Sinon je ne sais pas où trouver un noyau linux-libre temps réel suffisament à jour. J'ai bien ça https://launchpad.net/~linux-libre/+archive/ubuntu/rt-ppa

mais ça date de 2013.
Tu peux même l'installer sur un noyau generic.
C'est très simple, comme script. Ca trie les IRQ's dans un ordre qui donne toute priorité à l'audio, rien de plus.

Si tu disposes d'un gestionnaire de paquets (synaptic fait partie de trisquel, il me semble...) fais une recherche sur "linux-image" puis sur "linux-headers".
Normalement, tu devrais te voir proposer l'ensemble des versions dispo's de noyaux generic, lowlatency et RT cohérentes pour ton install' actuelle.

A+
France
Linux libre n'est plus actif car le noyau debian est libre maintenant. Linux-libre était un effort à l'époque où le noyau debian contenait des bouts de binaires non-libres. Ceci n'est plus vrai maintenant et le noyau debian est libre.
Ok, donc je n'ai pas touché au noyau (pour l'instant je comparerais avec un noyau rt plus tard) et j'ai installé rtirq et modifié le fichier de configuration. Voici ce que me renvoie la commande de test :

Copy to clipboard
su -c "/etc/init.d/rtirq restart" Setting IRQ priorities: start [rtc] irq=8 pid=74 prio=90: OK. Setting IRQ priorities: start [snd_emu10k1] irq=18 pid=628 prio=85: OK. Setting IRQ priorities: start [ohci_hcd] irq=20 pid=71 prio=80: OK. Setting IRQ priorities: start [ohci_hcd] irq=21 pid=72 prio=79: OK. Setting IRQ priorities: start [ehci_hcd] irq=22 pid=70 prio=80: OK. Setting IRQ priorities: start [i8042] irq=1 pid=73 prio=75: OK.



Où mon micro usb a donc une priorité (80) inférieure à la carte son (85), elle même inférieure à l'horloge interne temps-réel (95)

Qjackctl refuse toujours de démarrer avec 256 en échantillons/période (latence de 11ms), mais ne rechigne pas avec 512 échantillons/période (latence de 23 ms). Je ne retrouve plus la page wiki qui indiquait quelle est la latence en dessous de laquelle on n'entend pas la différence. Là ça me semble correct à l'écoute, mais j'aimerais avoir un truc vraiment propre qui ne me surprenne pas en plein milieu d'une session.
Si possible j'aimerais aussi comprendre pourquoi il ne veut pas démarrer avec la latence de 11ms, si c'est un problème de puissance matérielle ou de réglages logiciels.

Edit : en ajoutant ma carte son je retombe sur ça pour un autre modèle de la SB audigy (SE)
il faut absolument régler l'option "Digital" à "i2s in" dans alsamixer, sinon vous n'aurez pas de capture, et l'impossibilité de régler en 96KHz sous JACK

Serait-ce une piste ? je ne sais pas comment faire pour modifier ce paramètre
J'ai eu une carte Audigy, il y a bien longtemps.
En effet, ce n'était pas un foudre mais j'ai débuté avec, à peu près confortablement.

Le seul critère, pour la latence, je dirais que c'est ton corps. Si tu ne ressens pas de gêne entre tes actions et ton audition, ne te soucies plus de performances "sur le papier".
Je ne vois aucune raison technique (sauf essoufflement d'un proc' ou surchauffe) pour que ça décroche en cours d'exécution, non plus.

Enfin, il te suffit de lancer, en terminal, la commande :
Copy to clipboard
alsamixer
pour voir apparaître la table de mixage alsa. Tu sélectionnes la carte de ton choix avec F6 puis tu te déplaces et tu règles avec les flèches-clavier. La touche "m" permet de muter-démuter certains canaux.
Tu trouveras certainement un switch i2s in quelque part (ça me rappelle quek'chose, ce truc...).

A+
Alors là je constate des craquements de temps en temps dans le son, comme un vieux vinyle. Mais ça me le fait pas qu'avec jack, par exemple avec musescore sous pulseaudio c'est pareil... Je sais pas d'où ça vient. Donc pas très agréable, j'ai pas encore trop testé la latence, mais ça paraît correct.

Rien trouvé de similaire dans alsamixer pas de i2s in

Edit : je mets résolu au sujet, je clarifie le titre, et j'en ouvrirais un autre concernant l'optimisation, car là on dévie un peu je crois.
Merci à tous pour votre aide et à allany pour sa persévérance !
De nada... 😎
Sympa l'initiative d'ouvrir un autre sujet après avoir ajouté le "résolu". Celui-ci commençait à tirer en longueur.
A+
Page: 2/2
1  2