1 Johdanto. Johdanto Vaatimuksia audiokoodekille. Johdanto 1.1 Vaatimuksia audiokoodekille

Samankaltaiset tiedostot
1 Johdanto. Tiedonsiirron kaistanleveys kasvaa jatkuvasti, mutta kaistan tarve kasvaa vielä enemmän tarve kompressiotekniikoille

Puheenkoodaus. Olivatpa kerran iloiset serkukset. PCM, DPCM ja ADPCM

puheen laatu kärsii koodauksesta mahdollisimman vähän. puhe pakkautuu mahdollisimman pieneen määrään bittejä.

THE audio feature: MFCC. Mel Frequency Cepstral Coefficients

Dynamiikan hallinta Lähde: Zölzer. Digital audio signal processing. Wiley & Sons, Zölzer (ed.) DAFX Digital Audio Effects. Wiley & Sons, 2002.

Kuulon malleihin perustuva audiokoodaus, osa II

1 Todellisia koodausjärjestelmiä: MPEG Audio 1 ja MPEG ensimmäinen sukupolvi. MPEG Audio 1 ja 2. Sisältö:

ELEC-C5070 Elektroniikkapaja (5 op)

1 Diskreettiaikainen näytteistys. 1.1 Laskostuminen. Laskostuminen

T DSP: GSM codec

SGN-4200 Digitaalinen audio

Digitaalinen audio & video I

Puheenkoodaus. koodekki toimii hyvin myös kohinaiselle puheelle (ja mielellään vielä musiikille ja muille yleisille signaaleille)

Virheen kasautumislaki

Spektri- ja signaalianalysaattorit

Tuntematon järjestelmä. Adaptiivinen suodatin

Signaalien datamuunnokset. Digitaalitekniikan edut

Signaalien datamuunnokset

AV-muotojen migraatiotyöpaja - ääni. KDK-pitkäaikaissäilytys seminaari / Juha Lehtonen

Suodinpankit ja muunnokset*

Digitaalinen audio

1 Johdanto. 1.2 Psykofysiikka, psykoakustiikka. 1.1 Kuulon toiminta. Sisältö:

IIR-suodattimissa ongelmat korostuvat, koska takaisinkytkennästä seuraa virheiden kertautuminen ja joissakin tapauksissa myös vahvistuminen.

Digitaalinen audio & video, osa I

Digitaalinen audio & video, osa I. Johdanto. Digitaalisen audion sovellusalueet. Johdanto. Taajuusalue. Psykoakustiikka. Johdanto Digitaalinen audio

1 Johdanto. 2 Kriittinen näytteistys 2:lla alikaistalla. 1.1 Suodatinpankit audiokoodauksessa. Johdanto

Ongelma 1: Onko datassa tai informaatiossa päällekkäisyyttä?

Organization of (Simultaneous) Spectral Components

FIR suodinpankit * 1 Johdanto

Johdanto tieto- viestintäteknologian käyttöön: Äänitystekniikka. Vfo135 ja Vfp124 Martti Vainio

AD/DA muunnos Lähteet: Pohlman. (1995). Principles of digital audio (3rd ed). Zölzer. (1997). Digital audio signal processing

Kuulon malleihin perustuva audiokoodaus, osa I

1 Olkoon suodattimen vaatimusmäärittely seuraava:

Muuntavat analogisen signaalin digitaaliseksi Vertaa sisääntulevaa signaalia referenssijännitteeseen Sarja- tai rinnakkaismuotoinen Tyypilliset

Digitaalinen Audio & Video I

LARI KUMPU ADPCM:N KÄYTTÖ ÄÄNEN HÄVIÖTTÖMÄSSÄ PAKKAUKSESSA

1 Määrittele seuraavat langattoman tiedonsiirron käsitteet.

Alla olevassa kuvassa on millisekunnin verran äänitaajuisen signaalin aaltomuotoa. Pystyakselilla on jännite voltteina.

Flash AD-muunnin. Ominaisuudet. +nopea -> voidaan käyttää korkeataajuuksisen signaalin muuntamiseen (GHz) +yksinkertainen

Kuvan pakkaus JPEG (Joint Photographic Experts Group)

1 Vastaa seuraaviin. b) Taajuusvasteen

Kompleksiluvut signaalin taajuusjakauman arvioinnissa

1. Perusteita Äänen fysiikkaa. Ääniaalto. Aallonpituus ja amplitudi. Taajuus (frequency) Äänen nopeus

Kapeakaistainen signaali

ELEC-C7230 Tietoliikenteen siirtomenetelmät

Laskuharjoitus 4 ( ): Tehtävien vastauksia

Puhetie, PCM järjestelmä, johtokoodi

1. Määritä pienin näytelauseen ehdon mukainen näytetaajuus taajuus seuraaville signaaleille:

Digitaalinen signaalinkäsittely Desibeliasteikko, suotimen suunnittelu

Dynamiikan hallinta Lähde: Zölzer. (1997). Digital audio signal processing. Wiley & Sons.

Tietoliikennesignaalit & spektri

SGN-1251 Signaalinkäsittelyn sovellukset Välikoe Heikki Huttunen

3 Ikkunointi. Kuvio 1: Signaalin ikkunointi.

PSYKOAKUSTINEN ADAPTIIVINEN EKVALISAATTORI KUULOKEKUUNTELUUN MELUSSA

Signaalit ja järjestelmät aika- ja taajuusalueissa

KOHINA LÄMPÖKOHINA VIRTAKOHINA. N = Noise ( Kohina )

Successive approximation AD-muunnin

ELEC-C Sovellettu digitaalinen signaalinkäsittely. Äänisignaalien näytteenotto ja kvantisointi Dither Oskillaattorit Digitaalinen suodatus

11. kierros. 1. Lähipäivä

RAKENNUSAKUSTIIKKA - ILMAÄÄNENERISTÄVYYS

TL5503 DSK, laboraatiot (1.5 op) Suodatus 2 (ver 1.0) Jyrki Laitinen

Digitaalinen signaalinkäsittely Kuvankäsittely

LABORATORIOTYÖ 2 A/D-MUUNNOS

LABORATORIOTYÖ 2 A/D-MUUNNOS

