Tải bản đầy đủ (.pdf) (71 trang)

Tài liệu Luận văn Mã hóa tín hiệu số âm thanh doc

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (770.11 KB, 71 trang )

z



Luận văn

Mã hóa tín hiệu số
âm thanh


Khoa CNTT – ĐHBKHN

LÝ THUYẾT CƠ BẢN
CHUƠNG 1.

CÁC KIẾN THỨC CƠ BẢN VỀ ÂM THANH.

I. NHỮNG KHÁI NIỆM CƠ BẢN - SĨNG CƠ
1.1. Sự hình thành sóng trong mơi trường đàn hồi.
a. Định nghĩa:
Các mơi trường chất khí, chất lỏng, chất rắn là môi trường đàn hồi.
Môi trường đàn hồi có thể coi là những mơi trường liên tục gồm những
phân tử liên kết chặt chẽ với nhau, lúc bình thường mỗi phân tử có một vị
trí cân bằng bền.
b. Sự hình thành sóng trong mơi trường đàn hồi:
• Do tính chất của mơi trường đàn hồi, cho nên nếu tác dụng lên phân tử
nào đó của mơi trường thì phân tử này rời khỏi vị trí cân bằng bền.
• Do tương tác, các phân tử lân cận một mặt kéo phân tử A về vị trí cân
bằng, mặt khác nhận một phần năng lượng do phân tử A truyền sang, do
đó cũng dao động theo, hiện tượng này xảy ra liên tiếp tạo thành sóng.
Sóng đàn hồi (sóng cơ) là sự lan truyền dao động trong môi trường đàn


hồi. Sóng cơ khơng thể truyền được trong chân khơng, vì chân khơng
khơng phải là mơi trường đàn hồi.
• Cần lưu ý trong khi truyền dao động, các phân tử của môi trường
không di chuyển theo các dao động được lan truyền mà chỉ dao động
quanh vị trí cân bằng của nó.
c. Một số khái niệm về sóng:
• Nguồn sóng: là ngoại vật gây ra kích động sóng.
• Tia sóng: là phương truyền sóng.
• Mơi trường sóng: là khơng gian mà sóng truyền qua.
• Mặt sóng: là mặt chứa những điểm (phân tử) có cùng trạng thái dao
động tại một thời điểm nào đó. Tia sóng ln vng góc với mặt sóng.

SVTH: Đỗ Văn Tuấn

Trang 1


Khoa CNTT – ĐHBKHN

• Sóng cầu: mặt sóng là những mặt cầu phân bố đều trong không gian,
tâm là nguồn sóng. Trong mơi trường đồng chất và đẳng hướng sẽ có sóng
cầu. Đối với sóng cầu tia sóng trùng với bán kính của mặt cầu.
• Sóng phẳng: mặt sóng là những mặt phẳng song song nhau, tia sóng
vng góc với mặt sóng. Nếu nguồn sóng ở rất xa mơi trường đang xét thì
mặt sóng có thể coi là những mặt phẳng song song.
• Sóng dọc: là sóng trong đó các phân tử của mơi trường dao động quanh
vị trí cân bằng trên phương trùng với tia sóng. Khi có sóng dọc, trên
phương của tia sóng các phân tử của mơi trường khi thì bị nén chặt, khi thì
giãn ra làm cho các phân tử của mơi trường có chỗ dày chỗ thưa.
• Sóng ngang: là sóng trong đó các phân tử của mơi trường dao động

quanh vị trí cân bằng trên phương vng góc với tia sóng.
d. Ngun nhân gây ra sóng ngang và sóng dọc:
• Tùy tính chất của mơi trường đàn hồi mà trong đó có thể xuất hiện sóng
ngang hay sóng dọc.
- Khi một lớp của mơi trường bị lệch đối với lớp khác làm xuất hiện các
lực đàn hồi có xu hướng kéo lớp bị lệch về vị trí cân bằng thì trong mơi
trường đó có thể truyền được sóng ngang. Vậy vật rắn là một mơi trường
có tính chất đó.
- Nếu trong mơi trường khơng có các lực đàn hồi khi các lớp song song bị
lệch đối với nhau thì sóng ngang khơng thể hình thành được. Chất lỏng và
chất khí là những mơi trường đó.
- Khi bị biến dạng nén hay căng mà trong mơi trường có các lực đàn hồi
xuất hiện thì trong mơi trường đó có thể truyền được sóng dọc. Chẳng hạn
khi bị nén, chất lỏng hay chất khí sẽ tăng áp suất, lực nén giữ vai trị lực
đàn hồi.
• Như vậy trong chất lỏng và chất khí chỉ có sóng dọc truyền được, cịn
trong chất rắn có thể truyền được cả hai loại sóng.
1.2. Các đặc trưng của sóng.
a. Vận tốc truyền sóng (C) :
Là quãng đường mà sóng truyền được trong một đơn vị thời gian.
b. Bước sóng λ:
Là quãng đường mà sóng truyền được sau một thời gian bằng 1 chu kỳ T.
Như vậy λ là khoảng cách bé nhất giữa các phân tử dao động cùng pha.
Theo định nghĩa ta có : λ = CT.
c. Chu kỳ và tần số:
• Chu kỳ T là thời gian cần thiết để sóng truyền được 1 bước sóng λ.
SVTH: Đỗ Văn Tuấn

Trang 2



Khoa CNTT – ĐHBKHN

• Tần số f là số chu kỳ thực hiện được trong 1 giây :
F = 1/T (Hz)
1.3. Phương trình sóng.
• Sóng phẳng truyền dọc theo phương OY với vận tốc C thì phương trình
sóng biểu thị mối quan hệ giữa độ chuyển dời X của phân tử dao động kể
từ vị trí cân bằng với thời gian t và khoảng cách y đến các vị trí cân bằng
các phân tử dao động trên phương truyền sóng như sau :
X = asinω(t – y/c)
• Nếu sóng phẳng truyền theo hướng ngược với hướng tính khoảng cách
y thì :
X = asinω(t + y/c)
• Đối với sóng cầu thì biên độ a của dao động sóng tại vị trí cách nguồn
bằng bán kính r, tỉ lệ nghịch với r, phương trình sóng có dạng:
X = a/r sinω(t – r/c)
II. SĨNG ÂM.
2.1. Dao động âm và sự truyền dao động.
• Sóng âm là một loại sóng cơ có biên độ dao động nhỏ mà thính giác
nhận biết được. Thí dụ dao động phát ra từ dây đàn, mặt trống.. đang rung
động. Sóng âm là một loại sóng cơ nên mọi khái niệm và hiện tượng về
dao động và sóng cơ trên đây đều áp dụng cho sóng âm.
• Trong khơng khí cũng như trong mọi chất khí khác, những dao động
truyền đi dưới dạng sóng dọc, khi đến tai người những dao động có tần số
từ 16 đến 20000 Hz sẽ gây cảm giác đặc biệt về âm.
• Các dao động đàn hồi có tần số f>20.000 Hz là sóng siêu âm.
• Các dao động đàn hồi có tần số f<16 Hz là sóng hạ âm
• Mỗi âm có một tần số riêng, đơn vị của tần số là héc (Hz) với định
nghĩa:”Héc là tần số của một qúa trình dao động âm trong đó mỗi giây

