Sakaru Pasaule - Žurnāls par
modernām komunikācijām

  
  


Atpakaļ Jaunais numurs Arhīvs Par mums Meklēšana

Audiosignālu ciparu kodēšana un kompresija – VIII

   

Šai rakstā aplūkotas nākošā MPEG-4 multimediju standarta raksturīgākās iezīmes. Šis standarts no attēlu pārraides viedokļa jau aprakstīts SP 1999/1(13), 21. lpp., kā arī [1]. Tātad šoreiz: MPEG-4 AUDIO.

MPEG-3 nav, bet citi ir

MPEG standarta apzīmējumos pēc 2 seko 4, jo MPEG-3, kas sākotnēji bija iecerēts HDTV vajadzībām, tika pārtraukts, jo nospraustos mērķus ļoti labi varēja īstenot ar MPEG-2. MPEG ir viena no visplašāk izplatītajām un pasaulē vispārpieņemtajām video un audio standartu sērijām. Taču nav jāaizmirst, ka video, audio un datu pārraides jomas aptver arī ITU-T H.320 (no kuriem daži radniecīgi MPEG, piemēram, H.245 vers. 6; H.261; H.263) un T.120 sērijas standarti, toties bezvadu un tīklu lietojumiem paredzēti G.700 sērijas standarti, kuri pieminēti, aplūkojot runas koderus (SP 1999/3(15), 24. lpp.)

RM – Reference Model

MPEG-4 (1. zīm.) audiosadaļa nav izstrādāta pilnīgi tukšā vietā. Izmantota standartu pēctecība: iepriekšaplūkotam, bet uzlabotam MPEG-2 AAC (turpmāk vienkārši AAC) pievienoti pilnīgi jauni interfeisi, valodas un citi līdzekļi. Tas viss apvienots t. s. references modelī (RM). Dažreiz RM kodēšanas tehniku dēvē par T/F kodēšanu (T – Time, F – Frequency).

RM = AAC + citi koderi

RM izvirzīja jaunus mērķus – augstu atskaņošanas kvalitāti runas un audio signāliem, pārnesot tos ar lēnām un superlēnām bitu plūsmām. Standarta izstrādātāji atkal nokļuva konfliktējošu, nu jau multimedijiem paredzētu sākumprasību spīlēs – teicamu atskaņojumu, bet netērējot daudz bitu!
MPEG-4 RM izmanto MSDL (MPEG-4 Syntactic Description Language – sintaktiskā apraksta valodu), ar kuru dekoders var ne tikai būvēt jaunus algoritmus, izvēloties un saistot iepriekšdefinētus objektus (piemēram, skaņas avota tembru), bet arī pāriet programmēšanas otrā līmenī, apgūstot jaunus kodēšanas līdzekļus, tikko tie ielādēti koderā!

AAC jauninājumi

Lai AAC attīstītu līdz MPEG-4 līmenim, tam tika ieteikti vairāki uzlabojumi.
Tika pētīta Hafmana kodēšanas efektivitāte gadījumiem, kad ļoti spēcīgi akustisko signālu pīķi akustisko frekvenču spektrā nojauc Hafmana kodēšanas bloka darbību. Sekoja ieteikums: šos pīķus kodēt atsevišķi.
· Lai uzlabotu MDCT koeficientu formēšanu apakšjoslās, kurās dominē galvenokārt trokšņi, tika izmantota PNS (Perceptual Noise Substitution – CDzA uztverto trokšņu aizvietošanas) metode. Ar to 32 kbit/s bitu plūsmās izdevās uzlabot atskaņojuma kvalitāti par +0,61 MOS ballēm (par MOS sk., piemēram, SP 1999/2(14), 18.-19. lpp.).

Citi koderi: HILN, TWIN-VQ...

Bez SP 1999/3(15), 25. lpp. aplūkotā CELP kodera bitu plūsmām zem 6 kbit/s ļoti efektīvs izrādījās HILN (Harmonic Individual Line plus Noise – harmoniskās individuālās līnijas plus trokšņi) kodēšanas algoritms, ko, šķiet, izmantos arī lēnām bitu plūsmām internetā [2].
Japāņu koderu izstrādātāju [3] ieguldījums perfektas skaņas atskaņošanā arī nav pārvērtējams. Viņu kodēšanas TWIN-VQ (Transform-domain Weighted Interleave Vector Quantization – transformācijas apgabala svērtā, pārslāņotā vektorkvantēšana) paņēmiens izrādījās efektīvāks nekā AAC bitu plūsmas joslā no 16 kbit/s uz leju līdz pat 8 kbit/s. Tāpēc MPEG-4 izstrādātāji izšķīrās par labu kombinētas AAC/TWIN-VQ arhitektūras iekļaušanai savā standartā.

