Jump to content
Annons

Trim-tricket i senaste studio


mietek

Recommended Posts

Annons
Inte till 32 bit flyttal förstås. När du går från 32 bit till exempelvis 16 för CD-bränning blir det lite lurigt med dither.

Hänger inte med.

Det spelar ingen roll vilket bitdjup du jobbar i. Ditherangivelserna anger vilket bitdjup du vill trunkera till.

Link to comment
Dela på andra sajter

  • 2 veckor senare...
Hänger inte med.

Det spelar ingen roll vilket bitdjup du jobbar i. Ditherangivelserna anger vilket bitdjup du vill trunkera till.

(Sorry för OT)

Jo, men flyttal har den egenheten att det blir jättesvårt att applicera dither på det. Dither måste ju vara oberoende av signalen för att effektivt eliminera kvantiseringsdistortionen, och hur gör man det när antalet bitar ständigt moduleras av signalstyrkan? Antingen fast nivå på dither vilket är för mycket för en del samplingar och för lite för en del. Alltså ineffektivt dither. Om man styr dithernivån efter signalnivån så blir inte dithret dekorrelerat. Knepigt... Det forskas en del på hur man kan lösa det här på nåt bra sätt, men det är inte så enkelt.

Link to comment
Dela på andra sajter

(Sorry för OT)

Jo, men flyttal har den egenheten att det blir jättesvårt att applicera dither på det. Dither måste ju vara oberoende av signalen för att effektivt eliminera kvantiseringsdistortionen, och hur gör man det när antalet bitar ständigt moduleras av signalstyrkan? Antingen fast nivå på dither vilket är för mycket för en del samplingar och för lite för en del. Alltså ineffektivt dither. Om man styr dithernivån efter signalnivån så blir inte dithret dekorrelerat. Knepigt... Det forskas en del på hur man kan lösa det här på nåt bra sätt, men det är inte så enkelt.

När trunkerar du ned till flyttal?

Link to comment
Dela på andra sajter

När trunkerar du ned till flyttal?

Inte så ofta? Däremot rätt ofta till fixed point, antingen 24 bitar eller 16 bitar för CD-bränning. När man går från 32 bit flyttal till lägre fixed point är det svårt med dither, var min poäng.

Trunkering låter onekligen som något intimt och obehagligt. Nä, men det är när man slänger bort de sista bitarna i en sample, man minskar bitdjupet. Alla pluggar, ljudprogram mm jobbar med högre upplösning än 16 bitar (ofta med högre än 24 bitar också, gärna 48 eller 64 bitar för att det ska bli så exakt som möjligt). Att bara kasta bitarna resulterar i ful distortion vid riktigt låga nivåer, varför man använder ditherbrus. Det gör att den sista,minsta biten i varje sample slår på och av lite mer slumpmässigt och man får brus istället för distortion.

Link to comment
Dela på andra sajter

När man går från 32 bit flyttal till lägre fixed point är det svårt med dither, var min poäng.

Du får ursäkta, men jag förstår fortfarande inte problemet.

När du applicerar dither gör du det för en given trunkering (oavsett om denna redan skett eller inte).

Du kan alltså (om du vill) dithra material i 32 bitars flyttalsupplösning för till exempel 16 bitar. Bruset adderas då i den nivå som antas vara de "least significant" värden du kan jobba med i den upplösningen. För 16 bitar appliceras bruset någonstans ovanför -96 dBFS.

Den här processen borde inte vara något problem. Det handlar helt enkelt om att mixa det befintliga ljudet med ett annat (ditherbrus).

Jag kan däremot föreställa mig problemet med att applicera ditherbrus anpassat för flyttal, eftersom det inte finns något statiskt värde för de "least significant" bitarna.

Och som vi redan konstaterat är det till och med svårt att föreställa sig när man skulle behöva det.

Link to comment
Dela på andra sajter

När du applicerar dither gör du det för en given trunkering (oavsett om denna redan skett eller inte).

(Om jag missförtod ber jag om ursäktpå förhand) Du kan inte dithra efter trunkering, då har distorsionen redan uppstått-