TL5503 DSK, laboraatiot (1.5 op) Audiosignaalit (ver 1.0) Jyrki Laitinen

A/D-muuntimia. Flash ADC

Luento 8. Suodattimien käyttötarkoitus

Digitaalinen signaalinkäsittely Johdanto, näytteistys

Kanavointi ja PCM järjestelmä

SGN-1200 Signaalinkäsittelyn menetelmät, Tentti

Kuuloaistin ominaisuuksia

SIGNAALITEORIAN KERTAUSTA 1

Kuulohavainnon perusteet

SGN-1200 Signaalinkäsittelyn menetelmät Välikoe

Synteesi-analyysi koodaus

1 PID-taajuusvastesuunnittelun esimerkki

Kohina. Havaittujen fotonien statistinen virhe on kääntäen verrannollinen havaittujen fotonien lukumäärän N neliö juureen ( T 1/ N)

Käytännön radiotekniikkaa: Epälineaarinen komponentti ja signaalien siirtely taajuusalueessa (+ laboratoriotyön 2 esittely)

Kuvan- ja videontiivistys. Mikko Nuutinen

Yleistä. Digitaalisen äänenkäsittelyn perusteet. Tentit. Kurssin hyväksytty suoritus = Harjoitustyö 2(2) Harjoitustyö 1(2)

SGN-1200 Signaalinkäsittelyn menetelmät, Tentti

SGN-1200 Signaalinkäsittelyn menetelmät Välikoe

KAISTANLEVEYDEN JA TEHON KÄYTÖN KANNALTA OPTIMAALINEN MODULAATIO TRELLISKOODATTU MODULAATIO (TCM)

Dynaamiset regressiomallit

Spektrianalysaattori. Spektrianalysaattori

SGN-1200 Signaalinkäsittelyn menetelmät, Tentti

RYHMÄKERROIN ÄÄNILÄHDERYHMÄN SUUNTAAVUUDEN

2.1 Ääni aaltoliikkeenä

12. Laskostumisen teoria ja käytäntö

Monikanavaäänen perusteet. Tero Koski

Digitaalitekniikan matematiikka Luku 1 Sivu 1 (19) Johdatus digitaalitekniikkaan

MONITILAISET TIEDONSIIRTOMENETELMÄT TÄRKEIMPIEN ASIOIDEN KERTAUS A Tietoliikennetekniikka II Osa 18 Kari Kärkkäinen Syksy 2015

6.8 Erityisfunktioiden sovelluksia

Ympäristömelun määrä ja laatu

SGN-1200 Signaalinkäsittelyn menetelmät, Tentti

Laskuharjoitus 2 ( ): Tehtävien vastauksia

Yhtälöryhmä matriisimuodossa. MS-A0004/A0006 Matriisilaskenta. Tarkastellaan esimerkkinä lineaarista yhtälöparia. 2x1 x 2 = 1 x 1 + x 2 = 5.

Juha Henriksson. Digitaalinen äänentallennus Dr. Juha Henriksson Finnish Jazz & Pop Archive

SGN-4200 Digitaalinen Audio Harjoitustyö-info

SGN Signaalinkäsittelyn perusteet Välikoe Heikki Huttunen

Transkriptio:

Kuulon malleihin perustuva audiokoodaus, osa I Lähteet: Kahrs, Brandenburg, (Editors). (1998). Applications of digital signal processing to audio and acoustics Kluwer Academic. Bernd Edler. (1997). Low bit rate audio tools. MPEG meeting. Spanias et al. (2007). Audio signal processing and coding, Wiley & Sons Zölzer (2008). Digital audio signal processing, Wiley & Sons Sisältö:! Johdanto! vaatimuksia koodekeille! lähdekoodaus vs. kuulon malleihin perustuva k.! koodauslaadun mittaus! Faktoja psykoakustiikasta! Kuulon malleihin perustuvan koodauksen kokonaiskuva!! suodinpankit! kuulon mallit! kvantisointi ja koodaus! stereokoodaus 1 Johdanto " Tiedonsiirron kaistanleveys kasvaa jatkuvasti, mutta kaistan tarve kasvaa vielä enemmän # tarve kompressiotekniikoille Audiokoodaus 2 " Audiokoodauksen sovelluksia digitaaliset radiolähetykset audioraidat digitaalisen videon yhteydessä (mm. digi-tv ja DVD) musiikin tallennus ja kovalevyäänitys, kannettavat soittimet audion siirto Internetissä (myös langattomasti) Johdanto 1.1 Vaatimuksia audiokoodekille " Kompression tehokkuus: äänenlaatu vs. bittinopeus " Absoluuttinen saavutettavissa oleva laatu Audiokoodaus 3 yleensä vaatimuksena on: säätämällä bittinopeuden riittäväksi dekoodatussa signaalissa ei enää kuule eroa originaaliin signaaliin CD:llä " Kompleksisuus laskennallinen kompleksisuus: päätekijä kotitietokoneilla, ja varsinkin mobiililaitteissa muistivaatimukset: päätekijä dedikoiduille piireille suunnitellessa enkooderin vs. dekooderin kompleksisuus enkooderi on yleensä huomattavasti kompleksisempi enkoodaus voidaan joissain sovelluksissa tehdä off-line, eli ei reaaliajassa Johdanto Vaatimuksia audiokoodekille Audiokoodaus 4 " Algoritminen viive riippuen sovelluksesta, viive joko on tai ei ole tärkeä kriteeri erittäin tärkeä kaksisuuntaisessa kommunikaatiossa (~20 ms vielä ok) ei lainkaan tärkeä puhtaasti tallennussovelluksessa, koodekin ei tällöin tarvitse olla edes kausaalinen (järjestyksessä ajan yli toimiva) jonkin verran tärkeä digitaalisessa radio/tv-lähetyksessä (~ 100 ms) " Muokattavuus tietty kohta alkuperäisestä audiosignaalista voidaan poimia esiin koodatusta bittivirrasta vaatii että dekoodaus voi alkaa mistä tahansa kohdasta bittivirtaa " Virhesietoisuus herkkyys yksittäisille tai purskevirheille siirtokanavassa virhesietoisuus voidaan saavuttaa virheenkorjauskoodeilla, mutta se vaatii redundanssin (ja siten bittinopeuden) lisäämistä