thực hiện được một dao động”.
1 Héc (Hz) = 1 dao động / 1 giây
• Việc phân chia sóng hạ âm, sóng siêu âm và sóng âm (âm thanh) liên
quan tới khả năng sinh lý của thính giác
2.2. Đơn vị vật lý của âm thanh.
• Âm thanh hay tiếng động mà con người nhận biết được do tác động của
sóng âm lên màng nhĩ tai.
• Các dao động âm phát ra từ nguồn lan truyền trong mơi trường đàn hồi
như khơng khí.. dưới dạng sóng đàn hồi gọi là sóng âm. Sóng âm đến kích
SVTH: Đỗ Văn Tuấn

Trang 3


Khoa CNTT – ĐHBKHN

động màng nhĩ tai gây cảm giác về âm, do đó cần phân biệt hai loại đại
lượng về âm:
- Đại lượng âm khách quan: những đại lượng thuần túy vật lý, không phụ
thuộc vào tai người.
- Đại lượng âm chủ quan: những đại lượng tâm lý vật lý phụ thuộc vào tai
người.
2.2.1. Đơn vị âm khách quan:
a. Aùp suất âm:
Khi sóng âm tới một mặt nào đó, do các phân tử môi trường dao
động tác dụng lên mặt đó một lực gây ra áp suất. Aùp suất ở đây là áp suất
dư do sóng âm gây ra ngồi áp suất khí quyển.
Trong phạm vi nghe được, áp suất âm trong khoảng từ 2.10-4 đến
2.10 μbar, chênh lệch 106 lần, đó là một phạm vi rất rộng.
2


b. Cường độ âm (I):
- Cường độ âm ở một điểm nào đó trên phương đã cho trong trường âm là
số năng lượng âm đi qua đơn vị diện tích của mặt S vng góc với phương
truyền âm, tại điểm đó trong đơn vị thời gian.
- Một vài cường độ âm đáng chú ý:
Người nói thường

I = 2.10-3 W/m2

Cịi ơ-tơ

I = 5 W/m2

Còi báo động I = 3.000 W/m2
- Trong điều kiện chuẩn (to = 20oC, áp suất 760mmHg):
Vận tốc âm trong khơng khí : C = 340 m/s
ρ = 0,00121 gr/cm3.
γ = Cp/Cv = 1,4
- Trong tính tốn người ta quy ước lấy âm đơn tần số f = 1000 Hz làm
chuẩn để so sánh (gọi là âm chuẩn).
- Đối với âm chuẩn, trong phạm vi nghe được
Áp suất âm nhỏ nhất

Pmin = 2.10-4 μbar

Cường độ âm nhỏ nhất

Imin = 10-16 W/cm2.


- Aùp suất âm và cường độ âm lớn nhất mà tai người có thể chịu được là:
Pmax = 2.102 μbar
Imax = 10-4 W/cm2.
- Cơng suất âm nhỏ nhất có thể nghe thấy được Wmin = 10-12 Watt.
2.2.2. Đơn vị âm chủ quan:
SVTH: Đỗ Văn Tuấn

Trang 4


Khoa CNTT – ĐHBKHN

• Tai người trung bình có thể nhận được những sóng âm có tần số từ 16
đến 20000 Hz, hiệu qủa này có liên quan tới khả năng sinh lý của tai
người.
• Như vậy, âm thanh là một hiện tượng tâm lý vật lý, không phải bất cứ
sóng âm nào tới tai cũng gây ra cảm giác âm thanh như nhau. Aâm có tần
số khác nhau gây ra cảm giác khác nhau.
• Cường độ âm nhỏ nhất của một sóng âm xác định mà tai người nghe
thấy được gọi là “Ngưỡng nghe”. Aâm có tần số khác nhau giá trị ngưỡng
nghe cũng khác nhau. Tai người thính nhất với âm có tần số trong khoảng
từ 1000 đến 3000 Hz, trong phạm vi này cường độ âm ngưỡng nghe nhỏ
nhất. Những tần số khác, tai kém thính hơn, ngưỡng nghe có giá trị lớn
hơn.
• Đối với âm chuẩn, cường độ và áp suất ở ngưỡng nghe bằng:
Po = 2.10-5 N/ m2.
Io = 10-12 W/m2.
• Do cảm giác âm thanh phụ thuộc vào đặc tính sinh lý của tai người, cho
nên phải có một số đại lượng đặc trưng cho cảm giác âm thanh phụ thuộc
vào tai người, những đại lượng như vậy gọi là đại lượng âm chủ quan.

a. Bel và decibel (db):
Theo định lý sinh lý của Vebe-Fécne, cảm giác nghe to đối với một âm
không tỉ lệ thuận với cường độ âm của âm đó. Khi cường độ âm tăng từ Io
tới I thì cảm giác nghe to tăng tỉ lệ với lg(I/Io). Do đó người ta dùng thang
lơ-ga-rít cơ số 10 để đo mức cảm giác so với mức ngưỡng.
Mức ngưỡng gọi là mức zero qui ước :
lg(I/Io) = lg(10-12/ 10-12) = 0 bel.
Đơn vị là Bel hay db. 10db = 1 bel.
b. Mức cường độ âm (LI):
Nếu gọi I là cường độ âm của âm đang xét và Io là cường độ âm của mức
zero qui ước của âm chuẩn thì mức cường độ âm LI bằng :
LI = 10lg(I/Io) db
I tính bằng W/m2.
c. Mức áp suất âm (Lp):
Mức áp suất âm suy dẫn từ mức cường độ âm Lp = 20lg(P/Po) db.
Trong đó:
P :áp suất âm có ích của âm đang xét (N/m2)
Po:áp suất âm của âm chuẩn ở ngưỡng nghe.
SVTH: Đỗ Văn Tuấn

Trang 5


Khoa CNTT – ĐHBKHN

Thực tế áp suất âm là đại lượng cơ bản hơn cường độ âm, nên thường dùng
mức áp suất âm sau đó suy ra mức cường độ âm. Đơn vị chung là bel hay
db. Đơn vị này cũng dùng để đo mức công suất, mức năng lượng âm.
Vài mức áp suất âm đáng chú ý :
Nói chuyện thường :


30db.

Nói chuyện to

70db.

:

