Master-Fader auf 0db - warum?

  • Ersteller Dani_El
  • Erstellt am
Das hat Rainer jedenfalls gepostet. Ich wusste nicht, das es da bei VST keine feste Regel gibt.
Anscheinend ist es ja auch möglich, das ein 64bit (Adressraum) VST Plugin intern nur mit 7bit floating point arbeitet.

Dann will ich das mal auflösen:

Ich hatte meine letzten Postings gestern Abend auf der Couch mit dem Smartphone geschrieben und offenbar sind die Smileys dabei abhandengekommen. So klingt mein Posting an dich viel patziger, als es eigentlich gemeint war.
Ich hatte eigentlich augenzwinkernd 7- und 14-Bit Integer erwähnt, weil ich dachte, dass dann jeder hier sofort weiß, was gemeint ist: MIDI nämlich. ;)
Das ist nämlich auch ein Beispiel dafür, dass in einem Plugin ganz unterschiedliche Datentypen und Zahlenformate benutzt werden können. Niemand wird einen simplen Button mit zwei Zuständen als 32- oder gar 64-Bit Float Wert codieren, es gibt immer mehrere Datentypen und Zahlenformate in einem Plugin parallel und die haben wiederum zunächst nichts (oder wenig) mit dem Adressraum zu tun. Darauf wollte ich hinaus.

Ein konkretes Beispiel: Ein Sampler wird als 64-Bit Plugin zunächst mal einen 64-Bit Speicherraum adressieren, was auch nötig ist, wenn das Plugin Librarys mit mehr als 4 GB laden soll. Die einzelnen konkreten Samples an sich liegen aber mit maximal 24-Bit im Speicher, werden von MIDI-Daten in 7-Bit Auflösung getriggert und als 32-Bit Float Wert in den Puffer geschrieben, den der Host dem Plugin zur Verfügung stellt. Wenn das Plugin nun eine 64-Bit Float Audioengine unterstützt, dann schreibt es den Wert halt in einen 64-Bit Puffer und füllt die Leerstellen mit Nullen auf, mehr passiert da nicht. Schon 32-Bit Float würde mehr als ausreichen, um den Wert des Samples darzustellen, eine Erhöhung der Bittiefe bringt da überhaupt nichts, außer dass man einen Haufen zusätzlicher Nullen über den Bus schaufelt. Damit erklärt sich auch der leichte Anstieg der benötigten Rechenleistung, die @Realist bei seinem Test festgestellt hat. Eine 64-Bit CPU mit ihren 64-Bit Registern rechnet im Idealfall einen 64-Bit Wert genauso schnell wie einen 32-Bit Wert (bzw. in der gleichen Zahl der Taktzyklen), so dass man an der Stelle keinen Nachteil hat, aber auch keinen Vorteil. Allerdings schiebt man eben doppelt so große Datenpakete über den Bus und das passiert nicht "kostenlos".

Bei einer Audiospur ist das nicht viel anders: Auch hier liegen die Ausgangsdateien mit maximal 24-Bit Integer im Speicher und werden in 32-Bit Float umgewandelt, bevor sie dann in dem Format durch die einzelnen Bearbeitungsstufen gereicht werden. Dabei reicht der Zahlenraum von 32-Bit Float in der Praxis völlig aus, um auch hunderte von Kanälen zu addieren, ohne an die Grenzen des Datenraums zu kommen. Eben deshalb hat man ja 32-Bit Float überhaupt als Format für moderne Mix-Engines genommen.

Das Gegenteil wäre eine Fixed-Point Audio-Engine, wie bei Pro-Tools TDM. Da spielt es tatsächlich eine Rolle. Das Datenformat der Kanäle und Plugins war da durchgehend 24-Bit Integer (für Audio, Buttons haben die damals auch schon nur binär codiert ;) ). Das Format ergab sich durch die native Auflösung der Motorola DSPs. Da man hier aber ohne große Mühe schon die Kanäle übersteuern konnte (im Gegensatz zu 32-Bit Float, wo das quasi unmöglich ist), brauchte man für den Bus eine höhere Auflösung. Es ist sehr lange her und ich habe das nicht mehr im Detail im Kopf, aber ich meine, der TDM Bus hätte mit 48-Bit Integer summiert.

