Chargement...
 
[Voir/Cacher menus de gauche]
[Voir/Cacher menus de droite]

1 - Le matériel et les pilotes ALSA, FFADO, ...

Dernier post

Latence des cartes audio

no-structure utilisateur non connecté France
Bonjour

J'ai une carte audio M Audio Audiophile 24/96 et une interface USB behringer ucg102.

Les deux sont bien reconnues par mon système debian. (j'ai essayé plusieurs de distros spécialisées en usb sans ressentir de différences).
La behringer que j'ai acheté pour brancher ma basse produit une latence vraiment trop forte et je n'ai jamais réussi à l'utiliser en pratique.

J'ai fait des mesures de la latence sous jack avec ce patch puredata http://www.pdpatchrepo.info/patches/patch/92 et les résultats sont:
- 8ms de latence pour l'audiophile (27ms sous alsa)
- 97ms de latence pour la behringer avec jack !!


Est-ce que j'ai loupé un truc avec la behringer ?
Est-ce qu'il existe des interfaces usb plus rapides en comment faire un choix ? Existe-t-il un comparatif quelque part ?

Merci pour vos conseils

Fat voir les réglages de jack ... 97ms ça me parait vraiment excessif donc pour moi jack est mal configuré.
cat ~/.config/rncbc.org/QjackCtl.conf

ou bien
cat ~/.jackrc

devrait en dire un peu plus ...

sub26nico utilisateur non connecté France
Tu ne nous dis rien sur ton noyau, quel est il?
Tu nous retournes ici le résultat de la commande

uname -a


no-structure utilisateur non connecté France
Merci pour vos réponses

cat .jackrc
/usr/bin/jackd -P70 -dalsa -r44100 -p256 -n2 -D -Chw:CODEC -Phw:M2496

cat ~/.config/rncbc.org/QjackCtl.conf
[Splitter]
AudioConnectView\sizes=266, 88, 266
MidiConnectView\sizes=34, 20, 34
AlsaConnectView\sizes=34, 20, 34
PatchbayView\sizes=34, 20, 34
InfraClientSplitter\sizes=12, 12

[Geometry]
qjackctlMessagesStatusForm\x=1374
qjackctlMessagesStatusForm\y=904
qjackctlMessagesStatusForm\width=542
qjackctlMessagesStatusForm\height=272
qjackctlMessagesStatusForm\visible=false
qjackctlSessionForm\x=0
qjackctlSessionForm\y=0
qjackctlSessionForm\width=611
qjackctlSessionForm\height=423
qjackctlSessionForm\visible=false
qjackctlConnectionsForm\x=1307
qjackctlConnectionsForm\y=900
qjackctlConnectionsForm\width=611
qjackctlConnectionsForm\height=279
qjackctlConnectionsForm\visible=false
qjackctlPatchbayForm\x=1
qjackctlPatchbayForm\y=850
qjackctlPatchbayForm\width=767
qjackctlPatchbayForm\height=329
qjackctlPatchbayForm\visible=false
qjackctlMainForm\x=1
qjackctlMainForm\y=1079
qjackctlMainForm\width=484
qjackctlMainForm\height=100
qjackctlMainForm\visible=true

[Program]
Version=0.3.12

[Presets]
DefPreset=(par d\xe9\x66\x61ut)

[Options]
Singleton=true
StartJack=false
StopJack=true
StartupScript=true
StartupScriptShell=pulseaudio -k
PostStartupScript=true
PostStartupScriptShell=a2j -e
ShutdownScript=true
ShutdownScriptShell=killall a2jmidid
PostShutdownScript=true
PostShutdownScriptShell=pulseaudio --start
StdoutCapture=true
XrunRegex=xrun of at least ([0-9|\\.]+) msecs
ActivePatchbay=false
ActivePatchbayPath=
MessagesLog=false
MessagesLogPath=qjackctl.log
BezierLines=false
TimeDisplay=0
TimeFormat=0
MessagesFont="Liberation Sans,10,-1,5,50,0,0,0,0,0"
MessagesLimit=true
MessagesLimitLines=1000
DisplayFont1="Liberation Sans,14,-1,5,50,0,0,0,0,0"
DisplayFont2="Liberation Sans,11,-1,5,50,0,0,0,0,0"
DisplayEffect=false
DisplayBlink=true
JackClientPortAlias=0
JackClientPortMetadata=false
ConnectionsIconSize=0
ConnectionsFont="Liberation Sans,10,-1,5,50,0,0,0,0,0"
QueryClose=true
KeepOnTop=false
SystemTray=false
StartMinimized=false
DelayedSetup=false
ServerConfig=true
ServerConfigName=.jackdrc
ServerConfigTemp=false
QueryShutdown=true
AlsaSeqEnabled=true
DBusEnabled=false
AliasesEnabled=false
AliasesEditing=false
LeftButtons=true
RightButtons=true
TransportButtons=true
TextLabels=true
BaseFontSize=0

[Defaults]
PatchbayPath=
MessagesStatusTabPage=0
ConnectionsTabPage=0
SessionSaveVersion=true

[Settings]
Server=jackd
ServerName=
Realtime=true
SoftMode=false
Monitor=false
Shorts=false
NoMemLock=false
UnlockMem=false
HWMon=false
HWMeter=false
IgnoreHW=false
Priority=70
Frames=256
SampleRate=44100
Periods=2
WordLength=16
Wait=21333
Chan=0
Driver=alsa
Interface=
Audio=0
Dither=0
Timeout=500
InDevice=hw:CODEC
OutDevice=hw:M2496
InChannels=0
OutChannels=0
InLatency=0
OutLatency=0
StartDelay=2
Verbose=false
PortMax=256
MidiDriver=aucun
ServerSuffix=

[History]
ServerPrefixComboBox\Item1=jackd
ServerPrefixComboBox\Item2=jackdmp
ServerPrefixComboBox\Item3=jackstart
ServerNameComboBox\Item1=(par d\xe9\x66\x61ut)
XrunRegexComboBox\Item1=xrun of at least ([0-9|\\.]+) msecs
XrunRegexComboBox\Item2=d\xe9synchronisation (XRUN) d'au moins ([0-9|\\.]+) ms
MessagesLogPathComboBox\Item1=qjackctl.log
ServerConfigNameComboBox\Item1=.jackdrc
StartupScriptShellComboBox\Item1=pulseaudio -k
PostStartupScriptShellComboBox\Item1=a2j -e
ShutdownScriptShellComboBox\Item1=killall a2jmidid
PostShutdownScriptShellComboBox\Item1=pulseaudio --start

enfin uname dit
Linux crunchy8 3.16.0-4-amd64 #1 SMP Debian 3.16.43-2 (2017-04-30) x86_64 GNU/Linux

c'est une bunsenlabs donc debian stable

sub26nico utilisateur non connecté France
Concernant ton noyau, tu gagnerais sûrement en perf avec un noyau
basse-latence 'conseillé) ou temps-réel (à tes risques et périls).

Avant d'installer un noyaux LL ou RT ce qui reste conseillé de toute façon tu peux déjà essayer un autre truc tout simple.

Règle jack sur une seule carte son par défaut je choisirai la M2496 car hyper stable.
Ton nombre de port max est limité à 256 passe le 1024 dès maintenant.

Ensuite il suffirai de lancer l'interface CODEC en CLI

cat /proc/asound/cards


tu chope la position et tu lance par exemple
alsa_out -dhw:X -p256 -n2 -jCODEC_OUT

alsa_in -dhw:X -p256 -n2 -jCODEC_IN


Attention X est à remplacer par la position de la carte et -pXXX à voir si d'autre valeur comme 512 ou 1024 ne serait pas plus appropriée.

ET tu vois ce que ça donne.

no-structure utilisateur non connecté France
oui, mais j' hésite à trop bricoler mon install dont j'ai un besoin constant pour d'autres travaux.

debian strech sort en juin et je vais profiter de l'occasion pour ré-installer un multiboot debian stable et une distro spéciale mao

Dans synaptic aujourd'hui, j'ai
linux-image-4.9.0-0.bpo.3-amd64 mais il impose la mise à jour du paquet linux-base en bpo, donc je ne pourrai pas revenir en arrière facilement.

Sauf que la version linux-image-4.9.0-0.bpo.3-amd64 ne t'apportera rien de plus pour tes besoins actuels il faut d'une part que ce soit la version RT car elle prendra en charge la gestion des IRQs ainsi que le bureau avec full RT et il faudra de toute façon le recompiler car un des paramètres est réglé à 250HZ alors qu'il le faudrait sur 1000HZ mise à jour du grub ect ... .

Sinon plus simple si tu ne veux pas te compliquer la vie c'est d’installer les dépôts LZK dont les détracteurs ne sauraient tarder à t'indiquer le chemin.

sub26nico utilisateur non connecté France
Avant d'installer des dépôts supplémentaires, tu peux peut-être regarder chez Debian,
il me semble qu'il y a déjà un noyau rt dans les backports.
Par contre, avec ta carte graphique NVidia si je ne fais pas d'erreur,
je me renseignerais avant d'installer un noyau rt sur mon système, car NVidia/noyau rt
n'est pas toujours un mariage sain wink.

Le mieux serait peut être de compiler le noyau 'low latency' toi-même si tu te sens de le faire.

re:

Citation :
il faut d'une part que ce soit la version RT car elle prendra en charge la gestion des IRQs ainsi que le bureau avec full RT et il faudra de toute façon le recompiler car un des paramètres est réglé à 250HZ alors qu'il le faudrait sur 1000HZ mise à jour du grub ect ... .


le noyaux rt dans le backport offre un desktop full preemt mais il manque un paramètre qui n'est n'est pas activé celui du Timer frequency et une commande à ajouter à la fin pour la gestion des irqs.

Pour la carte nvidia le plus sage est donc de partir le noyau de base et de le recomplier avec les bonnes instructions donc avec un desktop base latence.

olinuxx utilisateur non connecté France
utilisateur_anonyme écrit :
Sauf que la version linux-image-4.9.0-0.bpo.3-amd64 ne t'apportera rien de plus pour tes besoins actuels il faut d'une part que ce soit la version RT car elle prendra en charge la gestion des IRQs


Ça n'est plus vrai depuis la version 2.6.39 du noyau, car la partie du patch RT qui permet de traficotter la priorité des threads IRQ a été intégrée dans la branche principale du noyau. On y accède donc en ayant l'option "preemptive kernel" dans la configuration du noyau, et en ajoutant l'option "threadirqs" à la ligne GRUB du noyau (et en installant le paquet du nom de "rtirq-init" sous debian et dérivées).


utilisateur_anonyme écrit :
... il faudra de toute façon le recompiler car un des paramètres est réglé à 250HZ alors qu'il le faudrait sur 1000HZ mise à jour du grub ect ...


Ça, c'est toujours d'actualité.


utilisateur_anonyme écrit :
Sinon plus simple si tu ne veux pas te compliquer la vie c'est d’installer les dépôts LZK dont les détracteurs ne sauraient tarder à t'indiquer le chemin.


"détracteur" ? Pour rappel : "détracteur" - Celui ou celle qui critique, déprécie la valeur de quelqu'un ou quelque chose.

Message modéré suite au non-respect de la charte du site.


Pour en revenir au problème de base - noyau basse latence ou non - cela n'explique pas une telle latence avec son interface usb. À moins justement qu'il y est une souris usb et que dans le cas de la gestion des IRQs sur un noyau de base c'est bien possible que ça pose problème.

sub26nico utilisateur non connecté France
Note modération : merci de rester sur le sujet du fil, à savoir la latence des cartes sons,
pour le reste, le bac à sable me semble plus approprié.


no-structure utilisateur non connecté France
Merci pour tout vos conseils et vos pistes.

Depuis mon dernier post, j'ai relu la page PAM que j'avais lu trop vite, je n'avais pas paramétré le fichier audio.conf mais le fichier limits.conf.
Jack est maintenant réglé avec un nombre de ports de 1024 comme conseille utilisateur_anonyme.

J'ai également fait l'upgrade de debian vers stretch et donc le noyau 4.9.30 pour l'instant.
Concernant le noyau rt c'est sûr que je ne vais pas me lancer dans cette option car ma carte nvidia est très récente et plutôt casse-pieds à installer sur du debian.

Résultat :
- 21ms de latence pour la behringer avec jack avec 128 échantillons/période ou 52ms sur 256 échantillons/période

La carte produit pas mal de xruns et n'est pas vraiment agréable à utiliser.

- 14ms pour la M2496 avec 128 échantillons/période
- 26ms pour la M2496 avec 256 échantillons/période

Du coup, je me dis que cela vaudrait peut-être le coup d'investir dans un meilleure interface..

olinuxx utilisateur non connecté France
Ces résultats de latence me paraissent étranges. En es-tu 100% sûr et certain ? C'est peut être le patch pure-data que tu utilises qui n'est pas correct. 52ms de latence, ça s'entend grave à l'oreille. Est-ce que tu confirmes que lorsque tu appuies sur une touche de clavier MIDI, le son sort en décalé ? Et aussi, qu'est-ce que te dises les interfaces graphiques QjackCtl et/ou Cadence (ou encore Ardour) à propos des latences théoriques ?

Pas sûr que "ça marche pas, j'achète quelque chose de plus cher" soit le bon réflexe à adopter ici. Encore une fois, ces mesures me paraissent étrange et y'a pas mal de chose à tester avant de vouloir utiliser le pognon pour tout solutionner à mon avis.

no-structure utilisateur non connecté France
Oui, j'ai éliminé tous les résultats qui n'étaient pas redondants (plusieurs mesures à plusieurs moments dont toutes sont identiques). puredata doit être manié avec doigté et parfois sa manière de se connecter à jack semble .. fragile.

Le patch est clair. Il envoie un clic et mesure le temps nécessaire pour que le clic réapparaisse en sortie. Si il existe un problème c'est plutôt à mettre sur le compte de puredata confused

Avec le clavier, les réponses des deux cartes sont bonnes à l'oreille, pas de délai. C'est plutôt mon niveau de clavier qui pêche rolleyes

Cette aprem, j'ai tenté sooperlooper, hydrogen et ma basse. J'ai toujours un décalage mais je maîtrise pas trop donc il me faut un peu de temps pour faire le point.

olinuxx utilisateur non connecté France
OK, tiens nous au jus.

olinuxx utilisateur non connecté France
@no-structure : des nouvelles ici ?

En relisant ce fil de discussion, je me disais que tu n'avais toujours pas réaliser une vérification de possible conflit de priorité IRQ. Si tu en as la possibilité (et avant de rentrer dans le dépistage à coup de lignes de commande), essaie de brancher ton behringer sur différents ports USB pour voir si tu vois/entends des différences.

Tiens nous au jus.

no-structure utilisateur non connecté France
Tu fais bien de me relancer car j'avais un peu lâché l'affaire.

Depuis mon dernier post, j'ai remis ma config à plat. Reformatage du disque, etc.
J'ai installé une manjaro avec un noyau rt et une debian stretch en double boot.

Cette aprem, j'ai fait un petit test ardour/hydrogen et ma basse et ça marche très bien. biggrin

Aucune idée de l'origine des latences délirantes, mais ma debian avait été bien bricolée, et upgradée depuis la première install.

Dès que j'ai un peu de temps, je refais des mesures de latence et je les poste.

olinuxx utilisateur non connecté France
Merci pour le retour. Il semblait bien ici que les latences étaient étranges.

Confirmes nous quand tu auras refait des mesures de latence, c'est intéressant à savoir.

Afficher les articles :
Aller au forum :

Documentation [Afficher / Cacher]

Connexion
[Afficher / Cacher]



Mégaphone [Afficher / Cacher]

olinuxx, 11:11, ven. 20 Oct 2017: bonjour et bienvenue à Burnus_1er et Upal :-)
sub26nico, 21:08, jeu. 19 Oct 2017: salut et bienvenue à rosjjim :-)
olinuxx, 15:28, mer. 18 Oct 2017: bonjour et bienvenue à Gopherlechien :-)
olinuxx, 08:46, mer. 18 Oct 2017: @Respire : contacte moi à l'adresse info HATTE linuxmao POINGT org
sub26nico, 23:46, mar. 17 Oct 2017: Salut et bienvenue à Fonky62 :-)
Pascal, 21:03, mar. 17 Oct 2017: Je crois qu'on peut y aller àdonf maintenant ;)
Pascal, 21:02, mar. 17 Oct 2017: avec un coreI5 on peut faire ca sans soucis :-) crash test ben pas de crash ! renoise + ardour + reaper + bitwig + fusion + lightworks + resolve. j'ai pas réussi a planter le PC !!!!
Pascal, 21:02, mar. 17 Oct 2017: Merci sans doute à Apple qui tourne en rond...
Pascal, 21:01, mar. 17 Oct 2017: Pendant des années Linux en MAO vidéo c'était un peu la galère... et puis...
olinuxx, 18:36, mar. 17 Oct 2017: bonjour et bienvenue à Respire :-)
bluedid29, 14:28, mar. 17 Oct 2017: Perso je suis passé (au moins en MAO) sur l'excellente distribution Debian Librazik réalisé par le talentueux olinuxx ! :-)
bluedid29, 23:06, lun. 16 Oct 2017: Voilà, je ne fais que relayer l'info... ;) Inscription ici : /