2.2.3. Qng độ cao (qng tần số):
• Quãng tần số của hai âm là khoảng cách tần số của hai âm đó. Nếu một
âm tần số là f1, một âm khác tần số là f2 (f2 > f1) thì f2 / f1 = 2x.
Khi x=1 tức f2 / f1 = 2 gọi là 1 quãng tần số (hay 1 ốc-ta).
Khi x=1/2 tức f2 / f1 = 1.41 gọi là nửa ốc-ta.
Khi x=1/3 tức f2 / f1 = 1.26 gọi là 1/3 ốc-ta.
- Mức áp suất âm của 1 ốc-ta bằng mức áp suất âm của 1/2 ốc-ta cộng
thêm 3db.
- Mức áp suất âm của 1 ốc-ta bằng mức áp suất âm của 1/3 ốc-ta cộng
thêm 5db.
• Vì quãng tần số của một âm qui định độ cao của âm đó nên cịn gọi là
qng độ cao. Theo tập quán âm nhạc thì quãng độ cao gọi là quãng 8 (bát
độ).
• Chẳng hạn âm LA, tần số f=440 Hz tăng 1 bát độ là tăng gấp đôi tần số,
tức là 880 Hz.
• Trong thực tế thường gặp những âm phức tạp bao gồm nhiều tần số.
Tập hợp tất cả những tần số cấu tạo trong một âm thanh gọi là “tần phổ”
của âm đó, tần phổ có thể gián đoạn hay liên tục. Một âm có tần phổ liên
tục được đặc trưng bằng “Mức tần phổ B” với định nghĩa:
- Mức tần phổ là mức áp suất âm trong chiều rộng của dải tần số bằng 1.
- Một âm có mức tần phổ B khơng đổi với mọi tần số gọi là tiếng ồn trắng.

- Một âm có tần phổ gián đoạn được đặc trưng bằng “mức dải tần số” với
định nghĩa: mức dải tần số là mức áp suất âm trong chiều rộng của dải tần
số lớn hơn 1 Hz.
2.3. Đặc tính sinh lý về sự cảm thụ âm thanh.
2.3.1. Mức to, độ to, mức âm cảm giác:
• Mức áp suất âm, mức cường độ âm trên đây vừa mang tính chất chủ
quan vừa mang tính chất khách quan vì những đại lượng này xác định từ
những đại lượng thuần túy vật lý. Vấn đề có ý nghĩa to lớn trong thực tế là
cần biết được sức mạnh của âm thanh đo bằng tai người.
SVTH: Đỗ Văn Tuấn

Trang 6


Khoa CNTT – ĐHBKHN

• Mức to, độ to của một âm là sức mạnh cảm giác do âm thanh gây nên
trong tai người, nó khơng những phụ thuộc vào áp suất âm mà còn phụ
thuộc vào tần số của âm đó. Thí dụ 2 âm có tần số 100 Hz và 1000 Hz áp
suất âm đều bằng 0,02 μbar nhưng nghe to nhỏ khác nhau, âm 1000 Hz
nghe to hơn âm 100 Hz. Muốn nghe to bằng âm 1000 Hz thì âm 100 Hz
phải có áp suất bằng 0,25 μbar. Như vậy tai người không nhạy đối với âm
100 Hz bằng âm 1000 Hz. Tần số càng thấp tai người càng kém nhạy.
a. Mức to:
- Để biểu thị mức to trên cảm giác chủ quan, ta dùng đại lượng “mức to”,
đơn vị là “Fôn” với định nghĩa như sau :
Fôn là mức to của âm chuẩn, về giá trị bằng mức áp suất âm của âm chuẩn
tức là :
L = 20lg P/Po (Fôn).
- Vậy mức to của một âm bất kỳ đo bằng Fôn, về giá trị bằng mức áp suất

âm của âm chuẩn đo bằng db có cùng mức to với âm đó. Thí dụ: âm có tần
số 500 Hz mức áp suất âm bằng 25 db và âm có tần số 50 Hz mức áp suất
âm bằng 64 db sẽ có cùng mức to bằng 20 Fơn, bằng mức to của âm 1000
Hz mức áp suất bằng 20 db.
- Muốn biết mức to của một âm bất kỳ phải so sánh với âm chuẩn.
- Đối với âm chuẩn, mức to ở ngưỡng nghe là 0 Fơn, ngưỡng chói tai là
120 Fôn.
- Cùng một giá trị áp suất, âm tần số càng cao, mức to càng lớn.
b. Độ to:
- Khi so sánh âm này to hơn âm kia bao nhiêu lần, dùng khái niệm “độ to”
đơn vị là “Sôn” với định nghĩa như sau:
Số lượng Sôn biểu thị số lần mạnh hơn của một âm nào đó so với âm
chuẩn mà tai người có thể phân biệt được.
- Độ to là một thuộc tính của thính giác, cho phép phán đốn tính chất mạnh
yếu của âm thanh. Căn cứ vào độ to mà sắp xếp âm từ nhỏ tới to.
- Mức to tăng 10 Fơn thì độ to tăng gấp đơi và ngược lại.
2.3.2. m điệu và âm sắc:
• Âm điệu chỉ âm cao hay thấp, trầm hay bổng. Âm điệu chủ yếu phụ
thuộc vào tần số của âm, tần số càng cao, âm nghe càng cao, tần số càng
thấp âm nghe càng trầm.
• Âm sắc chỉ sắc thái của âm du dương hay thô kệch, thanh hay rè, trong
hay đục. Âm sắc phụ thuộc vào cấu tạo của sóng âm điều hịa, biểu thị
bằng số lượng các loại tần số, cường độ và sự phân bố của chúng quanh
SVTH: Đỗ Văn Tuấn

Trang 7


Khoa CNTT – ĐHBKHN


âm cơ bản. Âm sắc có quan hệ mật thiết với cường độ, âm điệu và thời
gian âm vang, sự trưởng thành và tắt dần của trường âm.
• Khi hai ca sĩ cùng hát một câu ở cùng một độ cao, ta vẫn phân biệt
được giọng hát của từng người. Khi đàn ghi-ta, sáo, kèn.. cùng tấu lên một
đoạn nhạc ở cùng một độ cao, ta vẫn phân biệt được tiếng của từng nhạc
cụ. Mỗi người, mỗi nhạc cụ phát ra những âm có sắc thái khác nhau mà tai
ta phân biệt được. Đặc tính đó của âm chính là âm sắc.
• Âm sắc là một đặc tính sinh lý của âm, được hình thành trên cơ sở các
đặc tính vật lý của âm là tần số và biên độ. Thực nghiệm chứng tỏ rằng khi
một nhạc cụ phát ra một âm có tần số f1 thì đồng thời cũng phát ra các âm
có tần số f2=2f1, f3=3f1...
• Âm có tần số f1 gọi là âm cơ bản hay họa âm thứ nhất, các âm có tần
số f2 , f3 .. gọi là các họa âm thứ hai, thứ ba... Âm cơ bản bao giờ cũng
mạnh nhất, các họa âm có tác dụng quyết định âm sắc của âm cơ bản, giúp
ta phân biệt các nguồn âm khác nhau. Chẳng hạn tiếng đàn Pi-a-nô và
tiếng sáo tuy cùng một âm cơ bản nhưng lại rất dễ phân biệt, nguyên nhân
là do số lượng, cấu trúc những họa âm quanh âm cơ bản của chúng khác
nhau. Họa âm càng nhiều âm nghe càng du dương phong phú.
3. Thính giác định vị (hiệu ứng Stereo):
• Khi nghe âm tuy mắt khơng nhìn thấy nguồn âm nhưng có thể xác định
chính xác vị trí của nguồn âm. Đặc điểm này là kết qủa của hai tác dụng:
- Do cường độ, độ to, âm sắc của âm đến hai tai không giống nhau.
- Do âm đến hai tai lệch pha nhau, vì thời gian đến hai tai khơng giống
nhau.
• Cường độ, độ to của âm đến hai tai chênh lệch nhau là do nhiễu xạ gây
ra. Âm có tần số f < 1000 Hz sự chênh lệch cường độ do nhiễu xạ gây ra
rất bé nhưng ở những tần số cao, sự chênh lệch này có thể đạt tới 20 - 30
db.
• Do khả năng định vị của tai như vậy cho nên khi nghe âm có thể tập
trung chú ý vào nguồn âm cần nghe, bỏ qua một cách tự nhiên những âm