Fixed- und Float Summierung musst du ganz sauber trennen und da liegt auch der Denkfehler, den du machst - glaub' ich wenigstens. Um es mal plastisch auszudrücken (auch wenn folgender Vergleich hinkt wie alle Vergleiche): Eine Fixed-Point Engine besteht aus vielen Wassereimern (Kanälen) mit einem festen Fassungsvermögen in Litern (Bittiefe). Wenn die Eimer nun halbvoll sind, dann braucht man schon ab dem dritten Eimer (Kanal) ein größeres Zielgefäß (Master), wenn man alles zusammenkippen (Summierung auf dem Bus) will.
Float Summierung dagegen besteht nicht aus festen Eimern, sondern aus elastischen Ballons, die sich zusammen mit dem Inhalt flexibel ausdehnen und wieder zusammenziehen können. Du nimmst da als Zielgefäß den gleichen Wasserballon, der sich dann eben entsprechend ausdehnt.

An der Stelle werden jetzt alle, die Kinder haben und mit Wasserbomben spielen, sagen: Aber irgendwann platzt jeder Ballon. Das stimmt, auch 32-Bit Float hat Grenzen. Allerdings sind die so weit, dass man im Alltag nie an den Rand kommt. Oder anders ausgedrückt: Man hat einfach nie so viel Wasser, dass der Ballon platzt.

Warum dann der Sprung auf 64-Bit Float? Gibt es dafür überhaupt eine sinnvolle Anwendung? Für die allermeisten Processing-Arten und Algorithmen nicht. Wenn ich einen beliebigen Algorithmus auf eine 24-Bit Integer Zahl loslasse, dann passt das Ergebnis 99 Prozent der Fälle in die Grenzen von von 32-Bit Float, weshalb die Algorithmen auch in einer 64-Bit-Float-Engine effektiv in der 32-Bit Auflösung bleiben. Mathematisch kann man natürlich auch die 32-Bit-Grenzen beliebig sprengen, nur hat das für Audioalgorithmen keine Bedeutung, es sei denn, man versteht unter "Processing" die Erzeugung von DC am Ende des Zahlenbereichs ;)
Als einzigen theoretischen Anwendungsfall wird in der Literatur (und DSP-Foren) immer wieder Hall genannt. Da kann man tatsächlich die Auflösung beliebig hochfahren und auch 64-Bit locker mit etwas sinnvollem vollschreiben. Das wurde auch ganz früher tatsächlich mal gemacht (ich erinnere mich an ein Hallplugin auf der Pulsar/Scope Plattform, das auf 64-Bit Präzision umschaltbar war). Der praktische klangliche Nutzen ist aber fraglich, denn eines muss man immer im Hinterkopf behalten und damit komme ich dann am Ende zu dem Thema des Threads zurück:
Nach dem Master muss alles am Ende wieder zu 16-Bit Integer werden (CD) oder maximal 24-Bit (Wiedergabe über den Wandler). Und dazu werden all die vielen schönen Bits mit den unglaublich präzise ausgerechneten Daten ganz schnöde abgeschnitten. Dithering ändert daran nichts, das streut nur ein bisschen Rauschen ein, damit bei voller Ausnutzung der 16-Bit Dynamik, sich ganz leise Signale nicht aus den Quantisierungsartefakten erheben (oder darunter begraben werden), sondern aus Rauschen und das ganz einfach besser klingt. Aber selbst das ist bei der Aussteuerung, die wir hier typischerweise verwenden, völlig irrelevant. Wir sind einfach nicht leise genug, damit Dithering überhaupt eine Rolle spielt. ;)

Wenn man also den Masterfader runterzieht, dann ist das eine simple Multiplikation mit einem Zahl kleiner 1. Die 32-Bit Float Auflösung reicht locker, um das ohne Probleme auszurechnen. Wenn es nämlich Rundungsfehler gibt, dann spielen sich diese in den Nachkommastellen ab, die bei der Konvertierung in Integer und der Bitreduzierung sowieso wegfallen. Der Integer-Wert, der dann tatsächlich am Ende ausgegeben oder in eine Datei geschrieben wird, bleibt davon unberührt. Er sinkt ganzzahlig, keine Rundung, kein Fehler, es wird einfach nur leiser ;)
 
