 |
| |
Marko Petrović
Kako radi MP3? - Idemo dalje!!! |
|
Anatomija MP3 dokumenta
Sam MP3 dokument je podeljen na mnogo
delova. Ti delovi zovu se okviri ili frejmovi. Svaki okvir u sebi
sadrži informaciju o audio podatku koji traje svega par delova sekunde.
Da bi dekoder ispravno dekodovao i kasnije reprodukovao zvuk, svaki
frejm mora imati zaglavlje (header) u kome su sadržane informacije
o audio podatku koji se u njemu nalazi. Zaglavlje je dužine 32 bita.
Izlgled jednog frejma predstavljen je na sledećoj slici:
U zaglavlju se nalazi mnoštvo polja, koji određuju strukturu okvira:
|
Pozicija
|
Značenje
|
Dužina
(bit)
|
|
A
|
Sinhronizacija frejma
|
11
|
|
B
|
Verzija MPEG audio (MPEG-1, 2, i sl.)
|
2
|
|
C
|
MPEG layer (Layer I, II, III, i sl.)
|
2
|
|
D
|
Zaštitni bit
|
1
|
|
E
|
Bitrejt index
|
4
|
|
F
|
Frekvencija odabiranja (semplovanja), npr.
44.1kHz
|
2
|
|
G
|
Padding bit (on ili off, vrši kompenzaciju
u slučaju da se pojave prazni frejmovi)
|
1
|
|
H
|
Private bit (on ili off, bit privatnosti,
koriste ga aplikacije)
|
1
|
|
I
|
Mod (vrsta) kanala (stereo, joint stereo,
i sl.)
|
2
|
|
J
|
Ekstenzija moda (koristi se samo kod joint
stereo moda)
|
2
|
|
K
|
Copyright (on ili off)
|
1
|
|
L
|
Original (off kada je kopija originala,
on kada je original)
|
1
|
|
M
|
Emfazis (Emphasis)
|
2
|
Vizuelno, samo zaglavlje se može predstaviti i na sledeći način:

Ovakav raspored bitova u zaglavlju određuju tačno i pouzdano dekomprimovanje
MP3 dokumenta.
Priprema za komprimovanje!
Veoma bitan parametar za razumevanje MP3 formata je audio rezolucija.
Naziva se još i semplrejt (samplerate). Upravo uz pomoć njega se
određuje kvalitet konverzije iz analognog (nekomprimovanog) u digitalni
signal. U stvari, to je frekvencija kojom će biti odabrani delovi
audio signala.
Odabiranje je postupak kojim se uzimaju uzorci analognog signala.
Npr. ako pogledamo sledeću sliku, uočićemo analogni signal, jednu
sinusoidu koja neprekidno traje u određenom vremenskom periodu.
Da bi se ta sinusoida kasnije reprodukovala, nije potrebno da se
njeni uzorci (odbirci) uzimaju baš u svakom trenutku, već sa određnim
"razmacima u vremenu". Ova osobina je suštinska, jer da
nije tako ne bismo mogli digitalizovati analogne signale. Naime,
nemoguće je uzimati uzorke tako "gusto" da između dva
ne bude "razmaka". Minimalna frekvencija uzimanja tih
uzoraka, odnosno maksimalni razmaci u vremenu između dva uzorka
su određeni veoma bitnom teoremom koja se zove "Teorema o odabiranju"
na kojoj počiva postupak digitalizacije. Uprošćeno, može se reći
da je broj uzoraka koi je potreban da se neki signal kasnije u potpunosti
reprodukuje proporcionalan frekvenciji tog signala. Dakle, što je
veća frekvencija signala, uzroci moraju češće da se uzimaju, da
budu "gušći". Preciznije, frekvencija odabiranja mora
biti barem dva puta veća od frekvencije signala.
Najčešće korišćena frekvencija odabiranja je 44.1 kHz (kiloherc).
Svi audio CD-ovi su semplovani na ovoj frekvenciji. U profesionalnoj
upotrebi se još koristi i frekvencija odabiranja od 48 kHz, a od
nedavno i 96 kHz. Što je veća frekvencija odabiranja, veći je kvalitet
(uzorci su "gušće uzeti"), ali je i veća veličina dokumenta
koji kreiramo jer se povećava količina informacija. U nekim slučajevima
je moguće koristiti i niže frekvencije. Na primer za prenos ljudskog
govora se koristi frekvencija odabiranja od svega 8 kHz. To je sasvim
dovoljno jer se frekvencije koje se javljaju prilikom govora nalaze
u opsegu od 300 do 3.4 kHz. Ako se prisetimo teoreme o odabiranju
videćemo da je za prenos govora dovoljna frekvenicja odabiranja
od 2x3.4 kHz = 6.8 kHz. Dakle, 8 kHz će nam biti sasvim dovoljno.
Ova frekvencija odabiranja se koristi ne samo prilikom komprimovanja
u MP3, već i u digitalnoj fiksnoj i mobilnoj telefoniji (naravno
postoje i druge primene).
Šta je to bitrejt (bitrate)?
Jednostvno rečeno, bitrejtom je određen broj bitova koji su potrebni
da se predstavi sekunda komprimovanog zvuka. Izražava se u jedinicama
kbps (kilobits per second). Naravno, što je veći bitrejt veći je
i kvalitet MP3 pesme. Npr. ako je bitrejt 128 kbps, onda će jedna
sekunda biti predstavljena sa 128000 bitova.