không cần nghe. Nhờ hiệu qủa này mà tiếng ồn bị phủ lấp hoặc giảm nhỏ
một cách tự nhiên. Nếu chỉ nghe âm một tai thì hiệu qủa này mất.
4. Nghe âm và chênh lệch thời gian:
• Tương tự như tác dụng lưu ảnh của mắt, tai người cũng có tác dụng lưu
âm.
• Thí nghiệm với nhiều thính giác bình thường cho thấy rằng, nếu hai âm
như nhau đến tai người cách nhau < 50 ms thì tai người không phân biệt
được, nghe như một âm duy nhất.

SVTH: Đỗ Văn Tuấn

Trang 8


Khoa CNTT – ĐHBKHN

CHƯƠNG 2.

TẬP TIN DẠNG SÓNG (WAVE FILE).

I. MULTIMEDIA WINDOWS
• Từ phiên bản Windows 3.1, Multimedia đã trở thành một tính năng của
Windows. Multimedia Windows đã bổ sung một tính năng mới: đó là sự
độc lập thiết bị trong việc xử lý âm thanh. Sự độc lập thiết bị này thể hiện
qua bộ API (Applycation Program Interface – Bộ giao diện lập trình ứng
dụng). Bộ API độc lập về thiết bị đối với phần cứng và đó là một chức
năng quan trọng của Windows. Người lập trình sẽ lập trình điều khiển
phần cứng trên Windows dựa trên chức năng của phần cứng hơn là các chi
tiết cụ thể của nó. Các nhà cung cấp phần cứng chỉ cần cung cấp một bộ
điều khiển thiết bị (device driver) cho Windows, nhờ đó một ứng dụng trên

Windows có thể điều khiển phần cứng thơng qua Windows API.
• Với Multimedia Windows, hãng Microsoft đã thực hiện được ba điều :
• Định nghĩa một tiêu chuẩn phần cứng tối thiểu cho loại máy Multimedia
PC (viết tắt là MPC). Tiêu chuẩn này dựa trên chức năng tổng quát hơn là
sản phẩm cụ thể. Ví dụ nếu PC có thêm ổ đĩa CD-ROM và một card âm
thanh thì trở thành MPC cấp 1.
• Microsoft đã cung cấp phần mềm Multimedia Extension cho Windows
3.0 và đã được ghép luôn vào hệ điều hành Windows từ phiên bản 3.1.
Phần mềm này bao gồm các bộ điều khiển thiết bị dành cho việc truy xuất
đến các phần cứng gắn thêm vào MPC.
• Microsoft đưa ra cơng cụ phát triển Multimedia Development Kit
(MDK). Lập trình viên kết hợp công cụ trên với bộ Windows Software
Development Kit (SDK) để viết các ứng dụng về Multimedia.
• Có hai dạng xử lý âm thanh số hóa trên Windows. Loại thứ nhất
microsoft gọi là “Wave Form Audio” (Aâm thanh dạng sóng), dựa trên
nguyên tắc số hóa sóng âm, MPC lưu chúng trên bộ nhớ hay tập tin .WAV
trên đĩa. Các dữ liệu số này có thể thơng qua phần cứng biến đổi lại thành
âm thanh.
• Dạng thứ hai là MIDI. Khác với âm thanh dạng sóng, MIDI chỉ lưu lại
những thơng điệp điều khiển bộ tổng hợp phát ra âm thanh. Do đó kích
thước của tập tin .MID nhỏ hơn nhiều so với tập tin.WAV.
II. CẤU TRÚC WAVE FILE.
1. RIFF file.
Wave File là tập tin chứa các dữ liệu của mẫu âm thanh đã được số
hóa. Phương pháp số hóa âm thanh hiện nay là phương pháp PCM.
Phương pháp này sẽ lấy mẫu âm thanh với tần số khoảng 11.025 kHz cho
đến 44.1 kHz. Mỗi lần lấy mẫu, số liệu này lại được lượng tử hóa bằng
một hay hai byte cho một mẫu âm thanh. Như vậy tần số lấy mẫu càng
SVTH: Đỗ Văn Tuấn


Trang 9


Khoa CNTT – ĐHBKHN

cao, số byte dùng lượng tử hóa càng nhiều thì âm thanh phát lại càng trung
thực, nhưng lại tăng số byte cần lưu trữ. Với một mẫu âm thanh phát ra
trong một phút cần phải lưu trữ ít nhất 660 kB. Đó là lý do tại sao các File
Wave ln có kích thước khá lớn so với MIDI File.
Cấu trúc của Wave File thuộc vào lớp file được sử dụng bởi các
hàm Multimedia của Windows: đó là RIFF FILE. RIFF là chũ viết tắt của
Resource Interchange File Format (dạng file trao đổi tài nguyên). Một
RIFF file gồm một hoặc nhiều loại chunks, trong mỗi chunk lại chứa con
trỏ chỉ đến chunk kế tiếp. Mỗi chunk bao gồm loại chunk và dữ liệu theo
sau loại chunk đó. Một ứng dụng muốn đọc RIFF file có thể đi qua lần
lượt từng chunk, đọc dữ liệu ở chunk nó quan tâm và có thể bỏ qua các
chunk mà nó khơng quan tâm, một chunk của RIFF file luôn bắt đầu bởi
một header có cấu trúc như sau:
Typedef struct
{
FOURCC ckid;
DWORD ckSize;
} CK;
Trường FOURCC có 4 bytes chỉ ra loại chunk. Đối với File Wave,
trường này có giá trị là “WAVE”. Nếu loại chunk ít hơn 4 ký tự thì các ký
tự còn lại bên phải sẽ được đệm thêm vào các khoảng trắng. Cần chú ý là
các ký tự trong FOURCC có phân biệt chữ hoa và chữ thường.
Trường DWORD chứa kích thước vùng dữ liệu của chunk, vùng dữ
liệu này nằm ngay sau header và có kích thước là ckSize bytes.
Chunk có thể chứa các subchunks. Subchunk cũng là một chunk.

Một RIFF file luôn bắt đầu bằng một chunk loại “RIFF”.
2. Cấu trúc Wave file.
Wave file bắt đầu là chunk loại “RIFF”.
Hai subchunk trong wave chunk đặc tả thông tin về âm thanh của wave file
và tiếp đó là dữ liệu của từng subchunk. Đó là subchunk “fmt” và
subchunk “data”.
a. subchunk “fmt”:
Dữ liệu của “fmt” chunk là đối tượng WAVEFORMAT có cấu trúc như
sau:
Typedef struct waveformat_tag
{
WORD

wFormatTag;

WORD

nChannels;

SVTH: Đỗ Văn Tuấn
10

Trang


Khoa CNTT – ĐHBKHN

DWORD

nSamplesPerSec;


DWORD

nAvgBytesPerSec;

WORD

nBlockAlign;

} WAVEFORMAT;
- wFormatTag thường có giá trị là WAVE_FORMAT_PCM được định
nghĩa trong tập tin MMSYSTEM.H như sau :
#define WAVE_FORMAT_PCM 1
Giá trị này báo cho phần mềm đang đọc Wave File biết kiểu mã hóa
dữ liệu âm thanh sang dữ liệu số là kiểu mã hóa PCM. Hiện nay đây là
kiểu mã hóa duy nhất của Wave file.
- nChannels: có hai giá trị bằng 1 cho âm thanh mono và bằng 2 cho âm
thanh stereo.
- nSamplesPerSec: cho biết tốc độ lấy mẫu, có các giá trị:
11025