Johdanto 1.2 Lähdekoodaus vs. kuulon malleihin perustuva koodaus Audiokoodaus 5 " Yleensä signaalit täytyy siirtää tietyn laatuisina, mutta ei täysin identtisinä originaaliin signaaliin verrattuna " Kompressiota voidan saavuttaa poistamalla redundantti informaatio, joka voidaan rekonstruoida vastaanottimessa irrelevantti informaatio, jolla ei ole merkitystä vastaanottajalle " Lähdekoodaus: painopiste redundantin informaation poistossa puheenkoodaus: malli ihmisen ääniväylästä määrittelee mahdolliset signaalit, jolloin vain ääniväylän parametrit tarvitsee siirtää toimii varsin heikosti geneerisessä audiokoodauksessa mitkä tahansa signaalit ovat mahdollisia, ja niitä voidaan jopa kutsua musiikiksi " Kuulon malleihin perustuva koodaus: painopiste kuulon kannalta irrelevantin informaation poistossa minimoidaan koodauksessa syntyvien vääristymien kuultavuus Johdanto Lähdekoodaus vs. kuulon malleihin perustuva koodaus " Puhe- ja audiosignaalit ovat koko lailla erilaisia koodauksen yhteydessä sanaa audiosignaali käytetään yleensä viittaamaan signaaleihin, jotka eivät ole puhetta, vaikka puhesignaalitkin tietysti ovat audiota (äänisignaaleja) " Tyypillisesti audiosignaalien näytteistystaajuus on korkeampi dynaaminen alue on laajempi tehospektri vaihtelee enemmän korkea laatu on kuulijalle keskeisempi kuin puhesignaalien stereo- ja monikavanaäänentoisto tulee kyseeseen Audiokoodaus 6 " Tarvittava bittinopeus puhesignaaleille saavutetaan hyvä koodauslaatu huomattavasti matalammilla bittinopeuksilla kuin audiosignaaleille 1.3 Koodauslaadun mittaaminen Audiokoodaus 7 Koodauslaadun mittaaminen Audiokoodaus 8 " Signaalien häviöllinen koodaus aiheuttaa väistämättä jonkin verran vääristymiä alkuperäiseen signaaliin " Vääristymän määrää voidaan mitata subjektiivisilla kuuntelutesteillä, käyttäen esimerkiksi mean opinion score (MOS) mittaa aistimukselliseen samanlaisuuden mittana tärkein ja luotettavin tapa arvioida koodauslaatua yksinkertaisilla objektiivisilla kriteereillä, kuten signaali-kohina suhde mittana alkuperäisen ja rekonstruoidun signaalin välillä komplekseilla kriteereillä, kuten objektiivisilla aistimuksellisen samankailtaisuden mittareilla, jotka huomioivat ihmisen kuuloaistin tunnetut ominaisuudet (esim. peittoilmiön) " Mean opinion score (MOS) mitta koehenkilöt arvostelevat koodatun äänen N-askeleisella skaalalla kaksi adjektiivein määriteltyä viisiaskelista skaalaa on käytössä (signaalin laatua / kahden signaalin erilaisuutta kuvailevat) testin lopullinen tulos (MOS) on keskiarvo koehenkilöiden arvioista " MOS on laajalti käytetty. Sillä on kuitenkin myös haittoja tulos vaihtelee ajan ja koehenkilöiden mukaan täysin samaa testitulosta on vaikea toistaa tulos riippuu vahvasti valituista testisignaaleista tyypillinen audiomateriaali vs. kriittiset testisignaalit " ISO / MPEG testit kolme signaalia A, B, C A on alkuperäinen (=referenssi), B ja C ovat referenssi ja testattava järjestelmä koehenkilöt eivät tiedä B- ja C-signaaleista kumpi on kumpi koehenkilöiden täytyy päättää onko B vai C referenssi, pisteyttää referenssi ja toinen signaali. Pisteiden erotus lasketaan. " Muitakin yllä mainitun tyyppisiä testejä on esim. ABX-testi: A on referenssi, B on testisignaali, X on A tai B A:n ja B:n välillä on eroa, mikäli koehenkilö pystyy tunnistaa X:n

2 Faktoja psykoakustiikasta (kertausta) Audiokoodaus 9 " Pääkysymys kuulomalleihin perustuvassa koodauksessa: kuinka paljon kohinaa signaalin voidaan lisätä ilman että se on kuultavissa? " Vastaus löytyy psykoakustiikasta psykoakustiikka tutkii suhteita akustisten tapahtumien ja niiden tuottamien kuuloaistimusten välillä " Tärkein avainsana koodauksessa on peittoilmiö = maskaus (engl. masking) peittoilmiö kuvaa tilannetta jossa hiljaisempi mutta selvästi kuultava signaali muuttuu kuulumattomaksi äänekkäämmän signaalin vaikutuksesta peittovaikutus riippuu sekä äänten spektrirakenteesta että niiden vaihtelusta ajan funktiona Faktoja psykoakustiikasta 2.1 Peitto taajuustasossa Audiokoodaus 10 " Malli ihmisen kuulojärjestelmän taajuusanalyysistä taajuustaso voidaan jakaa kriittisiin kaistoihin peittovaikutus on voimakas, mikäli taajuuskomponentit ovat lähempänä kuin kriittisen kaistan etäisyydellä toisistaan Bark asteikko: taajuusasteikko joka saadaan täyttämällä kuuloalue vierekkäisillä kriittisillä kaistoilla, ja numeroimalla ne 1:stä 26:een " Kapeakaistainen kohinasignaali kykenee peittämään siniääneksen tehokkaammin (pienemmällä äänipainetasolla) kuin siniäänes kohinan " Peittokynnys tarkoittaa peittoäänen aiheuttamaa noussutta kuulokynnystasoa ääniä, joiden taso jää peittokynnyksen alapuolelle ei kuulla peittokynnys hiljaisuudessa = kuulokynnys Faktoja psykoakustiikasta Peitto taajuustasossa Audiokoodaus 11 " Kuva: peittokynnyksiä [Herre95] peittoääni: kapeakaistaista kohinaa 250 Hz, 1 khz, 4 khz leviämisfunktio: peittovaikutus ulottuu peittoäänen lähiympäristöön leviää enemmän kohti korkeita taajuuksia " Peiton additiivisuus (kompleksit signaalit) yhteinen peittovaikutus on yleensä enemmän kuin osien summa Faktoja psykoakustiikasta 2.2 Peitto aikatasossa Audiokoodaus 12 " Eteenpäin peitto (= jälkipeitto, post-masking) signaalin peittovaikutus ulottuu ajanhetkiin sen loppumisen jälkeen " Taaksepäin peitto (= esipeitto, pre-masking) signaalin peittovaikutus ulottuu ajanhetkiin ennen sen alkamista " Kaaviokuva esipeitosta (pre-) ja jälkipeitosta (post-) [Sporer98] # aikapeitto ei ulotu kovin kauas # samanaikaisten äänten taajuuspeitto on merkittävämpi ilmiö

