Ich versuche mal so kurz wie möglich zu erklären wie das mit den Latenzen ist, da spielen einige Faktoren zusammen:
- Du spielst auf der Gitarre einen Ton, direkt an einen analogen Verstärker angeschlossen erklingt dieser erstmal ohne Latenz.
- Wenn du vor dein Audiointerface ein digitales Gitarren-Effektgerät schaltest, entsteht hier die erste Latenz. Digitale Geräte haben immer eine gewisse Latenz, alleine die Wandler verzögern ca. 1ms in jede Richtung. Wenn das Effektgerät intern keine weiteren Puffer hat und der Effektalgorithmus keine Verzögerung erzeugt, bekommst du durch so ein Effektgerät mindestens 2ms zusätzliche Latenz. Erfahrungsgemäß liegen die meisten Effektgeräte aber nicht viel darüber.
- Betrachten wir den Audioeingang des Interfaces: Hier erzeugt der Analog-Digital Wandler ebenfalls eine Latenz von ca. 1ms. Eventuell kommen hier noch Latenzen durch Pufferstufen im Interface dazu. Da Windows kein Echtzeitbetriebssystem ist, muss der Audiotreiber ebenfalls einen oder mehrere Pufferstufen haben, die meistens als Ringpuffer ausgeführt sind. In Windows gibt es keine garantierte Reaktionszeit des Systems auf Ereignisse, manche Prozesse müssen abgearbeitet werden bis sie fertig sind und der Audiopuffer muss die dadurch entstehende Wartezeit inkl. einer ordentlichen Sicherheitsreserve überbrücken oder es kommt zu Tonaussetzern. Das spielt sich alles im Millisekundenbereich ab. Je besser das System optimiert ist, umso kürzer sind die maximalen Wartezeiten, und umso kleiner kann der Audiopuffer des Treibers eingestellt werden. Bei einem sauber konfigurierten Rechner setzen die eigene Bearbeitungszeit des Audiotreibers sowie die der mitbenutzten (USB-)Treiber die Grenzen, so dass der Rechner maximal wenige hundert Treiberaufrufe pro Sekunde schafft, in denen der Audiopuffer neu gefüllt werden kann. Ganz entscheidend dafür ist die Performance des Audiotreibers und das vom Audiochip auf dem Interface unterstützte USB-Protokoll. Hier setzen die meisten Hersteller aus Kostengründen auf Standardlösungen inkl. Treibersoftware von Drittanbietern wie z.B. Texas Instruments (Wobei ich in meinem vorigen Post für das 2i2 irrtümlich den DICE Chipsatz genannt habe, der eigentlich für Firewire ist). Ein ganz entscheidender Punkt ist dabei auch, wie viel Rechenpower der Treiber dem System übrig lässt, die somit für Audioberechnungen durch PlugIns zur Verfügung steht. Hier unterscheiden sich die Treiber der Hersteller deutlich, gerade bei niedrigen Latenzen reicht das von gerade noch lauffähig ohne Aussetzer bei niedriger PlugIn-Last bis hin zu ausreichender Power für komplette Produktionen. Schau dir
hier mal die Werte unter RXC/CV/NCV bei den jeweiligen Audiointerfaces und eingestellten Latenzen an. RXC/CV/NCV stehen für unterschiedliche PlugIns die dort zum Testen verwendet werden. Zwischen den PlugIns gibt es riesen Unterschiede an die Rechenleistungsreserven: Der Waves L316 Multibandkompressor beispielsweise läuft in Cubase 6.5 auf meiner RME HDSP erst ab 128 Samples Buffersize und erzeugt trotzdem nicht übermäßig viel Systemlast. Auf der anderen Seite kann ich eine komplette Produktion mit zig anderen PlugIns und viel höherer Systemlast bei einer Einstellung von 32 Samples Buffersize fahren.
Zusätzlich kommt bei vielen Herstellern noch das Problem hinzu, dass der Treiber der Audioanwendung einen falschen (meist zu niedrigen) Wert für die Latenz mitteilt. Das ist zusätzlich ärgerlich, weil die Anwendung die aufgenommenen Spuren nicht mehr automatisch auf den richtigen Zeitpunkt verschieben kann. Stichwort Latenzkompensation. Oft wird hier aber über Treiberupdates nachgebessert. Ein guter Treiber übermittelt der Anwendung die exakte, samplegenaue Latenz aller Puffer inkl. der Wandlerlatenz.
- Das Signal wurde also vom Treiber auf digitaler Ebene an die Anwendung übergeben, hier kann durch PlugIns weitere Verzögerung hinzukommen. Plugins mit Look-Ahead-Funktion oder solche die in ihrer Signalverarbeitung Impulsantworten oder (Fast-)Fourier-Transformationen einsetzen weisen prinzipbedingt immer eine Verzögerung auf. Ich kann dich aber beruhigen, ein Großteil der PlugIns arbeitet komplett Verzögerungsfrei. Soweit ich weiß auch Guitar-Rig.
- Das bearbeitete Signal wird jetzt von der Anwendung wieder an den Audiotreiber übergeben um es auf einen Ausgang zu schicken. Hier gilt prinzipiell das gleiche was ich zum Thema Audioeingang schon geschrieben habe. Die Puffer für Ein- und Ausgang müssen aber nicht zwangsläufig gleich groß sein. Auch der Digital-Analog-Wandler fügt wieder eine Latenz von ca. 1ms hinzu.
- Schickst du das Signal durch weitere digitale Geräte (dazu zählt auch ein externer Wandler bei Nutzung von digitalen Ausgängen – OK die hat das 2i2 nicht), kommt deren Latenz noch dazu.
- Letztendlich landet das Signal bei deinen Monitorlautsprechern. Bei der Übertragung des Schalls von der Lautsprechermembran über die Luft bis zu deinem Ohr entsteht nochmals eine Verzögerung. Schall breitet sich in der Luft unter normalen Bedingungen mit ca. 340m/s aus, also musst du für jeden Meter Entfernung zum Lautsprecher ca. 3ms weitere Latenz einkalkulieren.
- Die Latenz vom Eingang bis zum Ausgang des Interfaces über die Anwendung ohne zwischengeschaltete PlugIns wird Round Trip Latency (RTL) genannt. Du kannst sie messen, indem du ein Mono-Signal auf zwei Kabel splittest, das eine geht über den Eingang des Interfaces, den Mixer der Audiosoftware, auf den Ausgang des Interfaces und dann in ein Stereoaufnahmegerät. Das andere Kabel läuft direkt in das Stereoaufnahmegerät. Jetzt haben die Signale auf den beiden Spuren einen zeitlichen Versatz der genau der wirklichen Interface-Latenz (RTL) entspricht. 'Aufnahmegerät' kann auch ein weiteres Eingangspärchen des Audiointerfaces sein, hierdurch werden ja beide Spuren glecihermaßen verzögert. Im Sampleeditor zählt man die Anzahl der Samples die das zweite Signal verzögert ist, dividiert durch die Samplerate ergibt die Latenz in Sekunden.
- Beim Spielen von Virtuellen Instrumenten über ein MIDI-Keyboard sparst du dir die Eingangslatenz, dafür bringt das MIDI-Keyboard ebenfalls eine Verzögerung von wenigen ms mit. Bedingt durch den Ringpuffer ist die Latenz außerdem nicht konstant, da zum zufälligen Zeitpunkt des Tastendrucks bzw. Triggern des VIs der Ringpuffer auf unterschiedlichen Positionen stehen kann.
Zu dem 2i2 schreibt übrigens dawbench im forum:
Focusrite Scarlett 2i2 : This one is an interesting case , we did manage to get testing and results completed but the respective settings are so far off the standard , - i.e 44/88/132/264/528 , that is was difficult to correlate against the baseline. The upper 3 settings I could let slide, but the 44/88 settings were the tipping point.
Mind you I/O and RTL are thru the roof and have absolutely no correlation to the listed settings - i.e Reported I/O @ 44 - 3.356/4.376 : Calculated RTL 11.1 ms , all the way to Reported I/O @ 528 - 25.351/37.370 : Calculated RTL 66.00 ms , yep, you read that right.
Needless to say this would not not rate well even if we could get a final rating.
Das heißt 11ms RTL in der niedrigsten Einstellung. Wenn du dir in den dort obenstehenden Testtabellen das Saffire 6 USB genauso wie die meisten anderen USB-Interfaces anschaust, siehst du dass in der niedrigsten Einstellung nicht alle PlugIns problemlos bzw. nur in geringem Umfang laufen. Und der Typ bei dawbench weiß wirklich was er tut, optimal auf Low Latency getunte Rechner sind bei dem Standard. Für vernünftiges Arbeiten auf einem Durchschnitts-PC wirst du mindestens eine Stufe höher brauchen. Daher meine Vermutung, dass man das 2i2 in der Praxis kaum unter 20ms RTL bekommt.
Ob dich solche Latenzen stören kann ich natürlich nicht beantworten. Ich habe allerdings einige Gitarristen und Bassisten im Studio gehabt, meiner Erfahrung nach empfinden einige bereits 10-15ms (inkl. Schallweg) als suboptimal. Im Zweifel hilft auch wieder nur probieren.