-- 11.025 kHz

22050

--

22.050 kHz

44100


--

44.100 kHz

- nAvgBytesPerSec: cho biết số bytes yêu cầu trung bình trong một giây để
phát lại mẫu dữ liệu của sóng âm.
- nBlockAlign: cho biết số byte dùng để chứa một mẫu âm thanh. Như vậy
mẫu 8 bit hay ít hơn sẽ yêu cầu 1 byte, mẫu 9 đến 16 bit sẽ yêu cầu 2
bytes. Nếu âm thanh là Stereo thì yêu cầu gấp 2 lần số byte dùng cho âm
thanh mono.
Ta thấy trong WAVEFORMAT chưa có thơng tin về số bit dùng để
lượng tử hóa một mẫu dữ liệu của sóng âm. Thực tế Wave File sẽ xác lập
số bit dùng cho một mẫu dữ liệu bằng một trường gắn vào cuối cấu trúc
của WAVEFORMAT. Cấu trúc đó như sau:
Typedef struct pcmwaveformat_tag
{
WAVEFORMAT wf;
WORD wBitsPerSample;
} PCMWAVEFORMAT;
- wBitsPerSample: cho biết số bit trong một mẫu dữ liệu. Chú ý rằng các
mẫu dữ liệu vẫn phải lưu trữ ở dạng byte hoặc word. Do đó, nếu một Wave
File dùng 12 bit để lượng tử hóa một mẫu sóng âm thì sẽ phải lưu trữ 4 bit
thừa không dùng đến.
b. Subchunk “data”.
SVTH: Đỗ Văn Tuấn
11

Trang



Khoa CNTT – ĐHBKHN

Dữ liệu của “data” subchunk của wave file chứa các số liệu của âm
thanh đã được số hóa. Đối với mẫu âm thanh 8 bit, dữ liệu của “data”
subchunk bao gồm các giá trị 1 byte (có giá trị từ 0 – 255) của các mẫu âm
thanh. Đối với mẫu âm thanh 16 bits, mỗi mẫu dữ liệu gồm 2 bytes (có giá
trị từ – 32768 đến 32767). Điều này khơng có nghĩa là file wave 16 bits sẽ
nghe to hơn 256 lần file wave 8 bits, mà nó có nghĩa là âm thanh được
lượng tử hóa chính xác hơn, nghe trung thực hơn.
Trong mẫu mono 8 bits, dữ liệu của subchunk “data” gồm chuỗi các
giá trị 1 byte. Với stereo 8 bits, mỗi mẫu gồm 2 bytes, dữ liệu sẽ được sắp
xếp xen kẽ (interleave), với byte đầu (byte chẵn) là mẫu âm thanh của
kênh bên trái, byte sau (byte lẻ) là của kênh bên phải.

Tóm laị cấu trúc của Wave File như sau:
Kích thước
(số byte)

Giá trị

4

“RIFF”

4

Kích thước file RIFF

4


“WAVE”

4

“fmt”

4

Kích thước subchunk “fmt”

2

Kiểu mã hóa dữ liệu của file
wave (thường là PCM)

2

Số kênh : 1 - mono

Tên trường

WORD nFormatTag
WORD nChannels

2 - stereo
4

Số mẫu/1giây


DWORD
nSamplesPerSec

4

Số bytes/1giây

DWORD
nAvgBytesPerSec

2

Số byte/1mẫu

DWORD
nBlockAlign

SVTH: Đỗ Văn Tuấn
12

Trang


Khoa CNTT – ĐHBKHN

2

Số bit/1mẫu

4


“data”

4

WORD
wBitsPerSample

Kích thước dữ liệu

III. ĐỌC RIFF FILES
• Để làm việc với file RIFF, ta phải mở nó và “descend” vào chunk mà ta
cần. Điều này có nghĩa là ta cần phải định vị được chunk này, rồi chuyển
con trỏ file vào đầu khối dữ liệu của chunk. Khi làm việc xong với 1
chunk, ta phải “ascend” ra khỏi chunk và “descend” xuống chunk khác.
• Các hàm dùng xử lý RIFF file đều có tiền tố là mmio và làm việc với
file handle dạng HMMIO, để bắt đầu, ta phải mở file bằng đoạn mã sau:
HMMIO h;
If ((h=mmioOpen(path,NULL,MMIO_READ))==NULL)
{
/*báo lỗi*/
return(0);
}
Thông số path chứa đường dẫn của file wave. Cờ MMIO_READ
báo cho mmioOpen mở file để đọc. Ta cũng có thể mở nó để ghi bằng
thơng số MMIO_WRITE hay cả đọc và ghi bằng thông số
MMIO_READWRITE. Nếu mở file thành công, mmioOpen sẽ trả về một
handle loại HMMIO. Nếu thất bại, nó sẽ trả về trị NULL. Sau khi mở file
xong, ta bắt đầu định vị WAVE chunk bằng đoạn mã sau:
MMCKINFO mmParent;

MmParent.fccType=mmioFOURCC(‘W’,’A’,’V’,’E’);
If (mmioDescend(h,(LPMMCKINFO)&mmParent, NULL,
MMIO_FINDRIFF))
{
mmioClose(h,0);
/* báo lỗi */
return(0);
}
Cấu trúc của MMCKINFO chứa các thơng tin về chunk. Nó được
định nghĩa trong MMSYSTEM.H như sau:
Typedef struct
{
FOURCC
SVTH: Đỗ Văn Tuấn
13

ckid;
Trang


Khoa CNTT – ĐHBKHN

DWORD
FOURCC
DWORD
DWORD
} MMCKINFO;

cksize;
fcctype;

dwDataOffset;
dwFlags;

Để “đi vào” một chunk, ta cho trường ckid của MMCKINFO ở loại
chunk mà ta muốn định vị. Có một macro thực hiện việc này là
mmioFOURCC. Sau đó gọi hàm mmioDescend để định vị chunk. Nếu
định vị thành công, hàm này trả về zero và đối tượng MMCKINFO truyền
cho hàm sẽ được điền vào các thông tin về chunk.
Trường cksize định nghĩa kích thước tính bằng byte của chunk.
Đối số thứ ba của mmioDescend là cờ MMIO_FINDRIFF. Cờ này
chỉ thị cho mmioDescend tìm một file có ID là RIFF với loại chunk được
xác định bởi ckid. Nếu muốn tìm một chunk trong Wave file ta cho cờ này
là MMIO_FINDCHUNK.
Sau khi đi vào WAVE chunk, ta bắt đầu đi vào fmt subchunk của
nó:
MMIOCKINFO mmSub;
MmSub.ckid=mmioFOURCC(‘f’,’m’,’t’);
If (mmioDescend(h,(LPMMCKINFO)& mmSub,
(LPMMCKINFO)&mmParent,MMIO_FINDCHUNK))
{
mmioClose(h,0);
/* báo lỗi */
return(0);
}
Đến đây ta đã có thể bắt đầu đọc dữ liệu từ Wave File. Đoạn mã sau
đọc đối tượng PCMWAVEFORMAT từ fmt subchunk:
PCMWAVEFORMAT waveformat;
Int n;
n = min ((unsigned int)mmSub.cksize,
sizeof(PCMWAVEFORMAT));

