Gleitkommazahlen in digitaler Audioanwendung
Gleitkommazahlen in digitaler Audioanwendung finden sich in erster Linie als 32-bit- oder 64-bit-Gleitkommazahlen im Mastering, sowohl nativ auf der Rechner-CPU als auch ausgelagert auf dem DSP einer internen oder externen Soundkarte. Die meisten modernen HD-Recordingsysteme wie Nuendo, Logic, Samplitude, SADiE oder Pyramix arbeiten mit Gleitkommaarithmetik. Audioeditoren wie Adobe Audition oder Pro Tools ermöglichen zudem den Export von Audiodateien in 32 bit Gleitkommacodierung zum weiteren Mastering. Adobe Audition (in der aktuellen Version bei 64 bit Softwarearchitektur) arbeitet intern mit 32 bit Gleitkommaauflösung, so dass durch den Export und späteren Import von 32 bit Gleitkomma-kodierten Audiodateien kein weiteres Quantisierungsrauschen entsteht, welches sich bei jeder Umrechnung der Amplitudenauflösung erhöhen würde. Die Bit-Tiefe der Softwarearchitektur ist also unabhängig von der Bit-Tiefe der angewandten Gleitkommaarithmetik. Pro Tools hingegen (arbeitete bis Version 10 mit 48-bit-Festkommaarithmetik) sowie REAPER arbeiten in der aktuellen Version mit 64 bit Gleitkommazahlen.
Diese Bittiefe ist dabei in erster Linie für die Genauigkeit der Variablen innerhalb der Programmabarbeitung relevant, die dann zur weiteren Berechnung an die ALU bzw. die interne FPU der Rechner-CPU übergeben, dort auf deren Registergröße konvertiert, und beispielsweise von einem AMD Bulldozer mit 256 bit Genauigkeit berechnet werden. Schon die x87-Intel Coprozessoren aus den 80er Jahren rechneten Gleitkommazahlen IEEE-konform mit bis zu 80 bit extended. Erst am Ende der Berechnungen erfolgt die Rundung auf die Bittiefe der Software. Effekt-Plugins werden zur Entlastung der CPU oftmals, je nach Software- und Hardware-Konfiguration, von dem DSP einer internen Soundkarte oder sogar von externen DSP Servern berechnet.[1]
Während in Festkommaarithmetik der maximale Pegel 0 dBFS beträgt und eine weitere Erhöhung des Pegels zu einem Beschnitt der Amplitude und damit zu einem Clipping führt, ermöglicht die Gleitkommadarstellung einen Headroom. Der Dynamikbereich eines in Gleitkommazahlen dargestellten Audiosignals teilt sich also in zwei Bereiche 0 dBFS und 0 dBFS. Die maximale Auflösung hingegen ist durch die Mantisse der Gleitzahl beschränkt. Eine 32 bit Gleitkommaarithmetik nach IEEE 754 hat daher maximal 23 bit Auflösungsvermögen pro Halbwelle, mit Vorzeichenbit also 24 bit für den gesamten positiven und negativen Aussteuerungsbereich. Im Gegensatz hierzu löst eine Festkommaarithmetik mit 32 bit eine Halbwelle unter Abzug des Vorzeichenbits mit 31 bit auf, den gesamten positiven und negativen Aussteuerungsbereich also mit 32 bit. Erst eine 64 bit Gleitkommaarithmetik (double precision) ist mit ihrer 52 bit Mantisse einer 32 bit Festkommaarithmetik vollständig überlegen (also mit 53 bit Auflösungsvermögen einschließlich Vorzeichenbit für den gesamten positiven und negativen Aussteuerungsbereich).
Eine dezimale Festkommazahl kann immer durch mehrere Gleitzahlen dargestellt werden, die dezimale Zahl 0,375 beispielsweise durch die Gleitzahl · 0,375 (mit 0 als Exponent und 0,375 als Mantisse). Würde man die Mantisse m beispielsweise auf einen Bereich von 0,5 1 normalisieren, so ergäbe sich als Darstellung · 0,75. Die für den Audiobereich verbindliche Norm IEEE 754 sieht nun eine Normalisierung der Mantisse auf einen Bereich von vor, so dass sich der Wert 0,375 unverwechselbar mit der Gleitzahl · 1,5 darstellt.[2] Da die so normalisierte Mantisse immer eine 1 vor dem Komma hat, wird diese 1 in der binären Darstellung der Gleitzahl nicht mehr angeführt, sondern als hidden bit implizit definiert. Werte unterhalb des kleinsten mit normalisierter Mantisse darstellbaren Wertes werden nach IEEE 754 denormalisiert mit impliziter 0 vor der Mantisse dargestellt. Diese denormalisierten Gleitzahlen führen allerdings auf diversen FPUs bis zu einer 30-fachen Verlangsamung der Rechengeschwindigkeit[3] und finden schon deswegen im Audiobereich keine Anwendung, da dieser extreme Dynamikbereich unter −144 dBFS nicht nutzbar ist und vom kleinsten, im hörbaren Frequenzspektrum 20 kHz nutzbaren Audiosignal, dessen Größe vom Rauschpegel bestimmt wird, bei weitem überlagert wird.[4]
32 bit Festkommaarithmetik
Da eine Erhöhung der Amplitude um den Faktor 10 eine Erhöhung der Dynamik um 20 dB ergibt, errechnet sich die Dynamik x eines 32 bit Festkommasystems mit der Formel = dB; ⇒ x : 20 = lg dB; ⇒ x = 20 · lg dB = 192,65919722494796493679289262368 dB ≈ 193 dB. In Software und DSPs mit Festkomma-Arithmetik kommt dabei die Zweierkomplementdarstellung mit einem Vorzeichen-Bit als höchstwertigem Bit zur Anwendung.[5][6][7] Der Wertebereich wird also aufgeteilt in einen positiven und einen negativen Bereich, so dass nur noch die Hälfte des gesamten Wertebereiches für eine Amplitude oder Halbwelle bei einer Auflösung von je 31 bit zur Verfügung steht (: 2 = ). Es ist dabei im Bereich der Audiotechnik üblich, den Dynamikbereich eines Audiosystems auf den gesamten positiven und negativen Aussteuerungsbereich zu beziehen, während sich die wissenschaftliche Begriffsdefinition der Dynamik lediglich auf die vorzeichenfreie Amplitude (bzw. Halbwelle) bezieht. Pro Amplitude bzw. Halbwelle steht also nur die Hälfte der Gesamtdynamik zur Verfügung (Faktor 2 oder 6 dB Pegeldifferenz).
32 bit Gleitkommaarithmetik
Die positiven und negativen Audiosignale bis 0 dBFS werden bei Gleitkommaarithmetik per definitionem (entsprechend dem Convention Paper 7438 der Audio Engineering Society[8]) in einem Bereich von −1 bis +1 dargestellt, wobei die Werte −1 und +1 den maximalen Pegel 0 dBFS darstellen. Darüber hinausgehende Werte stellen den Headroom dar. Da sich mit jeder Erhöhung des Exponenten der Gleitkommazahl um den Wert 1 der insgesamt dargestellte Dynamikbereich verdoppelt, errechnet sich die maximale, theoretische Dynamik einer 32 bit Gleitkommaarithmetik (unter Abzug des Exponenten 0 sowie des Exponenten für den Wert unendlich) aus den mit zur Verfügung stehenden 254 Exponenten mit 254 · 20 · 2 dB ≈ 1529 dB.[9][10] Mit den Exponenten bis −126 wird dabei der negative Bereich dargestellt, mit den Exponenten 0 der positive Wertebereich. Eine Veränderung der Dynamik in dB um den Faktor 2 (entsprechend ±1 bit Auflösungsvermögen) ergibt ein Verstärkungsmaß L von 6 dB, errechnet aus dem Amplitudenverhältnis v nach der Formel L = 20 · v dB = 20 · (2:1) dB = 20 · 2 dB = 6,0205999132796239042747778944899 dB ≈ 6 dB.[11][12] Das 32-bit Gleitkommasystem hätte theoretisch also mit (1529 dB – 193 dB) : 6 dB = 222 (gerechnet mit den ungerundeten Werten) exakt eine 222-fach höhere Dynamik, als ein 32 bit Festkommasystem. Die somit erzielte, höhere Dynamik ist auf Grund der exponentiell anwachsenden Streuung der Amplitudenauflösung und den damit verbundenen Rundungsfehlern allerdings bei weitem nicht nutzbar. Bereits Werte 2 bzw. 144 dBFS bringen eine Halbierung des Auflösungsvermögens mit sich, während hingegen Werte 1 bzw. 0 dBFS durchwegs mit der sich aus der Mantisse ergebenden 23 bit Amplitudenauflösung dargestellt werden.
Quantisierungsrauschabstand
Während der Rauschabstand einer Festkommaarithmetik direkt proportional zum Pegel des Audiosignals absinkt und das Quantisierungsrauschen mit Abnahme des Pegels prozentual immer mehr zunimmt, bestimmt sich der Rauschabstand der Gleitkommaarithmetik – unabhängig vom Exponenten über alle mit normalisierter Mantisse dargestellten Pegel hinweg – durch die Leistung des Quantisierungsrauschens der Mantisse. Bei der Auflösung eines Integerwertes einer WAV-Datei oder eines Audiosignals des AD-Wandlers durch die 23 bit Mantisse kann der Quantisierungs- oder Rundungsfehler dabei maximal ein Quantisierungsintervall betragen, also = . Die Rauschleistung errechnet sich aus dem Quadrat des Effektivwertes (Sigma) der Amplitude (bzw. einer Halbwelle):[13][14]
sowie ; ⇒ ; ⇒ ; ⇒ ≈ 149 ;
Legt man bei sehr kleinen Werten der Mantisse die Auswirkungen des ungünstigeren Scheitelwertes des Quantisierungsrauschens zugrunde, so errechnet sich der Rauschabstand der Amplitude (bzw. einer Halbwelle) mit
; ⇒ ≈ 138 ;
Der Graph des Quantisierungsrauschpegels lässt sich somit als ein Sägezahndiagramm darstellen, da der Quantisierungsrauschabstand innerhalb des Darstellungsbereiches eines Exponenten direkt proportional mit dem Eingangssignal (bzw. dem darzustellenden Integerwert) von seinem Idealwert 149 dB im ungünstigsten Fall auf 138 dB abfällt.[15] Da ein Abtastwert entweder eine positive oder eine negative Halbwelle beschreibt und der Quantisierungsfehler in einer Gleitzahl also nur ein einziges Mal auftreten kann, verdoppelt sich der Quantisierungsrauschabstand der Gesamtdynamik (über den negativen und positiven Aussteuerungsbereich des Audiosignals) wieder um den Faktor 2 (entsprechend + 6 dB), so dass der insgesamt nutzbare Dynamikbereich 0 dBFS zwischen 155 dB und (im ungünstigsten Fall) 144 dB schwankt:
138 + 6 149 + 6 ; ⇒ 144 155
Standard-Dynamikbereich ≤ 0 dBFS
Wird eine Datei mit Festkommadarstellung in ein System mit Gleitkommaarithmetik eingebunden, so werden die positiven und negativen Audiosignale auf den Wertebereich von −1 bis +1 algebraisch normalisiert. Die binäre Festkommazahl mit der Wortlänge w und den einzelnen Bits b (mit dem Wert 0 oder 1) wird dabei gewertet mit der Summe aus (Vorzeichenbit) + · 0,5 + · 0,25 + · 0,125 + ... + · .[16] Dieses algebraische Normalisieren bedeutet, dass der Wert der Festkommazahl linear im Gleitkomma-Wertebereich 0 bis 1 eingepasst wird (was nicht mit der lautstärkemäßigen Normalisierung zu verwechseln ist, welche in Gleitkommaarithmetik ebenfalls auf den Maximalwert −1 bis +1 erfolgen würde, entsprechend 0 dBFS). Die einzelnen Stufen der Integerwerte der Festkommazahl entsprechen dann den Stufen der Gleitkommazahl der Größe 1 : ≈ 1 · , welche sich gleichmäßig über die durch die Exponenten logarithmisch abgestuften Teilwertebereiche erstrecken:
Streuung der Amplitudenauflösung bei 32 bit Gleitkommaarithmetik | |||||
---|---|---|---|---|---|
1,175 · ≈ · 1 (kleinste normalisierte Zahl) | ... | 0,25 - 0,00000001 = · 1,9999999 | 0,5 - 0,00000003 ≈ · 1,9999999 | 1 - 0,00000006 = · 1,9999999 | 2 - 0,0000001 = · 1,9999999 |
1,1754945 · = · 1,0000001 | ... | 0,25 = · 1 | 0,5 = · 1 | 1 = · 1 (0 dBFS) | 2 = · 1 |
1,1754946 · = · 1,0000002 | ... | 0,25 + 0,00000003 = · 1,0000001 | 0,5 + 0,00000006 ≈ · 1,0000001 | 1 + 0,0000001 ≈ · 1,0000001 | 2 + 0,0000002 ≈ · 1,0000001 |
- 144 dBFS | ... | - 12 dBFS | - 6 dBFS | 0 dBFS | + 6 dBFS |
min. = 1,5 · | ... | = 3 · | = 6 · | = 1 · | = 1 · |
4 - 0,0000002 ≈ · 1,4999999 | ... | - 1 ≈ · 1,9999999 | - 2 ≈ · 1,9999999 | - ≈ · 1,9999999 | 3,4028235 · - 2 · ≈ · 1,9999998 |
4 = · 1 | ... | = · 1 | = · 1 | = · 1 | 3,4028235 · ≈ · 1,9999999 |
4 + 0,0000004 ≈ · 1,5000001 | ... | + 2 ≈ · 1,0000001 | + 4 ≈ · 1,0000001 | + ≈ · 1,0000001 | |
= 2 · | ... | = 1 | = 2 | = | = |
Headroom > 0 dBFS
Der einzelne, mit dem jeweiligen Exponenten grob dargestellte Teilwertebereich wird zwar für sich allein immer mit der 23 bit Mantisse feinaufgelöst (also mit 23 bit Auflösung), jedoch streut sich diese Auflösung mit jeder Erhöhung des Exponenten um den Wert 1 auf einen immer größer werdenden Teilwertebereich, womit sich relativ bezogen auf die Auflösung des kleinsten darstellbaren Wertebereiches die Auflösung immer weiter verringert. Ab einem gewissen Bereich sind die Sprünge in der Darstellbarkeit des Teilwertebereichs gleich dem gesamten Standard-Dynamikbereich bis 0 dBFS. Hat beispielsweise der für den Headroom genutzte Wertebereich bis (dargestellt durch die Gleitzahlen · 1,0 bis · 1,0) noch durchgehend eine Amplitudenauflösung von : (also die volle Auflösung der 23 bit Mantisse), liegt bei einem theoretischen Amplitudenwert die Streuung bereits bei 1, also entsprechend dem gesamten Dynamikbereich 0 dBFS, entsprechend einer Auflösung von 1:1. Bei der Berechnung der Gesamtdynamik bzw. der Gesamtauflösung ist zu bedenken, dass sich die Amplitudenauflösung lediglich auf den vorzeichenfreien Wert der Amplitude (eine Halbwelle) bezieht.[17][18][19]
Die maximal, ohne Auflösungsverluste oder nennenswerte Rundungsfehler nutzbare Dynamik des Headrooms für sich allein genommen (also nicht in Relation gesetzt mit dem Standard-Dynamikbereich) über den gesamten negativen und positiven Aussteuerungsbereich errechnet sich aus der Bitzahl der Amplitudenauflösung zuzüglich des Vorzeichenbits sowie dem Amplitudenverhältnis v des darzustellenden Wertes zur kleinstmöglichen Quantisierungseinheit mit 20 · lg dB = 20 · lg dB = 144,49439791871097370259466946776 dB ≈ 144 dB. Da der Standard-Dynamikbereich auf Grund seines kleinsten Rauschspannungsabstandes ebenfalls 144 dB umfasst, ergibt sich eine Verdopplung des Dynamikbereiches, für den logarithmischen Maßstab in dB also (wieder berechnet aus dem Amplitudenverhältnis v) eine Erhöhung der Dynamik um 6 dB auf insgesamt 150 dB.
Es bleibt dabei anzumerken, dass sich die 1 aus diesem Quotienten eben auf den (ganzen) darzustellenden Wert, nicht aber auf die 0 dBFS entsprechende Gleitkommazahl bezieht, die hier nur zufällig den gleichen Wert 1 hat. Bei der Berechnung des ohne Auflösungsverluste nutzbaren Gesamtdynamikbereichs kann also für den Dividenden nicht einfach die + 6 dBFS entsprechende Gleitkommazahl 2 eingesetzt werden, anderenfalls der lineare Maßstab der Quantisierungseinheiten in unzulässiger Weise mit dem sich nach oben hin immer weiter spreizenden Maßstab der Gleitkommazahlen vermischt würde. Vielmehr ist der Divisor durch die Verdopplung des Dynamikumfangs ein weiteres Mal mit sich selbst zu multiplizieren, so dass sich der ohne Auflösungsverluste nutzbare Gesamtdynamikbereich auch berechnen lässt mit 20 · lg dB = 20 · lg dB = 150,51499783199059760686944736225 dB ≈ 150 dB.
Der ohne Auflösungsverluste nutzbare Headroom einer 32 bit Gleitkommaarithmetik beträgt also 6 dB und ermöglicht die Summierung von , also lediglich vier inkohärenten Monokanälen (unterschiedliche Audiosignale in Mono) mit jeweils 0 dBFS Vollaussteuerung.[20]
Amplitudenauflösung bei 32 bit Gleitkommaarithmetik (x = Amplitudenauflösung; y = Wertebereich) | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
x in bit | 23 | 23 | 23 | 23 | 23 | 23 | 22 | 21 | 20 | ||
y als Zehnerpotenz | 1,17549435 · | ... | 0,125 | 0,25 | 0,5 | 1 | 2 | 4 | 8 | ||
y als Potenz | ... | ||||||||||
Gesamtdynamik | - 144 dBFS | ... | - 18 dBFS | - 12 dBFS | - 6 dBFS | 0 dBFS | + 6 dBFS | ||||
Amplitudenauflösung | |||||||||||
Streuung | 1,5 · | ... | 0,1 · | 0,3 · | 0,6 · | 1 · | 2 · | 5 · | 10 · | ||
x in bit | 19 | 18 | 17 | 16 | ... | 2 | 1 | 0 | −1 | ||
y als Zehnerpotenz | 16 | 32 | 64 | 128 | ... | 2,1 · | 4,19 · | 8,39 · | 1,67 · | ||
y als Potenz | ... | ||||||||||
Amplitudenauflösung | ... | (= 1 : 1) | (= 1 : 0,5) | ||||||||
Streuung | 19 · | 38 · | 76 · | 153 · | ... | 0,25 (= 2'500'000 · ) | 0,5 (= 5'000'000 · ) | 1 (= 10'000'000 · ) | 2 |
Streuung Δ:
Amplitudenauflösung x:
Computerschnittstellen
Apple führte im März 2001 mit Mac OS X eine grundlegend überarbeitete Version des Betriebssystems ein, das mit Core Audio ein Audiosubsystem mitbringt, welches intern auf Gleitkommazahlen basiert. Lediglich bei der Schnittstelle in Richtung der angeschlossenen Hardwarekomponenten oder beim Ausspielen in Dateien kann optional noch in Ganzzahl-Logik (engl.: "integer") gewandelt werden. Seit der Version 10.3 kann für die Durchführung dieser Operation auf die Erweiterungen der AudioUnits zurückgegriffen werden. Hierzu braucht nur ein entsprechendes Konverterobjekt instantiiert und an der richtigen Stelle in die Prozesskette eingehängt zu werden.
DirectSound, die Microsoft-eigene Schnittstelle zur Soundverarbeitung hingegen, arbeitet nur mit Ganzzahlen.
Die von Steinberg Media Technologies (später Pinnacle Systems und mittlerweile Yamaha) entwickelte, speziell auf niedrige Latenzen ausgelegte Schnittstelle namens ASIO ist zur Anbindung von Geräten zur Tonein- und -ausgabe gedacht und unterstützt Sampleraten von 32 kHz bis 192 kHz bei Wortbreiten von 16, 24 und 32 bit in Integernotation sowie 32-bit- und 64-bit-Gleitkommawerte.
Plugins, die für die RTAS-Schnittstelle von Pro Tools, für Steinbergs VST-Umgebung programmiert wurden oder die für die generische Verwendung unter Mac und Logic als Audio Units implementiert wurden, werden ebenfalls mit Gleitkommawerten angesprochen.
Die Schnittstelle DXi, die von Cakewalk (TwelveToneSystems) für deren Produkte Sonar und HomeStudio entwickelt wurde, ist die Ausnahme: Es muss ausschließlich in ganzzahliger Arithmetik gerechnet werden.
Die meisten aktuellen Programme, die Audiodaten verarbeiten, verwenden mittlerweile bei der internen Datenverarbeitung Gleitkommazahlen, da die meisten Signalquellen schnell den Headroom des digitalen Mixers in Integerarithmetik sprengen würde. Die Hersteller der folgenden Applikationen werben mit der Verwendung von Gleitkommazahlen als internes Datenformat:
Pro Tools spielt in diesem Zusammenhang mit den von Digidesign eingesetzten externen DSP-Racks der TDM-Systeme eine Sonderrolle, da die dort zum Einsatz kommenden DSPs von Motorola nur Ganzzahlarithmetik beherrschen.
Dateiformate
Auch in einigen Datenformaten zur Speicherung von Multimediainformationen werden Gleitkommazahlen verwendet, um Umrechnungsfehler, die ansonsten bei der Kodierung und Dekodierung entstehen könnten, zu vermeiden. Die folgende Tabelle gibt einen Überblick über häufig verwendete, nicht datenreduzierte Audioformate und zeigt, in welchen Zahlenformaten diese jeweils Audioinformationen ablegen können.
Format | 8-bit Int | 16-bit Int | 24-bit Int | 32-bit Int | 32-bit FP | 64-bit FP |
---|---|---|---|---|---|---|
Microsoft WAV format (little endian) | x | x | x | x | x | x |
Apple/SGI AIFF format (big endian) | x | x | x | x | x | x |
Sun/NeXT AU format (big endian) | x | x | x | x | x | x |
RAW PCM data | x | x | x | x | x | x |
Ensoniq PARIS file format | x | x | x | x | ||
Amiga IFF / SVX8 / SV16 format | x | x | ||||
Sphere NIST format | x | x | x | x | ||
VOC files | x | |||||
Berkeley/IRCAM/CARL | x | x | x | x | ||
Sonic Foundry's 64 bit RIFF/WAV | x | x | x | x | x | |
Matlab (tm) / GNU Octave | x | x | x | x | ||
Portable Voice Format | x | x | x | |||
Audio Visual Research | x | x | ||||
MS WAVE mit WAVEFORMATEX | x | x | x | x | x |
(FP = Floating-Point, Int = Integer)
Bei datenreduzierten Formaten gestaltet sich die Analyse etwas schwieriger, da diese auf Containerformaten basieren, die in der Regel intern alle Notationen zulassen. So ist es beispielsweise in Apples Quicktime-Codecs möglich, Gleitkommazahlen direkt abzuspeichern. Es gibt allerdings nach wie vor kein Medium für Endverbraucher, auf dem in standardisierter Form Samples in Gleitkommazahlen zum Einsatz kommen.
Literatur
- Udo Zölzer: Audio-Verarbeitungssysteme. (PDF; 117 kB) Springer Verlag, abgerufen am 10. Juni 2016 (Kapitel 4).
- Stefan Weinzierl: Kommunikationstechnik II. (PDF; 2 MB) TU Berlin, S. 33, abgerufen am 10. Juni 2016 (Kap. 2.8 Zahlendarstellung und Zahlenformat).
Einzelnachweise
- SoundGrid Servers. Waves Inc., abgerufen am 22. Juni 2016 (englisch).
- Marcel Beuler: Realisierung von Arithmetik-Baugruppen für das 32-Bit-Gleitkommaformat der Norm ANSI/IEEE 754 mittels VHDL. (PDF; 548 kB) FH Gießen-Friedberg, April 2008, S. 3 (S. 7 der PDF), abgerufen am 28. Juni 2016.
- Jonas Ekeroot: Audio Software Development. (PDF; 630 kB) 9. August 2007, S. 26, abgerufen am 24. Juni 2016 (englisch).
- Uwe Martens: High Resolution Audio - Audio Analysis. 1. Juli 2015, abgerufen am 23. Juni 2016 (s. Zeile 8: Noise floor 32 bit Gleitkomma).
- Einführung in die digitale Signalverarbeitung. (PDF; 35,1 MB) ELV Elektronik AG, S. 34, abgerufen am 10. Juni 2016.
- Windows Sysinternals - Processing the Audio Data. Microsoft, abgerufen am 11. Juni 2016 (englisch): „16-bit audio is represented by a signed integer with a range from -32768 to 32767“
- Michael Talbot-Smith: Audio Engineer's Reference Book. S. 103, abgerufen am 16. Juni 2016 (englisch).
- AES Convention Paper 7438 - Audio software development. (PDF; 303 kB) Audio Engineering Society, Mai 2008, S. 7, abgerufen am 16. Juni 2016 (englisch).
- Udo Zölzer: Digital Audio Signal Processing. S. 55, abgerufen am 16. Juni 2016 (englisch): „dynamic range for floating-point representation“
- Floating point unit demonstration on STM32 microcontrollers. (PDF; 787 kB) STMicroelectronics, Mai 2016, S. 6, abgerufen am 22. Juni 2016 (englisch).
- Das Dezibel. Detlef Mietke, abgerufen am 12. Juni 2016.
- Berechnen: Verstärkung (gain) und Dämpfung (loss) als Faktor in den Pegel in Dezibel (dB). Eberhard Sengpiel, abgerufen am 12. Juni 2016.
- Men Muheim: Design and Implementation of a Commodity Audio System. (PDF; 7,5 MB) 2003, S. 53, abgerufen am 24. Juni 2016 (englisch, Doktorarbeit).
- Udo Zölzer: Digital Audio Signal Processing. S. 56, abgerufen am 16. Juni 2016 (englisch): „the signal-to-noise ratio is independent of the level of the input“
- Jonas Ekeroot: Audio Software Development. (PDF; 630 kB) 9. August 2007, S. 29, abgerufen am 24. Juni 2016 (englisch).
- Udo Zölzer: Digital Audio Signal Processing. S. 49, abgerufen am 16. Juni 2016 (englisch, dezimale Wertung der Bits).
- W. Kahan: Lecture Notes on the Status of IEEE Standard 754 for Binary Floating-Point Arithmetic. (PDF; 115 kB) 1. Oktober 1997, abgerufen am 12. Juni 2016 (englisch).
- IEEE 754 Converter. Harald Schmidt, abgerufen am 5. Juni 2016 (Online Rechenscript zur 32 bit Gleitkommaberechnung).
- Decibel (dB) to Float Value Calculator. Play Dot Sound, abgerufen am 16. Juni 2016 (englisch).
- Summenpegel von inkohärenten Schallquellen. Alexander Sengpiel, abgerufen am 16. Juni 2016.