Du kan alltså (om du vill) dithra material i 32 bitars flyttalsupplösning för till exempel 16 bitar. Bruset adderas då i den nivå som antas vara de "least significant" värden du kan jobba med i den upplösningen. För 16 bitar appliceras bruset någonstans ovanför -96 dBFS.

/../

Jag kan däremot föreställa mig problemet med att applicera ditherbrus anpassat för flyttal, eftersom det inte finns något statiskt värde för de "least significant" bitarna.

Och som vi redan konstaterat är det till och med svårt att föreställa sig när man skulle behöva det.

Precis, problemet är att det inte finns någon givet bra nivå att applicera brus på. Läste du länken? Obs, inte menat som otrevligt alltså, detär bara ett bra och intressant paper 😐

Link to comment
Dela på andra sajter

Du kan inte dithra efter trunkering, då har distorsionen redan uppstått-

Jo det går, fast som du säger har kvantiseringsistortionen då redan uppstått.

Men även om du lägger dither i efterhand så gör det skillnad.

Det maskerar trunkeringens yxighet genom att bruset påverkar de "least significant" bitarna slumpmässigt.

Precis, problemet är att det inte finns någon givet bra nivå att applicera brus på. Läste du länken?

Och nu pratar vi alltså om dither anpassat för trunkering till 32-bitars flyttalsupplösning? Något som i praktiken aldrig används i ljudbearbetning.

Länken har jag missat. Var hittar jag den?

Link to comment
Dela på andra sajter

Jo det går, fast som du säger har kvantiseringsistortionen då redan uppstått.

Men även om du lägger dither i efterhand så gör det skillnad.

Det maskerar trunkeringens yxighet genom att bruset påverkar de "least significant" bitarna slumpmässigt.

Det är klart det går, fast det blir ju inte rätt 🙂

Det maskerar till viss del förstås,men det är ju smartare att applicera innan trunkering. Det fyller ju mindre av en dither-funktion då och mer av en "brus för att maskera ett problem"-funktion. Dithrets roll är ju att göra om kvantiseringsfelet (det missljud som uppstår av att gå ner i bitdjup) från distortion till brus, alltså sprida problemet slumpmässigt istället för korrelerat till signalen.

Och nu pratar vi alltså om dither anpassat för trunkering till 32-bitars flyttalsupplösning? Något som i praktiken aldrig används i ljudbearbetning.

Länken har jag missat. Var hittar jag den?

Nej. Vi lyckas tala förbi varandra hela tiden 😉

Jag talar om dither för att gå FRÅN 32 bitar flyttal till antingen ex. 24 eller 16 bitar fast tal. Något som i praktiken används rätt ofta.

http://www.cadenzarecording.com/floatingdither.html

Den länken är bra. Nika förklarar det på ett bra sätt; vad som händer beroende på hur man försöker applicera dither i flyttalsmiljöer. Slutsatsen han gör är att det är praktiskt omöjligt att göra korrekt. SLutsatsen som bl.a. Bob Katz och andra drar är också att man kan strunta i dither och bara trunkera när man ska till 24 bitar för att kvantiseringsfelet ändå ligger 144 dB ner från max.

Link to comment
Dela på andra sajter

Jag talar om dither för att gå FRÅN 32 bitar flyttal till antingen ex. 24 eller 16 bitar fast tal. Något som i praktiken används rätt ofta.

http://www.cadenzarecording.com/floatingdither.html

Den länken är bra. Nika förklarar det på ett bra sätt; vad som händer beroende på hur man försöker applicera dither i flyttalsmiljöer. Slutsatsen han gör är att det är praktiskt omöjligt att göra korrekt.

Nu var det lite många sidor att skumma igenom, men titeln får mig att tro att det handlar om en rätt ovanlig dithering-situation: "Exploring Dither in Floating-Point Systems"

Jag har aldrig varit med om att applicera dither i någon annan situation än när man trunkerar ned materialet till 24 eller 16 bitar i fixa tal. Inte medvetet i alla fall. Hur och när signalflöden till och från ljudkort trunkeras från 32 bitar flyttal till 24 bitar fixa tal och tvärtom är jag inte så insatt i.