if(mmioRead(h,(HPSTR)&waveformat,
(long)n) !=(long)n)
{
/* báo lỗi */
return(0L);
}
if(waveformat.wf.wFormatTag !=WAVE_FORMAT_PCM)
{
/* báo lỗi */
SVTH: Đỗ Văn Tuấn
14

Trang


Khoa CNTT – ĐHBKHN

mmioClose(h,0);
return(0L);
}
Đối số đầu tiên của mmioRead là handle của file đang đọc. Đối số
thứ hai là con trỏ xa trỏ tới vùng đệm để chứa dữ liệu. Đối số thứ ba là số
byte cần đọc. Hàm này sẽ trả về số byte thực sự đọc được.
• Sau khi đã đọc nội dung của chunk, ta đi ra khỏi chunk để chuẩn bị đọc
chunk kế tiếp:
MmAscend(h,(LPMMCKINFO)&mmSub,0);
Đối số thứ hai của mmAscend là đối tượng MMCKINFO của chunk mà ta
“đi ra”. Đối số thứ ba là đối số giả.
• Cơng việc cịn lại là đọc dữ liệu mã hóa mẫu âm thanh của Wave file
vào bộ nhớ. Chú ý rằng giá trị cksize trả về bởi mmioDescend được sử

dụng để xác định kích thước vùng đệm cần cấp phát để chứa dữ liệu.
GLOBALHANDLE wavehandle;
HPSTR wavepointer;
MmSub.ckid=mmioFOURCC(‘d’,’a’,’t’,’a’);
If(mmioDescend(h,(LPMMCKINFO)&mmSub,
(LPMMCKINFO)&mmParent,MMIO_FINDCHUNK))
{
mmioClose(h,0);
/* báo lỗi */
return(0);
}
if((wavehandle=GlobalAlloc(GMEM_MOVEBLEIGMEM_
SHARE, mmSub.cksize))==NULL)
{
mmioClose(h,0);
/* báo lỗi */
return(0);
}
if(wavepointer=(HPSTR)GLOBALLOCK(WAVEHANDLE))
==null)
{
GlobalFree(wavehandle);
mmioClose(h,0);
/* báo lỗi */
return(0);
}
if(mmioRead(h,wavepointer,mSub.cksize) !=
mSub.cksize)
SVTH: Đỗ Văn Tuấn
15


Trang


Khoa CNTT – ĐHBKHN

{
GlobalUnlock(wavehandle);
GlobalFree(wavehandle);
mmioClose(h,0);
/* báo lỗi */
return(0);
}
GlobalUnlock(wavehandle);

SVTH: Đỗ Văn Tuấn
16

Trang


Khoa CNTT – ĐHBKHN

CHƯƠNG 3.

LÝ THUYẾT XỬ LÝ TÍN HIỆU SỐ.

I. TÍN HIỆU VÀ HỆ THỐNG RỜI RẠC
1. Giới thiệu
Tín hiệu là biểu hiện vật lý của thông tin, thường là thông tin về

trạng thái hay hành vi của một hệ vật lý nào đó. Về mặt tốn học, tín hiệu
được coi là hàm của của một hay vài biến độc lập. Ví dụ: tín hiệu âm thanh
là sự thay đổi áp suất khơng khí theo thời gian; tín hiệu hình ảnh là hàm độ
sáng theo hai biến khơng gian..
Theo qui ước chung, tín hiệu được coi là hàm theo một biến độc lập
và là biến thời gian.
Tín hiệu số (Digital signal) là tín hiệu rời rạc (theo biến độc lập thời
gian) đồng thời có biên độ cũng rời rạc hóa (lượng tử hóa).
2. Đáp ứng xung trong hệ tuyến tính bất biến.
Tín hiệu vào x(n) được gọi là tác động, tín hiệu ra y(n) được gọi là
đáp ứng của hệ xử lý. Ta có quan hệ:
y (n) = T [x(n)]

T : phép biến đổi x(n) → y (n)
Một hệ thống là tuyến tính nếu thỏa nguyên lý xếp chồng: giả sử
y1(n) và y2(n) là đáp ứng của hệ tương ứng với tác động vào là x1(n) và
x2(n). Hệ là tuyến tính nếu và chỉ nếu :
T [a.x1 (n) + b.x2 (n)] = a. y1 (n) + b. y 2 (n)

Như vậy, một hệ tuyến tính có thể xử lý tổng tác động như là các
tác động này được xử lý độc lập, sau đó các đáp ứng tương ứng sẽ được
cộng lại.
Một tín hiệu x(n) bất kỳ có thể biểu diễn :
x ( n) =



∑ x(k ).δ (n − k )

k = −∞


Do vậy đối với hệ tuyến tính:
y (n) =



∑ x(k ).h

k = −∞

k

(n)

hk(n) gọi là đáp ứng xung của hệ đối với tác động là xung δ(n-k)
Theo cơng thức trên, hệ tuyến tính vẫn cịn tùy thuộc vào thời điểm
tác động k. Một hệ tuyến tính là bất biến(theo thời gian) nếu tín hiệu vào bị
dịch đi một đoạn thời gian là k thì tín hiệu ra cũng chỉ dịch một đoạn k,
tức mọi hk(n) trở thành h(n-k).
SVTH: Đỗ Văn Tuấn
17

Trang


Khoa CNTT – ĐHBKHN

Như vậy mọi hệ tuyến tính bất biến đều được đặc trưng hồn tồn
bằng đáp ứng h(n), biết h(n) ta hồn tồn tính được đáp ứng y(n) của tín hiệu
vào x(n).

y ( n) =



∑ x(h).h(n − k )

k = −∞

Cơng thức trên cịn được gọi là Tổng chập (convolution sum) của
hai tín hiệu x(n) và h(n), và còn được ký hiệu:
y ( n) = x (n) * h(n)

3. Tính chất của tổng chập của hệ TTBB
• Tính giao hốn:
y ( n) = x (n) * h(n) =



∑ x(k ).h(n − k )

k = −∞

= h( n ) * x ( n )

=



∑ h(k ).x(n − k )


k = −∞

• Tính phân phối:
x(n) * [h1 (n) + h2 (n)] = x(n) * h1 (n) + x(n) * h2 (n)

Như vậy, từ tính chất giao hốn, ta thấy rằng: hai hệ TTBB có đáp
ứng xung là h1(n) và h2(n) được mắc nối tiếp nhau sẽ tương đương với một
hệ có đáp ứng xung:
h(n) = h1 (n) * h2 (n)