MPEG-4 [4]

MPEG-4 standartu ISO/IEC 14 496 ar atbilstošo audio sadaļu Part 3 akceptēja 1999. gada janvārī pēc vairāku algoritmu pārbaudes. Arī perceptuālās, dzirdes uztveres jomā tika izmantoti pilnīgāki CDzA modeļi. Standarts aptver integrētus algoritmus ar ārkārtīgi plašām iespējām, lielāko tiesu orientētām uz programmatūras izmantošanu, kas izdevīgi gan no standarta tālākas attīstības, gan komerciālas izmantošanas viedokļa.
MPEG-4 audio sadaļās šīs iespējas izpaužas informācijas strukturēšanā, sadalot skaņas sīkākos elementos, kā arī t. s. mērogošanā, pēc vajadzības aptverot
· šaurjoslas runu (0,2 ... 3,2 kHz);
· platjoslas runu (0,2 ... 7,0 kHz);
· vidusjoslas audio (0,02 ... ~11 kHz);
· platjoslas audio (0,02 ... 20 kHz) vai pat
· daudzkanālu stereo (sk. SP 2000/4(20), 32. lpp.).
Turklāt šiem mērķiem var izmantot lēnas vai superlēnas bitu plūsmas no 200 bit/s (!) līdz 64 kbit/s uz kanālu.
MPEG-4 nodrošina:
· uzlabotu mērogošanu;
· uz objektu orientētu informācijas strukturēšanu;
· iespēju izmantot AVO (audiovizuālais objekts) [1];
· uz informācijas saturu bāzētu interaktivitāti, kas pacelta līdz visaugstākajam līmenim – līdz lietotāja manipulācijai ar AVO;
· plaši aptverošu kodēšanas līdzekļu klāstu, kas ļauj rast kompromisu starp bitu plūsmas ātrumu, kodera/dekodera komplicētības pakāpi, nepieciešamo skaņas frekvenču joslu un atskaņojuma kvalitāti (t. i., apakšsistēmas raksturojumiem).

Sintētiskā skaņa

MPEG-4 definē efektīvas kodēšanas un datu kompresijas metodes, ģenerējot, restaurējot un lietojot:
· dabisko skaņu;
· sintētisko skaņu;
· abu iepriekšējo kombināciju un t. s.
· teksta-runas interfeisu TTSI (Text-to-Speech Interface).
Pieminētās superlēnās bitu plūsmas izmanto, strukturējot sintētisko runu un mūziku ar TTSI un MIDI (Musical Instrument Digital Interface). Ātrākas bitu plūsmas lieto kombinētām sintētiski/dabiskām skaņām gan runai, gan mūzikai, vēl ātrākas (līdz pat 64 kbit/s) – dabiskām. Šiem procesiem MPEG-4 nodrošina integrētus kodēšanas līdzekļus, kurus šai standartā arī sakārto t. s. profilos.
Lai sistēmprojektētājiem palīdzētu izvēlēties minētos līdzekļus, MPEG-4 Audio 1. versija definē četrus profilus jeb kodēšanas sarežģītības pakāpes:
· superlēnām bitu plūsmām, kas izmanto TTSI un MIDI;
· lēnām bitu plūsmām, kas izmanto HILN, CELP un TWIN-VQ kodēšanu;
· lēnām un vidēji ātrām bitu plūsmām ar atbilstošu skaņas frekvenču joslas augšējo robežu no 4 līdz 9 kHz, kuras izmantotas interneta strīmingam (bitu plūsmas reālā laikā), runas, mūzikas un sintētiskās skaņas lietojumos;
· visu iepriekšējo bitu plūsmu, kā arī ātro bitu plūsmu (līdz 64 kbit/s) pārklājums, kas izmanto uz informācijas saturu bāzētu mērogojamu (scalable) koderu (2. zīm.). Šo pēdējo jeb ceturto profilu sauc arī par galveno (main) profilu.

