Modifierad Diskret Cosinus Transform

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 24 juni 2019; verifiering kräver 1 redigering .

Den modifierade diskreta kosinustransformen (MDCT) är en Fouriertransform och är baserad på den diskreta kosinustransformen (DCT-IV). Detta är en överlappande transformation. Det utförs på på varandra följande block av stora datamängder, vart och ett av de efterföljande blocken överlappar varandra. Detta händer enligt följande: den andra halvan av föregående block är densamma som den första halvan av nästa. Denna överlappning, förutom DCT-funktionalitet, gör MDCT särskilt användbar för att komprimera signaler i applikationer där det är nödvändigt att undvika artefakter som vanligtvis går utanför blockgränserna.

Således fungerar MDCT i MP3- , AC- 3- , Vorbis- och AAC-format för till exempel ljudkomprimering. Den används också i Siren codec från Polycom .

MDCT utvecklades av Princeton, Johnson och Bradley 1987 [1] och föregicks av arbete 1986 av Princeton och Bradley [2] .

De utvecklade sedan Basic Temporal Interference Elimination Principle (TCP), som beskrivs nedan. (Här finns också en liknande transformation, MDCT, baserad på den diskreta sinustransformen. Samt andra, mindre vanliga varianter av MDCT, baserade på olika typer av kombinationer av DCT och DCT).

I MP3 appliceras MDCT inte direkt på ljudsignalen, utan på utgången av ett 32-bands polyphase quadrature filter (MPF). Utsignalen i denna MDCT behandlas med en tidsbrusreduceringsformel för att minska det typiska bruset för MCF-filter. Denna kombination av en filterbank med MDCT kallas en hybrid (i) filterbank eller MDCT-subzon (i). Däremot använder AAC vanligtvis ren MDCT; endast den (tidigare använda) MPEG-4 AAC-SSR (från Sony) bearbetas av den 4-filiga MKF-uppsättningen från MCDP. ATRAC använder staplade kvadraturspegelfilter (QSF) och sedan MDCT.

Definition

Eftersom MDCT är en överlappad transform, skiljer den sig något från andra Fourier-transformer. I MDCT finns det två gånger färre utgångar än ingångar (till skillnad från andra transformationer, där det finns exakt samma antal utgångar som ingångar).

I synnerhet är detta en linjär funktion : (där  är mängden av reella tal) 2 N  - reella tal x 0 , ..., x 2 N -1 omvandlas till reella tal X 0 , ..., X N - 1 i enlighet med formeln: (Normaliseringskoefficient här i början av transformationen, och mängden är godtycklig och skiljer sig i olika variationer av förhållanden. Resultatet av normaliseringen av MDCT och OMDCT visas nedan.)





Omvänd transformation

Den omvända MDCT är känd som OMDCT. Eftersom de skiljer sig åt i antalet ingångar och utgångar kan det vid första anblicken verka som att MDCT inte går att vända. Den bästa reversibiliteten av transformationen uppnås emellertid genom att tillämpa (i) OMDCT på överlappande block, och är anledningen till felsökning innan originaldata extraheras. Denna metod är känd som Temporal Interference Elimination Principle (TCIP).

OMDCT omvandlar reella tal X 0 , …, X N -1 i mängd N till reella tal y 0 , …, y 2 N -1 i mängd 2N i enlighet med formeln:



(När det gäller DCT-IV, i den ortogonala transformationen, används samma form i inversen).

Om MDCT används med intervallnormalisering (se nedan), måste koefficienten för denna normalisering i början av OMDT-formeln multipliceras med 2 (det vill säga 2/N erhålls).

Beräkning

Även om den direkta tillämpningen av MDCT-formeln skulle kräva O(N²)-operationer, är det möjligt att endast beräkna O(N log N)-komplexitet genom att rekursivt faktorisera beräkningarna, som i Fast Fourier Transform (FFT). Det är också möjligt att utföra MDCT genom att använda andra transformationer, såsom FFT eller DCT, som dessutom bearbetar in- och utdata med O(N)-komplexitetsalgoritmer.

Också, som redan beskrivits, tillhandahåller vilken algoritm som helst för DCT-IV omedelbart en metod för att beräkna MDCT eller OMDCT av vilken dimension som helst.

Anteckningar

  1. JP Princen, A.W. Johnson och A.B. Bradley: Delbands-/transformkodning med hjälp av filterbanksdesigner baserade på avbrytning av tidsdomänaliasing , IEEE Proc. Intl. Conference on Acoustics, Speech, and Signal Processing (ICASSP), 2161-2164, 1987. Inledande beskrivning av vad som nu kallas MDCT.
  2. John P. Princen, Alan B. Bradley: Utformning av analys/syntesfilterbank baserad på avbrytning av tidsdomänalias , IEEE Trans. Akust. Speech Signal Processing, ASSP-34 (5), 1153-1161, 1986. Beskrev en föregångare till MDCT med användning av en kombination av diskreta cosinus- och sinustransformationer.