và thứ tự mắc nối tiếp khơng quan trọng.
Từ tính chất phân phối, hai hệ TTBB mắc song song nhau sẽ tương
đương với một hệ có đáp ứng xung bằng tổng hai đáp ứng xung:
h(n) = h1 (n) + h2 (n)
h1 (n)
+ y (n)
h2 (n)
x(n) = h1 (n) + h2 (n) + y (n)

x ( n) =

4. Hệ nhân quả (causal system)
Các hệ có tín hiệu ra chỉ phụ thuộc vào tín hiệu trong quá khứ và
hiện tại được gọi là các hệ nhân quả, tức phải có tác động vào (ngun
nhân) thì mới có tác động ra (kết quả).
• Định lý: Hệ tuyến tính bất biến (TTBB) là nhân quả nếu đáp ứng xung
h(n) = 0 với mọi n<0.
SVTH: Đỗ Văn Tuấn
18


Trang


Khoa CNTT – ĐHBKHN

Đối với một hệ TTBB và nhân quả, dạng chung của công thức tổng chập
y (n) =



∑ x(k ).h(n − k )

k = −∞

hoặc viết cách khác:


y (n) = ∑ x(n − k ).h(k )
k =0

Nếu đáp ứng xung h(n) có độ dài hữu hạn N thì:
N −1

y ( n ) = ∑ x ( n − k ).h ( k )
k =0

Mở rộng cho tín hiệu: tín hiệu nhân qủa là tín hiệu bắt đầu khác 0 từ thời
điểm 0.
=0


x(n)

khi n<0

≠ 0 khi n≥0

5. Tính ổn định.
Định nghĩa: một hệ là ổn định nếu đáp ứng của hệ luôn bị chặn đối với tác
động vào bị chặn.
Định lý: Một hệ TTBB là ổn định nếu và chỉ nếu đáp ứng xung thỏa mãn
điều kiện sau: S =



∑ | h(n) |< ∞

n = −∞

6. Phương trình sai phân tuyến tính hệ số hằng
Ta chỉ khảo sát các hệ thống tuyến tính bất biến và có thể đặc trưng bởi các
phương trình sai phân có hệ số hằng. Mối liên hệ giữa tín hiệu vào x(n) và
tín hiệu ra y(n) có dạng như sau:
N

M

∑a y(n − k) = ∑b x(n − r)
k =0

k


r =0

r

Trong đó tập các hệ số ak và br đặc trưng cho hệ TTBB.
7. Biểu diễn các hệ rời rạc trong miền tần số.
7.1. Phép biến đổi Fourier của tín hiệu rời rạc.




k = −∞

y ( n) =

k = −∞

∑ h(k ).x(n − k ) = ∑ h(k ).e

j ( n − k )ω

Với tín hiệu vào x(n)= ejωn (có tần số ω=2πf) và đáp ứng xung h(n), ta có
tín hiệu ra:

y ( n ) = e jω n . H ( e j ω )

SVTH: Đỗ Văn Tuấn
19


Trang


Khoa CNTT – ĐHBKHN

Hàm H(ejω) gọi là đáp ứng tần số của hệ, biểu diễn đáp ứng của hệ thống
theo hàm của tần số đối với dãy tác động ejωn, nó cho biết sự thay đổi về
biên độ và pha theo tần số khi tín hiệu đi qua hệ.
H(ejω) là một hàm số phức và có thể biểu diễn theo phần thực và ảo:
H(ejω)= Hr(ejω)+ jHi(ejω).

(r: real; i: image)

Hoặc theo biên độ và pha:
H(ejω)= | H(ejω)| ejargH(ejω ) (0≤ω≤2π).
H(ejω) là hàm liên tục theo ω và tuần hồn với chu kỳ 2π. Ta có thể khai
triển nó thành chuỗi Fourier, ngược lại h(n) có thể được tính tốn từ H(ejω)
bằng các cơng thức tính hệ số khai triển chuỗi Fourier:
π

h(n) = 1 π ∫ H (e jω ).e jωn .dω
2
−π

Trong đó :



H (e jω ) =


∑ h(n).e

− jωn

n = −∞

Biến đổi Fourier của dãy rời rạc:
S (t ) =



∑ A .e

( jk 2πT ) t

k

k = −∞

Đối với tín hiệu tuần hồn
Ak = 1
T

t0 +T

∫ s(t ).e

( jk 2π / T )

.dt


0

7.2. Phép biến đổi Fourier thuận.


∑ x(k ).e

X (e jω ) =

− j ωn

n = −∞

7.3. Phép biến đổi Fourier nghịch.
π

x(n) = 1 / 2π ∫ X (e jω ).e jωn dω
−π

7.4. Phổ biên độ, phổ pha và phổ năng lượng
Do X(f) là một hàm phức nên ta có thể biểu diễn dưới dạng modul và
argument:
X ( f ) =| X ( f ) | e j arg[ X ( f )]
Hàm modul X(f) theo f được gọi là phổ biên độ của tín hiệu x(n), cịn hàm
θ(f)=arg[X(f)] được gọi là phổ pha.
SVTH: Đỗ Văn Tuấn
20

Trang



Khoa CNTT – ĐHBKHN

Cuối cùng φ(f)=|X(f)|2 được gọi là phổ năng lượng, biểu diễn sự phân bố
theo tần số của năng lượng tín hiệu x(n).
8. Định lý lấy mẫu Shannon
Một tín hiệu tương tự xa(t) có dải phổ hữu hạn với giới hạn trên là Fmax(Hz)
(tức là phổ bằng 0 khi f nằm ngồi dải - Fmax.. Fmax). Ta sẽ chỉ có thể khơi
phục lại xa(t) một cách chính xác từ các mẫu xa(n.Ts) nếu như :
Fs ≥ 2Fmax
hay

Ts ≤ 1/(2Fmax).

Khơi phục lại tín hiệu tương tự từ tín hiệu lấy mẫu:
Ta có thể khơi phục lại tín hiệu xa(t) bằng cách cho tín hiệu lấy mẫu đi qua
một mạch lọc (tương tự) thơng thấp lý tưởng (low-pass filter) có đáp ứng
tần số Hlp(f) với tần số cắt là fc = Fs/2. Phổ của tín hiệu xa(t) sẽ được lọc lại
chính xác chỉ với điều kiện :
Fs ≥ 2Fmax
Nghĩa là thỏa mãn định lý lấy mẫu. Khi đó trong khơng gian tần số:
Xa(f) = X(f).Hlp(f)
Cịn trong khơng gian thời gian:
Xa(t) = x(nTs)*hlp(t)
Trong đó hlp(t) là đáp ứng xung của mạch lọc thơng thấp lý tưởng có biên
độ dải thơng là Ts.
II. PHÉP BIẾN ĐỔI FOURIER RỜI RẠC
1. Chuỗi Fourier rời rạc của tín hiệu rời rạc tuần hồn
Tín hiệu tuần hồn xp(n) là tuần hồn với chu kỳ N nếu:

xp(n)= xp(n+N), với mọi n.
Đối với tín hiệu rời rạc, ta khai triển Fourier theo hàm:
ξk(n) = ej(2πk/N)n

