Question générale sur la latence et utilisation de l'usb
- 4 réponses
- 2 participants
- 7 341 vues
- 2 followers
tozmachine
61
Posteur·euse AFfranchi·e
Membre depuis 19 ans
Sujet de la discussion Posté le 07/12/2008 à 15:11:44Question générale sur la latence et utilisation de l'usb
Bonjour,
J'essaie d'utiliser un controleur en usb (clavier maitre) cependant j'ai une latence qui ne me permet pas de jouer en live. J'aimerais savoir si la latence est lié à la carte son (ordinateur portable, carte son d'origine) sachant que les autres utilisateurs ne se plaignent pas de ce problème & que mon PC est plutôt récent ?
En effet le périphérique est branché en USB sur l'ordinateur et en fonctionnement "stand alone", je ne comprends pas trop dans quelle mesure la carte son peut jouer sur la latence ?
Merci de m'éclairer!
J'essaie d'utiliser un controleur en usb (clavier maitre) cependant j'ai une latence qui ne me permet pas de jouer en live. J'aimerais savoir si la latence est lié à la carte son (ordinateur portable, carte son d'origine) sachant que les autres utilisateurs ne se plaignent pas de ce problème & que mon PC est plutôt récent ?
En effet le périphérique est branché en USB sur l'ordinateur et en fonctionnement "stand alone", je ne comprends pas trop dans quelle mesure la carte son peut jouer sur la latence ?
Merci de m'éclairer!
fourniep
65
Posteur·euse AFfranchi·e
Membre depuis 20 ans
2 Posté le 07/12/2008 à 16:51:08
Salut,
prenons l'exemple d'un instrument virtuel qui génère un signal audio d'après les infos midi qu'on lui envoie:
- première chose importante, le logiciel génère le signal audio par petit blocs de quelques échantillons (mettons 256, ce qui, à 44100Hz, correspond à une latence audio 5.8ms).
- pour un bloc donné, le logiciel regarde les évènements midi qu'il a reçu (au cours de 5.8 dernières ms) et les envoie au dit instrument virtuel (avec en prime le moment précis où ils sont apparus, mettons il y a 0.7ms, soit 32 échantillons avant la fin du bloc).
- Le dit instrument virtuel génère un petit bloc de signal, en fonction de ces messages.
En conséquence, si tes blocs font mettons 16384 échantillons (~370ms @ 44.1kHz, ce qui peut facilement être le cas pour un chipset son intégré d'un portable), ce que tu joues à un instant "t" ne sera traité par l'instrument que à "t + 16384", d'où le retard perçu (la latence quoi).
Bien entendu plus ces blocs sont petits, plus la latence diminue.
Et la latence MIDI dans tout ça?
Elle dépend de ton support (USB, PCI etc). Pour l'USB 1.1, elle est de max 1ms et de max 0.1ms pour l'USB 2, inférieure à l'audio donc.
Il se peut qu'elle soit supérieure à celle de l'audio (mettons un bloc de 32 échantillons @ 44.1kHz = 0.7 ms ce qui est inférieur à la latence USB 1.1).
Et bien l'info MIDI sera détectée pour le bloc d'après dans ce cas là, mais avec une telle latence (0.7ms), cela signifie que le signal correspondant sera généré avec un retard de 1.4 ms, pas vraiment problématique.
Voilà, donc beaucoup de mots pour dire qu'effectivement la latence est liée à la carte son (à part dans le dernier cas exposé), et qu'en effet si tu utilises le chip son de ton portable, cette latence peut être être assez monstrueuse.
!!!!!!!!!
Une possible solution si tu es sous pc: asio4all v2.
!!!!!!!!!!!
prenons l'exemple d'un instrument virtuel qui génère un signal audio d'après les infos midi qu'on lui envoie:
- première chose importante, le logiciel génère le signal audio par petit blocs de quelques échantillons (mettons 256, ce qui, à 44100Hz, correspond à une latence audio 5.8ms).
- pour un bloc donné, le logiciel regarde les évènements midi qu'il a reçu (au cours de 5.8 dernières ms) et les envoie au dit instrument virtuel (avec en prime le moment précis où ils sont apparus, mettons il y a 0.7ms, soit 32 échantillons avant la fin du bloc).
- Le dit instrument virtuel génère un petit bloc de signal, en fonction de ces messages.
En conséquence, si tes blocs font mettons 16384 échantillons (~370ms @ 44.1kHz, ce qui peut facilement être le cas pour un chipset son intégré d'un portable), ce que tu joues à un instant "t" ne sera traité par l'instrument que à "t + 16384", d'où le retard perçu (la latence quoi).
Bien entendu plus ces blocs sont petits, plus la latence diminue.
Et la latence MIDI dans tout ça?
Elle dépend de ton support (USB, PCI etc). Pour l'USB 1.1, elle est de max 1ms et de max 0.1ms pour l'USB 2, inférieure à l'audio donc.
Il se peut qu'elle soit supérieure à celle de l'audio (mettons un bloc de 32 échantillons @ 44.1kHz = 0.7 ms ce qui est inférieur à la latence USB 1.1).
Et bien l'info MIDI sera détectée pour le bloc d'après dans ce cas là, mais avec une telle latence (0.7ms), cela signifie que le signal correspondant sera généré avec un retard de 1.4 ms, pas vraiment problématique.
Voilà, donc beaucoup de mots pour dire qu'effectivement la latence est liée à la carte son (à part dans le dernier cas exposé), et qu'en effet si tu utilises le chip son de ton portable, cette latence peut être être assez monstrueuse.
!!!!!!!!!
Une possible solution si tu es sous pc: asio4all v2.
!!!!!!!!!!!
Improviser ç'est l'art de faire toujours jamais la même chose pareille
tozmachine
61
Posteur·euse AFfranchi·e
Membre depuis 19 ans
3 Posté le 07/12/2008 à 17:39:31
Waou , ça c'est de la réponse !
Je te remercie énormément. Il faut donc que je prenne une carte son avec un taux d'échantillonnage convenable. J'ai déjà une carte son M AUDIO usb DUO mais celle ci est reconnue 1 fois sur deux avec XP donc je ne l'utilise plus qu'en préampli. En plus cela rajoute une deuxième couche usb (1).
Merci pour l'idée d'asio4all, je vais le reinstaller au cas ou, je l'avais installé justement pour utiliser cette carte usb ... il faut que j'essaie de trouver la fréquence d'échantillonnage de ma carte intégrée aussi
Je te remercie énormément. Il faut donc que je prenne une carte son avec un taux d'échantillonnage convenable. J'ai déjà une carte son M AUDIO usb DUO mais celle ci est reconnue 1 fois sur deux avec XP donc je ne l'utilise plus qu'en préampli. En plus cela rajoute une deuxième couche usb (1).
Merci pour l'idée d'asio4all, je vais le reinstaller au cas ou, je l'avais installé justement pour utiliser cette carte usb ... il faut que j'essaie de trouver la fréquence d'échantillonnage de ma carte intégrée aussi
fourniep
65
Posteur·euse AFfranchi·e
Membre depuis 20 ans
4 Posté le 07/12/2008 à 19:31:06
Re,
si tu arrives à faire en sorte que ta maudio soit reconnue à chaque fois, ça devrai être suffisant. elle dispose de drivers asio et devrait à priori proposer des latences correctes. En parcourant le manuel j'ai vu qu'il y avait un paramètre latence dans le control panel (qui apparemment peut être défini avec des valeurs aussi évocatrices que "high" "medium" ou "low").
Bref, dans ton logiciel préféré, va faire un tour dans la configuration du driver audio, il devrait t'indiquer le temps de latence en ms.
Concernant le fait d'ajouter encore de l'USB, ça ne devrait pas être problématique, la maudio étant en usb 1.1, et n'ayant pas énormément d'entrées/sorties. J'ai un vieux portable qui a 5 ans maintenant (et qui était déjà à la rue quand je l'ai acheté), et je n'ai aucun problème avec une tascam us 428 (usb 1.1, 4in/2out analog, in/out digital, in/out midi) + un clavier maître en usb.
Mais si l'idée c'est juste d'avoir une faible latence avec le chipset son de ton pc, asio4all devrait aussi être suffisant (diminuer la taille des buffers dans le control panel pour diminuer la latence).
si tu arrives à faire en sorte que ta maudio soit reconnue à chaque fois, ça devrai être suffisant. elle dispose de drivers asio et devrait à priori proposer des latences correctes. En parcourant le manuel j'ai vu qu'il y avait un paramètre latence dans le control panel (qui apparemment peut être défini avec des valeurs aussi évocatrices que "high" "medium" ou "low").
Bref, dans ton logiciel préféré, va faire un tour dans la configuration du driver audio, il devrait t'indiquer le temps de latence en ms.
Concernant le fait d'ajouter encore de l'USB, ça ne devrait pas être problématique, la maudio étant en usb 1.1, et n'ayant pas énormément d'entrées/sorties. J'ai un vieux portable qui a 5 ans maintenant (et qui était déjà à la rue quand je l'ai acheté), et je n'ai aucun problème avec une tascam us 428 (usb 1.1, 4in/2out analog, in/out digital, in/out midi) + un clavier maître en usb.
Mais si l'idée c'est juste d'avoir une faible latence avec le chipset son de ton pc, asio4all devrait aussi être suffisant (diminuer la taille des buffers dans le control panel pour diminuer la latence).
Improviser ç'est l'art de faire toujours jamais la même chose pareille
tozmachine
61
Posteur·euse AFfranchi·e
Membre depuis 19 ans
5 Posté le 09/12/2008 à 14:12:47
Je reviens un peu aux nouvelles.
Asio4all me permets effectivement d'avoir une latence très raisonnable avec mon chipset son intégré en réglant le buffer très bas cependant de ce fait je suis sous la menace de quelques décrochages...pas top pour du live.
je vais essayé de faire quelques mesures de latence pour comparer un peu. Je n'ai pas eu le temps de me relancer dans ma carte son M Audio, à voir si j'en ai encore le courage.
et merci pour ta réponse !
Asio4all me permets effectivement d'avoir une latence très raisonnable avec mon chipset son intégré en réglant le buffer très bas cependant de ce fait je suis sous la menace de quelques décrochages...pas top pour du live.
je vais essayé de faire quelques mesures de latence pour comparer un peu. Je n'ai pas eu le temps de me relancer dans ma carte son M Audio, à voir si j'en ai encore le courage.
et merci pour ta réponse !
- < Liste des sujets
- Charte