Att applicera dither anpassat för fixa tal är hur som helst inte mer komplicerat än att summera en signal (ditherbrus) till en annan (det egentliga ljudmaterialet).

SLutsatsen som bl.a. Bob Katz och andra drar är också att man kan strunta i dither och bara trunkera när man ska till 24 bitar för att kvantiseringsfelet ändå ligger 144 dB ner från max.

Som jag uppfattar det rekommenderar Bob Katz att man dithrar vid den slutgiltiga trunkeringen. Vilket bitdjup det handlar om är beroende av slutmediat, men oftast handlar det om 16 eller 24 bitar.

Link to comment
Dela på andra sajter

Nu var det lite många sidor att skumma igenom, men titeln får mig att tro att det handlar om en rätt ovanlig dithering-situation: "Exploring Dither in Floating-Point Systems"

Jag har aldrig varit med om att applicera dither i någon annan situation än när man trunkerar ned materialet till 24 eller 16 bitar i fixa tal. Inte medvetet i alla fall. Hur och när signalflöden till och från ljudkort trunkeras från 32 bitar flyttal till 24 bitar fixa tal och tvärtom är jag inte så insatt i.

Att applicera dither anpassat för fixa tal är hur som helst inte mer komplicerat än att summera en signal (ditherbrus) till en annan (det egentliga ljudmaterialet).

Som jag uppfattar det rekommenderar Bob Katz att man dithrar vid den slutgiltiga trunkeringen. Vilket bitdjup det handlar om är beroende av slutmediat, men oftast handlar det om 16 eller 24 bitar.

Tja,

Titeln fritt tolkad innebär väl ungefär "Så här fungerar dither i flyttalssystem". Precis som du skriver så handlar det om att gå från högre bitar flyttal till fix 24 eller 16. Trunkering sker förstås när det ska DA-omvandlas också varvid dither är relevant på samma sätt, även där. Jag brukar säga åt Sequoia som arbetar med 32 bit flyttal att kommunicera med 24 bit fixed point med ljudkortet så jag vet att Sequoia sköter dither. Annars kan ett 32-bit flyttalskompatibelt ljudkort göra det också, men där har man ju oftast ingen kontroll på det. Allt jag skrivit har handlat om att gå från 32 bitar flyttal till antingen 24 eller 16 bitar fix.

Dither för fixa tal är som sagt rätt okomplicerat, men att trunkera med dither från flyttal till fix point är jättejättesvårt. Det är kontentan jag försökt få fram. Det är vad Aldrich presenterar i länken jag skickade (läs bara sista sidan om du inte orkar harva dig igenom hela, det är en sammanfattning).

Självklart rekommenderar Katz att man dithrar sist, till slutmediets upplösning.

Sammanfattning på allt jag nånsin velat få fram i den här diskussionen; Att gå från 32 bitar flyttal till lägre upplösning fixed point är komplicerat då det inte går att applicera korrekt dither tack vare signalens drastiskt ständigt ökande och minskande bitdjup.

Link to comment
Dela på andra sajter

Har varit inne på det här med gain/trim-tricket, men tycker inte det ger något direkt.

Det största problemet med att mixa ITB är att man spelar in på för stark volym, så det blir så kallad gain staging, vilket bara slutar med att det låter illa och pluggarna jobbar över sin förmåga.

Vill ni att era inspelningar ska låta bra, spela in med svagare volym helt enkelt, head room behöves, JA även i den digitala världen. 24 bitar kommer du långt med, utan att försöka ligga nära den digitala 0:an 😛

/Jon

Link to comment
Dela på andra sajter

drloop (oregistrerad)
Har varit inne på det här med gain/trim-tricket, men tycker inte det ger något direkt.

Det största problemet med att mixa ITB är att man spelar in på för stark volym, så det blir så kallad gain staging, vilket bara slutar med att det låter illa och pluggarna jobbar över sin förmåga.

Vill ni att era inspelningar ska låta bra, spela in med svagare volym helt enkelt, head room behöves, JA även i den digitala världen. 24 bitar kommer du långt med, utan att försöka ligga nära den digitala 0:an 😛

/Jon

