predstavljanje zvuka

44
Uvod u organizaciju računara vežbe - čas 7: Predstavljanje zvuka

Upload: mikisumi

Post on 30-Jun-2015

584 views

Category:

Documents


9 download

TRANSCRIPT

Page 1: Predstavljanje zvuka

Uvod u organizaciju računara

vežbe - čas 7: Predstavljanje zvuka

Page 2: Predstavljanje zvuka

Uvod u organizaciju računara 2

Zvučni signali

Zvučni signal predstavlja promenu pritiska vazduha kroz vreme

Ilustracija ovoga je moguća npr. pomoću programa Sound Recorder

Page 3: Predstavljanje zvuka

Uvod u organizaciju računara 3

Amplituda i frekvencija

Razliku izmedju maksimalne i minimalne vrednosti nazivamo amplitudom.

Što je amplituda zvučnog signala veća, zvuk je glasniji

Page 4: Predstavljanje zvuka

Uvod u organizaciju računara 4

Frekvencija

Broj promena signala, npr. od svoje najveće vrednosti do najmanje i nazad u jednoj sekundi nazivamo frekvencijom zvuka. Frekvencija se meri u Hercima (1Hz= jednom u sekundi).

Što brže zvučni signal menja svoju vrednost to nam se zvuk čini piskaviji.

Page 5: Predstavljanje zvuka

Uvod u organizaciju računara 5

Čujni raspon

U proseku, ljudsko uho može da čuje zvukove čija je frekvencija između 5Hz i 20 kHz medjutim precizni raspon je osobina svakog pojedinca. U principu, već frekvencije iznad 10kHz većina ljudi veoma loše čuje.

Jačina zvuka koju ljudsko uho može da registruje se kreće od skoro 0dB (prag šuma) do 120dB (prag bola)

Page 6: Predstavljanje zvuka

Uvod u organizaciju računara 6

Digitalizacija zvuka

Prema Nyqist-ovoj teoremi, prilikom digitalizacije je dovoljno uzimati uzorke vrednosti zvučnog signala (semplirati) dva puta češće od njegove najveće frekvencije.

Za verno zapisivanje frekvencija do 20kHz potrebno je da frekvencija uzoraka bude 40kHz

Page 7: Predstavljanje zvuka

Uvod u organizaciju računara 7

Uobičajene frekvencije uzoraka

Opšte prihvaćen CD audio standard se zasniva na učestalosti uzoraka od 44.1kHz.

DAT kasete, poznate muzičkim profesionalcima koriste učestalost od 48kHz

Većina zvukova u video igrama je sa uzorcima na 11 ili 22 kHz.

Page 8: Predstavljanje zvuka

Uvod u organizaciju računara 8

Dubina zvuka (dinamički raspon)

Ranije se za digitalizaciju koristilo 8 bita (jedan bajt).

Danas je uobičajeno da se za zapis svakog uzorka koristi 16 bitova (dva bajta).

Ovo omogućuje zapisivanje 65536 nivoa jačine zvuka, što daje dinamički raspon od oko 96dB, što se smatra prilično zadovoljavajućim.

Page 9: Predstavljanje zvuka

Uvod u organizaciju računara 9

Mono i stereo zvuci

Da bi se bolje dočarao prostorni raspored zvuka, koristi se stereo tehnika.

Uzimanje uzoraka u mono tehnici se vrši pomoću jednog mikrofona.

Za digitalizaciju stereo zvuka potrebno je najmanje 2 mikrofona (dva kanala).

Page 10: Predstavljanje zvuka

Uvod u organizaciju računara 10

Nekomprimovani zapis zvuka

Nposrednim zapisivanjem niza brojeva dobijenih digitalizacijom zvuka dobijamo tzv. sirovi zapis (PCM – Pulse Code Modulation).

Za sirovi zapis jednog minuta zvuka u stereo tehnici, potrebno je:60sekundi * 44100 * 2 bajta * 2 kanala = 10,5 Mb

Page 11: Predstavljanje zvuka

Uvod u organizaciju računara 11

RIFF formati

RIFF je grupa formata za zapis mnogih tipova podataka, pre svega multimedijalnih (zvuka i videa).

Najpoznatiji RIFF formati su WAVE, AVI, DIVX...

Page 12: Predstavljanje zvuka

Uvod u organizaciju računara 12

Parčići (chunks)

Svi RIFF formati se sastoje od parčića (chunks). Svako parče ima svoj tip, koji se zapisuje pomoću 4 karaktera, za čim slede 4 bajta koji označavaju veličinu parčeta i zatim sam sadržaj.