Sa slike se vidi da je najkvalitetniji analogni signal (izvorni
audio zapis). Kada se koristi manji bitrejt, veći su razmaci između
odbiraka i samim tim veći gubici. Uporedite sa slike deo signala
predstavljen sa 64 kbps i 128 kbps.
U audio zapisu mogu postojati delovi koji su bogatiji informacijama
(više instrumenata, više vokala u isto vreme). Dešava se da prilikom
korišćenja konstantnog bitrejta (CBR – constant bitrate) ovi delovi
zvuče lošije u odnosu na delove u kojima nema toliko informacija.
Najbolje rešenje u ovakvim slučajevima je promenljivi bitrejt (VBR
– variable bitrate). Sam enkoder odlučuje kolika će biti veličina
frejma, tj. koliko će broj bitova biti korišćen pri predstavi jedne
sekunde audio zapisa. Upoređujući sa CBR od 128 kbps MP3 pesme komprimovane
na ovaj način će biti veće (u proseku nekih 50%), ali se lako može
desiti i da budu i manje što zavisi od sadržaja same pesme.
Kao što je rečeno, MP3 koristi dve tehnike komprimovanja kako bi
smanjio veličinu nekomprimovanog audio zapisa, jednu sa gubicima,
a drugu bez. Prva izbacuje sve što čovek ne može čuti, dok druga
uklanja sve suvišnosti. Sam proces komprimovanja se odvija u više
faza:
* Signal se deli na na male delove zvane frejmovi (okviri), čije
se trajanje deli u delovima sekunde.
* Zatim se analizira opseg frekvencija i određuje raspored bitova
za svaku frekvenciju. Najbolji rezultat se postiže ako se ceo opseg
podeli na više podopsega, koji se pojedinačno obrađuju.
* Sada u igru ulazi bitrejt. Sledi izračunavanje maksimalnog broja
bitova koji bi bili dodeljeni svakom frejmu. Broj bitova po svakom
frejmu je konstantan, osim ako koristimo promenljivi bitrejt (VBR).
Ovaj korak praktično određuje veličinu fajla.
* Dobijeni raspored bitova za frekvencije upoređuje se sa matematičkim
modelom ljudske psihoakustike (osobina perceptualnog kodeka). Frekvencije
koje čovek bolje čuje predstavljaju se tačnije (više bitova), dok
se frekvencije koje ne mogu biti registrovane, izostavljaju. Zašto
sačuvati ono što ne možemo čuti?!
* Dobijeni niz bita (frejm) se zatim obrađuje Hafmanovim kodom (o
njemu smo detaljnije pisali u pretprošlom broju Omega magazina),
koji komprimuje podatak, izbacujući suvišnosti.
* Na kraju se dobijeni niz frejmova objedinjuje u jedan serijski
niz bitova, čime je ceo proces komprimovanja obavljen. Jedino je
ostalo da se ispred ovog niza bitova ubaci zaglavlje (heder), i
eto... dobili smo MP3-ojku!!!
|