Upload
dutch
View
43
Download
5
Embed Size (px)
DESCRIPTION
Äänen koodaus tietoliikenteessä Puhekoodekit. Roman Kossarev Ohjaaja: Keijo Haataja Kuopion Yliopisto. Esitelmän Sisältö. Johdanto Akustiikkaa Psykoakustiikkaa Ääniaallon digitointi Puhekoodekit Yhteenveto. I.a Johdanto. Miksi äänenkoodaus? - PowerPoint PPT Presentation
Citation preview
Äänen koodaus tietoliikenteessä
Puhekoodekit
Roman Kossarev
Ohjaaja: Keijo Haataja
Kuopion Yliopisto
Esitelmän Sisältö
I. Johdanto
II. Akustiikkaa
III. Psykoakustiikkaa
IV. Ääniaallon digitointi
V. Puhekoodekit
VI. Yhteenveto
I.a Johdanto
• Miksi äänenkoodaus?– eräs siirrettävän tiedon muoto, jonka määrä
koko ajan kasvussa– digitaalississa lankapuhelin-, tieto-, mobiili- ja
muissa langattomissa verkoissa (Bluetooth)– digitaalisuus vaatii digitointia, ADC-muunnosta
(ja takaisin analogiseksi DAC-muunnoksella)– digitoitu ääni vaatii suuria bittimääriä– tehokas (rajoitetun) siirtokaistan käyttö
edellyttää pakkausta (koodekit)
I.b Johdanto
• Koodekki = codec – COding/DECoding– koodaus – signaali muunnetaan uuteen
muotoon– purku – signaali palautetaan alkuperäiseen
muotoon• Puhe on äänen eräs laji
– Puhe-elimistö tuottaa, kuulojärjestelmä vastaanottaa
– Akustiikaltaan eroaa esim. musiikista– On turha koodata mitä ei kuulla
II AkustiikkaaII.a Ääni
• Äänen kulku: Lähde – väliaine – vastaanottaja• Väliaineen värähtelyä / paineen vaihtelua
II.b Ääniaalto
• Äänes (puhdas ääni, yksi taajuus) • a amplitudi– äänen voimakkuus
– äänenpainetaso
– 0 dB kuulokynnys
– 30 dB katuhäly
– 85 dB vahinko
– 130 dB kipuraja (suihkukone)
– dB on logaritminen
• f taajuus = 1/T– 1 Hz = 1/s
– korva havaitsee 20-20000 Hz
II.c Seosäänet• koostuvat monesta eri taajuudesta
300 Hz 500 Hz
• kaikki ympäristöäänet ovat seosääniä
• Fourier-muunnoksella saadaan selville seosäänen taajuussisältö
III.a Psykoakustiikkaa• taajuustasoesitys
• aikatasoesitys
III.b Puheen taajuussisältö
• Taajuusalue– Luonnolliselta kuulostava puhe:
50-7000 Hz– riittävä alue on jo 200-3300 Hz
• Mitä taajuuksia?– aaltomuoto ja taajuussisältö
riippuvat äänteen (kirjaimen) tyypistä:
• soinnillinen vokaali ja konsonantti (m, n, d, r, l, j)
• soinniton konsonantti (s, h)• eksploosioäänne (p, t, k,)
• Resonanssialueet (formantit)– energiahuippuja ääniaallossa– jokaisellä äänteellä oma
ominaisformanttikuvio (parametrit ovat kuitenkin suhteellisia)
/ai/
III.c Peittoilmiö (maskaus)
• ilmiö, jossa voimakkaampi signaali, peittäjä (masker), peittää (saa kuulumattomaksi) toisen heikomman (peitettävän, eng. maskee) signaalin, joka on tapreeksi lähellä peittäjää taajuustasossa:
• Esim yhtäaikaispeitto taajuustasossa:– ylläoleva peittäjä peittää esim. 20 dB/700 Hz –testisignaalin (punaisella).
III.d Peittoilmiö• Miksi peittoilmiö tapahtuu?
– Kahden siniääneksen taajuuksien lähestyessä toisiaan niiden resonanssikohdat korvan simpukassa menevät päällekkäin
– molemmat osuvat samojen aistinsolujen viritysalueelle– Kun äänekset tulevat saman kriittisen kaistan sisälle, korvalla on suuria
vaikeuksia erottaa molempia ääniä, heikompi peittyy• Pienillä taajuksilla (50-700 hZ) kaistan leveys 100 Hz• 700 Hz:stä ylöspäin kasvaa tasaisesti ja saavuttaa 2000 Hz 10 kHz kohdalla• Taajuuksien pitää olla siis yli kriittisen kaistan päässä toisistaan,
jotta äänekset kuultaisiin erillisinä• Yhtäaikaispeiton (simultaneous masking) lisäksi esiintyy esi- ja jälkipeittoa:
• Näytteistys (sampling)– otetaan näytteitä N kertaa sekunnissa– Näytteenottotaajus on siten Fs = 1/N– Nyquistin teoreeman mukaan
näytteenottotaajuudella Fs voidaan näytteistää korkeintaan Fs/2 taajuutta olevia ääneksiä
– Jos taajuudeltaan Fs/2 korkeammat äänekset pääsevät näytteistykseen, tapahtuu alinäytteistymistä eli laskostumista
IV.a Ääniaallon digitointi (ADC)
• esim. Fs = 100 kHz• yli 50 kHz
taajuudet summautuvat alemmille taajuuksille laskostuneen X-akselin mukaisesti
• yleisiä näytetaajuuksia: – 48000 Hz (äänistudio)– 44100 Hz (CD)– 8000 Hz (puhelin)
IV.b Ääniaallon digitointi (ADC)• Näytteistyksen jälkeen saadaan
diskreettiaikainen mutta jatkuva-arvoinen jännitesarja
• Kvanttisointi: – analogisignaalin näytteisiin
liitetään lukuja, jotka vastaavat erillisiä signaalitasoja (amplitudiarvoja)
– tuo kvanttisointivirheen, ks. b)– mitä enemmän tasoja, sitä
pienempi virhe– mutta tasot täytyy numeroida ja
näin käyttää enemmän bittejä– jokainen bitti parantaa
signaalikohina-suhdetta 6 dB:llä lineaarikvanttisoinnissa
– esim. 16 bit – SNR:16 * 6 = 96 dB (aika hyvä)
• Kvanttisointitasojen suhde jatkuvaan amplitudiarvoon:– lineaarinen– epälineaarinen– differentiaalinen
V.a Puhekoodekit
• 3 päätyyppiä:1. aaltomuotokoodekit
• joukon vanhimmat, yksinkertaisimmat ja bittinälkäisimmät
2. vokooderit• synteettistä puhetta alhaisilla bittivirroilla
3. hybriidikoodekit • vokooderi +
luonnollisen puheen approksimointi
• äänenlaatua suht. alhaisilla bittivirroilla
• monimutkaisia
V.b Aaltomuotokoodekit - PCM
• ei käytetä hyväksi tietoa äänen tuottotavasta
• sopivat muunkin kuin puheen koodamiseen
• yksinkertaisin on PCM pulssikoodimodulaatio:– keksitty jo v.1937
– näytteistys 8 kHz
– lineearinen, tasavälinen12 bitin kvanttisointi
– syntyvä bittivirta:
– 12 * 8000= 96000 bps
• Q-virhe max = ½ Q-väli
• PCM olettaa, että voimakkaiden signaalien todennäköisyys on sama kun heikkojen
• todellisuudessa jakauma ei ole tasainen: käytetään erisuuruisia välejä!
V.c Aaltomuotokoodekit – A-law PCM
Ax
A
xAxy
10,
)ln(1)(
• käytetään Euroopassa
lankapuhelinverkoissa (ETSI)
• 8000 Hz * 8 bittiä/näyte = 64 kbps
• epätasavälinen kvanttisointi
• logaritminen siirtofunktio:
• A = 87,61
1,
)ln(1
ln1)(
xAA
Axxy
• eniten merkitsevä bitti – polarisuus
• bitit 7-5 – Q-välin numero
• bitit 4-1 – diskreettisignaalin arvo Q-välin sisällä
• seuraava askel – ennustus!
V.d Aaltomuotokoodekit – CVSD• ollaan hetkessä t
• äänenpaine muuttuu aina joko ylös- tai alaspäin hetkellä t+1
• voidaan ennustaa x(t+1) ja kvanttisoida ainoastaan ennustuksen ja x(t+1) saapuneen sigaalin eron,
• kvanttisointi on tällöin differentiaalista
• jos kvanttisointi on 1-bittistä, tapahtuu kulmakertoimen ylikuormitus:
• siksi säädetään kvanttisointiaskelta dynaamisesti (1-2):
• Continously Variable Slope Delta Modulation CVSD = Jatkuvasti Muuttuvan Kulmakertoimen Deltamodulaatio
• lankapuhelinverkon äänenlaaatua 12 – 32 kbps -bittivirroilla
V.e Aaltomuotokodekit SBC & ATC• Sub-Band Coding – SBC
• käyttää äänen taajuustasoa
• jaetaan puhe taajuuskaistoihin
• jokainen kaista koodataan erikseen
• taajuskaistojen leveydet seuraavat kriittisten kaistojen leveyksiä (100-2000 Hz)
• taajuuskäsittelyn takia suurempi koodausviive
• 16-32 kbps
• Adaptive Transform Coding - ATC
• tehdään FFT ja lasketaan jokaiselle siniäänekselle kerroin
• mikäli äänes sijoittuu äänten kannalta tärkeään alueeseen, koodataan se tarkemmin
• vähemmän tärkeät äänekset koodataan vähemmän bittejä käyttäen
• lankapuhelimen äänenlaatua @ 16 kbps
V.f Vokooderit LPC• puhetta voidaan myös koodata
synteesin avulla• linear predictive coding LPC• selvitetään värähtelyn jakso T =
1/f• valitaan järjestelmän heräte
soinnillisuuden mukaan V/UV– V: äänestä vastaava impulssisarja– UV: valkoinen kohinta
• selvitetään äänenvoimakkuus G• etsitään H(z)-puheväylän mallin
parametrit (lineaariyhtälöryhmä)• esim. Spiritin suljettu
LPC-pohjainen toteutus 1.2 kbps:
• http://www.spiritcorp.com/1200_bps_vocoder.html
V.g Hybriidikoodekit• Analysis-by-Synthesis
Abs koodekit• eroa vokooderiin siinä,
että on useampi kuin 2 herätetyyppiä
• puhe jaetaan 20 ms-pituisiin ikkuonoihin, ja jokaiselle ikkunalle määrätään suotimen paarametrit
• virhe syntetisoidun ja todellisen puhe-segmentin välillä minimoidaan
• näin löydetään paras puhe-herätteen approksimaatio, joka myös lähetetään
V.h Hybriidikoodekit• Code-Excited Linear Prediction CELP• toimii kuten AbS, paitsi herätteet valitaan koodikirjasta• löydetty heräte maustetaan LPC-suotimen parametreilla ja
lähetetään ohjausdatana• dekooderi vastaanottaa ohjausdatan ja syöttää sen
synteesisuodattimeen• synteesisuodatin ”matkii” puhetta käyttäen lineaarista
ennustusta• yksinkertainen ohjaussignaali siis tuottaa puhetta• lankapuhelinverkon äänenlaatua @ 4.8 -16 kbps• GSM-koodekki on myös hybriidikoodekki
lyhyt- ja pitkäjaksoisella ennustuksella• ennustuskertoimet lasketaan ja siirretään• 13 kbps
VI Yhteenveto