Sama RIFF datoteka je sama za sebe jedno parče čiji sadržaj počinje oznakom tipa RIFF datoteke, a zatim sledi niz drugih parčića.

Page 13: Predstavljanje zvuka

Uvod u organizaciju računara 13

Format RIFF datoteke

Adresa Sadržaj(hex) 0000 'R', 'I', 'F', 'F' 0004 Dužina datoteke – 32 bitni

neoznačeni broj 0008 tip datoteke (4 karaktera) 000C tip prvog parčeta (4 character) 0010 dužina prvog parčeta 0014 Sadržaj prvog parčeta ...

Page 14: Predstavljanje zvuka

Uvod u organizaciju računara 14

WAVE format

WAVE spada u grupu RIFF formata i namenjen je isključivo za zapis zvuka.

Zapis u WAVE formatu se sastoji od parčeta (chunk) sa oznakom “fmt” i parčeta sa oznakom “data”

WAVE format omogućava i nekoliko tipova kompresije, mada se najčešće koristi za zapis nekomprimovanog zvuka, tj. parče “data” sadrži PCM zapis.

Page 15: Predstavljanje zvuka

Uvod u organizaciju računara 15

Kanonski izgled WAV datoteke

Offset Sadržaj0 ‘R’ ‘I’ ‘F’ ‘F’4 veličina datoteke8 ‘W’ ‘A’ ‘V’ ‘E’

Page 16: Predstavljanje zvuka

Uvod u organizaciju računara 16

Kanonski izgled WAV datoteke

12 ‘f’ ‘m’ ‘t’ ‘ ’

16 00 00 00 10

20 tip kompresije (1 PCM)

22 broj kanala (1 mono, 2 stereo)

24 Sample rate (najčešće 44100)

28 Broj bajtova u sekundi = Sample rate * Poravnanje

32 Poravnanje = broj kanala * bajtova po uzorku

34 Broj bitova po uzorku (8 ili 16)

36 ‘d’ ‘a’ ‘t’ ‘a’

40 dužina data bloka

44 Zapis uzoraka

Page 17: Predstavljanje zvuka

Uvod u organizaciju računara 17

Kanonski zapis WAV datoteke

Ukoliko se radi radi o 8 bitnim uzorcima vrednosti se zapisuju kao neoznačeni brojeve, dok se 16 bitni uzorci zapisuju u poptpunom komplementu.

Stereo (i drugi višekanalni zapisi) se zapisuju isprepletano (po uzorak za svaki kanal)

Page 18: Predstavljanje zvuka

Uvod u organizaciju računara 18

Kompresija

Jedan od problema sa WAV zapisom je, naravno, to što zauzima previše memorijskog prostora.

Zbog toga se zvučni zapis obično komprimuje na neki način.

Page 19: Predstavljanje zvuka

Uvod u organizaciju računara 19

Pristup problemu komprimovanja

Pošto je zvuk signal koji se veoma nepredvidivo menja, većina algoritama kompresije koji se zasnivaju na ponavljanjima podataka (kao npr. algoritmi korišćeni u ARJ, ZIP) pokazuju loše rezultate.

Zbog toga se pristupa primeni tzv. psihoakustičkih algoritama koji uglavnom spadaju u grupu Loosy algoritama.

Page 20: Predstavljanje zvuka

Uvod u organizaciju računara 20

Maskiranje

U toku dana ne vidimo zvezde. Razlog tome je to što je svetlost zvezda maskirana jakom svetlošću sunca.

Većina algoritama za kompresiju zvuka se zasnivaju na sličnim osobinama ljudskog čula sluha.

Page 21: Predstavljanje zvuka

Uvod u organizaciju računara 21

Maskiranje tihih zvukova

Na primer, tih zvuk u blizini (u vremenu) mnogo glasnijeg se ne percipira, pa se na njegovo kodiranje ne isplati trošiti bajtove.

Slično, ako u bliskom trenutku postoje zvuci bliske frekvencije, jači zvuk može da maskira drugi.

Koji su zvuci dovoljno tihi? Ovaj podatak se najčešće dobija eksperimentima i to sa živim ljudima koji slušaju zvuke i daju svoj sud.

Page 22: Predstavljanje zvuka

Uvod u organizaciju računara 22

Lokalnost maskiranja

Na primer: – Ukoliko imamo zvuk frekvencije 1000Hz i u

njegovoj blizini zvuk od 1100Hz, ali 18 dB tiši, čovek prosečnog sluha neće čuti drugi zvuk.

