Start

Dithering

Dit is een voorbeeld van een gids-pagina die nog uitgewerkt wordt. We beginnen met het verzamelen van de basisinfo, later zullen we deze verder in een handige vorm gieten. Voorlopig kan slechts een beperkte groep leden deze pagina verbeteren, maar daar komt nog verandering in.

1. Inleiding

Wat is dithering?

(start met wat quotes uit het forum)

Dithering is het toevoegen van ruis om het detailverlies bij omzetting (verlaging) van de bitdiepte te compenseren. Dither is geen witte ruis, een maar een weldoordacht "willekeurig" algoritme.

Bij het verlagen van bitdiepte (bv van 24bit 16bit) riskeer je dat de stilste signalen ergens tussen 0 en 1 vallen. Voor een ADC of DAC bestaat er niet zoiets als 0.5 bit, dus je signaal zal op dat punt worden gezien als 0 (oftwewel pal in je noisefloor). Toevoegen van dither zorgt ervoor dat de signalen met kleinste bitwaarde na conversie toch nog boven de LSB (least significant bit) blijven.

Een Analoog signaal is een continu signaal, een Digitaal signaal is trapsgewijs. In de audio streven we naar lineariteit. Dither gebruiken we om meer lineariteit in ons signaal te brengen. Dither maakt de quantizer onvoorspelbaarder (minder trasgewijs en meer lineair) en voegt een ruisvloer toe met een peak to peak amplitude van Q (quantizatieinterval). Deze ruisvloer rond het trapsgewijze af naar meer lineariteit.

Wanneer men een 24 of 32 bit audiofile converteert naar 16 bit onstaan er onvermijdelijk een beetje ongewenste geluiden op een laag niveau. Ditheren betekent simpelweg gezegd deze ongewenste geluiden camoufleren dmv het toevoegen van een beetje ruis. Bij cubase SL of X kan je ditheren met de vst UV 22 of UV22HR.

2. Basis-informatie

(Ook weer enkele nuttige forum-quotes)

Uit http://www.homerecording.be/forum/t1879-2.htm#post20248

1. recording..

In 24bit opnemen is beter. Punt. Dat heeft alles te maken met dynamisch bereik. Zonder op de wiskunde in te gaan, 16bit heeft ongeveer ergens rond de -96db dynamisch bereik (het vershil tussen het stilst mogelijke weer te geven signaal en het luidste) dat is net iets meer dan het menselijk gehoor (zit ergens rond -92db). 24bit heeft een dynamisch bereik van ongeveer (technisch) tot -144.50dB, in de praktijk is -110db meer realistisch. In 24bit is het dus mogelijk om veel meer detail op te nemen. Dit heeft 2 grote voordelen voor ons, muzikanten.

  • meer headroom. Om een goede opname te maken dien je op 16bit zo dicht mogelijk bij de 0db te blijven, met als groot gevaar dat je erover gaat en digitale clipping hebt . Bij 24db opnames kan je makkelijk je signaal op -10db houden zonder verlies van kwaliteit, en je hebt nog 10db over voor eventuele onverwachte pieken in het signaal. Zeker voor live instrumenten (zang, etc..) is die extra headroom een gemak.
  • meer dynamisch bereik. Zelf met extra headroom heeft 24bit nog meer dynamisch bereik dan 16bit. Als je na de opnames bv met compressors of andere dynamische processors aan de slag gaat die de details in het signaal naar boven halen, is er simpelweg meer om mee te werken wat de klaarheid in het geluid zeker ten goede komt.

2. mixing.

Mixing gebeurt dezer dagen in een DAW zelden of nooit meer in 16bit, noch in 24bit. Meestal in 32bit, 32bit float, 48bit, 64bit en vanalles tussenin.. De reden daarvoor is simpelweg mathematisch. 16bit kent 2x2x2x2x2x2x2x2x2x2x2x2x2x2x2x2 = 65,536 unieke waarden, and that's it.. enkel gehele getallen, dus als je je gain op -0.2db zet worden alle getallen na de comma afgerond (vandaar 32bit float, zodat er wel na de comma gerekend kan worden.). Op een enkel signaal is dit in weze niet echt een probleem, maar als je verschillende signalen combineert (mixen dus) wil je dat proces op zo'n hoog mogelijke resolutie doen zodat al je processing zo min mogelijk afrondingsfouten bevat. Dit geldt trouwens voor alle DSP processing. Elke extra bit verdubbelt de resolutie waarin de berekeningen gebeuren. Op 32bit float is de resolutie zo hoog om geen hoorbaar effecten meer te hebben van de mathematische problemen die zich voordoen. Zelf al heb je dus allemaal 16bit audio opnames zal de mix engine die mixen op 32bit (of whatever de mix bit depth is van je DAW) .

3. output.