Kuuloon perustuvan koodauksen kokonaiskuva 2.3 Aistimuksellinen entropia Audiokoodaus 13 " Aistimuksellinen (engl. perceptual) entropia käytetään määrittelemään pienin datanopeus, joka tarvitaan enkoodaamaan audiosignaali ilman aistittavaa eroa kuvaa signaalin kuuloaistille välittämää informaatiomäärää vrt. entropia = pienin datanopeus jolla signaali voidaan koodata häviöttömästi " Voidaan laskea (karkeasti yksinkertaistaen) f = fu! # signal( f ) $ " 1 PE = max % 0, log 2 ' (& [Bittiä/näyte] f f threshold( f ) N = l % + ) *&, missä N on taajuuskomponenttien määrä välillä f l f u (20Hz 20kHz), signal(f) on taajuuskomponentin amplitudi, ja threshold(f) on estimoitu peittokynnys taajuudella f # Määritelmä tukeutuu signaaliriippuvan kuulokynnyksen (peittokynnys) laskettavuuteen Faktoja psykoakustiikasta 2.4 Kuuntelijoiden väliset erot Audiokoodaus 14 " Taustaoletus kuulomallien käytössä koodauksessa on, että ihmisten kuulokyvyissä ei ole suuria eroja " Oletus on enemmän tai vähemmän totta absoluuttinen kuulokynnys: vaihtelee jopa tietylle henkilölle eri aikoina, koodekeiden täytyy olettaa erittäin hyvä kuulo peittokynnys taajuustasossa: vaihtelut ovat melko pieniä peitto aikatasossa: suuria eroja, kuuntelija voi harjaantua kuulemaan esikaikuja 2.5 Johtopäätös " Kuulon tutkimus ei ole millään tavalla loppuun kaluttu aihe yksinkertaisia malleja voidaan rakentaa helposti, ja niillä saavutetaan jo kohtuullisen hyviä koodaustuloksia kehittyneempiä koodekkeja (kuulomalleja) suunnitellessa nykyisen psykoakustisen tietämyksen rajat tulevat hyvin nopeasti vastaan 3 Kuulon malleihin perustuvan koodauksen kokonaiskuva Audiokoodaus 15 " Perusajatuksena on peittää kvantisointikohina signaalista riippuvan kuulokynnyksen (peittokynnys) alle " Peittovaikutuksen mallintaminen tärkeimmät peittovaikutukset voidaan kuvailla taajuustasossa toisaalta peittovaikutuksen stationäärisyys ulottuu ajallisesti vain noin 15 ms etäisyydelle (ks. aikapeitto) " Seuraus: kuulon malleihin perustuva audiokoodaus on parhaiten tehtävissä aika-taajuustasossa # yhteinen koodekeiden perusrakenne Kuuloon perustuvan koodauksen kokonaiskuva 3.1 Peruslohkokaavio " Kuva: Lohkokaavio kuulon malleihin perustuvasta koodausjärjestelmästä yllä: enkooderi alla: dekooderi Audiokoodaus 16

Kuuloon perustuvan koodauksen kokonaiskuva Peruslohkokaavio Audiokoodaus 17 " Suodinpankki käytetään hajottamaan sisääntuleva signaali alikaistoihin / spektrikomponentteihin aika-taajuustasossa " Kuulomalli yleensä tarkastelee sisääntulevaa signaalia, ei suodinpankin ulostuloja parempi resoluutio sekä aika- että taajuustasossa laskee signaaliriippuvan peittokynnyksen käyttäen psykoakustisia sääntöjä " Kvantisointi ja koodaus spektrikomponentit kvantisoidaan ja koodataan tavoitteena on pitää kvantisointikohina peittokynnyksen alapuolella " Kehysten pakkaus bittivirran formatoija kokoaa bittivirran, joka tyypillisesti koostuu koodatusta äänidatasta ja oheisinformaatiosta Kuuloon perustuvan koodauksen kokonaiskuva 3.2 Lisätyökaluja Audiokoodaus 18 " Neljän välttämättömän osan lisäksi käytetään lukuisia muita tekniikoita parantamaan koodauksen tehokkuutta " Adaptiivinen ennustus eteen- tai taaksepäin # parempi redundanssin poisto erityisesti stationäärisille signaaleille " Ajallinen kohinan muokkaus suodatetaan osia spektristä siten että voidaan kontrolloida kvantisointikohinan ajallista muotoa " Stereokoodaus M/S stereokoodaus: vaihdellaan vasen/oikea ja summa/erotus esitysmuotojen välillä intensiteetti stereokoodaus: korkeilla taajuuksilla vaiheinformaatio voidaan hylätä. Lähetetään vain yksi tarkka energiaspektri ja sen ohessa skaalaustekijät kummallekin kanavalle. Käy myös n:lle kanavalle. stereoennustus: yhden kanavan näytteistä ennustetaan muille kanaville " Spektrin tasoitus käytetään parantamaan kvantisoinnin ja koodauksen tehokkuutta LPC-analyysillä normalisoidaan spektrin verhokäyrä 4 " Seuraavassa käydään yksityiskohtaisemmin läpi audiokoodekin eri osia nykyisissä järjestelmissä käytössä olevia suodinpankkeja # määrää koodekin perusrakenteen kuulon malleja # koodausjärjestelmän algoritminen ydin kvantisointi- ja koodaustyökaluja # toteuttaa itse datan vähentämisen enkooderissa " Lisätyökaluista käsitellään lyhyesti stereokoodausta ajallista ennustamista Audiokoodaus 19 4.1 Suodinpankit Audiokoodaus 20 " Suodinpankki määrää koodekin perusrakenteen " Kuvan esimerkki: staattisen n-kanavaisen analyysi/ synteesi suodinpankin lohkokaavio [Herre95] kanavien näytteistystaajuutta lasketaan tässä kertoimella k # kaistanleveydet samoja # tasavälisen taajuuserottelun pankki jos k = n, puhutaan kriittisen näytteistyksen suodinpankista