Zuletzt bearbeitet:
Durch das K-Metering hat man auch immer genug Luft nach "oben", so das ich bisher gar nicht in die "Versuchung" kam irgendetwas am Masterfader zu machen.

Gemäß: Wer kämpft, kann verlieren. Wer nicht kämpft, hat schon verloren.

würde das in etwa heißen: wer der Versuchung des Masterfaders widersteht, könnte die Kontrolle über den Mix verlieren. Wer den Masterfader anfäßt, hat schon verloren.
 
würde das in etwa heißen: wer der Versuchung des Masterfaders widersteht, könnte die Kontrolle über den Mix verlieren. Wer den Masterfader anfäßt, hat schon verloren.
Boah, echt jetzt.
Ich hab Versuchung doch schon in Gänsefüsschen geschrieben. Aber trotzdem nochmal wieder nachtreten, nä. :)
Fasst doch den Masterfader an, es wird deswegen doch keiner erschossen.
Jeder Jeck is anders und ich habe nur meine Sichtweise geschrieben.
Ich brauche es nicht, ausser ich mache noch Automationen oder so. kam aber bisher noch nicht vor, weil ich sonst alles über Gruppenspuren oder Einzelspuren automatisiere.
Auf der anderen Seite muss ich aber auch ganz klar sagen. Wenn ich mischen würde und am Ende den Masterfader immer um 6dB runterziehen müsste, ja, dann würde ich mir schon Gedanken machen, ob ich nicht vielleicht zu heiß reingehe.
Soll und kann aber jeder selbst so machen wie er möchte. Du kannst ja durchaus übersteuern und ist heute kein grosses Problem mehr.
ICH PERSÖNLICH brauche es nicht.
Gemäß: Wer kämpft, kann verlieren. Wer nicht kämpft, hat schon verloren.
Ich kämpfe durch das K-Metering nicht, sondern es hat mir geholfen, entspannter zu arbeiten und mich auf andere Sachen zu konzentrieren als das Pegeln und Metering.
Auch das kann bei jedem anders sein. Hatte ich auch geschrieben, aber kann man natürlich auch wieder alles anders deuten, wenn man denn unbedingt möchte.
 
Ich hab Versuchung doch schon in Gänsefüsschen geschrieben. Aber trotzdem nochmal wieder nachtreten, nä. :)

Ich fasse den Masterfader nie an :) Eher würde ich ein Gain Plugin in der Masterkette einfügen, bevor ich den Masterfader anfasse, das ist absolutes Tabu.
 
Ich fasse den Masterfader nie an :) Eher würde ich ein Gain Plugin in der Masterkette einfügen, bevor ich den Masterfader anfasse, das ist absolutes Tabu.

Warum? Das Gain-Plugin macht exakt das Gleiche - sogar mathematisch - was der Masterfader auch macht.

Es kann allerdings einen Grund geben: Wenn man in den Inserts des Masterkanals Analogemulationen hat, die ja immer auf einen bestimmten Wert unterhalb 0dB/Fs kalibriert sind, damit sie wissen, ab wann sie die Verzerrungen und Sättigungen des Vorbilds simulieren sollen und wenn diese Plugins gleichzeitig keinen Regler für Gain am Eingang haben, dann muss man selbstverständlich vorher mit einem Gainplugin runterregeln, sonst würde das Plugin nicht das tun, was es soll oder man erwartet. Aber das kann man mit dem Input-Gain des Masterkanals machen und den dürften eigentlich auch alle DAWs an Bord haben. Auch haben viele, wenn nicht die meisten Plugins, die nichtlineares Verhalten simulieren, auch selbst einen Input-Regler, dann nimmt man halt den.

Da sind wir aber immer noch Pre-Masterfader. Wenn der Pegel danach zu hoch für die darauffolgende Ausgabe ist, zieht man den Master eben runter. Ein Gain Plugin macht nichts anderes.
 
Warum? Das Gain-Plugin macht exakt das Gleiche - sogar mathematisch - was der Masterfader auch macht.