– Ako bi drugi zvuk bio frekvencije 2000Hz i iste glasnoće, on bi se čuo, zbog toga što je frekvencijski prilično udaljen od prvog. Pokazuje se da bi ovaj ton morao biti 45dB slabiji da bi bio nečujan.

Zaključujemo da je maskiranje značajnije u slučaju bliskih frekvencija.

Page 23: Predstavljanje zvuka

Uvod u organizaciju računara 23

Maskiranje jakih zvukova

Posledica maskiranja je da je dopušteno podizanje nivoa šuma u blizini jakih zvukova.

Zaključujemo da zbog većeg nivoa dopuštenog šuma nije potrebna visoka preciznost zapisa, pa se može upotrebljavati manje bitova za zapis.

Page 24: Predstavljanje zvuka

Uvod u organizaciju računara 24

Pre i post maskiranje

Ljudsko čulo sluha ima ograničenje da ne registruje dobro vremenski bliske zvukove:– ne registruje tihi ton koji se javi do 5

milisekundi pre glasnog (premaskiranje).– ne registruje tihi ton koji se javi do 100

milisekundi posle završetka glasnog (postmaskiranje)

– tačna vremena zavise od razlike intenziteta.

Page 25: Predstavljanje zvuka

Uvod u organizaciju računara 25

MPEG formati

MPEG – Moving pictures experts group

Ekspertska organizacija koja je pod pokroviteljstvom ISO napravila nekoliko standardnih formata za zapisivanje zvuka, filma i drugih multimedijalnih sadržaja

Page 26: Predstavljanje zvuka

Uvod u organizaciju računara 26

Najpoznatiji MPEG standardni

MPEG 1 – standard na kome su zasnovani formati kao su VideoCD i MP3

MPEG 2 – standard na kome se zasnivaju digitalna televizija i DVD format

MPEG 4 – standard multimedije za fiksni i mobilni web

MPEG 7 – standard za opisivanje i pretragu audio i vizuelnog sadržaja

Page 27: Predstavljanje zvuka

Uvod u organizaciju računara 27

Audio Layer-i

Layeri unutar MPEG standarda čine oznake podstandarda koji se odnose samo na zapisivanje audio signala

Jedan od najpoznatijih MPEG-ovih audio layera je audio MPEG layer 3, ili pod drugim, čuvenijim imenom MP3.

Dok je MP3 najčuveniji, MP1 je skoro zaboravljen, dok je MP2 imao neki uticaj dok nije potisnut layerom MP3.

Page 28: Predstavljanje zvuka

Uvod u organizaciju računara 28

Audio Layer-i (2)

Audio layeri su međusobno kompatibilni naniže, što znači da programi koji mogu da tumače MP3 mogu da tumače i novije layere.

Page 29: Predstavljanje zvuka

Uvod u organizaciju računara 29

Kratko o algoritmu

Audio MPEG deli celokupni zvučni frekventni opseg na 32 podpojasa (subbands).

Ovi pojasi su kod layera 1 i 2 bili po 625Hz, dok se kod layera 3 uvode pojasevi različite širine. – Naime, uho jasno razlikuje 1kHz od

3kHz, dok veoma teško razlikuje 15kHz od 18kHz (ako se uopšte nešto čuje).

Page 30: Predstavljanje zvuka

Uvod u organizaciju računara 30

Kratko o algoritmu (2)

Ako npr. imamo ton od 1kHz jačine 60dB, on spada u 8. pojas: – Koder izračunava da je maskirajući

efekat ovog tona 35dB, što daje odnos signal/šum od 25 dB, što znači da je za zapis ovog zvuka dovoljno 4 bita.

– Dodatno, ovaj maskirajući efekat se proteže od pojasa 5 do 13, naravno sa umanjenim uticajem.

Page 31: Predstavljanje zvuka

Uvod u organizaciju računara 31

Kratko o algoritmu (3)

Poslednji korak algoritma je primena Huffmanovog kodiranja na rezultat dobijen primenom maskiranja.

Sve ovo čini proces MP3 kodiranja prilično računski zahtevnim. Proces dekodiranja je nešto jednostavniji, ali je i on svakako komplikovan.

Page 32: Predstavljanje zvuka

Uvod u organizaciju računara 32

Statičko Huffman-ovo kodiranje

Osnovna ideja je da se karakteri koji se češće javljaju kodiraju kraćim sekvencama, dok je kod karaktera koji se ređe pojavljuju dozvoljeno koristiti i duže kodove.