Vad kör du för DAW och vilka pluggar får du problem med?

Link to comment
Dela på andra sajter

Dither för fixa tal är som sagt rätt okomplicerat, men att trunkera med dither från flyttal till fix point är jättejättesvårt. Det är kontentan jag försökt få fram. Det är vad Aldrich presenterar i länken jag skickade (läs bara sista sidan om du inte orkar harva dig igenom hela, det är en sammanfattning).

Okej, jag har skummat artikeln och inser nu vilket problem du vill belysa.

Jag tycker att man kan dela upp problematiken i två delar.

För det första är dithering inom flyttalssystem problematiska. Som du redan påpekat måste ditherbrus appliceras på den relativa nivå samplingen befinner sig.

Och för det andra är trunkeringen från flyttal till fixa tal problematisk eftersom man släpper mycket information och för att bli kvitt kvantisertingsdistortionen helt bör alla dessa bitar dithras. Något som inte är möjligt med dagens musikdatorer.

De förslag på dither författaren presenterar har alla sina begränsningar, men han utelämnar ett alternativ.

Om t ex man trunkerar från 32 bitars flyttal till 16 bitars fixa tal applicerar man ett ditherbrus på 16 bitar i fixa tal. Kvantiseringsfelen uppstår då 16 bitar under brusnivån.

Link to comment
Dela på andra sajter

Okej, jag har skummat artikeln och inser nu vilket problem du vill belysa.

Jag tycker att man kan dela upp problematiken i två delar.

För det första är dithering inom flyttalssystem problematiska. Som du redan påpekat måste ditherbrus appliceras på den relativa nivå samplingen befinner sig.

Och för det andra är trunkeringen från flyttal till fixa tal problematisk eftersom man släpper mycket information och för att bli kvitt kvantisertingsdistortionen helt bör alla dessa bitar dithras. Något som inte är möjligt med dagens musikdatorer.

De förslag på dither författaren presenterar har alla sina begränsningar, men han utelämnar ett alternativ.

Om t ex man trunkerar från 32 bitars flyttal till 16 bitars fixa tal applicerar man ett ditherbrus på 16 bitar i fixa tal. Kvantiseringsfelen uppstår då 16 bitar under brusnivån.

nu börjar vi tala samma språk!

Det alternativ som du presenterar är nog inte riktigt att betrakta som korrekt dither eftersom du inte kan dekorrelera kvantiseringsfelet i efterhand; då är det ju en del av signalen. Man kan förstås som du skriver maskera det med brus, men dither handlar om att tvinga felet att spridas slumpmässigt (brus) istället för bundet till signalen (dist). OM jag inte missförstod dig. Som jag förstod dig menade du 32 bit float->trunkering till 16 bit fix->applicera 16 bit-dither. Det ger scenariot ovan.

Om du menade 32 bit float->16 bit fix-dither->trunkering så är vi ju tillbaks på Nikas fjärde alternativ:

The sheer nature of a floating-point system negates the ability to add dither that is at a constant amplitude and thus uncorrelated to the amplitude of the signal and of the same bit depth as all bits to be truncated.

Och ytterligare ett alternativ som du kanske menade (jag förstod inte riktigt) kan vara att i flyttalsdomänen lägga till dither motsvarande 16 bitar. Det går, men tar inte helt bort distortionen eftersom vissa ord kommer att ligga under dithret och vissa över. Se nikas femte exempel (han pratar visserligen om 24 bitar men sak samma):

This method would certainly be better than the complete absence of dither, but it is not capable of completely preventing distortion. With this solution we would still have quantization distortion but at a level 8 bits (48dB) below the noise floor of the 24-bit re-quantized data.
Link to comment
Dela på andra sajter

Bli medlem (kostnadsfritt) eller logga in för att kommentera

Du behöver vara medlem för att delta i communityn

Bli medlem (kostnadsfritt)

Bli medlem kostnadsfritt i vår community genom att registrera dig. Det är enkelt och kostar inget!

Bli medlem nu (kostnadsfritt)

Logga in

Har du redan en inloggning?
Logga in här.

Logga in nu
×
×
  • Skapa ny...