MPEG-4 Audio 2. versija

Tā ir atpakaļsavietojama ar 1. versiju, jo nevieni no tās līdzekļiem netiek atvietoti, bet gan tikai papildināti ar jauniem.
Sistēmas līmenī 2. versija ietver mediju neatkarīgu bitu plūsmas formātu, kas paredzēts strīmingam, rediģēšanai, lokālai atskaņošanai un satura samainīšanai. 2. versija MPEG-J programmu, sadarbei ar MPEG atskaņotājiem, definē Java valodas kodos, izmantojot interfeisu API (Application Programming Interface). TTSI izmanto robotizētas runas uzlabotam pavadījumam interneta informācijas pārlūkošanas procesā, verbālam e-pastam un stāstu stāstītājam pēc pieprasījuma (pie kam iespējams to organizēt dažādās starptautiskās valodās!). MPEG-4 izstrādātāji šai jomā darbu turpina.

Skaņas strukturēšana

Ne velti aprakstos dažreiz lieto apzīmējumu MPEG-4 SA (Structured Audio). MPEG-4 SA T/F u. c. koderi analizē skaņas struktūru, interesējoties par tās elementiem. Piemēram, serveris pārsūta klientam (datora vai digitālā TV lietotājam) bitu plūsmu, kuras freima galvenē kodos ieslēpts noteikts skaņas elementa jeb fragmenta parametriskais apraksts. Tas var būt arī t. s. OC (Orchestra Chunk – orķestra gabals), kas satur programmas aprakstu speciālā MPEG-4 valodā SAOL (Structured Audio Orchestra Language – strukturētā audio orķestra valoda). Tajā aprakstīti digitālās skaņas signāla fragmentu algoritmi, kas nosaka dažādu instrumentu skanējumu.
Katru mūzikas instrumentu SAOL valoda uzskata kā atsevišķu signālapstrādes elementu, kuru no parametrisko datu kopas kartējot (t. i., pārvēršot no viena formāta otrā), beigu beigās iegūst vajadzīgo skaņas fragmentu (3. zīm.).
Ja SAOL OC instrumentam jāapraksta ģitāras stīgas skaņas fizikālais modelis, tad šis t. s. SAOL OC instruments kartē toņa augstumu un amplitūdu, bet ģitāras skaņas tembru iegūst ar digitāliem filtriem, aiztures līnijām, daļējas aiztures interpolatoriem u. c. SAOL valodas celtniecības ķieģelīšiem. Turklāt dekoderā nonākusī impulsu secība var saturēt dažādus noraidītās ģitāras skaņas paraugus. Kodera/dekodera sistēmai tikai jāizvēlas pareizais!
Pag, pag, sauc lasītājs, vai mēs tādējādi neveidojam sintētisko skaņu?
Tieši tā! MPEG-4, kā iepriekš norādīts, var būt arī sistēma sintētiskās skaņas ģenerēšanai.
Tātad bitu plūsmas freimu galvenēs cita starpā sakodēti dati SAOL kodos. Bet dati, kas galvenei seko, vairs nav vienkārši audio biti (termins, ko lietojām šīs sērijas iepriekšējos rakstos), bet ar laika markām atzīmēti parametriski notikumi (events). Katrs no notikumiem attiecas uz instrumentu, kas aprakstīts dotā OC freima galvenē.
Svarīgi, ka parametru semantiku MPEG-4 standartā nefiksē, bet definē ar tām sintakses likumsakarībām, ko dinamiski ienes SAOL valodā aprakstītais skaņas fizikālais modelis. Tas kontrastē ar zemāka līmeņa sintētiskās skaņas sistēmām, piemēram, MIDI, kurā notikumu sintakse tiek stingri fiksēta.
Dekoderam atsūtīto instrumentu notikumu secība tiek precīzi sinhronizēta ar video objektu. Pēc dekodēšanas un D/A pārveidošanas tā rada skaļrunī skaņu. Parasti viens notikums atbilst mūzikas kompozīcijas elementam – tonim (notij). Tās summējot, iegūst noraidīto melodiju.

SA un kompresija

Iepriekšējos rakstos noskaidrojām, kāpēc vispār digitālos runas un audio signālus nepieciešams un iespējams kompresēt. Bet kā to panāk MPEG-4 standartā? AAC standarts visas datu kompresijas iespējas, šķiet, jau izsmēlis!