Suodinpankit: parametreja Audiokoodaus 21 " Taajuusresoluutio: kaksi päätyyppiä matalan resoluution suodinpankit (esim. 32 alikaistaa), joita usein kutsutaan alikaistakoodekeiksi tällöin yleensä kvantisoidaan ajallisesti peräkkäisissä lohkoissa korkean resoluution suodinpankit (esim. 512 alikaistaa), joita usein kutsutaan muunnoskoodekeiksi tällöin yleensä kvantisoidaan yhdistämällä vierekkäisiä taajuusviivoja matemaattisesti kaikki audiokoodekeissa käytettävät muunnokset voidaan nähdä suodinpankkeina periaatteellinen erottelu alikaistakoodekkien ja muunnoskoodekkien välillä ei ole järkevää " Täydellisesti rekonstruoivat suodinpankit mahdollistavat alkuperäisen signaalin häviöttömän rekonstruoinnin analyysi/synteesi järjestelmässä, mikäli kvantisointia ei käytetä yksinkertaistaa koodausjärjestelmän muiden osien suunnittelua yleensä käytetään joko täydellisesti tai melkein täydellisesti rekonstruoivia suodinpankkeja Suodinpankit: parametreja Audiokoodaus 22 " Prototyyppi-ikkuna (aikatason kehyksen ikkunointi) erityisesti matalilla bittinopeuksilla analyysi / synteesi prototyyppiikkunan ominaisuudet ovat ratkaiseva suorituskykytekijä " Tasavälinen vai epätasavälinen taajuuserottelu epätasavälinen taajuusresoluutio on lähempänä ihmiskuulon ominaisuuksia (kriittiset kaistat jakautuvat log. taajuusasteikolle) käytännössä tasavälisen taajuuserottelun suodinpankit ovat olleet menestyksekkäämpiä (helpottaa teknistä toteutusta) " Staattinen vai adaptiivinen suodinpankki kvantisointivirhe leviää ajallisesti synteesi-ikkunan koko pituudelle esikaiku-efekti voidaan välttää mikäli suodinpankki ei ole staattinen vaan vaihtelee eri aika-/taajuusresoluutioiden välillä esimerkki: adaptiivinen ikkunan vaihtelu, jossa kytketään lyhempään analyysi-ikkunaan transienttimaisissa muutoskohdissa Audiokoodaus 23 Käytössä olevia suodinpankeja " Quadrature mirror filter (QMF) ja Conjugate Quadrature Filter (CQF) suodinpankit Varhaiset 2-kaistan rakenteet: laskostumisen kumoaminen, sekä täydellinen rekonstruktio CQF:ssä, mutta ei QMF:ssä. Yleensä puumainen rakenne Puurakenteella saavutetaan matala laskennallinen kompleksisuus suhteessa muihin kaistanjakomuotoihin. Voidaan suunnitella tasaväliset (ylempi- ja alempikaista jaotellaan kukin aina puoliksi) tai epätasaväliset kaistanjaot (esim. vain alempi kaista jaotellaan kahtia, jolloin kaistat muistuttavat kriittisiä kaistoja) heikkouksia: pitkä algoritminen viive (jopa 250 ms, johtuu peräkkäisistä vaiheista) " Monivaihe (engl. polyphase) suodinpankki [Rothweiler 83] (Alipäästö)prototyyppisuodin, jota moduloidaan kosinifunktiolla # saadaan jokaiselle kaistalle kaistanpäästösuodin. Vain tasavälinen kaistajaottelu, ei laskostumista, matala kompleksisuus Laskennallisesti 35% kevyempi kuin vastaava tasavälinen QMF Ei täydellistä rekonstruktiota Käytössä olevia suodinpankkeja Audiokoodaus 24 " Kosini-moduloitu pseudo-qmf (PQMF) suodatinpankki yksi FIR (alipäästö)prototyyppisuodin h(n) jota moduloidaan kosinifunktiolla. Näin saadaan kaistanpäästösuotimet h k (n) halutulle taajuuskaistalle k. Prosessi: ikkunointi + kosini-kantafunktio laskennallisesti kevyt, ulostulossa lineaarinen vaihe vain tasavälinen taajuuserottelu, ei täydellistä rekonstruktiota. " MDCT (modified discrete cosine transform) MDCT on tärkeä PQMF suodatinratkaisu, jossa prototyyppisuodin ja muut osat on suunniteltu niin, että täydellinen rekonstruktio on mahdollista. yhtä aikaa kriittinen näytteistys ja 50% päällekkäin olevat kehykset # yksittäisen kehyksen muunnoksessa on puolet kehyksen näytteistä aikatason laskostuminen kumotaan synteesipankissa (tarvitsee vierekkäisiä kehyksiä) täydellinen rekonstruktio yksi prototyyppisuodatin

