You are on page 1of 81

Phan tch va ng dung chuan MP3

MUC LUC
Muc luc..............................................................1
Li m au..........................................................5
Cac thuat ng thng dung...........................................6
PHAN 1 : LY THUY!T............................................"
CH#$N% &: CAC 'A(C '&)M C$ *A+N CU+A A,M
THANH "
I. Cac ac tnh c ban cua am thanh......................7
1. Tan so song am................................................7
2. Ben o song am...............................................8
II. Kha quat ve am thanh so...................................9
1. Lay mau r rac th gan, tn heu audo tng
t 9
2. Lng t hoa va cac mau r rac th gan
9
3. T so tn heu tren sa so (Sgna-to-error rato)
10
CH#$N% &&: %&$& TH&-U . MP%........................11
I. GIOUI THIEU.................................................................11
1. MPEG a g?.............................................................11
2. So sanh cac chuan MPEG:..................................11
3. AAm thanh MPEG.....................................................12
4. Hoat ong:.............................................................13
II. CAUC KHAUI NIEM CO BAUN VEA MPEG.....................14
1. Lc o ma hoa Perceptua Subband................14
2. Ga thch ve heu qua che (maskng effect).....14
a. Nen am thanh MPEG........................................15
b. Heu qua che....................................................16
3. Cac p am thanh MPEG....................................17
a. Lp I (Layer I).....................................................18
b. Lp II (Layer II)...................................................18
c. Lp III (Layer III).................................................19
III. CAUC THOANG SOA DUNG TRONG MPEG..................20
1. Mode........................................................................20
2. Sampng Frequency (toc o ay mau)..............21
3. Bt Rate....................................................................21
CH#$N% &&&: MA/ H0A THU CA+M..........................12
Trang 1
Phan tch va ng dung chuan MP3
I. CO SOU AAM TAAM LYU...................................................23
1. Ngng nghe tuyet o (absoute threshod of
hearng) ..................................................................................23
2. Cac bang t han(crtca bands) .......................23
3. Hen tng che (maskng) ....................................24
II. MA HOUA BAENG PHU ..................................................26
III. MA HOAU BIEAN NOAI ...................................................26
IV. MA HOAU MP3 ( MP3 ENCODING) .................................27
1. Phan tch phep ben o Fourer nhanh (FFT
anayss) .................................................................................27
2. Ngng che(Maskng Threshod) ...........................28
3. Bang oc phan tch (Anayss Fterbank) ............28
4. MDCT v ca so ong .....................................28
5. Cha t e va ng t hoa (Scang va
Ouantzaton) ..........................................................................29
6. Ma hoa Huffman va snh ra dong bt (Huffman
Codng and Btstream Generaton) ..............................30
7. Thong tn (Sde Informaton) .................................32
CH#$N% &.: %&A+& MA/ MP%1 L$P 2.....................22
I. GIAUI MA MP3 (MP3 DECODING) .....................................33
1. Nnh dang khung (Frame Format) .........................33
a. Teu e ............................................................34
b. Thong tn (sde nfomaton)...............................38
c. D eu chnh (man data).................................39
d. D eu phu (Ancary Data) ..........................40
2. Ga ma Huffman..................................................40
3. Lng t hoa a (requantzaton) ......................41
4. Sap xep a th t ( reorderng) .......................42
5. Ga ma stereo .....................................................42
a.Ga ma Stereo MS ...........................................42
b.Ga ma cng o stereo ..............................43
6. Gam bet danh (Aas Reduton) .........................43
7. IMDCT ......................................................................44
8. Kho oc a pha tong hp ( Synthess Poyphase
Fterbank) ..............................................................................46
II. NHIN CHUNG VEA HIEU OUAU CAUC
GIAUI THUAT GIAUI MA MP3 ...................................46
1 . Ga ma Huffman ................................................46
2 . Bo ng t hoa a (Requantzer) ...................48
3. Phep ben o cosn r rac ca ten ao
ngc (IMDCT) .......................................................................51
4. Bang oc a pha ( Poyphase Fterbank) ..............53
Trang 2
Phan tch va ng dung chuan MP3
PHAN 1: 3A,Y 4#N% PHAN MM.........................5"
CH#$N% &:%&A0 4&-N .A5 THUY!T M&NH CH#$N%
T67NH 5"
1. Thanh SknProgress ................................................58
2. Nut Mnmze .........................................................58
3. Nut Cose................................................................58
4. Tmer........................................................................58
5. Tong th gan .....................................................58
6 .Nut Open................................................................58
7 .Nut Pay..................................................................58
8. Nut Pause...............................................................59
9. Nut Stop ................................................................59
10. Thanh ten trnh ..................................................59
11.................................................................................
Nut Voume ..........................................................................59
CH#$N% && : L#U '0 %&A+& THUA-T .A5 CA!U T6UC
4#/ L&-U................................................................89
I. SO NOA KHOAI.................................................................60
II. LU NOA GIAUI THUAT ...............................................61
III. CAAU TRUUC D LIEU ..............................................63
1. Fe Agrs.h................................................................63
a. Lp MPArgs .......................................................63
b. Cau truc MPInfo ...............................................66
c. Cau truc frame.................................................66
2. Fe Common.h ........................................................67
a. Cau truc ID3TagStruct.....................................67
b. Cau truc gr_nfo_s............................................67
c. Cau truc bandInfoStruct ..................................68
d. Cau truc III_sdenfo.........................................68
3. Fe Esound.h...........................................................69
a. Cau truc esInputMode......................................69
b. Cau truc esOutputMode...................................69
c. Cau truc esPayerMode....................................69
d. Cau truc esPayerError ....................................69
4. Fe Huffman.h..........................................................70
IV. NONH NGHOA................................................................70
1. Cac nh ngha dung trong tap tn <Common.h>
70
2. Cac nh ngha dung trong Payer.h...................71
3. Cac nh ngha dung trong Resource.h..............71
Trang 3
Phan tch va ng dung chuan MP3
PHAN 2 : T0)N% :!T............................................."1
Tai lieu tham khao
73
Trang 4
Phan tch va ng dung chuan MP3
L$5& M$+ 'AU
Trong th a bung no cua cong nghe thong tn, vec
truyen ta d eu a nhu cau can thet. Nac bet a
vec g d eu theo ng Internet, v chat ng
ng truyen thap nen can pha nen d eu nho
gon e thuan cho vec upoad hay downoad. No v
nh vc am nhac cung vay, nhu cau g tang ba
hat cho nhau , nghe nhac trc tuyen tren mang rat pho
ben v vay vec nen fe nhac vo cung can thet e
tet kem ng truyen, th gan va ten bac.
Ne ga quyet van e nay MPEG co rat nheu chuan
e nen nh MPEG 1, MPEG 2,. dung e nen fe theo
nheu cach khac nhau. Mot trong nhng chuan pho
ben a chuan MPEG 1, trong khuon kho e ta nay
chung em ch tm heu ve chuan MPEG 1 Layer 3 hay
con go a mp3 va mnh hoa bang mot chng trnh
ga ma fe mp3, sau o phat ra oa.
Trang 5
Phan tch va ng dung chuan MP3
CAC THUA-T N%#/ TH#$5N% 4U5N%
MDCT Modfed Dscrete Cosne Transform.
IMDCT Inverse Modfed Dscrete Cosne
Transform.
Sampe rate Toc o ay mau.
FFT Fast Fourer Transform.
DFT Dscrete Fourer Transform.
Sgna-to-nose (S/N) T so ga tn heu va nheu.
CRC Cycc Redundancy Check .
ADC Anaog to Dgta Converter.
CODEC CODer/DECoder.
CPU Centra Processng Unt.
DCT Dscrete Cosne Transform .
DSP Dgta Sgna Processor.
FS Sampng Frequency, e.g. 44100 Hz for
CD audo.
FIFO Frst n, frst out.
FLOP Foatng-pont operaton.
FPU Foatng pont unt. Hardware math
acceeraton. nsde a CPU.
ISO Internatona Standards Organsaton.
MFLOPS Mon foatng-pont operatons per
second.
MPEG Moton Pcture Expert Group. Workng
group wthn ISO.
PCM Puse Code Moduaton. Output from an
ADC.
Trang 6
Phan tch va ng dung chuan MP3
PHAN & : LY THUY!T
CH#$N% & : CAC 'A(C '&)M C$ *A+N
CU+A A,M THANH
AAm thanh c tao b mot thc the dao ong. Khong
co dao ong th khong co am thanh. Thc the dao
ong th c go a nguon am. Nguon am am cho
cac phan t cua mo trng ben canh no dao ong.
Cac phan t nay a am cho cac phan t ke no dao
ong. Bang cach nay cac phan t cua mo trng
truyen en ta cua ng nghe. Kh chung ta cam nhan
mot am thanh nao o, cac phan t dao ong am
cho mang nh cua chung ta cung dao ong. Cac dao
ong nay c tep nhan va phan tch b bo nao
cua chung ta.
AAm thanh co the truyen qua mo trng khong kh,
nc hoac cac cau truc xay dng. am thanh truyen
d dang song am, s truyen am thanh thc chat
a s truyen nang ng t n nay en n khac.

&. CAC 'A(C T;NH C$ *A+N CU+A A,M THANH
Bat ky am thanh n gan nao chang han nh mot
not nhac eu co the hoan toan c mo ta b 3
ac tnh cam nhan sau: cao o (ptch ), cng o
(ntensty), am sac (tmbre).
Nhng ac tnh nay an t tng ng v cac ac
tnh vat y sau cua am thanh: tan so (frequency), ben
o (amptude), s cau thanh cua cac ha (harmonc
consttuton).
1. Ta< =>? =>@<A aBm
AAm thanh c truyen d dang song am. Kh
song am truyen s truyen dao ong cua cac
phan t dao ong theo hng truyen song. S dch
chuyen cua cac phan t cua mo trng tao ra
cac vung co mat o phan t cao thap khac nhau.
Cac vung co mat o phan t cao c go a cac
Trang 7
Phan tch va ng dung chuan MP3
vung am ac (compresson). Cac vung co mat o
phan t thap c go a vung oang (rarefacton).