Ich mach das Mastering gleich im Mischprojekt, dann ist das Dithering quasi im Limiter enthalten. Danach sollte ja nichts mehr kommen, also kein Leveling ... aber ist auch rein psychologisch.
 
Ich mach das Mastering gleich im Mischprojekt, dann ist das Dithering quasi im Limiter enthalten.

Aber den Limiter hast du doch sicher in einem Post-Fader Insert, oder nicht? Ich haue für ein "DIY-Mastering" den Limiter auch im Mischprojekt am Ende drauf, aber eben Post-Fader. Dann kann ich den Fader auch weiterhin für das benutzen, wofür er da ist: Leiser machen ;)
 
Fixed- und Float Summierung musst du ganz sauber trennen und da liegt auch der Denkfehler, den du machst - glaub' ich wenigstens.
Ich frag mich die ganze Zeit was du ständig mit integer in einer DAW willst, TDM ist schon lange tot, es gibt imho keine DAW mehr, die intern nicht mit float arbeitet.
Warum dann der Sprung auf 64-Bit Float? Gibt es dafür überhaupt eine sinnvolle Anwendung?
Warum der Sprung von 16 auf 24bit PCM? 20 hätten auch gereicht.
Warum also? Weil man Reserven hat.
 
Manchmal ist mir Rainer_Hain mit seinem Wissen etwas unheimlich:)
 
Ich frag mich die ganze Zeit was du ständig mit integer in einer DAW willst,

Jetzt habe ich mir so viel Mühe gegeben, um dir die verschiedenen Datentypen und ihren Einsatz und ihre Grenzen möglichst verständlich zu erklären. Ich fürchte, besser kann ich es nicht.

Warum der Sprung von 16 auf 24bit PCM? 20 hätten auch gereicht.Warum also? Weil man Reserven hat.

Was hat die physische Wandlerauflösung mit der Bittiefe einer Audioengine zu tun?
Die Wandlerauflösung bestimmt die reale Dynamik, die Bittiefe der Audioengine die theoretische Dynamik, die immer weitaus höher als die physische Dynamikauflösung der real existierenden Wandler ist.

Falls die Frage tatsächlich ernst gemeint war, was ich kaum glauben kann: Ein 16-bit Wandler hat aufgrund des fast unvermeidlichen Quantisierungsrauschens nie volle 16-Bit Auflösung. 20-Bit Wandler wurden entwickelt, um wenigstens volle 16-Bit Auflösung des Nutzsignals zu haben. Das ist dann allerdings mehr Dynamik, als jede Orchesteraufnahme braucht, das ist schon richtig. Daher bräuchte man 24-Bit-Wandler natürlich in der Realität nicht, nein - auch nicht als Reserve. Damit hat es nämlich gar nichts zu tun. 24-Bit-Wandler gibt es einfach deshalb, weil die ganze digitale Peripherie und die ICs, die den Datenstrom am Ende generieren (oder Mixerfunktionein haben, eben in 24-Bit nativ liefen. Da hat Motorola eben auch seine Spuren hinterlassen ;)
Heute sind es in der Regel 32-Bit Asics und DSPs, die da so in Wandlern werkeln. Aber man hat eben nicht der Versuchung nachgegeben, 32-Bit Wandler zu bauen. Das hätte zwar noch mehr Reserve, wäre aber einfach nur noch unsinniger.
 
für mich liest sich das hier irgendwie zusammengefasst übers ganze gesehen in etwa so: 24 bit integer pcm 16 bit du dummes arschloch ic dsp 32 bit dithering register float 64 bit daw asics 20 bit puffer 8 bit limiter 32 bit dithering integer float du hast keine ahnung pcm asics 16 bit dsp wandler register integer midi nein du limiter!!!
 
@Rainer_Hain

Gibt es UNTER 0dbFS, in 32bit Float, mehr mögliche Werte, als in 24bitFixed?

(Tut mir leid wenn ich euch auf die Nerven gehe, aber es interessiert mich wirklich)
 
@Rainer_Hain

Gibt es UNTER 0dbFS, in 32bit Float, mehr mögliche Werte, als in 24bitFixed?
in kürze: ja.

