Mit Cubase 7 und Nuendo 6 stellt Steinberg eine erweiterte Audio-Engine vor, die für viele User eine stabilere und teilweise stark verbesserte Performance ermöglicht.
Durch die Einführung der ASIO-Guard-Technologie ist es jetzt möglich, Spitzenbelastungen und Unregelmäßigkeiten auf der Systemebene besser auszugleichen. Dadurch wird besonders auf Mac OS X-basierten Systemen eine stabilere Performance erreicht, die zu weniger Audio-Drop-Outs führt. Abhängig von der verwendeten Hardware, kann allerdings auch auf PC Systemen eine verbesserte Leistungsfähigkeit erreicht werden.
Hintergrund
Die Audio-Engine von Cubase und Nuendo ist darauf ausgelegt, alle Audiosignale in Echtzeit zu berechnen und wiederzugeben, d.h. dass das, was man gerade hört auch gerade erst vom Prozessor errechnet wurde. Technisch durch ASIO bedingt muss es dabei allerdings immer einen gewissen kleinen Versatz (die Latenz) geben, die sich jedoch durch die eingestellte Puffergröße in kaum spürbare Größenordnungen verringern lässt.
Die Puffergröße stellt gewissermaßen eine zeitliche Distanz dar, innerhalb der die Audio-Berechnung für den jeweiligen Block abgeschlossen sein muss. Je kleiner die eingestellte Puffergröße jedoch ist, desto wichtiger wird es für die Audio-Engine, dass das Betriebssystem und die Audio-Treiber das Programm zuverlässig und in gleichmäßigen Abständen benachrichtigen und zur Audio-Verarbeitung zulassen. Nur bei sehr genauer Zuverlässigkeit lässt sich dann auch die Leistung der CPU optimal zur Audio-Berechnung ausnutzen. Kommt es jedoch zu Verzögerungen auf der Systemebene, dann geht Zeit verloren, eventuell so viel Zeit, dass ein Block nicht mehr fertig gerechnet werden kann und es zu Drop-Outs kommt.
Die Ursachen für solche Verzögerungen können ganz unterschiedlicher Natur sein, auch unterscheiden sie sich je nach Betriebssystem, verwendeter Audiohardware, Treibern und genereller Rechnerkonfiguration. Das Ergebnis ist jedoch stets dasselbe, obwohl noch theoretisch genügend CPU-Leistung zur Verfügung steht, kommt es zu Drop-Outs.
ASIO Guard
Hier kommt nun die neue ASIO-Guard-Technologie ins Spiel. Das Prinzip dabei ist, sich so weit wie möglich von den strikten ASIO-Zeitvorgaben unabhängig zu machen. Dafür wird versucht, wann neben den immer notwendigen Echtzeitberechnungen noch Rechenzeit übrig ist, schon die nächsten, zukünftigen Puffer vorzuberechnen, so dass diese dann im nächsten ASIO-Zyklus schon zur Verfügung stehen. Diese Art des Vorgreifens kann die Leistung fuer Audio-Berechnungen unter bestimmten Bedingungen enorm stabilisieren bzw. sogar vergrößern.
Leider kann hierzu keine generelle Aussage getroffen werden, da dies, wie schon erwähnt, von der jeweiligen Rechnerkonfiguration aber auch dem jeweiligen Anwendungsfall abhängig ist. Zum Beispiel können Audio-Kanäle, die auf Monitoring geschaltet sind, nicht vorberechnet werden und müssen im kritischeren Echzeit-Pfad berechnet werden. Schaltet man sehr viele Kanäle ins Monitoring, wird auch mehr Rechenleistung für Echtzeitberechnungen benötigt, es bleibt weniger Zeit für ASIO-Guard-Berechnungen, und somit erhöht sich auch wieder die Gefahr für Drop-Outs.
Wenn der ASIO-Guard-Mode eingeschaltet ist, wird Cubase/Nuendo versuchen, Audioberechnungen im weniger kritischen ASIO-Guard-Pfad zu berechnen. Die Zuordnung erfolgt automatisch und dynamisch. Wird das Monitoring für einen Kanal eingeschaltet, wird dieser Kanal automatisch aus dem ASIO-Guard-Mode herausgenommen, aber auch beim Wiederausschalten zurückgeholt. Durch diese dynamischen Umverteilungen ist es ratsam, das VST-Performance-Meter hin und wieder zu betrachten, um eventuelle Überlastungen rechtzeitig zu erkennen.
Einschränkungen von ASIO-Guard
ASIO-Guard kann nicht benutzt werden für
- Echtzeit-abhängige Signale
- VST Instrumente die über dedizierte Hardware Controller bedient werden (z.B. Maschine von Native Instruments)
- VST Editoren/Plug-ins zur Steuerung externer Klangerzeuger und Effekte
- Externe Effekte und Instrumente
- Plug-ins die über die VST Bridge betrieben werden
Zusätzliche Einschränkungen in Cubase 7 und Nuendo 6
- VST Instrumente mit mehr als einer MIDI Eingangsquelle
- VST Instrumente die Disk-Streaming verwenden
Weitere Hinweise für ASIO-Guard in Cubase 7 und Nuendo 6
- Sobald Sie für einen Audiokanal das Monitoring bzw. bei Spuren für VST Instrumente "Aufnahme aktivieren" einschalten, wird der jeweilige Kanal bzw. die Spur zwischen Echtzeitbearbeitung und ASIO-Guard-Berechnung hin- und hergeschaltet. Dieses führt zu einem sanften Aus- und Einblenden des Audiosignals, was als kurze Unterbrechung wahrgenommen wird.
- In Cubase 7 und Nuendo 6 ist ASIO-Guard zunächst nur auf Audio-Kanälen aktiv. Für VST Instrumente muss ASIO-Guard einzeln über Geräte > Plug-in Informationen > ASIO-Guard aktiviert werden. Über Plug-in Informationen ist es auch möglich, ASIO-Guard für einzelne VST Effekte zu deaktivieren.
ASIO Guard in Cubase 8
ASIO Guard mit multi-timbralen Instrumenten
In Cubase 8 werden auch multi-timbrale Instrumente im ASIO-Guard-Modus betrieben, was die Performance weiter verbessert. Multi-timbrale VST Instrumente werden allerdings komplett in den Echtzeitbetrieb geschaltet werden, sobald eine MIDI-Spur ausgewählt wird, die das Instrument ansteuert. Die Last im Echtzeit-Processing kann dadurch deutlich zunehmen und zu Drop Outs führen. Setzt man statt eines multi-timbralen mehrere mono-timbrale VST Instrumente ein, kann der Performance-Einbruch beim Umschalten vom ASIO-Guard-Modus zum Echtzeitbetrieb abgemildert werden.
Offline-Audio-Mixdown, Freezing und Render in Place
Da ASIO-Guard in Cubase 8 weiter optimiert werden konnte, sind noch geringere Latenzen als bisher möglich. Dabei sollte beachtet werden, dass der Zeitraum, der für die Berechnung von Offline-Audio-Mixdown, Freezing und Render in Place benötigt wird, von der Größe des Buffers und damit von der Latenz abhängt. Je niedriger die Latenz, desto länger dauern diese Prozesse. Der Offline-Audio-Mixdown kann im Extremfall sogar mehr Zeit in Anspruch nehmen als der Realtime-Export.
Durch die Erhöhung der Latenz lassen sich Audio-Mixdown, Freezing und Render in Place beschleunigen. Allerdings kann dies eine Verringerung der Auflösung der Automation zur Folge haben. VST2-Plug-ins berechnen pro ASIO-Block (entspricht der Buffer-Größe in Samples) einen Automationswert. VST3-Plug-ins entscheiden hingegen selbst, ob sie ihre Automationsdaten blockweise, samplegenau oder mit einer selbstdefinierten Auflösung berechnen.