Cac vung oang va vung am ac an truyen theo
hng truyen cua song. Cac phan t dao ong
khong an truyen theo hng truyen song, chung dao
ong xung quanh v tr can bang cua chung. Mo
mot dao ong hoan chnh c go a chu ky dao
ong (t em bat au cua no, t mot khoang
cach to a theo mot hng, sau o tr ve v tr ban
au, t mot khoang cach theo hng ngc a, va
cuo cung a tr ve v tr ban au ).
So chu ky dao ong c thc hen trong mot gay
c go a tan so dao ong, ay cung chnh a
tan so cua am thanh. Mot trong nhng khac bet
chnh ga ha am thanh a s khac bet ve cao o,
va cung chnh tan so cua am thanh quyet nh cao
o cua no .
Tan so c tnh bang Hertz (Hz), KoHertz
(kHz,1kHz=1000Hz).Mot ng bnh thng co the
nghe c cac nguon am co da tan so t 20Hz
en 20kHz.
1. *iCB< >D =>@<A aBm
Ben o song am chnh a khoang cach dch
chuyen to a cua cac phan t dao ong. Tng
quan ga ben o song am v cac vung oang
va vung am ac .
Ben o cua song am the hen mc o dao ong
cua cac phan t cua mo trng tao nen song
am. Ben o song am cang n th cac phan t
dao ong co nang ng cang n va am thanh se
co cng o cang n. Cng o am thanh t e
nghch v khoang cach tnh t nguon am. Cang xa
nguon am cng o am thanh cang gam, ket
qua a ta ta nghe cang kho .
Cng o am c beu den b mc ap suat
am thanh SPL (Sound Pressure Leve). Mc SPL cua mot
nguon am nao o c tnh nh sau:
SPL(dB)= 20 og(P/P
0
)
Trang 8
Phan tch va ng dung chuan MP3
Trong o P : ap suat cua nguon am (N/m
2
)
P
0
: ap suat chuan qu cheu, P
o
=2* 10
-5
N/m
2
Am thanh SPL(dB
)
Ngng m
ang
0
Teng th
tham
10
Phong thu
am
20
No bnh
thng
60
Teng a het 80
Teng xe ta 90
Nhac rock 100
Ngng cam
nhan
120
Ngng au 140
Mot so mc SPL cua va dang am
thanh.
&&. :HA& EUAT . A,M THANH F0!
1. La?G maHu Ii Iac JKi Aia<L JM< KiCDu AuNi>
JO<A JO
Tn heu audo tng t thay o en tuc theo th gan,
ngha a ben bo cua tn heu thay o en tuc theo
th gan. Lay mau tn heu audo tng t a xac nh
ben o cua tn heu nhng th em theo nhng
khoang th gan cach eu nhau v vay cac mau a
cac xung co ben o nhat nh. Khoang th gan
cach eu nay go a chu ky ay mau T
s
, tan so ay
mau (toc o ay mau ) f
s
= (1 / T
s
).
1. LO<A JO K>a@ Pa ca@c maHu Ii Iac JKi
Aia<
Trang 9
Phan tch va ng dung chuan MP3
Lng t hoa a beu den ben o cua cac xung tn
heu thanh 1 ga tr so s dung he thong so nh
phan. Ng ta dung mot t ( word) co o da n bt
e beu den cac ga tr o. So bts n c chon tuy
thuoc vao ga tr cua cac mau va n c go a o
phan ga ng t hoa( quantzaton resouton). Ga tr
cua 1 word xac nh 1 mc ung t hoa (quantzaton
eve) va o chenh ech ga 2 mc en tep go a
khoang ng t hoa (quantzaton nterva).
V du: ta s dung n=8 bt e beu den cac ga tr
en the en tuc t
0 -> 25,5 V nh sau:
V1=0 th word= 0000 0000 ( mc 0)
V2=0,1 th word= 0000 0001 ( mc 1)
V3 = 0,2 th word= 0000 0010 ( mc 2)
...........................
V255= 25,5 th word =1111 1111 (mc 255)
Ga s ta co V
a
=0,15 V th word mc 1 (0000 0001 )
hoac mc 2 (0000 0010) tuy thuoc vao s a chon
cua chung ta. Nhng neu V
a
=0.12 th no thuoc mc 1
v gan ga tr mc 1 hn.
Cac ga tr ng t hoa ch a xap x gan bang
ga tr thc te cua cac mau. No sa bet ga ga tr
ng t hoa va ga tr thc c go a sa so ng
t hoa ( quantzaton error).
2. TQ =>? JM< KiCDu JICB< =ai =>? RFiA<alSJ>SCII>I
IaJi>T
Ne anh ga chat ng cua he thong ng t hoa,
mot thong so quan trong c nh ngha a t so
cua ben o tn heu cc a tren sa so ng t hoa
cc a, t so nay c go a t so t heu tren sa
so (S/E).
Trang 10
Phan tch va ng dung chuan MP3
CH#$N% &&: %&$& TH&-U . MP%
&. %&$& TH&-U
1. MP% la AUV
MPEG, vet tat cua cum t Movng Pcture Experts
Group, a 1 nhom chuyen nghen cu phat tren
cac teu chuan ve hnh anh so va nen am thanh
theo chuan ISO/IEC. Ngay nay, nhom am vec MPEG
a phat tren va phat hanh cac teu chuan MPEG-
1, MPEG-2 va MPEG-4. Chuan MPEG-3 c ket hp
vao MPEG-2 va khong con tach reng na. Nhom
MPEG hen nay a phat tren en chuan MPEG-7.
MPEG ch a mot ten reng, ten chnh thc cua no
a : ISO/IEC |TC1 SC29 WG11.
ISO : Internatona Organzaton for Standardzaton
(To chc chuan quoc te)
IEC : Internatona Eectro-technca Commsson
(Ho ong ky thuat en t quoc te )
|TC1 : |ont Technca Commttee 1
(Ho ong ky thuat en hp 1)
Trang 11
Phan tch va ng dung chuan MP3
SC29: Sub-commttee 29
(Ho ong phu 29)
WG11: Work Group 11 (movng pcture wth audo).
(Nhom am vec 11)
1. F> =a@<K ca@c cKuaW< MP%
MPEG-1 nh ngha mot teu chuan cho vec u tr
va phuc ho cac hnh anh ong va am thanh tren
cac thet b u tr. Teu chuan nay nh ngha
rang hnh anh c phat a toc o 30 frames
mot gay va am thanh c phat a chat ng
nh CD-audo, o phan ga hnh anh a 352 x 240.
Chuan MPEG-1 c dung en hnh trong cac phan
mem huan uyen bang may tnh, cac game hanh
ong trong may tnh, vdeo chat ng VHS, Karaoke..
MPEG-2 nh ngha cho mot teu chuan ky thuat
truyen hnh so. Chuan MPEG-2 khac phuc mot va
nhc em cua chuan MPEG-1. V du, MPEG-2 co the
tao hnh anh n gap 4 an MPEG-1 v o net cao
hn va ro hn (720 x 480 va 1280 x 720). Cac ac tnh
cua MPEG-2 bao gom hnh anh chat ng cao va am
thanh no..
MPEG-3 nh ngha mot teu chuan cho Hgh Dfnton
Teevson (HDTV), a the he tep theo cua cong
nghe truyen hnh theo nh dang so au u. Teu
chuan nay a khong c phat tren hoan then
va cuo cung c ket hp vao v chuan MPEG-2.
MPEG-3 nham en muc teu a cac ng dung HDTV
v kch thc mau en en 1920x1080x30 Hz va
c ma hoa toc o bt 20 en 40 Mbts/s. Cuo
cung ng ta a nhan ra rang v mot va eu
chnh thch hp, MPEG-1 va MPEG-2 am vec rat tot
o v HDTV.
MPEG-4 nh ngha mot teu chuan cho cac ng
dung Mut-meda. Nac bet no nh ngha teu chuan
truyen cho dong phc tap cac hnh anh, am thanh
va d eu o hoa va vec ta hp chung tren
thet b thu. MPEG-4 c phat tren theo 2 ga oan, 1
va 2. Chuan MPEG-4 nh ngha cac o tng hnh
anh ma trong o cac phan cua mot canh co the
Trang 12
Phan tch va ng dung chuan MP3
c thao tac trong kh nhng phan khac van khong
o.
MPEG-5 va MPEG-6 van cha c cong bo.
MPEG-7 nh ngha mot teu chuan ve vec beu
den no dung cho cac nghen cu thong tn hnh
anh va am thanh. Ten chnh thc a "Mutmeda
Content Descrpton Interface". Muc teu cua MPEG-7 a
chuan hoa vec beu den cac mo ta ve no dung
nghe nhn. Tuy nhen chuan khong nh ngha cac
cong cu e nhan ra no dung nghe nhn that s.
2. A,m JKa<K MP%
Ve c ban, am thanh MPEG se am gam kch thc
u tr 1 tap tn am thanh rat nheu. Mot a
Audo-CD u tr c khoang 650 Mbyte d eu am
thanh tho v cach ma hoa 16 bt (btdepth) va tan
so ay mau (sampe rate) 44.1 kHz. Neu em phat ra
th cung ch c 60 en 72 phut.
btdepth: mo ta mc ben o n nhat ma
mot mau am thanh co the at t. V du : 8 bt
= 256 mc, 16 bt = 65.536 mc, ve hnh anh th
o chnh a o phan ga.
sampe rate: mo ta so mau am thanh c ay
trong 1 gay. V du : 22 kHz = 22.000 mau / 1gay.
Phng phap co en e gam kch thc u tr a
gam ng thong tn. Neu o cach u tr am
thanh t 16 bt sang 8 bt chung ta co the gam kch
thc u tr 1 na, tuy nhen nh the chat ng
am thanh cung se gam 1 na.
Trang 13
Phan tch va ng dung chuan MP3
X. H>aJ >D<A
Kh a ra phng phap ma hoa am thanh, nen
tang van a yeu to "he thong nghe" cua con
ng. That khong may o khong pha 1 thet b
hoan hao e nhan bet am thanh nhng a thet
b duy nhat chung ta co c. Nhng chung ta co
the chuyen nhng khuyet em cua no thanh u
em : o a ac tnh ph tuyen cua ngng nghe
va kha nang thch hp cua no.
MPEG hoat ong da tren he thong nghe cua con
ng, o a cam gac ve am mang ac tnh snh
y va tam y.
AAm thanh CD gh a tat ca tan so, ke ca nhng
tan so b che.
AAm thanh MPEG ch gh a nhng tan so ma ta
ng co the nghe.
Nh vay, MPEG se bo qua nhng thong tn khong
quan trong. Da tren nghen cu ve nhan thc
am thanh cua con ng, bo ma hoa se quyet
nh nhng thong tn nao a can ban va nhng
thong tn nao co the bo qua.
Heu qua nay ac bet quan trong trong am
nhac. Neu trong mot dan nhac co mot nhac cu
ch cc manh, am at teng cua cac nhac cu
khac ta khong the nghe c. Nhng may thau
am van gh a ay u tat ca tan so cua tat
ca nhac cu, ngha a thet b thau am hoan
Trang 14
Phan tch va ng dung chuan MP3
toan khong co kha nang thch ngh ong nh con
ng. Nhng kh phat a, ta van khong nghe c
am thanh cua nhng nhac cu b at. V vay vec
u tr / gh a nhng tan so nay a tha, am
chem dung ng kha nheu. Cach gh am tuyen
tnh tren a CD a hoan toan khong heu qua
ve kha canh nay. Do o thay v pha gh a thong
tn cua nhng am khong nghe c, ta se danh
cho cho cac am co the nghe c. Theo cach
nay, dung ng cua thet b gh am can thet co
the xem nh gam ma khong am gam chat
ng am thanh.
Trc kh chung ta nghe c eu g, thong tn se
c phan tch b bo nao cua chung ta. Nao
bo se dch am thanh va oc bo nhng thong tn
khong can thet. Ky thuat am thanh MPEG am
vec nay thay the cho nao bo. Nh vay, nhng
thong tn e ra pha c oc b nao bo bay g
khong con can pha u tr chem g khong
gan a na.
&&. CAC :HA& N&-M C$ *A+N . MP%
1. LOc > maY K>@a PCIcCZJual Fu[[a<N
Bo ma hoa am thanh theo "perceptua subband" phan
tch en tuc cac tn heu vao va xac nh ra ng
cong che (maskng curve), o a mc ngng ma
nhng am thanh d no khong the nghe c
b he thong nghe cua con ng.
Trang 15
Phan tch va ng dung chuan MP3
Tn heu vao c cha thanh 1 so da tan so, go
a "subband". Mo tn heu "subband" c ng t
hoa theo cach ma s ng t hoa teng on c
bat au b vec ma hoa se khong vt qua
ng cong che cua subband o. S ng t hoa
pho teng on v the thch ngh ong v pho cua tn
heu. Thong tn tren bo so hoa c dung trong
mo subband c truyen doc theo cac mau subband
c ma hoa. Bo ga ma se ga ma dong bt
(btstream) ma khong can pha bet cach ma bo
ma hoa xac nh nhng thong tn nay. Neu nay
cho phep bo ma hoa hoat ong v nhng mc
o khac nhau ve chat ng va o phc tap, va
cung cho phep s phat tren trong tng a cua bo
ma hoa.
1. %iai JKMcK PC KiCDu \ua cKC Rma=]i<A C^^CcJT
a. NC@< aBm JKa<K MP%
Trang 16
Phan tch va ng dung chuan MP3
MPEG co the nen 1 dong bt 32 kbt/s en 384
kbt/s. Mot dong bt am thanh PCM tho th khoang
705 kbt/s, do o t so nen to a co the a 22.
T so nen bnh thng a 1:6 hay 1:7. 96 kbt/s a
xem nh trong suot cho hau het cac muc ch thc
te. Co ngha rang ta khong can pha u tam
en bat ky s khac bet nao ga tn heu goc
va tn heu nen o v nhac pop hay nhac rockn
ro. No v mot so ng dung khac nh a hoa
tau pano, toc o bt co the en t 128 kbt/s.
Ne at c t so nen nay, o v am thanh,
ve c ban ta co ha chon a: hoac gam so an
ay mau, hoac gam so bt e ng t hoa. Con
ng co the nghe am thanh v tan so t 20 Hz
en 20 kHz. Theo thuyet cua Nyqust, ta pha ay
mau am thanh tan so to theu a ha an tan
so cao nhat ma ta muon phat a. Tan so ay
mau 44,1 kHz a thch hp. Van e con a a
pha chon so bt cho mot mau ma hoa a bao
nheu. Thong thng a 16 bt.
Ly do e chon con so 16 bt bat nguon t t so
tn heu va nheu (S/N). Nheu no ay snh ra
do qua trnh so hoa. C mo bt them vao, ta co
t so S/N tot hn 6dB (o v ta ng, 6 dB tng
ng v mc to gap o). AAm thanh CD at t
khoang 90 dB S/N. Mc nay phu hp v pham v
ong cua ta ng con tot. Ngha a ta khong
the nghe c bat ky nheu nao en t ban
than he thong. Neu g xay ra neu ta ay mau
v 8 bt? Ta se nghe thay rat nheu teng so
trong ban gh. De dang nghe thay nheu trong
khoang ngh cua ban nhac hoac ga cac t
neu ta gh am mot gong no.
[. HiCDu \ua cKC
Ga s co mot am manh v tan so 1000Hz, va
mot am kem theo co tan so 1100Hz nhng v
cng o am nho hn 18dB. Ta se khong the
nghe thay am nay v no a b che hoan toan
b am chu 1000Hz. No mot cach khac, mot
am thanh yeu gan mot am thanh manh se b
che. Neu co mot am thanh khac tan so 2000Hz
cung co mc to thap hn am 1000Hz a 18dB th
Trang 17
Phan tch va ng dung chuan MP3
ta se nghe c am nay. Ne khong nghe c
am nay ta pha gam mc to cua am nay
xuong con thap hn 45dB so v am chu 1000Hz.
Heu qua che co y ngha rang ta co the ga
tang mc on nen xung quanh mot am manh ma
van khong nghe c teng on v chung se b che
hoan toan. Tang mc on nen con co ngha a
dung t bt e so hoa. Va eu nay cung gong
nh a ta a nen am thanh vay.
Bay g hay xem bo ma hoa am thanh MPEG
hoat ong nh the nao. Bo ma hoa cha pho
tan so (20Hz en 20kHz) thanh 32 da nho (sub-
band). Mo sub-band g 1 phan nho cua pho.
Trong vung tren cua sub-band 8 ta phat mot am
co tan so 1000Hz v mc to 60dB. Bo ma hoa
se tnh toan heu qua che cua am nay va nhan
ra rang co mot ngng che cho toan bo sub-band
th 8 (tat ca nhng am co cung tan so).
Ngng che nay thap hn am phat ra 35 dB. T
so S/N co the chap nhan c a 60 - 35 = 25 dB,
tng ng v 4 bt. Ngoa ra no con anh hng
tren cac sub-band 9-13 va 5-7 v heu qua che
gam dan t sub-band 8. Hn na, bo ma hoa
cung xem xet mc o nhay cam cua ta o v
cac tan so khac nhau. Ta ng t nhay cam v
cac tan so cao va thap. No nhay cam nhat o
v tan so 2-4 kHz, cung da tan so v teng
no con ng.
Cac sub-band nen phu hp v ta ng, ngha a
mo sub-band can co cac tan so co cung cac
tnh chat am hoc tam y. Trong MPEG ayer II, mo
sub-band co o rong 625Hz, do o can pha co
nhng bo oc bang thong phc tap. Ne cac bo
oc phc tap, ng ta them FFT (Fast Fourer
Transform) vao song song v bo oc va s dung
cac thanh phan pho t FFT nh a cac thong tn
them vao bo ma hoa. Bang cach nay ta se ay
mat o bt cao hn o v cac tan so thap ma
ta ng nhay cam hn.
Con nheu van e can pha ban t. Chung ta
ch m ga thch s che ong bo, heu qua che
con xay ra trc va sau mot am manh.
Trang 18
Phan tch va ng dung chuan MP3
2. Ca@c l@Z aBm JKa<K MP%
Co nheu s nham an ve p am thanh MPEG.
Tat ca cac p eu da tren cung mot c o
ma hoa (ma hoa theo nhan thc). Mc o phc
tap cua bo ma hoa va ga ma tuy thuoc vao
mo p. Sau ay a hnh anh cho thay t so
nen ma ta can pha at t 100% chat ng CD
v cac bo ma hoa va ga ma khac nhau.
Sau ay a ch tet ve cac p.
a. L@Z & RLaGCI &T
Nay a p n gan nhat phu hp cho ng dung
cua ng dung. Mo hnh am hoc tam y cua
p nay ch s dung cac tan so che. Neu nay
co ngha rang no se bo qua cac tan so b
khuat sau cac tan so khac. Pham v toc o bt
t 32 kbt/s (mono) en 448 kbt/s (stereo). Tuy
thuoc vao mc o phc tap cua bo ma hoa,
mot am thanh chat ng cao (gan v am thanh
CD) yeu cau toc o bt khoang 256 - 384 kb/s tren
mot chng trnh stereo. Khong nen ma hoa v
mc nen cao hn 384 kb/s. No phc tap cua bo
ga ma thap, o phc tap cua bo ma hoa cao
Trang 19
Phan tch va ng dung chuan MP3
hn 1.5 - 3 an. Lp I c dung nheu trong DDC
va Sod State Audo.
[. L@Z && RLaGCI &&T
Lp II e ngh mc o nen cao hn p I va mc
o oc sau hn. No co nhng ng dung so cho
ca am thanh chuyen nghep va nghep d, nh
qua a phat thanh, TV.Pham v toc o bt t 32 -
192 kb/s cho am thanh mono, va t 64 - 384 kb/s cho
am thanh stereo. Tuy thuoc vao mc o phc
tap cua bo ma hoa, mot am thanh chat ng
cao (gan v am thanh CD) yeu cau toc o bt
khoang 256 - 384 kb/s tren mot chng trnh stereo.
Mc o phc tap cua bo ga ma 25% cao hn so
v p I, va bo ma hoa co mc phc tap cao
hn 2 - 4 an.
c. L@Z &&& RLaGCI &&&T
Lp III con a ra mc o nen va oc cao hn ca
p II va s dung mot bo ma hoa Huffman.
Layer
Compexty
Encoder Decoder
I 1.5 - 3 1
II 2 - 4 1.25
III > 7.5 2.5
Trong bang tren, o phc tap cua bo ga ma
p I c dung e so sanh v p II va III.
Lp III a chuan heu qua nhat va a tr thanh
chuan trong thc te cho vec ma hoa chat ng
am thanh. Lap uan nay danh reng cho vec thc
th p III cua chuan MPEG 1 c go a MP3.
Nhng ca then cua p 3 so v p 1 va p
2 :
Trang 20
Phan tch va ng dung chuan MP3
Gam s chong pho :Lp 3 cung cap phng
phap x y cac ga tr MDCT e oa bo s
d tha do s chong ap ga cac bang.
Lng t hoa ph tuyen :Bo ng t hoa
p 3 nang cac o vao cua no en
nang ng trc kh ng t hoa e cung
cap t so tn heu tren nheu (SNR) cao hn.
Ma hoa entropy cac ga tr d eu : Lp 3
s dung ma Huffman e ma hoa cac mau
ng t hoa cho vec nen d eu tot hn .
S dung mot bo d tr bt (bt reservor):
Dong bt p 3 phu hp hn v o da thay
o cua d eu c nen. Cung gong nh
p 2, khung d eu p 3 co 1152 mau. Lp
3 khong gong p 2 cho d eu ma hoa
khong nhat thet pha va van trong mot
khung co nh. Bo ma hoa co the ay hoac
mn cac bt t bo d tr bt neu can thet
.
S phan bo nheu hay s phan bo bt : Oua
trnh phan bo bt trong p 1 va p 2 ch
xap x ng nheu gay b ng t hoa
theo so bt cho trc. Bo ma hoa p 3 s
dung mot vong ap phan bo nheu. Theo
cach nay , cac bo ng t hoa c thay
o theo th t , va ng t hoa co c
a do tnh toan va c phan bo cho mo
bang phu.
&&&. CAC TH0,N% F0! 4U5N% T60N% MP%
Chuan MPEG cho phep ta chon a cac thong so
cho vec nen am thanh tot nhat phu hp v
ng dung ma ta s dung. Lc o ma hoa cho
cac oa a tong quat. Cac thong so co the
chon a trong bo ma hoa MPEG bao gom : Mode,
Sampng frequency, btrate, va Layer.
1. M>NC
Chuan MPEG co 4 che o:
Trang 21
Phan tch va ng dung chuan MP3
Mono.
Dua channe.
Stereo.
Intensty Stereo (con go a |ont Stereo).
Che o Mono ro rang c dung cho am thanh 1
kenh.
Ne chon che o cho cac ng dung 2 kenh, au
ten ta pha xac nh au a tn heu tra va
au a tn heu pha e cha chung ra thanh 2
fes khac nhau, nham sau nay ta co the am vec
oc ap tren kenh tra hoac pha. Luc o ta se
chon che o Mono. Neu 2 kenh khong can hoat
ong oc ap, ta chon Stereo, Dua hay Intensty
Stereo e tao mot fe duy nhat.
Che o Stereo hay kenh Dua a hoan toan ong
nhat kh chung cung snh ra mot fe duy nhat cho
tn heu stereo. Tuy nhen mot bt ch th se nhan
dang xem mot fe a che o nao va co the
c dung cho nhng ap dung nao.
Che o Intensty Stereo xem xet s d tha ga
cac kenh tra va pha nham to u ma. Chat
ng cua Intensty Stereo thay o theo no dung
cua tn heu a ma hoa. Tuy nhen no ac bet
thch hp cho toc o truyen bt thap.
1. FamZli<A _IC\uC<cG RJ>?c >D la?G maHuT
Mot so toc o ay mau:
32 kHz, 44.1 kHz va 48 kHz o v MPEG 1 (Teu
chuan ISO/IEC 11172-3).
16 kHz, 22.05 kHz va 24 kHz o v MPEG 2
(Teu chuan ISO/IEC 13818-3).
Kh chon a toc o ay mau can xem xet cac van
e:
Tan so ay mau cang n th cang nghe thuan
ta (o da frame nho hn).
Trang 22
Phan tch va ng dung chuan MP3
Bang thong tn heu g han mc 15 kHz kh
ay mau toc o 32 kHz va 8 kHz toc o 16
kHz.
Tan so ay mau (kHz) va toc o cua am thanh
ma hoa (kbps) co the chon oc ap.
Tan so ay mau 44.1 kHz hay 22.05 kHz a khong
thet thc cho vec chon oc v o da frame (byte)
a thay o.
Nhng fe c ay mau nhng tan so khac
nhau th rat kho khan kh hoa tron.
Kh dung ngo nhap so AES/EBU, tan so ay mau
b co nh b tn heu nhap.
Neu khong bat buoc, Dggram yeu cau ay mau
48 kHz hoac 44.1 kHz cho phat thanh hay ng
dung mutmeda. Neu ta pha s dung toc o bt
thap cho s truyen co heu qua, toc o 24 kHz
a thch hp.
2. *iJ 6aJC
Mo Layer va che o co nheu cach chon a
toc o bt (bt rate). Vec chon toc o bt tuy
thuoc trc ten vao chat ng am yeu cau.
Bang thong tn heu a hep hn neu toc o bt
thap, khen cho no khong thc te o v mot
so ng dung. Toc o bt c o theo kobts /
sec(kbps).
Kh chon a toc o bt can xem xet cac van e:
Ta 128 kbps tren mo kenh (hay 256 kbps stereo),
chat ng am thanh CD se at c v Layer I
hay Layer II.
Ta 192 kbps tren mo kenh, chat ng am thanh
a hoan toan trong suot.
Toc o 128 kbps / kenh c dung pho ben nhat
trong phat thanh. No tng ng v t so nen 1:6
toc o ay mau 48 kHz. Toc o thap hn 128
kbps / kenh c dung trong cac ng dung yeu
Trang 23
Phan tch va ng dung chuan MP3
cau t so nen n hn do g han cua bang
thong truyen hay thet b u tr.
Mot so toc o bt cung cap b chuan am thanh
MPEG :
MPEG 1: 32 kHz, 44.1 kHz and 48 kHz
- Layer I :
32, 64, 96, 128, 160, 192, 224, 256, 288, 320, 352, 384,
416, 448 kbps.
Nhng toc o nay a co the che o Mono hay
stereo..
- Layer II :
32, 48, 56, 64, 80, 96, 112, 128, 160, 192, 224, 256, 320,
384 kbps.
32, 48, 56, 80 kbps ch co the che o Mono; 64,
96, 112, 128, 160, 192 kbps co the ca ha che o
Mono va Stereo;224, 256, 320, 384 kbps ch co the
che o Stereo.
Trang 24
Phan tch va ng dung chuan MP3
CH#$N% &&&: MA/ H0A THU CA+M
& . C$ F$+ A,M TA,M LY
Cac thuat toan ma hoa thu cam eu da tren mo
hnh tep nhan am thanh e to u heu qua ma
hoa. No chnh a ta ng , s cam nhan am thanh b
anh hng b cac tnh chat che. Am tam y hoc a
1 nh vc khoa hoc nghen cu va ga thch s cam
nhan am thanh cua ta ng o v s kch thch cua
nguon am. Cac phng phap ma hoa thu cam eu
da vao cac nguyen y c ban cua am tam y hoc
nh :ngng nghe, cac bang t han, hen tng che.
Cac phng phap nay oa bo cac thanh phan d
tha khong nghe c cua tn heu audo e gam bt
d eu trong qua trnh nen.
1. NAOY<A <AKC JuGCDJ >?i Ra[=>luJC JKIC=K>lN
>^ KCaIi<AT
Ngng nghe tuyet o a mc nang ng can thet
cua mot tone thuan ( mc o cho trc ) e ma
no co the nghe c trong mot mo trng khong co
teng on.
1. Ca@c [a`<A J@i Ka< RcIiJical [a<N=T
Cac nghen cu thc te cho thay ta ng co the
cam nhan c cac nguon am co tan so t 20 Hz
en 20KHz. Ngoa ra , ta ng con c co a bo
phan tch pho o v pho tan nghe c. Ta ng
c co a 1 bang oc (fter bank) gom nheu mach oc
thong da v cac bang thong co o rong khac
nhau, no ac trng cho kha nang phan ga am thanh
cua ta ng. Cac bang nay c go a bang t
han, chung co o rong thay o theo tan so t thap
en cao. Tren thc te co 25 bang t han c qu
c theo bang cac bang t han d , mo bang co
mot tan so trung tam. No rong cua mo bang co
the c tnh xap x nh sau :
BW
c
(f)=25+75|1+1.4(f/1000)
2

0.69
(H)
Mot bang t han co o rong a mot Bark(at theo
ten cua nha khoa hoc Barkhausen). Ham sau ay cho
phep chuyen t ga tan so sang ga Bark:
Trang 25
Phan tch va ng dung chuan MP3
(f) = 13arctan(0.00076f) + 3.5arctan|(f/75000)
2

(Bark)
Ta ng co kha nang phan tch th gan tan so,
kha nang nay tao ra cac hen tng che ong th
va khong ong th. Cac hen tng nay c s
dung b cac bo ma hoa e xac nh cac thanh
phan d tha nham oa bo, khong ma hoa chung.
Bang
t han
Tan so
trung tam
No
rong
(Hz)
Tan so
d (Hz)
Tan so
tren (Hz)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
50
150
250
350
450
570
700
840
1000
1170
1370
1600
1850
2150
2500
2900
3400
4000
4800
5800
7000
8500
10500
13500
18755
-
100
100
100
110
120
140
150
160
190
210
240
280
320
380
450
550
700
900
1100
1300
1800
2500
3500
6550
-
100
200
300
400
510
630
770
920
1080
1270
1470
1720
2000
2320
2700
3150
3700
4400
5300
6400
7700
9500
12000
15500
100
200
300
400
510
630
770
920
1080
1270
1470
1720
2000
2320
2700
3150
3700
4400
5300
6400
7700
9500
12000
15500
22050
Bang cac bang t han
2. HiCD< JO<A cKCR ma=]i<AT
Trang 26
Phan tch va ng dung chuan MP3
Hen tng che xay ra kh mot hoac nheu nguon am
b am cho khong nghe c do s co mat cua mot
nguon am khac. Tn heu che cac tn heu khac c
go a cac thanh phan che (masker), cac tn heu b che
th go a cac thanh phan b che (maskee). No chenh
ech ga thanh phan che va ngng che (do tan so
va mc ap suat am thanh cua thanh phan che quyet
nh) go a t so tn heu tren che SMR (Sgna-to-
maskng rato). Thong so nay rat quan trong trong
phng phap ma hoa thu cam. Hen tng che co 2
oa : che ong th va che khong ong th.
Hen tng che ong th : xay ra kh nheu nguon
am tac ong vao ta ng. Mac du pho tan am
thanh co the cha nheu hen tng che ong th
phc tap, v muc teu nh dang sa dang ma hoa,
ta ch can quan tam en 3 oa che ong th :
nheu che tone , tone che nheu, nheu che nheu.
Nheu che tone (Nose-Maskng-Tone, NMT) : v du nh
1 nheu bang thong hep (co bang thong a 1
Bark) che mot tone v eu ken a tone b che
co mc SPL nho hn ngng do nheu che quyet
nh.
Tone che nheu (Tone - Maskng - Nose, TMN): V du
nh 1 tone tan so trung tam cua 1 bang nheu
(bang thong a 1 Bark) che bang nheu o kh
mc SPL cua bang nheu thap hn mc ngng
do tone che quyet nh .
Nheu che nheu (Nose - Maskng - Nose, NMN): Nay
a trng hp ma 1 nheu bang thong hep b
che b 1 bang nheu khac.
Hen tng che khong ong th :xay ra kh cac tone
(hoac nheu) c phat en ong th nhng gan
nhau theo th gan. Hen tng ten che xay ra kh
mot tone (hoac nheu) b che b mot tone (hoac
nheu) xay ra sau. Tng t, hen tng hau che kh
mot tone xay ra trc che mot tone xay ra sau o.
Bo ma hoa thu cam phan tch thanh phan tan so
va ben o cua tn heu audo vao va so sanh v
mo hnh am snh y cua ta ng. Bo ma hoa oa bo
cac thanh phan d tha khong can thet ( phan ta
Trang 27
Phan tch va ng dung chuan MP3
ng khong cam nhan c) v vay gam 1 ng
ang ke d eu can ma hoa. Ve mat y thuyet,
phng phap nay am hao hut thong tn nhng ta ng
van khong cam thay c s suy gam chat ng tn
heu audo.
Trang 28
Phan tch va ng dung chuan MP3
&& . MA/ H0A *AaN% PHU
Trong phng phap ma hoa bang phu tn heu Audo
c cho vao 1 bang oc gom M mach oc thong da
chem ay pho tan nghe c. Mo hnh am tam y
c s dung e tnh toan ngng che cho mo bang
phu. Lo ra cua mo mach oc c ay mau t han,
va c ng t hoa va ma hoa mot cach reng
bet.
Vec ng t hoa cua mo bang phu c da tren
t so nang ng nh tren mc che (o chenh ech
ga thanh phan cac mc SPL cao nhat va ngng
che) tnh c cho mo bang phu. T so nay c s
dung b bo phan pho bt e phan bo so bt can
thet cho vec ng t hoa mo bang phu, cac thanh
phan thap hn ngng che th khong c ma hoa.
Cuo cung cac mau ng t hoa c ong thanh
cac khung d eu, trong khung co kem theo cac d
eu phu khac.
Phan mach ga ma th n gan hn do no khong can
mo hnh am tam y. Cac khung d eu c m ra,
cac mau bang phu th c ga ma va uc phan
tch tan so th gan e tao a tn heu audo ban au.
&&. MA/ H0A *&!N '0)&
Trong phng phap ma hoa ben o cac mau Audo
trong men th gan c chuyen sang men tan so
nh cac phep ben o toan hoc. Cac bo ma hoa
co the s dung cac phep ben o nh phep ben
o Fourer r rac DFT (Dscrete Fourer Transform) hoac
MDCT. Cac he so co c t cac phep ben o
c ng t hoa va ma hoa da tren mo hnh am
tam y, cac thanh phan b che c oa bo. Nng
tren quan em thong tn, s ben o am gam
Entropy cua tn heu cho phep ma hoa heu qua hn.
Trong cac bo ma hoa ben o thch ngh, mot mo
hnh c s dung e ng t hoa thch ngh mo
bang phu, nhng cac he so trong mo bang c ng
t hoa v cung so bt. Thuat toan phan pho bt tnh
toan nheu ng t hoa trong mo bang e co c
Trang 29
Bo em,
Ben o
Lng t
hoa thch
ngh
Tnh toan
ngng
che
FFT va
mo hnh
am tam
y
Ma
hoa
Entrop
Phan tch va ng dung chuan MP3
t so S/N can thet cho vec che. Trong va trng hp
toc o bt o ra co the thay o. Trc kh truyen ,
d eu thng c nen v phng phap ma hoa
Entropy, chang han nh ma hoa Huffman. Mo hnh ma
hoa thch ngh c mnh hoa nh hnh sau:
Audo_vao
Audo ra
Bo ma hoa ben o thch ngh
&&&. MA/ H0A MP2 R MP2 NC04&N%T
Tn heu vao bo ma hoa a bo eu ben ma xung
bnh thng (PCM) c phan cha vao khung co 1152
mau. Khung nay c cha am ha granues, mo granue
a 576 mau. Khung c g en ca ha kho ben o
Fourer nhanh (FFT) va bang oc phan tch.
1. PKaB< JMcK ZKC@Z [iC?< >Wi _>uIiCI <Ka<K
R__T a<alG=i=T
Trang 30
Phan tch va ng dung chuan MP3
Kho FFT chuyen 576 mau en men tan so s
dung phep ben o Fourer.
Trang 31
Phan tch va ng dung chuan MP3
1. NAOY<A cKC RMa=]i<A TKIC=K>lNT
Thong tn tan so t kho FFT c s dung e en
ket mo hnh am tam y e xac nh ngng che
cho tat ca cac tan so. Ngng che c ap dung
vao bo ng t hoa e xac nh so bt can thet
ma hoa cho mo mau. Chung thng xem xet eu
s chuyen o ca so co can thet trong kho
ben o cosn r rac ca ten (MDCT).
2. *a`<A l>c ZKaB< JMcK RA<alG=i= _ilJCI[a<]T
Bang oc phan tch bao gom 32 bang thong oc bang
nhau. Nau ra cua bang oc a 1 mau t han. Ngha
a mo granues gom 576 mau, co 18 mau ra t 32
bang thong oc, ma a ra tong cong a 576 mau
subband.
X. M4CT P@i cOa =>W >D<A
Mau subband c ben o en men tan so
thong qua MDCT. MDCT thc hen 18 mau (kho da )
cung th em e at o phan ga tan so cao,
thc hen 6 mau (kho ngan ). Do co s chong ca
so en nhau 50% nen kch thc ca so a 36 mau
cho kho da va 12 mau cho kho ngan. Kho ngan
ca then o phan th gan tot hn e dung cho
cac tn heu chuyen tep va am nho teng vang
a. Kho da cho phep o phan ga tan so tot
hn. Lp 3 co 3 mode chon kho : 2 mode kh tat ca
cac o ra cua bang oc eu qua c ben o
MDCT, va 1 mode hon hp kh 2 bang tan thap s
dung kho da con 30 bang tan cao s dung kho
ngan .
Trc mo t MDCT xuat ra subband, mo subband
cu pha nghch ao tan so (nhan -1) e dong pho
xuat hen theo th t tang dan.
Kh ma hoa thu cam entropy vt qua ga tr 1800
se xac nh hang so. Kho oc MDCT se c
chuyen en ca so ngan. Ne duy tr thuoc tnh ta
tao a cua MDCT, s chuyen o ga kho ngan va
Trang 32
Phan tch va ng dung chuan MP3
kho da khong the tc th, v vay co ca so
chuyen o t da en ngan, t ngan en da.
Cheu da cua kho ngan bang 1/3 kho da. Trong
che o kho ngan, 3 kho ngan thay the 1 kho da
ma khong ke en oa ca so ap dung, so dong
MDCT con a khong o. Cho 1 kho reng bet cua
d eu, tat ca cac kenh kho oc co the cung
keu kho MDCT ( da hoac ngan) hoac 1 mode kho
hon hp n ma subband tan so nho hn 2 cho phep
kho da trong kh con a da tren 30 co kho ngan.
Che o hon hp cung cap o phan ga tan so
tot hn cho tan so thap hn trong kh duy tr o phan
ga th gan cao hn.
MDCT ben o tn heu am thanh vao men tan so,
snh ra bet danh c a vao b mau con trong
kho oc co the thoat kho tng phan (partay
canceed).
5. CKia JQ lCD Pa lO<A JO K>@a RFcali<A Pa
Eua<JibaJi><T
Ngng che c s dung e tnh toan co bao nheu
bt can thet trong mo bang t han e ma hoa
Trang 33
Phan tch va ng dung chuan MP3
mau sao cho nheu ng t hoa khong the nghe
c. Bo ma hoa thng s dung toc o bt phu
hp v yeu cau.
Ma hoa Huffman a mot phan cua phep ap b v
no khong co kha nang xac nh so bt can thet
cho vec ma hoa.
8. MaY K>@a Hu^^ma< Pa =i<K Ia N><A [iJ
RHu^^ma< C>Ni<A a<N *iJ=JICam %C<CIaJi><T
Mau ng t hoa a u tr va ma hoa Huffman
trong dong bt doc theo he so t e va thong tn
(sde nfomaton).
Huffman a phng phap ma hoa khong mat d
eu dung t ma (codeword) e u tr bt nh phan
cua "symbo". V du cac symbo A, B, C, D c ma
hoa thong qua cac code word nh sau:
FGm[
>l
C>NC
c>IN
A
B
C
D
0
10
110
111
Symbo A va B c phan bet thong qua cheu da
cua t ma tng ng a "0" va "10". The manh
cua cua ma hoa Huffman a tat ca code word co
kha nang ga ma ong nhat ( unquey decodabe).
V vay trnh t ma hoa cua cac bt a:
01101110100
tng ng v chuo d eu:
"ACDABA"
Ga thuat ma hoa Huffman da tren mo hnh cay
ma hoa (codng tree) dung e phan bet cac symbo
thong qua code word. Symbo nao co xac suat cao th
code word ngan, ngc a symbo co xac suat thap
th code da hn. Trnh t thc hen theo cac bc sau:
Sap xep so an xuat hen ( xac suat) cac
symbo theo th t gam dan.
Trang 34
Phan tch va ng dung chuan MP3
No 2 symbo a v nhau theo th t t tren
xuong e tao symbo m.
Tep tuc bc 2 cho en kh con a 1 symbo v
xac suat a 1.
Ten hanh anh so cho cay ma hoa, bat au
t goc (symbo co xac suat a 1) tr en pha
tren th anh so "0" ngc a t goc xuong
ta anh so "1".

V du ta co chuo can ma hoa a " 3AMPL 0_
HU__MAN C04&N%". Nau ten ta tnh xac suat cua
tng symbo trong chuo ky t.
FGm[
>l
3a@c
=ua?J
E

A
M
P
L
O
F
H
U
C
D
I
N
G
space
2/25
1/25
2/25
2/25
1/25
1/25
2/25
3/25
1/25
1/25
1/25
1/25
1/25
2/25
1/25
3/25
Trang 35
Phan tch va ng dung chuan MP3
Tep tuc sap xep cac symbo theo xac xuat gam
dan.
". TK>B<A Ji< RFiNC &<^>ImaJi><T
Thong tn cha cac thong so eu khen thao tac
ga ma nh a s a chon bang Huffman, chuyen
o ca so, eu khen o (gan contro).
Trang 36
Phan tch va ng dung chuan MP3
CH#$N% &.: %&A+& MA/ MP%1 L$P
2
&. %&A+& MA/ MP2 RMP2 4C04&N%T
S o cau truc :
1. 'd<K Na<A ]Ku<A R_IamC _>ImaJT
Khung a mot kha nem trung tam kh ga ma
dong bt MP3. No bao gom 1152 mau n hoac mau
men tan so, c cha ha granues mo granues
gom 576 mau. Mo granues c cha am 32 kho
subband co 18 dong tan so.
Trang 37
Phan tch va ng dung chuan MP3
Pho tan so dao ong t 0 t F
S
/2 Hz. Subband phan
cha pho thanh 32 phan bang nhau. Mo subband
cha 18 mau ma a c ben o en men tan
so bang phep ben o MDCT.
576 dong tan so trong mot "granue" c phan cha
vao trong 21 he so t e c thet ke e phu
hp tan so bang t han cang gan cang tot. Da
he so t e c s dung chnh cho vec ng t
hoa a (requantzaton) cua cac mau.
Khung (frame) bao gom 4 phan: teu e (header),
thong tn (sde nfomaton), d eu chnh (man data),
d eu phu thuoc (ancary data):

Cheu da cua khung co nh cho toc o bt phu
hp ,v o ech co the a mot byte e duy tr o
chnh xac toc o bt.
a. TiCBu C
Fe MPEG c xay dng t nhng phan t nho
hn go a khung, khung a 1 muc oc ap. Mo
khung gom header va thong tn am thanh. V vay
ban co the cat 1 phan nao o cua fe MPEG va
Trang 38
Phan tch va ng dung chuan MP3
hat trc tep. Nhng p III th khong ung nh
vay. Hng en to chc d eu ben trong
MPEG Verson 1 Layer III, khung thng e thuoc vao
nhng thanh phan khac va khong the cat ra
hat trc tep c. Kh ban muon oc thong tn ve
fe MPEG thong thng ch oc ve khung au
ten, ve header va cho rang nhng khung khac
cung tng t. Neu nay co the khong ung
trong mo trng hp. Fe MPEG co toc o bt khac
nhau co the c s dung th go a chuyen o
toc o bt (btrate swtchng) co ngha a toc o bt
chuyen o doc theo no dung cua khung. V
cach nay toc o bt thap hn co the c s
dung trong khung ma khong am gam chat ng
am thanh.
Khung co c che kem tra o CRC. Bo kem tra o
da 16 bt . Neu co o xay ra th c u tr
trong phan header. Sau kh kem tra o, co the tnh
cheu da cua khung va s dung no neu can
nhng thong tn khac ve header hay tnh CRC cua
khung.
Teu e co cheu da 4 bytes (32 bts) va cha
thong tn ve p , toc o bt, tan so mau va
che o stereo c mo ta cu the nh sau:
AAAAAAAA AAA**CC4 __%H
&&ee:LMM
FiA<LC<AJ
K
P>=iJi>
<
4C=cIiZJi><
Trang 39
Phan tch va ng dung chuan MP3
R[iJ=T R[iJ=T
A 11 (31-
21)
Nong bo khung( tat ca cac bt
eu c at trang tha 1)
B 2 (20,19) MPEG Audo verson ID
00 - MPEG Verson 2.5
01 - Bt d tr
10 - MPEG Verson 2 (ISO/IEC 13818-3)
11 - MPEG Verson 1 (ISO/IEC 11172-3)
C 2 (18,17) Phan mo ta Layer
00 - d tr
01 - Layer III
10 - Layer II
11 - Layer I
D 1 (16) Bt bao ve
0 - kem tra o CRC (16bt CRC
foows header)
1 - khong kem tra.
E 4 (15,12) Ch so toc o bt
bts
V1,L
1
V1,L
2
V1,L
3
V2,L
1
V2, L2
L3
000
0
free Free Free free Free
000
1
32 32 32 32 8
001
0
64 48 40 48 16
001
1
96 56 48 56 24
010
0
128 64 56 64 32
010
1
160 80 64 80 40
011
0
192 96 80 96 48
011
1
224 112 96 112 56
100
0
256 128 112 128 64
100
1
288 160 128 144 80
Trang 40
Phan tch va ng dung chuan MP3
101
0
320 192 160 160 96
101
1
352 224 192 176 112
110
0
384 256 224 192 128
110
1
416 320 256 224 144
111
0
448 384 320 256 160
111
1
bad Bad bad bad Bad
V1 - MPEG Verson 1
V2 - MPEG Verson 2 va Verson 2.5
L1 - Layer I
L2 - Layer II
L3 - Layer III
free : format tuy y.
bad :ga tr khong c phep s
dung.
Fe MPEG co toc o bt thay o
(VBR). Mo khung co the c tao
ra v toc o bt khac nhau va
c s dung trong tat ca cac
p( ga ma p 3 cung dung
phng phap nay).
F 2 (11,10) Ch so tan so toc o mau
bt
s
MPEG1 MPEG2
MPEG2.
5
00
44100
Hz
22050
Hz
11025 H
z
01
48000
Hz
24000
Hz
12000 H
z
10
32000
Hz
16000
Hz
8000 Hz
11 Reserv. reserv. reserv.
G
1 (9) Bt em (paddng bt)
Trang 41
Phan tch va ng dung chuan MP3
0 - khung khong s dung bt em
1 - khung s dung bt em v 1 khe
cam m phu.
Cach tnh cheu da khung : trc
ten ta hay phan bet kch thc
khung va cheu da khung. Kch
thc khung a so mau co trong 1
khung . thong thng p I co
384 mau, p II va III co 1152
mau.
Cheu da khung a cheu da cua
khung kh a nen xong va c tnh
tren sot. O p I , 1 sot co 4 byte
con p II va III ch co 1 byte.
Cheu da khung co the thay o
thong qua bo em hoac s ben
o toc o bt.
Lp I :
FrameLengthIn Bytes = (12 *
BtRate / SampeRate + Paddng) * 4
Lp II va III:
FrameLengthIn Bytes = 144 * BtRate
/ SampeRate + Paddng
H 1 (8) Bt danh reng.
I 2 (7,6) Channe Mode
00 - Stereo
01 - |ont stereo (Stereo)
10 - Dua channe (2 mono channes)
11 - Snge channe (Mono)
| 2 (5,4) Mode m rong (ch s dung trong
|ont stereo)
K 1 (3) Ban quyen
0 - Audo khong ban quyen
1 - Audo co ban quyen
L 1 (2) Nguyen ban
0 - ban phu meda
1 - ban goc meda
M 2 (1,0) Tam quan trong (Emphass)
00 - none
01 - 50/15 ms
10 - bt d tr
11 - CCIT |.17
[. TK>B<A Ji< R=iNC i<^>maJi><T
Trang 42
Phan tch va ng dung chuan MP3
Phan thong tn cha thong tn can thet e ga
ma d eu chnh nh : a chon bang Huffman, he
so t e, cac thong so ng t hoa a va s
a chon ca so.
Thong tn phu da 17 byte kenh n, 32 byte
kenh o.
Man data begn: Nem bat cha nhng d eu
chnh cua khung
SI granues 0 : thong tn ve frame v tr th 0
SI granues 1 : thong tn ve frame v tr th 1
(1): Bt dung reng ( prvate bts) do ng s dung
nh ngha.
(2): Thong tn ve vec a chon he so t e.
Trang 43
Man data
begn
(1
)
( 2) SI granues
0
SI granues
1
Phan tch va ng dung chuan MP3
c. 4OY liCDu cKM<K Rmai< NaJaT
Cha nhng thong tn ve he so t e (scae
factor), mau subband c ma hoa (coded subband
sampes), d eu ho tr (auxary data).
Phan d eu chnh cha he so t e ma hoa
va dong tan so ma hoa Huffman, cheu da phu
thuoc vao toc o bt va cheu da cua d eu
phu.
Cheu da cua phan he so t e phu thuoc vao
he so t e co c s dung a hay khong va
tng t o v cheu da ca so (da hay
ngan). He so t e c s dung trong bo ng
t hoa cua mau.
Yeu cau bt ma hoa Huffman ben o theo th
gan trong suot ten trnh ma hoa. Nnh dang toc
o bt ben o co the c s dung e x y
eu nay nhng toc o bt phu hp th thng
yeu cau cho mot ng dung.
Bo ma hoa thc hen tren kho d eu da
1152 mau. Kh cheu da d eu ma hoa nho
hn trung bnh so bt can thet, bo ma hoa a
phan kch thc d ra nay vao bo d tr
( reservor). Kh kch thc bo ma hoa qua n se
mn a nhng bt d nay. Bo ma hoa ch co
the mn bt d t khung trc no (past frame),
khong the mn c t khung sau no (future
frame) . V vay co mot ky thuat d tr bt c
nh ngha ma khong cho phep s dung kho d
eu chnh trong mot khung e c dung trong 2
khung en tep nhau :
Trang 44
Phan tch va ng dung chuan MP3
Trong v du nay frame 1 s dung bt t frame 0 va
frame 1. Frame 2 s dung bt t frame1. Frame 3 yeu
cau cao hn s dung bt t frame1, 2va 3. Cuo
cung frame 4 ch s dung bt ta frame 4.
Tham so "man _data_begn" trong thong tn cho bet
nhng bt t khung pha trc can thet hay
khong. Tat ca d eu cho mot khung c u
tr trong khung trc o. Kch thc n nhat
cua kho u tr bt a 511 byte.
N. 4OY liCDu ZKu RA<cillaIG 4aJaT
Phan d eu nay do ng dung nh ngha ,
khong can thet e ga ma d eu audo.
1. %iai maY Hu^^ma<
Ne ga ma Huffman chung ta bat au t goc
cua cay nh phan Huffman. Neu gap bt "1" th
sang ben pha, ngc a gap bt "0" th sang ben
tra cho en kh gap nut a th dng.
Trang 45
Phan tch va ng dung chuan MP3
V du ta co 1 chuo bt "00110", bt au a "0" nen ta
sang tra en nut F4. V cha a nut a nen tep
tuc bt th 2 (cung sang tra) en nut F2 , bt th 3
a "1" nen chuyen hng sang pha. Ta ay v en
nut a nen xuat ra k t "".
Tep tuc ga ma 2 bt con a "10", trc ten v a
bt "1" nen ta sang pha en nut F3, tep tuc bt "0"
sang tra en nut a => xuat ra ky t "a".
Trang 46
Phan tch va ng dung chuan MP3
Thc th qua trnh ga ma
byte huffman_decode_byte ( ponter to bnary tree node )

//trc ten chung ta kem tra xem nut hen ta a nut
a hay nut trung gan
//neu a nut trung gan th kem tra cheu da bt tm
kem pha nho hn 8
f( node->vaue = 256 )

// Neu a nut a th xuat ra ky t
return node->vaue;

ese

//chung ta ang ung ta node trung gan ( fctve node),
tep tuc sang //pha hay tra tuy thuoc vao bt ke
tep
//tra ve ga tr byte c ga ma
f( get_bt() == 0)

// sang ben tra
return ( huffman_decode_byte( node->eft_node ) );

ese

// sang ben pha
return ( huffman_decode_byte( node->rght_node ) );



2. LO<A JO K>a@ lai RIC\ua<JibaJi><T
Kho ng t hoa a s dung he so t e e
ben o ga tr ma hoa Huffman i=
i
thanh ga tr
pho fI
i
s dung cong thc sau:

Trang 47
Phan tch va ng dung chuan MP3
C: da toan cuc va da he so t e phu thuoc he
so at c t thong tn phu va he so t e.
X. FagZ fC?Z lai JKO@ JO R IC>INCIi<AT
"Bo ng t hoa a" pha sap xep a th t theo
bang he so t e s dung ca so ngan. Trong v
du sau ay co 1 bang gom 18 mau cha 3 ca so
cua 6 mau.

Nhng ca so ngan c sap xep a theo th t
trong bo ma hoa e ma hoa Huffman heu qua
hn, b v mau gan nhau (sampe cose) trong men
tan so( thap hoac cao) co cung ga tr.
5. %iai maY =JCIC>
Dong bt nen co the ho tr 1 hoac 2 kenh audo
trong 4 che o:
Mot che o "monophonc" cho kenh am thanh n.
Mot che o"dua_momophonc" cho 2 kenh am
thanh oc ap.
Mot che o"stereo" cho nhng kenh "stereo" ma
nhng bt dung chung nhng khong c s dung
ma hoa ont_stereo.
Mot che o "ont_stereo" ma co nhng thuan
ve mo tng quan ga nhng kenh stereo (MS
stereo) hoac khong thch hp o v nhng pha
khac nhau ga cac kenh (cng o stereo) hoac
ca ha.
Trang 48
Phan tch va ng dung chuan MP3
a. %iai maY FJCIC> MF
Trong che o kenh tra va pha c chuyen o
vao tong (M), sa phan (dfference) (S) cua 2 kenh.
Trong o tong tn heu co nheu thong tn hn tn
heu sa phan. Ne ga ma kenh tra va pha co
the c ta tao a bang cong thc:

%iai maY aBm JKa<K R=JCIC>T
Trong o: a ch so dong tan so.
Va vec x y MS stereo a nen khong ton that.
[. %iai maY cO<A >D =JCIC>
Bo ga ma ta tao a kenh tra va pha da tren
tn heu n L+R (L

) c chuyen o trong kenh tra
va s can bang ma c chuyen o thay v dung
he so t e (srato
sfb
)

cho kenh pha.
%iai maY h>i<J =JCIC>
Trong o : spos
sfb
: g han trong khoang 0 ->6. V the
tan() c thay the bang bang co san.
8. %iam [iCDJ Na<K RAlia= 6CNuJi><T
Gam bet danh c yeu cau e oa bo heu ng
bet danh cua kho oc a pha trong bo ma hoa
Trang 49
Phan tch va ng dung chuan MP3
(khong ng dung cho granue s dung kho ngan).
Gam bet danh gom 8 buttrefy cho mo subband.
Mo butterfy chong bet danh uan phen (rotaton) c
ap dung en 1 trong 8 cap thet ke cua dong quang
pho. No khong anh hng hoan toan en thuoc tnh
ta cau truc (reconstructor) cua kho oc, nhng ca
ten he so nen cua bo ma hoa bang cach co
gang cha nang ng trong mo subband.
Mot granue anh xa en men th gan - tan so cua
khung d eu vao. Khong gong nh vung th gan
- tan so thong thng no c sap xep a cho gam
bet danh , au ten sap xep trong men tan so va
sau o tep tuc trong men th gan. V vay 18 mau
trong men th gan cua mo subband c nhom a
v nhau. Butterfy c ap dung cho mo mau uan
phen trong mo subband uan phen.
Bo ma hoa a g bo em nay e ao ngc MDCT
e ta cau truc mau subband trong he thong gam
aas cho ta cau truc bang kho oc tong hp. Bo ga
Trang 50
Phan tch va ng dung chuan MP3
ma butterfy cung tng t tr ph co s ben o trong
k heu.
". &M4CT
IMDCT( Inverse Modfed Dscrete Cosne Transform)ben o
vach pho (
k
) thanh kho oc a pha mau subband (S

)

Ben o IMDCT
n=12 : kho ngan
n=36: kho da.
Trong kho da IMDCT xuat ra 36 ga tr cho 18 ga tr
vao. Nau xuat c ay ca so phu thuoc vao
keu kho (bat au, ng trung bnh, ket thuc), na
au (frst haft) c chong en nhau, na sau c u
vao kho.
No v kho ngan 3 an ben o c thc hen
e snh ra 12 ga tr xuat. Ba vector c ay ca so
va chong en nhau. Co 6 ga tr "0" no vao vector
ket qua cho nen vector co o da 36.
Trang 51
Phan tch va ng dung chuan MP3
Bo xuat ra t IMDCT a 18 mau men th gan cho
32 kho subband.
Trang 52
Phan tch va ng dung chuan MP3
i. :K>?i l>c a ZKa J>W<A KZ R FG<JKC=i=
P>lGZKa=C _ilJCI[a<]T
Kho oc a pha tong hp ben o 32 kho subband
cua 18 mau men th gan trong mo granue en 18
kho cua 32 mau PCM. Kho oc hoat ong tren 32
mau ta cung 1 th em, 1 trong so kho subband
c mnh hoa theo hnh d ay:
32 ga tr subband c ben o thanh 64 ga tr
vector V s dung ben the cua IMDCT (ma tran).
Vector V c at vao hang FIFO u tr 16 vector
cuo cung.
Vector U c tao ra t 32 kho thanh phan trong
FIFO, ca so D c ap vao vector U e snh ra
vector W. Mau ta tao a se thu c t vector W
bang cach phan tch no thanh 16 vector co kch c
32 va tnh tong cac vector o.
&&. NH7N CHUN% . H&-U EUA+ CAC %&A+&
THUA-T %&A+& MA/ MP2
Trang 53
Phan tch va ng dung chuan MP3
1 . %iai maY Hu^^ma<
Nnh ngha :
Bo ga ma Huffman chuyen o cac ma co
cheu da thay o trong dong bt thanh cac vach
pho. Ga ma dung 32 bang co nh t chuan
(|1) cha thong tn ve qua trnh ma hoa a
c ten hanh nh the nao.
Dong bt trong vung thong tn c dung e chon
a cac bang cho cac phan khac nhau cua pho
tan so.
Co mot c che ac bet trong bo ga ma dung
cho vec ga ma cac ga tr n.
T ma co cheu da thay o da nhat cho mo
bang a 19 bt. Ch co 16 bang khac nhau c
nh ngha theo chuan .
Tm kem cay nh phan :
Cac bang ga ma Huffman co the chuyen
thanh trong cac cay nh phan. Mo cay the
hen mot bang cu the. Nhng cay c duyet
qua theo tng bt trong dong bt , trong o 0 ben
tra va 1 ben pha.
Toan bo t ma c ga ma mot cach ay
u kh gap mot nut a. Cac nut a cha cac
ga tr cua ng pho .
Bang tm kem trc tep (Drect Tabe Lookup) :
No v phng phap bang tm kem trc tep,
bo ga ma s dung cac bang n. Cheu da
cua mo bang a 2
b
, trong o b a so bt n
nhat trong t ma da nhat cua bang o .
Ne ga ma mot t ma, bo ga ma oc "b" bt,
cac bt nay c dung nh mot ch so trc tep
tro vao bang. Trong bang, mo muc cha mot
ga tr ng pho va thong tn ve cheu da
thc cua t ma.
Trang 54
Phan tch va ng dung chuan MP3
Ga ma theo cum (Custered Decodng) :
Phng phap ga ma theo cum ket hp
phng phap cay nh phan va bang tm
kem trc tep .
Mot so bt co nh (v du nh 4) c oc t
dong bt va c dung nh mot ch so tm
kem trong mot bang. Mo phan t bang
cha mot "mss" bt hay mot "ht" bt cho bet
eu t ma a c ga ma ay u cha .
Neu mot "ht" bt c phat hen ga tr
c oc t phan t bang cung nh so bt
ma c dung cho t ma. Neu a "mss" bt
ga ma tep tuc bang cach dung thong tn
t phan t bang e xac nh can bao
nheu bt them na e oc t dong bt
dung cho ch so tep theo, cung nh a ch
bat au cua bang ke tep c dung.

1 . *>D lO<A JO K>@a lai R6C\ua<JibCIT
Nnh ngha :
Cong thc cua ng t hoa a mo ta
vec x y e nh t e a o v d
eu a c ma hoa Huffman. No toan
cuc va o cua kho con anh hng tat
ca cac ga tr trong mot ca so th gan.
Ngoa ra, cac he so t e va c heu
chnh o trong mo bang he so t e .
Sau ay a phng trnh ng t hoa a cua
cac ca so ngan. Ga tr c ma hoa
Huffman ta ch so ta bo em th c
go a s

, ngo vao cua kho sap th t a


th c go a xr

:
Dung cho kho ngan :
Trang 55
Phan tch va ng dung chuan MP3
AjAl>[alkAai< lAImS119 n
RiTo=u[[l>c]kAai<lci<N>cmlAIm
*j=calC^ackmulJiZliCIo=calC^ack=lAImlcKml=^[m
lci<N>cm

Cho kho da, cong thc a:

AjAl>[alkAai< lAImS119
B=scaefac_mutper*scaefac_|gr|ch|sfb+
prefag|gr*pretab|sfb
prefag|sfb, c s dung cho vec khuyech a
bang he so t e tan so cao. Ga tr 210 a
mot hang so can e cha t e cac mau.
Ga tr cao nhat cua s

a 8206, khong a 8191


nh a nh b chuan |1. Nguyen nhan a do
bo ga ma cap them 15 vao ga tr cua nbts.
Lnbts co the da 13 bt do o co ga tr cao nhat
a
2
13
- 1 = 8191 cho mo phan nbts .
Thc hen :
Ca ha ham mu s

4/3
va 2
A,B
rat kho tnh
neu dung ham th ven toan hoc chuan
pow(). Ngay ca kh dung n v x y dau
cham ong (FPU) hay DSP vec tnh toan
cung khong pha n gan .
Ham s

4/3
trong bo ng t hoa a chap
nhan 8207 ga tr khac nhau. Bang tm kem
se nhanh, nhng o ho khoang 256 kbts bo
Trang 56
Phan tch va ng dung chuan MP3
nh, chung ta se tm mot thuat toan c
e cap trong muc phng phap Newton d
ay.
Ham 1
9.15 o A
o 1
S*
khong chap nhan hn 384
ga tr khac nhau. Neu o co ngha a
bang tm kem se a s a chon tot nhat,
u y rang bang co the tao ra tham ch
nho hn (196 ga tr ) bang cach am tron
ga tr nho (< 2
-35
) kh ham gam xuong
gan zero b v khong anh hng en ket
qua cuo cung.
Tem can da tren bang y=x
4/3
( Tabe-based
Approach for y=x
4/3
):
Bang tm kem cho ham y=x
4/3
co the thc
hen de dang. Bang nay co the gop vao
nh mot phan cua d eu kh tao, hoac
no co the c tao ra ta th em thc th
neu ham pow() co san .
Neu co u bo nh bang tm kem co the
bao gom ga tr am cua s

. Neu nay se
tang toc o vec ga ma .
Phng phap Newton cho y=x
4/3
(Newtons Method for
y=x
4/3
):
Ham y=

x
4/3
c vet a thanh y
3
-x
4
=0. Dang
nay co the thch hp v phng phap
Newton tm kem no se cho ga tr y xap x
v x
4/3
.
Ket qua cua ham c tnh thong qua vec
ap ap a qua trnh gam sa so y-x
4/3
:
Trang 57
Phan tch va ng dung chuan MP3
Cong thc c vet a thanh dang th ha
e tranh s c uc dau cham ong.
Ga tr bat au a y
0
cua cong thc ap
anh hng en so an ap can thet e
at c o chnh xac mong muon. V ng
dung, o chnh xac n hn 16 bts xem nh
co heu qua. Mot ga tr kh au tot cua
y
0
c tnh toan thong qua ham a thc y
0
=
a
0
+ a
1
* x + a
2
* x
2
. Ham nay c thet ke
tng t v y=x
4/3
cang gan cang tot v
0< x < 8207.
X. PKC@Z [iC?< >Wi c>=i< Ii Iac cai JiC?<
a> <AOc R&M4CTT
Nnh ngha :
IMDCT ben o cac mau subband t men
tan so sang men th gan. Beu thc phan
tch cua IMDCT a :
Ga tr cua n trong beu thc co the a 12
cho kho ngan hoac a 36 cho kho da.
Nau ra t IMDCT pha c ay ca so v
mot ham co nh c nap chong v d
eu t kho trc.
Thc hen :
Thao tac IMDCT th rat kho tnh toan e ten
hanh nh c nh ngha b chuan. Mot
bang tm kem co the c dung e thay
the cho ham cos() , nhng vong ap ben
trong phng trnh van con o ho vec x
y. Thay v chung ta se khao sat ga thuat
nhanh hn cho IMDCT muc d.
Trang 58
Phan tch va ng dung chuan MP3
Cac ham ca so c thay the bang mot
bang tm kem 4 kbts.
Tnh toan trc tep ( Drect cacuaton) :
T tnh toan trc tep IMDCT de thc hen
b v no ch bao gom ha vong ap for n
gan. Mot bang tm kem co the c dung
e thay the cho ham cos() go ben trong
vong ap.
Thc hen IMDCT nhanh ( Fast IMDCT mpementaton ):
Marovch a neu ra trong |2 rang phng
phap cua Konstantndes ve vec tang toc
o tnh toan cua ma tran bang oc a pha
cung co the dung cho IMDCT 12 va 36
em :
Ket qua N em tng ong v IMDCT N
em nh c nh ngha trong chuan.
Neu nay ch can tnh 6 va 8 em tng
ng. Nhng em nay co the c tnh
toan t cach tnh IDCT sa o bang cach
s dung phng phap Lee-stye : phan tch
cac ben o 6 va 18 em thanh cac nhan
IDCT 3, 4 va 5 em.
Trang 59
Phan tch va ng dung chuan MP3
Phep ben o 6 em cua kho ngan c
phan tch thanh 2 phep ben o 3 em co
the c c ng trc tep .
Phep ben o 18 em cho kho da cung
c phan tch theo mo hnh tng t thanh
ha phan 9 em. Cac phan 9 em nay sau
o c tach ra na thanh mot phan 4
em va mot phan 5 em e c c
ng cach trc tep.
5. *a`<A l>c a ZKa R P>lGZKa=C _ilJCI[a<]T
Nnh ngha :
Tan oc a pha chuyen o cac mau trong
men th gan t phep ben o IMDCT trong
mo subband thanh mau PCM. S chuyen o
gan 3 bc sau ay:
Ma tran cac mau cua 32 subband
snh ra 64 ga tr vector V
Ten hanh ca so cua mau
c chon t c che vao trc ra
trc (FIFO) cua vector V v mot ca
so khong o D snh ra mot vector W
Tong cong vector W v chnh no
snh ra 32 mau PCM au ra .
Trang 60
Phan tch va ng dung chuan MP3
Bc 2 va 3 tren th de thc hen, ac
bet trong DSP do no co kha nang nh v
a ch ac bet. Bc 1 cung de thc hen
do no c nh ngha b chuan :

Trang 61
Phan tch va ng dung chuan MP3

D ay a ha cach tnh dung cho bc 1
Tnh toan trc tep :
S tnh toan trc tep cua thao tac ma tran
th de thc hen b no ch bao gom ha
vong ap for.
Thc hen DCT nhanh 32 em ( 32 - pont fast DCT
mpementaton):
Konstantndes a ch ra trong chuan |2 rang
thao tac ma tran trong bc 1 co the c
ca ten thc te bang cach dung ben o
DCT nhanh 32 em va mot va thao tac sao
chep d eu :

S the hen o xng trong thao
tac ma tran
Trang 62
Phan tch va ng dung chuan MP3
32 em DCT cho s tong hp
subband.
Mot trong nhng ga thuat DCT nhanh thong
dung dung cho 2
m
em c mo ta b tac
ga Lee trong |3. Phep ben o c phan
tch thanh 2 phan chan e:
Trang 63
Phan tch va ng dung chuan MP3
Ga thuat DCT nhanh cua Lee
Cac phan chan va e a co the c
phan tch theo cach tng t cho en kh cac
phan u nho e co the tnh toan thong
qua s c ng trc tep. V du nh kh N =
2.
Trang 64
Phan tch va ng dung chuan MP3
PHAN 1: 3A,Y 4#N% PHAN MM
CH#$N% & : %&A0 4&-N .A5 THUY!T M&NH
CH#$N% T67NH
Gao den a cong cu tr gup ac c cho ng s
dung. Nhng phan mem co gao den tot uon c a
chuong. No cung chnh a u em tuyet v cua
Wndows.
Lap trnh trong Wndows ho tr nhng cong cu cho phep
ta tao ra nhng gao den rat de dang va bat mat.
Tuy nhen, thet ke gao den e cho a cung co the
s dung c va khong b nham an khong pha a
chuyen de dang. No o ho ta pha co mot ca nhn
bao quat, tham ch pha heu sau ve ga thuat cua
chng trnh th m co the oa tr nhng sa am kh
s dung.
Lap trnh trong Wndows a ap trnh theo tnh huong. Mo
nut nhan, o o thoa tren gao den eu co the
c truy cap t bat ky uc nao ma khong theo mot
trnh t nhat nh.
Gao den bao gom cac phan nh hnh ve sau:
Trang 65
Phan tch va ng dung chuan MP3
1. TKa<K F]i<PI>AIC==
Thanh nay dung e hen th ten ba hat va ten ca s
hat ba hat nay, b v ay a chng trnh nghe nhac
mp3 nen uo mac nh a ".mp3" .
1. Nu@J Mi<imibC
Nut nay co tac dung thu nho ca so chng trnh va
hen th tren thanh Toobars. Kh can phong to ca so
en ch can nhap chuot vao phan thu nho tren thanh
Toobars .
2. Nu@J C>l=C
Dung e ong ca so chng trnh .
X. TimCI
Hen th th gan a thc th chng trnh d dang
"phut : gay".
5. T>W<A JKi Aia<
Hen th tong so th gan ma chng trnh pha thc
th, d dang "phut : gay".
8 .Nu@J 0ZC<
M ra danh sach cac ba hat cho ng s dung chon
a (ch chon c 1 ba hat). Do co s dung heu
ng d chuyen chuot nen kh ra chuot en nut Open
se chuyen sang mau vang . Kh a chon 1 ba hat cu
the nao o th 3 nut con a Pay, Pause, Stop m co
tac dung ( uc kh ong chng trnh do cha chon ba
hat nen 3 nut nay khong nhan c).
" .Nu@J PlaG
Thc hen ga ma fe ".mp3" va phat ra oa ba hat
o.
Trang 66
Phan tch va ng dung chuan MP3
i. Nu@J Pau=C
Tam dng chng trnh ang hat , e tep tuc hat ta
nhan nut Pay.
p. Nu@J FJ>Z

Dng chng trnh ang hat, e phat a ba hat m
ta chon ten ba hat t nut Open, sau o nhan nut
Pay.
19. TKa<K JiC?< JIU<K
Hen th ten trnh thc th ba hat. Luc ba hat ket
thuc cung a uc thanh ten trnh nay ap ay. Kh kch
chuot en au th thc th ba hat ta th em va
kch chuot .
11. Nu@J .>lumC
Dung e eu chnh am thanh n hay nho tuy theo
nhu cau cua ng s dung( eu chnh vong tron
cang to th am thanh cang n).
Trang 67
Phan tch va ng dung chuan MP3
CH#$N% && : LU NOA GIAUI THUAT VA CAAU
TRUUC D LIEU
I. F$ '0 :H0!&

Start Int_ MPEGDecoder()
Kh tao nput stream
record

Chuan b vung em
Chuan b thet b
phat
S
N
Trang 68
Thay o hay
g nguyen
cau hnh
IntStream()
Reset v tr
dong bt ve
zero
Reset_Stream()
Nat nput fe;
M nput fe va
kem tra
OpenNew();
Lay vao cau
hnh mac nh
Dung bang ma
Huffman e ga
ma dong
bt,thong tn d
eu va he so
t e
III_scae_factor_1()
III_scae_factor_2()
III_sde_nfo_1()
memset()
ReadFrame()<
>0
Lng t hoa a
va sap xep a
thong tn d eu
III_dequantze_sampe()
III_dequantze_sampe_
Reset thet b
phat
Ket thuc
do_ayer3()
AudoFush()
Phan tch va ng dung chuan MP3
Oua ben o IMDCT
II. LU NOA GIAUI THUAT
Lu o ga thuat cua tan oc a pha kh tong hp
subband (Subband Synthess) dung phep ben o cosn
r rac nhanh 32_em (32_pont Fast DCT )
Trang 69
Ga ma am
thanh
III__stereo()
Gam bt bet danh
III_antaas()
Tong hp a
cac tang oc a
pha
SynthessFterInt()
Na ra thet b
phat (rght+eft)
Phan tch va ng dung chuan MP3

S
N
S
N
S
k
= Cac mau subband (Subband
Sampes)
Trang 70
Begn
=0
k=0
<3
1
End
k<
31
V

=

=
31
0 k
S
]
c>=|/64(2k-1)
k++
++
Phan tch va ng dung chuan MP3
S o ga thuat cua tan oc a pha sau kh tong hp
32 subband :

S
N
S
N
S
k
= Cac mau subband (Subband
Sampes)
&&&. CA!U T6UC 4#/ L&-U
1. _ilC AAI=.K
a. L @Z MPAIA=
S dung : kha bao cac ben can thet cho qua
trnh ay fe vao , xuat fe ra thet b phat , truy
xuat cac thong tn ve cau hnh fe. V tr payer
hen ta trong frame, v tr bat au khung, ket
thuc khung. Ngoa ra con u tr toc o ay
mau, kch thc buffer.
Trang 71
Begn
=0
k=0
<
64
End
k<
31
V

=

=
31
0 k
S
]
c>=|(16+)(2k+)/64
k++
++
Phan tch va ng dung chuan MP3
cass MPArgs q
pubc:
unsgned ong CurrentPos; // V tr payer hen
ta trong frames
unsgned ong StartFrame, StartPos,
EndFrame, EndPos;
unsgned ong SampeRate; // Toc o ay
mau
unsgned ong BufferSze; // Kch thc cua
buffer xuat
unsgned ong Buffers; // So buffers
ong Channes; //
Channes(1=mono;2=stereo)
ong AudoBts; // So Bts tren
sampe(mau) v du 16 bt
ong AudoDevce; // So thet b audo
se c m ra
ong AudoMode; // Keu Audo (v du
16bt tn heu) ong ScaeFactor; // He so
t e output
ong ForceFreq;
boo TryResync; // Resync on bad data?
boo Seekabe;
boo IsVBR; //Dung xac nh cheu
da cua stream
boo UseHdrCB; // Dung xuat ra header
char *InName; // Na ten fe vao
stream
char *OutName; // uat ra ten fe
ong OutDevceNum; // So thet b xuat
ra MMSystem
ong ForceMono; // Force mono output?
ong Force8bt; // Force 8-Bt output?
ong ForceStereo; // Force stereo output?
ong DownSampe; //
ong PayProrty; // thc th thread u ten
vod *Payer;
vod *Decoder;
esInputMode InputMode;
esOutputMode OutputMode;
WaveOutCB BufferCB;
WaveOutActonCB OutActonCB;
InFeOpenCB InOpenCB;
InFeCoseCB InCoseCB;
InFeGetSzeCB InGetSzeCB;
Trang 72
Phan tch va ng dung chuan MP3
InFeSeekCB InSeekCB;
InFeReadCB InReadCB;
// Ng dung nh ngha d eu xuat
unsgned ong OutCBData;
// Ng dung nh ngha d eu nhap
unsgned ong InCBData1;
unsgned ong InCBData2;
HWND wnd;
//Gan cac hang cho cac o tng
MPArgs() q
InName = NULL;
OutName= NULL;
OutDevceNum = 0;
BufferedInput = true;
CurrentPos = 0;
StartPos = 0;
EndPos = 0;
DownSampe = 0;
ForceStereo = 0;
AudoBts = 16;
SampeRate = 44100;
Channes = 2;
AudoMode = 1;
AudoDevce = 0;
BufferSze = 16384;
Buffers = 8;
BufferCB = NULL;
UseHdrCB = fase;
TryResync = TRUE;
Seekabe = true;
Force8bt = 0;
ForceFreq = -1;
ForceMono = 0;
ScaeFactor = 32768;
PayProrty= THREAD_PRIORITY_NORMAL;
OutCBData = 0;
InCBData1 = 0;
InCBData2 = 0;
OutActonCB = NULL;
BufferCB = NULL;
wnd = 0;
r
Trang 73
Phan tch va ng dung chuan MP3
MPArgs() q
f (InName) free(InName);
f (OutName) free(OutName);
r
r;
[. Ca?u JIu@c MP&<^>
Lu tr cac thong tn ve header cua frame.
struct MPInfo q
ong stereo_mode;
ong ayer;
ong btrate;
ong frequency;
r;
c. Ca?u JIu@c ^IamC
S dung u tr cac thong tn ve header cua fe nh:
syncword, d, ayer, error protecton,btrare ndex, sampng
frequency, paddng bt, prvate bt, mode, mode extenson,
copyrght, emphass, orgna/copy.
struct frame q
synthProc synth;
synth_monoProc synth_mono;
ong stereo;
ong sbound;
ong snge;
ong II_sbmt;
ong sf;
ong mpeg25;
ong down_sampe;
ong header_change;
unsgned ong bock_sze;
ong ay;
ong WhatLayer;
ong error_protecton;
ong btrate_ndex;
ong sampng_frequency;
ong paddng;
ong extenson;
Trang 74
Phan tch va ng dung chuan MP3
ong mode;
ong mode_ext;
ong copyrght;
ong orgna;
ong emphass;
r;
1. _ilC C>mm><.K
Trong chng trnh cac cau truc nay dung ga oan
ay thong tn d eu vao ga ma thong tn cac
thong tn can thet nh :he so t e ,ng t hoa
a cac mau , am thanh (stereo), gam bt bet danh.
a. Ca?u JIu@c &42TaAFJIucJ
struct ID3TagStruct q
char TagHeader|3;
char Tte|30;
char Artst|30;
char Abum|30;
char Year|4;
char Comment|30;
unsgned char Genre;
r;
[. Ca?u JIu@c AIki<^>k=
Lu tr cac thong so ve phng phap ma hoa
Huffman.
struct gr_nfo_s q
nt scfs;
unsgned part2_3_ength;
unsgned bg_vaues;
unsgned scaefac_compress;
unsgned bock_type;
unsgned mxed_bock_fag;
unsgned tabe_seect|3;
unsgned subbock_gan|3;
unsgned maxband|3;
unsgned maxband;
unsgned maxb;
unsgned regon1start;
unsgned regon2start;
unsgned prefag;
Trang 75
Phan tch va ng dung chuan MP3
unsgned scaefac_scae;
unsgned count1tabe_seect;
rea *fu_gan|3;
rea *pow2gan;
r;
c. Ca?u JIu@c [a<N&<^>FJIucJ
struct bandInfoStruct q
nt ongIdx|23;
nt ongDff|22;
nt shortIdx|14;
nt shortDff|13;
r;
N. Ca?u JIu@c &&&k=iNCi<^>
struct III_sdenfo
q
unsgned man_data_begn;
unsgned prvate_bts;
struct q
struct gr_nfo_s gr|2;
r ch|2;
r;
2. _ilC l=>u<N.K
Dung cac cau truc nay trong chng trnh e u
tr cac ben eu khen va cac ben dung e u
tr o. Ngoa ra con u tr mode hen ta a Cosed,
Opened,Ready, Stopped, Payng, Change, Paused e heu
c chng trnh ang x y trang tha nao.
a. Ca?u JIu@c C=&<ZuJM>NC
enum esInputMode q
mFe,
mCaback
r;
[. Ca?u JIu@c C=0uJZuJM>NC
enum esOutputMode q
omMMSystem,
omWaveFe,
Trang 76
Phan tch va ng dung chuan MP3
omDrectSound,
omCaback
r;
c. Ca?u JIu@c C=PlaGCIM>NC
enum esPayerMode q
pmCosed,
pmOpened,
pmReady,
pmStopped,
pmPayng,
pmChange,
pmPaused
r;
N. Ca?u JIu@c C=PlaGCIII>I
enum esPayerError q
peNoError,
peNotImpemented, // khong thc th
peIncorrectMode, // khong ung mode cho
vec thc th hoat ong
peInternaError, // khong cap phat c
nguon ta nguyen hoac resource
peInvadHande, // x y o tng payer
sa
peInputError,
peOutputError,
peNoMemory,
peNoResources,
peNoCaback
r;
X. _ilC Hu^^ma<.K
S dung trong qua trnh ga ma theo ga thuat
Huffman gom: bang Huffman, nbt.
struct newhuff
q
unsgned nt nbts;
short *tabe;
r;
Trang 77
Phan tch va ng dung chuan MP3
&.. 'sNH N%HtA
1. Ca@c d<K <AKua Nu<A JI><A JaDZ Ji<
vC>mm><.Kw
defne COMMON_H
defne rea doube
defne NEW_DCT9
defne M_PI 3.14159265358979323846
defne M_SORT2 1.41421356237309504880
defne SBLIMIT 32
defne SCALE_BLOCK 12
defne SSLIMIT 18
1. Ca@c d<K <AKua Nu<A JI><A PlaGCI.K
//Nnh ngha che header
defne HDRCMPMASK 0xfffffd00
//Kch thc to a cua frame
defne MAFRAMESIE 1792
defne MPG_MD_STEREO 0
defne MPG_MD_|OINT_STEREO 1
defne MPG_MD_DUAL_CHANNEL 2
defne MPG_MD_MONO 3
2. Ca@c d<K <AKua Nu<A JI><A 6C=>uIcC.K
defne BUTTON_PLAY 1
defne BUTTON_E|ECT 2
defne BUTTON_STOP 3
//defne BUTTON_SAVE 4
defne BUTTON_PAUSE 4
defne BUTTON_EIT 5
defne BUTTON_MINIMIE 6
defne BUTTON_PLAYLIST 7
defne TET_SONG 8
defne TET_LEN 9
defne TET_POS 10
defne IDD_MPEGPLAYER_DIALOG 102
defne IDR_MAINFRAME 128
defne ID_LOADSKIN 32771
Trang 78
Phan tch va ng dung chuan MP3

Trang 79
Phan tch va ng dung chuan MP3
PHAN 2 :T0)N% :!T
Nay a chng trnh phan tch va vet ng dung ve
chuan mp3, nhng chng trnh ch ga oan ga
ma fe mp3 va phat ra oa , chung em ch tm heu
c nhng chc nang n gan nh :
M fe mp3, phat ra oa fe o.
Tam dng fe mp3 ang phat .
Ngng fe ang phat va chon fe m e
phat chang han.
Ng s dung chng trnh ch m va phat
ra oa c mot fe duy nhat va sau o ng
s dung pha m a mot fe mp3 khac.
Neu chnh c voume .
Neu khen c ten trnh cua ba hat.
Hen c tong th gan va v tr th gan
hen ta cua mo ba hat .
Ha< cKC?
V th gan co han nen chng trnh con nheu han
che :
Cha co chc nang bass, trebe hay eu
chnh o can bang (baance).
Cha chon c danh sach nheu ba hat va
phat en tuc cac ba hat o .
Cha co chc nang ap a mot ba hat,
vv.
HO@<A ZKa@J JIiCW<
Trong tng a chung em se phat tren thanh
chng trnh nghe nhac mp3 hoan then hn , se co
nheu chc nang hn nh :
Chon c mot danh sach cac fe mp3 va
phat en tuc cac fe mp3 o.
Hay eu chnh c bass, trebe, hay eu
chnh c o can bang cua voume.
Trang 80
Phan tch va ng dung chuan MP3
Lap a mot ba hat hay cac chc nang
khac nh trong nhng chng trnh nghe nhac
pho ben hen nay nh :Wnamp, Herosoft ,..
TA5& L&-U THAM :HA+0
Ken C. Pohmann, " Prncpes of Dgta Audo" , McGraw
H - 2000.
Trang web http://www_mp3-tech_org.
K.Lagerstrm, "Desgn and Impementaton of MPEG-1 Layer III
Audo Decoder" , Apr 2001.
|1 ISO/IEC 11 172-3, "Informaton technoogy - Codng of
movng pctures and assocated audo for dgta storage meda
at up to about 1,5 Mbt/s - Part 3: Audo," .rst edton, Aug.
1993.
|2 S. Marovch, "Faster MPEG-1 Layer III Audo Decodng," HP
Laboratores Pao Ato, |une 2000.
|3 B.G. Lee, "FCT - A Fast Cosne Transform," IEEE
Internatona Conference on Acoustcs, Speech and Sgna
Processng San Dego 1984, pp. 28A.3.1-28A3.4, March 1984.
Desgn and Impementaton of an MP3 Decoder May 2001 44 .
Trang 81

You might also like