Warum der Sprung von 16 auf 24bit PCM? 20 hätten auch gereicht.
Warum also? Weil man Reserven hat.
beim sprung von 16 auf 24bit fixed kann man zumindest noch von reserven (96 vs 144dB) reden. 32bit float hat ~1500dB dynamic range...

der audio processor bei vst/au/aax arbeitet mit 32bit float. das hindert einen nicht daran bestimmte DSP berechnungen (filter coeffizienten berechnen etc.) in double precision zu machen. aber das endergebnis des audiosignals wird 32bit float sein (wobei der mixer vieler DAWs mit 64bit float arbeitet).
 
Zuletzt bearbeitet:
Jetzt habe ich mir so viel Mühe gegeben, um dir die verschiedenen Datentypen und ihren Einsatz und ihre Grenzen möglichst verständlich zu erklären. Ich fürchte, besser kann ich es nicht.
Schon lange bekannt aber für die anderen war es bestimmt erhellend.
Ich hab mich immer nur gefragt warum du Formate anführst die schon lange nicht mehr in Gebrauch sind.

Warum der Sprung von 16 auf 24bit PCM? 20 hätten auch gereicht.Warum also? Weil man Reserven hat.

Was hat die physische Wandlerauflösung mit der Bittiefe einer Audioengine zu tun?
Ähmm, nichts, aber es war die Antwort auf deine Frage warum man auf eine 64bit Audio engine geht obwohl 32bit, deiner Meinung nach, gereicht hätte.

Weil man´s kann und weil´s nichts kostet. :D
 
64bit audioengines brauchen wir für leute, denen ca. 1500db dynamic range nicht genug sind.
gibt im internet nicht wenige davon. der markt ist also vorhanden ;-)
 
beim sprung von 16 auf 24bit fixed kann man zumindest noch von reserven (96 vs 144dB) reden.
Die aber nicht genutzt werden können da sie im Wandlerrauschen untergehen. Spätestens bei 20bit ist Schluss mit lustig.
Aber man wollte ja nicht den gleichen Fehler noch einmal begehen und hat gleich auf amtliche Specs erweitert.
32bit float hat ~1500dB dynamic range...
Stimmt, ist eigentlich vollkommen ausreichend.
Da aber die DSPs vom HDX System am Besten mit 64bit arbeiten hat man die Software darauf hin optimiert.
Es gibt bei PT nur eine Software, egal ob HDX, HD nativ oder Nativ. Von daher musste auch die kleinste PT Version mit 64bit arbeiten.
Brauchen tut´s keiner aber schaden tut´s auch nicht.
 
64bit audioengines brauchen wir für leute, denen ca. 1500db dynamic range nicht genug sind.
gibt im internet nicht wenige davon. der markt ist also vorhanden ;-)

Würde ich nicht voll ausspielen - wegen Singularität und so....

 
beim sprung von 16 auf 24bit fixed kann man zumindest noch von reserven (96 vs 144dB) reden.
Die aber nicht genutzt werden können da sie im Wandlerrauschen untergehen. Spätestens bei 20bit ist Schluss mit lustig.
Aber man wollte ja nicht den gleichen Fehler noch einmal begehen und hat gleich auf amtliche Specs erweitert.
wie rainer, denke ich der grund auf 24bit anstatt 20bit zu gehen hat eher hardwaredesign-technische gründe (vielfache von 8bit passen besser in die typischen hardware-designs).

es gibt im übrigen wandler mit mehr als 20bit dynamic range. nur weil ein einzelner AKM chip nicht mehr als 123dB kann, heisst dass nicht, dass man das signal vor der wandlung nicht entsprechend "aufbereiten" kann und dann mehrere wandlerchips parallel anfährt die dann unterschiedliche "analog dynamic ranges" aufnehmen. das ganze muss man dann nurnoch auf digitaler seite wieder richtig "zusammenfügen".
 

Ähnliche Themen

moonbooter
    • Danke
  • Artikel
Antworten
3
Aufrufe
2K
moonbooter
moonbooter
moonbooter
    • Danke
  • Artikel
Antworten
5
Aufrufe
7K
YogiX
Y
moonbooter
    • Danke
  • Artikel
Antworten
4
Aufrufe
4K
music-anderson
M

Oft gelesene Themen

Zurück
Oben