Na početku je potrebno izgraditi sortiranu tabelu frekvencija pojavljivanja svih znakova koje želimo da kodiramo. Neka su to npr. karakteri

Page 33: Predstavljanje zvuka

Uvod u organizaciju računara 33

Izgradjna Huffmanovog drveta

Pronadju se dva karaktera koja se najređe pojavljuju i ona se zamene novim “karakterom” čija je frekvencija zbir frekvencija polazna dva karaktera.

Novouvedeni “karakter” predstavlja čvor drveta iz koga izniču polazni karakteri. Postupak se ponavlja sve dok se ne izgradi kompletno drvo.

Page 34: Predstavljanje zvuka

Uvod u organizaciju računara 34

Odredjivanje kodova

Sve grane drveta koje vode “na levo” se označe nulom, dok se sve grane koje vode “na desno” označe jedinicom. Kôd svakog karaktera se odredjuje prikupljanjem oznaka grana putanje koja vodi do njega.

Page 35: Predstavljanje zvuka

Uvod u organizaciju računara 35

Huffmanovo drvo - primer

Kodovi su:A 0 B 100 C 1010D 1011 E 110 F 111

A(13)

B(6)

C(3) D(2)

E(4) F(4)

8

5

11

19

32

Page 36: Predstavljanje zvuka

Uvod u organizaciju računara 36

Format MP3 datoteke

Svaka MP3 datoteka se sastoji od više delova koji se nazivaju okviri (frames)

Svaki okvir se sastoji od 32 bitnog zaglavlja (header) i sadržaja.

Jedan okvir služi za zapis 1152 uzorka kod Layer-a 2 i 3

Page 37: Predstavljanje zvuka

Uvod u organizaciju računara 37

Zaglavlje MP3 okvira

Zaglavlje se sastoji od 32bita:AAAAAAAA AAABBCCD EEEEFFGH IIJJKLMM

A - 11 bitova za sinhronizaciju – svi moraju imati vrednost 1

B – oznaka verzije MPEG standarda– 00 – MPEG 2.5– 01 – rezervisano– 10 – MPEG 2– 11 – MPEG 1

Page 38: Predstavljanje zvuka

Uvod u organizaciju računara 38

Zaglavlje MP3 okvira (2)

C – Oznaka layer-a– 00-rezervisano– 01 – Layer 3– 10 – Layer 2– 11 – Layer 1

D – Oznaka kontrole– 0 – CRC– 1 – kontrola isključena

Page 39: Predstavljanje zvuka

Uvod u organizaciju računara 39

Zaglavlje MP3 okvira (3)

E – bit rate. Izražava se u kbps. Svakom layer-u odgovaraju različite kombinacije. – Npr. za MPEG 1 layer 3, 1001 znači 128kbps.

F - Sampling rate. Npr. Za MPEG1 standard, i sve layere – 00 označava 44100 Hz– 01 – 48000 Hz– 10 – 32000 Hz

G – Padding – dodatni bit koji kaže da li postoje dodatni bitovi za poravnavanje

Page 40: Predstavljanje zvuka

Uvod u organizaciju računara 40

Zaglavlje MP3 okvira (4)

H – Rezervisani bitI – Broj kanala

– 00, 01, 10 Stereo, – 11 Mono

J – dodatna oznaka načina zapisa (samo kod stereo sistema)

Page 41: Predstavljanje zvuka

Uvod u organizaciju računara 41

Zaglavlje MP3 okvira (5)

K – Copyright– 0 nema– 1 ima

L – originalnost zapisa– 0 kopija originala– 1 original

M – Oznaka pojačanja

Page 42: Predstavljanje zvuka

Uvod u organizaciju računara 42

Izračunavanje dužine okvira

Iako u zaglavlju svakog okvira nije eksplicitno zapisana njegova dužina, ona se može rekonstruisati na osnovu ostalih podataka i to kod Layera 3 po formuli:Dužina = 144 * bitrate / samplerate + padding

Page 43: Predstavljanje zvuka

Uvod u organizaciju računara 43

ID3 v2

MP3 format se može proširiti dodatnim informacijama o muzici, izvođaču, tekstu pesme i slično.

Standard koji ovo opisuje se zove ID3 i trenutno nosi oznaku verzije 2.4.0. – Pošto se ovaj standard pojavio posle

standardizacije MP3, ovakve dodatne oznake su se pisale na kraju MP3 datoteke.

– Tek od verzije 2, su oznake premeštene na početak.

Page 44: Predstavljanje zvuka

Uvod u organizaciju računara 44

ID3 v2, primer