Käytössä olevia suodinpankeja Audiokoodaus 25 " Kuva: MPEG-1 Audion prototyyppisuodatin [Sporer98] Monivaihe suodinpankki, 32 tasavälistä kaistaa. Prototyyppisuodin 512 näytettä (vasemmalla) ja taajuusvaste (oikealla) Järkevä kompromissi aikakäyttäytymisen ja taajuuserottelun välillä. Käytössä olevia suodinpankeja Audiokoodaus 26 " Wavelet-pohjaiset suodinpankit (joitakin kokeiluja tehty) " Fourier-muunnokseen perustuvat suodinpankit diskreetti Fourier- (DFT) tai kosinimuunnos (DCT) varhaiset audiokoodekit käyttivät DFT:tä tai DCT:tä, lainaten ne suoraan kuvankoodauksesta häiriöitä kehysten välisillä rajoilla vähennetään ikkunoinnilla ja overlap/add tekniikalla Käytössä olevia suodinpankeja Audiokoodaus 27 " Hybridi-suodinpankit kostuu kaskadissa olevista erityyppisistä suodinpankeista suunnittelun joustavuus lisääntyy, mutta niin myös kompleksisuus esimerkki: sisääntuleva signaali jaetaan ensin neljään kaistaan QMF-pankilla jokainen kaista jaetaan edelleen 64/128 taajuuskaistaan MDCT:llä aikaresoluutio on 21 ms matalille ja 2.7 ms korkeimmille taajuuksille Kuva: MPEG-1 Layer 3 [Herre95] 32-kaistainen polyphasesuodinpankki (yhteensopiva Layerien 1 ja 2 kanssa) jaetaan edelleen 18:aan tai 6:een taajuusviivaan MDCT:n avulla (ikkunan vaihtelu, engl. window switching, ks. seuraava sivu) Käytössä olevia suodinpankkeja Audiokoodaus 28 " Esikaiku (engl. pre-echo): Jos koodekin tuottamat häiriöt leviävät ajallisesti siten että ne edeltävät itse signaalin tason muutosta, syntyvää kuultavaa artefaktaa sanotaan esikaiuksi yleinen ongelma, sillä koodekeissa käytettävät suodinpankit aiheuttavat ajallista leviämistä " Kuva: esimerkki esikaiusta alempi käyrä (kohinasignaali) paljastaa analyysi-ikkunan muodon " Adaptiivinen ikkunanvaihto välttää ongelman.

Käytössä olevia suodinpankkeja " Adaptiiviset suodinpankit Peruskonfiguraatiossa aika-taajuuserottelu pysyy vakiona. Adaptiivista ikkunan vaihtoa käytetään esimerkiksi MPEG-1 Layer 3:ssa (.mp3) Audiokoodaus 29 Kuva: esimerkkisekvenssi eri ikkunatyypeillä (a) pitkä ikkuna: normaali ikkunatyyppi stationäärisille signaalikohdille - 18 alikaistalla jokaisessa 32:sta alikaistasta 41,67Hz taajuusjaottelu (b) alkuikkuna: varmistaa aikatason laskostumisen kumoamisen sille osalle joka menee päällekkäin lyhyen ikkunan kanssa (c) lyhyt ikkuna: saman mallinen kuin (a), mutta 1/3 pituudeltaan # aikaresoluutio paranee 4 ms:iin (192 vs. 576 taajuusviivaa) (d) loppuikkuna, sama tehtävä kuin alkuikkunalla a b c d 4.2 Kuulon mallit Audiokoodaus 30 " Kuulomalli muodostaa koodausjärjestelmän algoritmisen ytimen " Useimmat koodausstandardit määrittelevät vain siirtoformaatin mahdollistaa muutokset ja parannukset kuulomalliin vielä sen jälkeen kun standardi on fiksattu esim. mp3 -formaatti standardoitiin1992; tuli suosituksi paljon myöhemmin ja on yhä laajasti käytössä " Kuulomallin päätehtävä enkooderissa on tuottaa arvioita kulloinkin hyväksyttävästä kvantisointikohinan määrästä " Lisätehtäviä ovat 1. kontrolloida adaptiivista ikkunan vaihtoa, mikäli sellainen on käytössä 2. kontrolloida bittisäilö-puskuria, mikäli sellainen on käytössä 3. kontrolloida stereokoodauksen menetelmien käyttöä Kuulon mallit: peittokynnys Audiokoodaus 31 Esimerkki peittokynnyksestä Audiokoodaus 32 " Kuulon mallit yrittävät estimoida aikariippuvaa signaalimaskisuhdetta (SMR) kullekin kaistalle tietämys peittoilmiön additiivisuudesta ja aikakäyttäytymisestä on varsin rajallinen # ei ole olemassa oikeaa psykoakustista mallia " Peittokäyrien perusteella saadaan selville tarvittava signaali-kohina suhde eri kaistoille # bittiallokoinnin strategia: nbits(i) = SMR(i) / 6.02dB eli bittien lukumäärä kaistalle i saadaan signaali maski-suhteesta ko. kaistalle kertausta kvantisoinnista: kukin lisäbitti parantaa SNR:ää 6.02 db - Peittokynnys on tässä asetettu kuulokynnykseksi - Signaali-peittosuhde SMR lasketaan vähentämällä signaalin äänenpainetaso peittokynnyksestä. - Jotta kvantisointikohina ei kuuluisi kaistalla i, on vaadittava SMR(i)<SNR(i), missä SNR(i)=6.02dB/bit. - Selvästi tämä on yksinkertaistettu esimerkki perusperiaatteen esiintuomiseksi.