, k=0,±1, ±2..

Các hàm điều hịa phức rời rạc chỉ có N tín hiệu phân biệt nhau vì tín hiệu
sai khác nhau là bội của N thì đều như nhau:
ξk(n) = ξk±N(n) = ξk±2N(n) = ej(2πk/N)n
Đối với tín hiệu tuần hồn và rời rạc xp(n), ta có chuỗi Fourier rời rạc
(DFS):

X p (n) = ∑ ak .e j ( 2πk / N ) n

k=N

Trong đó các hệ số ak là các hệ số khai triển chuỗi Fourier rời rạc hay còn
được gọi là các vạch phổ của tín hiệu tuần hồn.
SVTH: Đỗ Văn Tuấn
21

Trang


Khoa CNTT – ĐHBKHN

2. Biến đổi Fourier rời rạc của tín hiệu có độ dài hữu hạn(DFT:Discrete Fourier
Transform)
Việc biểu diễn Fourier cho tín hiệu rời rạc có độ dài hữu hạn gọi là phép
biến đổi Fourier rời rạc (DFT).

Tín hiệu có độ dài hữu hạn là tín hiệu có giá trị khác 0 trong một khoảng
hữu hạn thời gian nào đó, và bằng 0 trong khoảng cịn lại. Đây là loại tín
hiệu tồn tại trong thực tế vì chúng ta chỉ có thể quan sát mọi tín hiệu trong
một khoảng thời gian là hữu hạn từ N1 đến N2. Để đơn giản hố, ta có thể
qui ước tín hiệu x(n) tồn tại trong khoảng thời gian: 0 ≤ n ≤ M-1, tức là :
M = N2 - N1+1.
Với tín hiệu x(n) này được dùng như là một chu kỳ tín hiệu, ta có thể xây
dựng tín hiệu xp(n) tuần hồn với chu kỳ N bằng cách xếp chồng tuần hồn:
x p ( n) =



∑ x(n + iN )

i = −∞

Nếu N ≥ M thì khơng xảy ra hiện tượng trùm thời gian giữa các phần của
xp(n).
Do xp(n) chỉ có duy nhất một cách biểu diễn chuỗi Fourier rời rạc nên x(n)
cũng vậy. Từ chuỗi Fourier ta tính ra được 1 chu kỳ tín hiệu của xp(n),
trong đó có x(n):
0 ≤ n ≤ N-1

0

x(n)=

xp(n)

n còn lại.


3. Phép biến đổi nhanh fourier
Fast Fourier Transform (FFT) là một giải thuật rất hiệu quả để tính DFT.
Cơng thức biến đổi DFT:
N −1

X (k ) = ∑ x(n).e j ( 2πkn) / N
k =0

Đặt Wnk =

e j ( 2πkn ) / N
N −1

X (k ) = ∑ x(n).W nk
k =0

Chia DFT thành 2 phần :
X (k ) =

N / 2 −1


n=0

2
x(2n).W N nk +

N / 2 −1


∑ x(2n + 1).W
n =0

( 2 n +1) k
N

Ký hiệu thành phần chẵn là xev và lẻ là xod, ta viết lại:
SVTH: Đỗ Văn Tuấn
22

Trang


Khoa CNTT – ĐHBKHN

X (k ) =

N / 2 −1


n =0

nk
xev (n).W N / 2 +

N / 2 −1

∑x
n =0


k
X (k ) = X ev (k ) + W N / 2 . X od (k ) ,

od

nk
(n).W N

k = 0..N-1

Để tính X(k) chỉ cần tính trong nửa chu kỳ N/2.
Xev(k) và Xod(k) tuần hồn với chu kỳ N/2: Xev(k) = Xev(k - N/2),
N/2 ≤ k ≤ N-1.

SVTH: Đỗ Văn Tuấn
23

Trang


Khoa CNTT – ĐHBKHN

CHƯƠNG 4.

GIỚI THIỆU VỀ MPEG.

I. GIỚI THIỆU.
1. MPEG là gì?
MPEG, viết tắt của cụm từ “Moving Picture Experts Group”, là một nhóm
chuyên nghiên cứu phát triển các tiêu chuẩn về hình ảnh số và nén âm

thanh theo chuẩn ISO/IEC. Ngày nay, nhóm làm việc MPEG đã phát triển
và phát hành các tiêu chuẩn MPEG-1, MPEG-2 và MPEG-4. Chuẩn
MPEG-3 được kết hợp vào MPEG-2 và khơng cịn tách riêng nữa. Nhóm
MPEG hiện nay đã phát triển đến chuẩn MPEG-7. MPEG chỉ là một tên
riêng, tên chính thức của nó là : ISO/IEC JTC1 SC29 WG11.
ISO

: International Organization for Standardization

IEC

: International Electro-technical Commission

JTC1 : Joint Technical Committee 1
SC29 : Sub-committee 29
WG11: Work Group 11 (moving picture with audio).
2. So sánh các chuẩn MPEG:
MPEG-1 định nghĩa một tiêu chuẩn cho việc lưu trữ và phục hồi các hình
ảnh động và âm thanh trên các thiết bị lưu trữ. Tiêu chuẩn này định nghĩa
rằng hình ảnh được phát lại ở tốc độ 30 frames một giây và âm thanh được
phát lại ở chất lượng như CD-audio, độ phân giải hình ảnh là 352 x 240.
Chuẩn MPEG-1 được dùng điển hình trong các phần mềm huấn luyện
bằng máy tính, các game hành động trong máy tính, video chất lượng
VHS, Karaoke..
MPEG-2 định nghĩa cho một tiêu chuẩn kỹ thuật truyền hình số. Chuẩn
MPEG-2 khắc phục một vài nhược điểm của chuẩn MPEG-1. Ví dụ,
MPEG-2 có thể tạo hình ảnh lớn gấp 4 lần MPEG-1 với độ nét cao hơn và
rõ hơn (720 x 480 và 1280 x 720). Các đặc tính của MPEG-2 bao gồm
hình ảnh chất lượng cao và âm thanh nổi..
MPEG-3 định nghĩa một tiêu chuẩn cho High Difinition Television

(HDTV), là thế hệ tiếp theo của cơng nghệ truyền hình theo định dạng số
đầy đủ. Tiêu chuẩn này đã không được phát triển hồn thiện và cuối cùng
được kết hợp vào với chuẩn MPEG-2. MPEG-3 đi đến mục tiêu là các ứng
dụng HDTV với kích thước mẫu lên đến 1920x1080x30 Hz và được mã hố
ở tốc độ bit 20 đến 40 Mbits/s. Cuối cùng người ta đã nhận ra rằng với một
vài điều chỉnh thích hợp, MPEG-1 và MPEG-2 làm việc rất tốt đối với
HDTV.
MPEG-4 định nghĩa một tiêu chuẩn cho các ứng dụng Multi-media. Đặc
biệt nó định nghĩa tiêu chuẩn truyền cho dịng phức tạp các hình ảnh, âm
thanh và dữ liệu đồ hoạ và việc tái hợp chúng trên thiết bị thu. MPEG-4
SVTH: Đỗ Văn Tuấn
24

Trang


×