16bit is hier genoeg. Zoals eerder aangehaald ligt het dynamisch bereik hier dicht tegen de limieten van het menselijk gehoor en voldoet deze dus als eindresultaat. Je dient natuurlijk van de hogere bit diepte naar 16bit te gaan. Hier zijn 2 zaken belangrijk..

  • levels: In principe worden de LSB's (least significant bits) eraf gehaald, m.a.w de kleinste bits gaan eruit. Wat belangrijk is is dat je signaal dus luid genoeg en zo dicht mogelijk bij de 0db zit (dit is waarom je aan de mastering engineer best 24bit (of hoger) geeft.)
  • dithering: dit is een process dat bepaalt hoe de LSB's (de laatste 8bit dus als je van 24 naar 16 gaat) eraf worden gehaald. Dithering voegt geruis toe op een zeer lage level. Dit geruis is per definitie gelijk verdeeld over het frequenctie spectrum en intensiteit. Ons gehoor blijkt echter nogal straf in het herkennen van afwijkingen in dit patroon. (net zoals we een gesprek kunnen volgen in een druk café, kunnen we ook signalen oppikken uit de noisefloor). Dus de 8bits die wegvallen worden gebruikt om dit geruis 'te kleuren' om het 'biased' te maken, proportioneel aan de sub-bit waarden, om zo dus toch nog iets van de onderliggende data door te laten komen in de noisefloor. De opoffering van wat geruis toe te voegen wordt zeker meer als teniet gedaan door de manier waarop ons gehoor werkt met als resultaat dat het beter klinkt dan dat we gewoon de laatste 8bit weggooien.

Natuurlijk zijn er wel toepassingen te bedenken waar 24bit geluid voordelen heeft t.o.v. 16bit. Zeker bij audio met een zeer groot dynamisch bereik, met zeer luide en zeer stille passages. (zoals film, klassieke muziek..)

 

Uit http://www.homerecording.be/forum/t3008.htm#post20641

Belangrijk is dat je dithert op het allerlaatste moment, na het masteren dus, vlak voor je naar CD gaan en je 24bit (of hoger) omzet naar 16bit .. dan en alleen dan wordt dithering gebruikt om van een hoge bitdepth over te stappen op een lagere bit depth.. Vermijd ten alle tijden van verschillende keren te ditheren in het ganse process vermits ditheren ruis toevoegt (en onnodig willen we dat natuurlijk niet.)

Het toepassen van ditheren op de juiste moment is veel belangrijker dan het kiezen van een of ander algoritme.

Ditheren uitleggen is eigenlijk niet zo simpel. Ik zal is proberen

eerst even termen:
LSB = Least Significant bit, MSB = Most Significant bit

bv in 1100110 is de eerste bit de MSB vermits die de meeste informatie draagt, de laatse bit is de LSB, die draagt het minst informatie.

Audio wordt weergegeven dmv 'words' of 'sample'. Samples hebben een vast aantal bits en representere een geheel getal. Hoe groter de bit diepte hoe meer getallen beschikbaar om het signaal te omschrijven. Dit resulteert in het geval van audio in meer detail wat gelijk staat aan een groter dynamisch bereik. We willen dus zo veel mogelijk van die extra info mee nemen als we van 24bit naar 16 gaan.. enter dithering..

zonder dithering zouden we de laatste 8 (LSB's) weglaten en klaar is kees. Maar dan verliezen we alle detail daarin bewaard.. Dithering doet eigenlijk hetzelfde, maar probeert nog een deel van het detail op sub-bit niveau mee te pakken..

het principe.. bv in een 2 bit systeem.. zijn 4 getallen mogelijk 0, 1, 2, 3.. het is dus onmogelijk om bv. 0.66 weer te geven.. In audio praten we over een constante stroom 'samples' die voorbij razen. Als we nu eens de LSB zouden randomiseren met een verhouding 2/3 tussen 0 en 1 dan komen we, statisctisch gezien, op 0.66 uit. Onze hersenen zullen uit 'het geruis = random signaal' die 0.66 oppikken omdat het geruis een correlatie heeft met dat getal.. het geruis is dus 'biased' zo als ze dat noemen...

natuurlijk werken we niet in een 2 bit systeem, maar daar komt het principe op neer. Er wordt in de LSB's van het 16bit systeem geruis toegevoegd en dat geruis wordt 'gemaakt' met bepaalde eigenschappen om zo zoveel mogelijk informatie mee te pakken die anders verloren zou gaan. Je komt dergelijke technieken ook tegen in de digitale fotografie e.d.

De basis eigenschappen van het geruis dat toegevoegd is bepalen het resultaat. En daar komen de verschillende algoritmes te pas. Standaard dithering gebruikt 'even' geruis als startpunt waar elke frequentie even sterk in voorkomt. verschillende algoritmes gebruiken verschillende soorten ruis, meestal vormgegeven (noise-shaping ook wel genoemd) met bepaalde doeleinden in gedachte of met een bepaald soort materiaal voor ogen.

De implementatie van de algoritmes kan van plugin tot plugin enorm verschillen en dus ook de klank ervan. Je kan best gewoon is een en ander uitproberen en luisteren naar wat je zelf het beste vindt. Ik gebruik pow-r3 (noiseshaping) omdat dat in logic zit, allround is en mij goed klinkt.. en verder denk ik er ook niet meer bij na.

3. Software

  • Izotope Ozone
  • Vintage warmer
  • Apogee uv-22

Bronnen

  • http://www.homerecording.be/forum/t4208.htm
  • http://www.homerecording.be/forum/t3105.htm (!)
  • http://www.homerecording.be/forum/t225.htm
  • http://www.homerecording.be/forum/t1879.htm (!)
  • http://www.homerecording.be/forum/t3354.htm (!)
  • http://www.homerecording.be/forum/t3008.htm
  • http://www.homerecording.be/forum/t2099.htm
  • http://www.homerecording.be/forum/t2725.htm
  • http://www.homerecording.be/forum/t2184.htm
  • http://www.homerecording.be/forum/t2972.htm

Nog een tip: http://www.izotope.com/products/audio/ozone/OzoneMasteringGuide.PDF

Freeware dither plugin: http://www.mda-vst.com/vst/mda_vst_fx_win.zip

Wikipedia: http://en.wikipedia.org/wiki/Dither