Audiokoodaus 33 Peittokynnys ja signaali-maski-suhde Peittokynnys kertoo äänen voimakkuuden, jolla jokin lisättävä ääni tulee kuultaviin peittävän äänen alta. Kategoriat: Kohina peittää ääneksen (NMT), äänes peittää kohinan (TMN), kohina peittää kohinan (NMN). Signaali-maski-suhde [db] (Signal-to-Mask ratio, SMR) on signaalin äänenpaineen ja peittokynnyksen erotus. Vas.kuva: 410 Hz äänes kuultavissa 4 db alle kohinan äänenpainetasosta kriittisen kaistan sisällä. [Painter 00] Oik.kuva: kohina kuultavissa 24 db alle ääneksen tasosta, kriittisen kaistan sisällä. [Painter 00] Asymmetria: kohina peittää paremmin ääneksen kuin toisinpäin. Peittokynnyksen leviäminen " Peittokynnys myös leviää kolmiomaisesti vierekkäisille kriittisille kaistoille. " Peitto vaimenee nopeammin kohti matalampia taajuuksia. " Jos peittokynnys lasketaan alikaistoittain, niin yhden alikaistan kaikki spektriviivat huomioidaan. Audiokoodaus 34 Kuulon mallit: tonaalisuusmitta Audiokoodaus 35 " Tonaalisuusmitan avulla voidaan estimoida, onko maskaava signaali kohinaa ja maskattava äänes (NMT) vai toisinpäin (TMN). " Kompleksisille signaaleille ajasta t ja taajuudesta ω riippuva tonaalisuusmitta v(t,w) johtaa parhaaseen arvioon peittokynnyksestä " Tonaalisuutta voidaan mitata esimerkiksi yksinkertaisella polynomisella ennustajalla: käytetään ennustukseen tietyn taajuuskomponentin magnitudia ja vaihetta kahdessa peräkkäisessä kehyksessä. Magnitudille esim.: r (t, ω) :magnitudi ajanhetkellä t ja taajuudella ω r pred (t, ω) = r (t 1, ω) + [r(t 1, ω) r(t 2, ω)] :ennustettu arvo etäisyys ennustetun ja todellisen arvon välillä kertoo ennustettavuudesta ( kaaosmitta ) kaaosmitta voidaan projisoida tonaalisuusmitaksi: mitä ennustettavampi, sitä tonaalisempi Audiokoodaus 36 Kuulon mallit: MPEG-1 kuulomalli 2 " Taajuustason esitysmuoto käytetään FFT:tä ja 1024:n näytteen mittaista Hanning-ikkunaa suodinpankin ulostulosta ei saada helposti magnitudeja ja vaiheita, joita tarvitaan tonaalisuuden estimointiin " Magnitudispektristä lasketaan energia e b kullakin 1/3 kriittisellä kaistalla. Tämän jälkeen spektriä konvoloidaan siten että piikkimäiset energiahuiput leviävät ihmiskuulon peittoilmiön leviämisen tapaan " Tonaalisuusmitan t b estimointi kullakin kaistalla b perustuu edellä mainittuun yksinkertaiseen polynomiseen ennustajaan " Tonaalisuuden vaikutus peittokynnykseen LT(b) kaistalla b LT b) = max[ MINVAL, t TMN + (1 t ) NMT ] ( b b b b b missä MINVAL b on kaistakohtainen vakio minimiarvo, ja TMN b ja NMT b ovat mittoja ääneksen kyvylle peittää kohinaa ja päinvastoin " Signaali-peittosuhde on signaalitason L s (b) ja peittokynnyksen erotus: SMR( b) = Ls ( b) LT ( b) [db] " Aikapeitto huomioidaan jos edellinen kehys oli selväsi äänekkäämpi

Audiokoodaus 37 Signaali-maskisuhde kriittisillä kaistoilla Kuva [Zölzer] : Ylemmässä kuvassa on magnitudispektri, signaalin taso Ls(b), sekä peittokynnys LT(b) (harmaa) Peittokynnyksen laskemisessa on huomioitu tonaalisuus, sekä peiton leviäminen viereisille taajuuksille Alemmassa kuvassa signaali-maskisuhde. Audiokoodaus 38 Dynaaminen bittiallokointi Dynaaminen bittiallokointi määrittää iteratiivisesti tarvittavan määrän bittejä alikaistoille jotta signaali eroaisi mahdollisimman vähän alkuperäisestä. (Kvantisointikohina pysyy alle peittokynnyksen) Peittokohinasuhde: Mask-to-Noise ratio (MNR) kaistalla b MNR(b) = SNR(b) SMR(b) Signaali-kohinasuhde SNR(b) saadaan taulukosta joka määrittää jokaisen bittimäärän vaikutuksen SNR:ään, SMR(b) psykoakustisesta mallista. Bittimäärää tulee kasvattaa, kunnes MNR(b) > 0. (Tasavällisessä kvantisoinnissa SNR = 6.02 db * nbits) Algoritmi bittiallokointiin 0. 1. 2. 3. 4. Audiokoodaus 39 4.3 Kvantisointi ja koodaus Kvantisointi ja koodaus toteuttavat itse datan vähentämisen enkooderissa Suunnitteluvaihtoehtoja kvantisointi: useimmat järjestelmät käyttävät tasavälistä kvantisointia. MPEG-1 ja MPEG-2 käyttävät epätasavälistä eksponentiaalista kvantisointia koodaus: kvantisoidut spektrikomponentit lähetetään joko sellaisenaan, tai entropiakoodattuina sanoina kvantisoinnin ja koodauksen kontrollirakenteet (tyypilliset kaksi): 1. bittiallokointi (suora rakenne): bittiallokointialgoritmia ohjaa joko datan tilastolliset ominaisuudet tai kuulomalli. Bittiallokointi tehdään ennen kvantisointia 2. kohinan allokointi (epäsuora rakenne): data kvantisoidaan mahdollisesti kuulomallin mukaan. Kullekin komponentille käytetty bittimäärä voidaan laskea vasta kun kvantisointiprosessi on tehty Asetetaan kaikkien kaistojen bittimäärä nollaksi. Etsitään kaistat, joilla MNR(b) on minimi Nostetaan näiden kaistojen bittimäärää nbits(b)=nbits(b)+1 Päivitetään MNR(b) Lasketaan käytetty bittimäärä Bm. Mikäli Bm < käytössä olevat bitit, hypätään kohtaan 1. Muuten poistutaan. Audiokoodaus 40 Kvantisointi ja koodaus: työkaluja Block companding (= block floating point ) useita arvoja (peräkkäisiä näytteitä tai vierekkäisiä taajuusviivoja) normalisoidaan maksimiarvoon maksimiarvo on blokille yhteinen skaalaustekijä ( eksponentti ) kaikki arvot blokin sisällä kvantisoidaan sitten siten että kvantisointiaskeleen määrää blokille allokoitujen bittien määrä oletus: vierekkäisten arvojen skaala sama Epätasavälinen skalaarikvantisointi kvantisointiaskel säädetään signaalin jakauman mukaan: enemmän kvantisointitasoja alueella missä tiheämpi jakauma isommat arvot kvantisoidaan epätarkemmin kuin pienet arvot esimerkiksi MPEG-1 Layer 3:ssa ja MPEG-2 AAC:ssa näin: &- r (i ) * 0.75 # rquant (i ) = round $+ ( 0.0946! %$, quant ) "! missä r(i) on spektriviiva kaistalla i, rquant(i) on kvantisoitu arvo, quant on kvantisointiaskel, ja round pyöristää lähimpään kokonaislukuun

Kvantisointi ja koodaus: työkaluja Audiokoodaus 41 Kvantisointi ja koodaus: työkaluja Audiokoodaus 42 " Vektorikvantisointi ei kvantisoida yksittäisiä näytteitä, vaan n:n näytteen ryhmiä # rajataan alueita n-ulotteisesta avaruudesta, ei lukusuoralta käytössä useimmissa puhe- ja videokoodausjärjestelmissä esim. TWIN-VQ (oli ehdolla yhdeksi MPEG-4 audiokoodekiksi) " Kohinan allokointi ei eksplisiittistä bittiallokointia taajuuskaistojen skaalaustekijöitä käytetään värittämään kvantisointikohinaa. Iteratiivinen algoritmi kohinan allokointiin: 1. kvantisoidaan data 2. lasketaan realisoitunut kvantisointikohina vähentämällä rekonstruoitu signaali originaalista ei-kvantisoidusta signaalista 3. vahvistetaan signaalin tasoa niillä taajuuskaistoilla, joilla kvantisointikohina ylittää peittokynnyksen. Tämä vastaa kvantisointiaskeleen pienentämistä ko. kaistoille 4. tarkistetaan iteraation päättymisehto (vahvistus ei ollut tarpeen, tai muu syy), muussa tapauksessa palataan kohtaan (1) käyttäen muutettuja signaaliarvoja " Lyhytaikainen bufferointi mahdollistaa paikallisesti vaihtelevan bittinopeuden tavoite: tasoittaa pois paikalliset vaihtelut bittien tarpeessa bittisäilö (engl. bit reservoir): bufferointitekniikka, joka täyttää tämän tarpeen bittimäärä per kehys ei ole enää vakio, vaan vaihtelee, kuitenkin siten että pidemmän aikavälin keskiarvo pysyy vakiona toteutuneen bittinopeuden kumuloitunut poikkeama tavoitteesta (keskiarvosta) rajoitetaan tiettyyn maksimiarvoon. Poikkeama on aina negatiivinen, eli todellinen bittinopeus ei saa ylittää siirtokanavan kapasiteettia lisäbittejä tarvittaessa ne otetaan bittisäilöstä, ja seuraavat kehykset koodataan sitten hieman pienemmällä bittimäärällä, jotta bittisäilöön saadaan taas säästettyä bittejä aiheuttaa ylimääräisen viiveen dekooderissa Kvantisointi ja koodaus: työkaluja Audiokoodaus 43 4.4 Stereokoodaus Audiokoodaus 44 " Kuva (sekavahko): esimerkki bittisäilö-tekniikasta (layer 3) huomaa että lisäbittejä sijoitetaan aikaisempiin kehyksiin, joihin tilaa on saatu säästettyä, ei tuleviin kehyksiin. Näin toteutunut bittinopeus ei missään vaiheessa ylitä siirtokanavan kapasiteettia " Tavoitteena on jälleen vähentää informaatiomäärää aiheuttamatta kuultavia häviöitä " Mahdollistuu poistamalla stereosignaalien redundanssia ja tiettyjen stereo-ominaisuuksien irrelevanttisuutta " Redundantti informaatio vastoin yleistä luuloa, vasemman ja oikean kanavan aikasignaalit eivät yleensä korreloi paljon vain kanavien tehospektrit ovat yleensä vahvasti korreloivia " Irrelevantti informaatio ihmiskuulon kyky lokalisoida äänilähteiden avaruudellista sijaintia heikkenee korkeilla taajuuksilla korkeilla taajuuksilla avaruudellinen hahmottaminen perustuu pääasiassa intensiteettieroihin kullakin taajuudella

Stereokoodauksen sudenkuoppia Audiokoodaus 45 M/S stereokoodaus Audiokoodaus 46 " Joissakin tapauksissa stereokoodauksen vaatima bittinopeus on suurempi kuin kahden monokanavan koodauksessa tietyt koodausvirheet, jotka peittyvät yksittäisellä kanavalla, tulevat kuuluviksi kun soitetaan kaksi monokanavaa # ns. binauraalinen (kaksikorvainen) ero peittokynnyksessä havaitaan erityisesti matalilla taajuuksilla " Presedenssiefekti tietyissä tilanteissa äänilähteet lokalisoidaan pelkästään ensin saapuneen aaltorintaman tulosuunnan perusteella # koodaustekniikat voivat johtaa vääristyneeseen stereokuvaan " Normalisoidut vasemman ja oikean kanavan summa- ja erotussignaalit siirretään itse kanavien sijasta M: middle (summa) ja S:side information (erotus) " Painopiste redundantin informaation poistossa " Täydellinen rekonstruktio onnistuu dekooderissa muunnos L+R # M+S kääntyy toisinpäin. " Saavutettu bittisäästö riippuu rankasti itse signaalista vaihtelee 50 %:sta (vasen kanava on oikean kopio) 0 %:iin Intensiteetti stereokoodaus Audiokoodaus 47 4.5 Ennustus Audiokoodaus 48 " Jokaisella alikaistalla säilytetään vain yksi intensiteettispektri tilainformaatio siirretään koodaamalla omat skaalaustekijät vasemmalle ja oikealle kanavalle " Toimii hyvin korkeilla taajuuksilla, ei käytetä matalilla taajuuksilla tärkeimmät spatiaaliset johtolangat siirtyvät, yksityiskohtia saattaa puuttua pidetään vähemmän häiritsevänä kuin muita koodausvirheitä " Painopiste irrelevantin informaation poistossa 50 % datan vähennys korkeilla taajuuksilla, noin 20 % koko signaalille " Ei täydellistä rekonstruktiota " Kuva: intensiteetti stereokoodauksen perusperiaate [Herre95] " Parantaa redundanssin poistoa lähes stationäärisille* signaaleille " MPEG-2 AAC (Advanced Audio Coding) kaksitappinen taaksepäin adaptiivinen ennustaja suurempi määrä ennustustermejä lisäisi liikaa siirrettävää sivuinformaatiota ennustusta kytketään päälle ja pois koodaushyödyn varmistamiseksi *signaali, jonka tilastolliset ominaisuudet eivät muutu ajassa