Meklējot jaunus redundances veidus

MPEG-4 izmanto t. s. strukturālo un signālapstrādes redundanci jeb datu virsdaudzumu, pārbagātību.
PCM kodos, melodiju atskaņojot uz klavierēm, katru reizi piesitot atbilstošo klavieru taustiņu, vajadzīgais tonis (piemēram, temperētās toņkārtas vidējais do – 261,63 Hz) tiek uzskatīts kā pilnīgi atšķirīgs, neatkarīgs gadījums digitālo datu secībā.
Arī MPEG-1 vai MPEG-2 standarta koderos, izmantojot dažādas pakāpes CDzA modeļus, vidējais do, ja to nenomaskē simultānās vai temporālās maskēšanas efekti, digitālā datu secībā tiek kodēts kā atšķirīgs, neatkarīgs gadījums. Tātad strukturālā redundance netiek samazināta.
MPEG-4 standartā strukturālo redundanci – šo atkārtojošos toņu t. i. datu pārbagātību – noņem, pieņemot, ka jebkura atsevišķa do toņa parādīšanās koderā dotajā skaņas pārraidē ir viens un tas pats gadījums, izņemot atšķirības (differences), kas rodas, ja šo pašu noti atskaņo ar citu mūzikas instrumentu. Tātad tembru un amplitūdu raksturojot ar speciālu t. s. diferenciācijas (differentiating) algoritmu, pārraidei nepieciešams tikai kodēt vēlamo toni, parametrus, kas kontrolē diferenciācijas algoritmu, un laika markas, kas norāda brīdi, kad tonim jāparādās.
Taču var iet tālāk un šajā algoritmā ieprogrammēt vēl toņa augstuma izmaiņas. Piemēram, do # (277,18 Hz) jeb pustoni uz augšu no vidējā do – kā atbilstošā do toņa skaņas frekvences reizinājumu ar 21/12, t. i., 262,63 Hz x 21/12 = 277,18 Hz. Tādējādi rodas iespēja aprakstīt dažādus toņus, izejot no pamattoņa – vidējā do.
Izrādās, ka šāds mūzikas elementu parametrisks apraksts dod iespēju pārraidīt mazāk datu nekā pārraidot visus mūzikas elementu raksturojumus. Esam panākuši datu kompresiju!
Strukturālā audiotehnikā iespējams arī samazināt izmantoto joslas platumu runas kodēšanas, piemēram, uz CELP bāzētām sistēmām. Šai gadījumā to var nosaukt par procesa vai signālapstrādes redundanci. Netiek izmantots fiksēts datu apstrādes modelis, bet gan modelis, kas adaptīvi pielāgots CELP kodera informācijas plūsmai. Tam nepieciešams tikai CELP apraksts SAOL valodā, šī apraksta pārraide bitu plūsmas freima galvenē un tad atliek sūtīt šim CELP modelim optimizētus parametru freimus kā bitu plūsmu. Atkal datu kompresija!

Dažādās sistēmas

Kompresijas faktori, kompresētās bitu plūsmas un citi raksturojumi dažādām platjoslas audio kodēšanas sistēmām sakārtoti 1. tabulā.
APT-X1000 – sk, SP 1999, 2 (14), 16. lpp., ATRAC (Adaptive Transform Acoustic Coding – adaptīvās transformācijas akustiskā kodēšana) algoritmu izmanto Sony firmas minidiskiem, bet tabulā minētā LUCENT (MPAC) metode guva ievērību MPEG-2 AAC algoritma izstrādes procesā, kad firma Lucent Technologies, patentējot savu MPAC metodi, nošķīrās no ASV firmas Bell Labs., kas ieiet AT&T koncernā.
   

Arnolds VĪTOLS,
speciāli SP

Informācijas avoti
1. A. Vītols, Datorpasaule, 1999, apr., 63.÷66. lpp.
2. B. Feitan et al. Proc. 104th Conv. Aud. Eng. Soc. 1998, May, preprint 4686.
3. N. Iwakami et al. Proc. Int. Conf. Acoustics, speech and signal processing 1995, May, 3095.
4. MPEG-4 SA home page. http:/sound.media.mit.edu/~eds/~mpeg4.
 
Design and programming by Anton Alexandrov - 2001