Tải bản đầy đủ (.docx) (28 trang)

Nén âm thanh tiếng nói dải rộng (audio hifi)

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 (546.32 KB, 28 trang )

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

BÁO CÁO
XỬ LÝ DỮ LIỆU ĐA PHƯƠNG TIỆN
Đề tài 16: Nén âm thanh tiếng nói dải rộng (audio HiFi)
Giảng viên hướng dẫn: PGS.TS Nguyễn Thị Hoàng Lan
Sinh viên thực hiện:
Nguyễn Thành Trung

MSSV: 20112384

Trần Anh Tuấn

MSSV: 20112451

Trần Xuân Sơn

MSSV: 20112090

Hà Nội 05/2015


MỤC LỤC

Nhóm 16

Page 2


LỜI NÓI ĐẦU


Trong học phần Xử Lí Dữ Liệu Đa Phương Tiện này chúng em được học về dữ
liệu đa phương tiện và các phương pháp xử lí dữ liệu dùng trong nén, giải nén dữ liệu đa
phương tiện. Dữ liệu đa phương tiện bao gồm văn bản, hình ảnh, các đối tượng đồ họa
(bao gồm bản vẽ, phác thảo và hình minh họa) các chuỗi hình ảnh động, âm thanh và
video.
Trong đó nén âm thanh audio là một công nghệ vô cùng quan trọng. Tại sao ta
phải nén audio? Những file audio gốc với dung lượng lớn khó truyền tải, lưu trữ nếu
không có nén. Tùy theo nhu cầu và các kĩ thuật thực hiện, chúng ta đã phát minh ra nhiều
chuẩn nén audio khác nhau, phù hợp với nhiều mục đích sử dụng.
Trong bài báo cáo này chúng em sẽ trình bày về nén âm thanh dải rộng (audio
Hifi)
Chúng em xin cảm ơn cô Nguyễn Thị Hoàng Lan đã giúp chúng em hoàn thành báo
cáo này.

Nhóm 16

Page 3


1.

Đặc điểm của âm thanh tiếng nói dải rộng
 Âm thanh có bản chất là tín hiệu, dựa trên dải tần của tín tín hiệu người ta chia

thành 2 loại như sau:
• Âm thanh dải tần cơ sở (âm thanh tiếng nói thoại) với dải tần số từ
300Hz đến 4KHz.
• Âm thanh tiếng nói dải rộng (tiếng nói trình diễn, hát, âm nhạc …)
với dải tần số từ 100Hz đến 20KHz
 Âm thanh tiếng nói dải rộng là một công nghệ âm thanh được sử dụng phổ

biến trong điện thoại. Nó mở rộng phạm vi tần số của tín hiệu âm thanh truyền
qua đường dây điện thoại cho chất lượng cao hơn. Phạm vi của các tiếng nói
của con người kéo dài từ 80Hz đến 14 kHz, nhưng trong các cuộc gọi điện
thoại truyền thống, voiceband hoặc hẹp giới hạn tần só âm thanh khoảng
300Hz đến 3,4 kHz. Âm thanh tiếng nói dải rộng giới hạn bang thông và
truyền thông phạm vi tần số âm thanh từ 50 Hz đến 7 kHz hoặc cao hơn.
 Một số lợi ích âm thanh tiếng nói dải rộng so với truyền thống (hẹp):
• Chất lượng âm thanh tổng thể rõ ràng hơn.
• Dễ dàng hơn để nhận ra tiếng nói, phân biệt âm thanh khó hiểu và hiểu
những từ có dấu.
• Dễ dàng giải mã những từ có âm thanh gần nhau “s” và “f” và những từ
khác, thường không thể phân biệt qua đường dây điện thoại.
• Sự nhận diện tốt hơn khi trong tạp âm, chẳng hạn như khi người ta nói
đang sử dụng một loa ngoài.
 Âm thanh tiếng nói dải rộng được đưa ra như một giải pháp nhằm cải thiện
chất lượng cũng như độ tự nhiên của âm thanh bằng cách mở rộng dải phổ so
với tiếng nói thoại bình thường. Việc mở rộng tần số âm thanh được áp dụng
rất nhiều trong mạng điện thoại cũng như trong âm nhạc, trong mạng điện
thoại từ dải tần cơ bản để cải thiện chất lượng người ta đã mở rộng lên dải tần
200-700Hz, còn trong âm nhạc có thể nên tới 20kHz.
.

 Cụ thể với sự phát triển của công nghệ âm thanh tiếng nói dải rộng đã giúp

chúng ta cải tạo được chất lượng tiếng nói, và độ tự nhiên đối với những âm
Nhóm 16

Page 4



có tần số <300Hz, và làm tăng độ rõ với những âm có tần số >3400Hz. Mở ra
nhiều công nghệ mới đối với âm thanh tiếng tnói dải rộng.
 Ta có thể so sánh một số đặc điểm chính giữa âm thanh tiếng nói dải rộng và
âm thanh tiếng nói thoại như sau:
Tiếng nói thoại
Giới hạn dải phổ
tín hiệu
Tần số lấy mẫu

trị
Tốc độ cần thiết

Nhóm 16

chuẩn

xấp xỉ 4KHz

20KHz

fs=8KHz, Ts= 125µs

Lượng tử hóa giá

Các
GSM

Tiếng nói dải rộng

nén


fs=44.1KHz,
fs chuyên dụng = 48KHz

mã hóa bởi 8 bit

mã hóa bởi 16 bits, 20 bits

8bits x 8KHz= 64Kbit/s

176Kbyte/s

15,2Kbit/s,
32Kbit/s

ADPCM:

MPEG-1, MPEG-2, MPEG3….

Page 5


2.

Mô hình cảm nhận âm thanh.
Trong truyền thông đa phương tiện,một trong những nền tảng của việc xử lí âm
thanh là sự hiểu biết về quá trình cảm thụ âm thanh của con người. Tất cả các
phương pháp nén âm thanh với tỉ lệ cao hiện nay đều được phát triển trên nguyên
tắc là nếu một tín hiệu âm thanh mà ngay cả những nhà thẩm âm chuyên nghiệp
cũng không thể nhận ra thì nó có thể được loại bỏ. Nhiều yếu tố của cảm âm học

như ngưỡng nghe và che đã được tích hợp vào quá trình thiết kế các phương pháp
nén.Sau đây ta sẽ phân tích một vài yếu tố cảm âm học cơ bản thường được sử
dụng trong mã hóa âm thanh.
2.1.

Ngưỡng nghe tối thiểu

Đơn vị thể hiện độ lớn của âm thanh theo như con người cảm nhận thấy được
gọi là độ ồn. Giá trị này phụ thuộc nhiều vào cảm giác của con người về cường độ
của âm thanh vì vậy việc đo lường là không hề dễ dàng. Ví dụ thường gặp trong
cuộc sống hàng ngày đó là khi nghe nhạc, tùy thuộc vào cách chúng ta thay đổi giá
trị equalization mà sự cân bằng giữa các tính hiệu tần số cao và thấp thay đổi theo,
khiến ta cảm thấy rằng độ ồn của âm thanh tăng lên hay giảm đi.
Có nhiều yếu tố của độ ồn mà ta cần chú ý đến khi khi xây dựng bộ mã hóa âm
thanh.Một trong những yếu tố đó là ngưỡng nghe tối thiểu và cách mà ngưỡng
nghe đó biến đổi khi tần số thay đổi.Một yếu tố khác đó là cách mà cơ chế cảm
nhận âm thanh của con người phát hiện ra sự thay đổi của độ ồn khi mà các thông
số khác như phổ và chu kì là không đổi.
Mức độ sức ép âm thanh (SPL):
L = 20log db (SPL)

(2.1)

p: sức ép mà nguồn âm thanh tạo ra
p0: hằng số = 20microPa, tương đương ngưỡng sức ép tối
thiểu mà một tín hiệu có tần số 1 kHz cần đạt được để con
người có thể nghe thấy.
Ta cũng có thể định nghĩa SPL thông qua cường độ âm thanh. Ta có thể
viết cường độ tức thời của âm thanh như sau:
I(t) = p(t)u(t)


(2.2)

p(t): sức ép tức thời của âm thanh
u(t): tốc độ truyền.
Nhóm 16

Page 6


Đối với song bình thường, tốc độ truyền và sức ép có liên hệ với nhau qua
công thức:

(2.3)
ρ là khối lượng riêng môi trường truyền (không khí có ρ = 1,29kg/m3)
c: tốc độ âm thanh trong không khí
Từ 2 công thức (2.2) và (2.3), ta có thể viết hàm phụ thuộc vào cường độ
tần số như sau:

(2.4)
Từ công thức (2.4) ta có thể tính được cường độ tương ứng với áp suất 20
microPa:

(2.5)
Giá trị này thường được làm tròn là 10 -12 W/m2. Và lúc này mức độ sức ép
âm thanh của một nguồn âm thanh với cường độ I được tính như sau:

(2.6)
Độ lớn âm thanh mà con người cảm nhận được H và cường độ âm thanh I
liên hệ với nhau theo công thức:


(2.7)
Nhóm 16

Page 7


Công thức này có thể được áp dụng khi SPL biến thiên trong khoảng 40dB
cho tới 120dB, đối với các mức âm thanh thấp hơn thì sẽ có một vài sự sai khác
nhỏ
Tính chất quan trọng nhất của độ ồn là sự phụ thuộc của độ ồn vào tần
số.Để duy trì một độ ồn như nhau khi tần số âm thanh thay đổi ta sẽ phải sử dụng
các cường độ âm thanh khác nhau.Để duy trì cùng một độ ồn của 1 tín hieuejt ần
số thấp với 1 tín hiệu khác có tần số cao thì tín hiệu tần số thấp cần có cường độ
lớn hơn nhiều. . Mức cường độ tương ứng mà mỗi tần số cần có để độ ồn bằng
một giá trị cho trước được gọi là mức độ ồn cân bằng. Tất cả những mức độ ồn
cân bằng của những cường độ tuyệt đối khác nhauhợp thành đường độ ồn cân
bằng (hình 2.1). Mỗi đường cong tương ứng với SPL của tần số tương ứng cần đạt
được để độ ồn của nó bằng với độ ồn của một tín hiệucó tần số 1kHz. Ví dụ, ở
mức 20 phon (1 phon là đơn vị cường độ 1dB khi tần số là 1kHz) ta thấy rằng một
tín hiệu với tần số 50Hz cần phải có cường độ lớn hơn 30dB so với một tín hiệu ở
1kHz để tạo ra cùng một độ ồn. Đường cong thấp nhất trong hình được gọi là
trường nghe tối thiểu và tương ứng với một ngưỡng nghe được trung bình của con
người.

Hình 2.1 Đường cong cho thấy mức sức ép âm thanh cần thiết ở từng tần số
để tạo ra độ ồn tương đương với một tín hiệu ở 1kHz
Từ hình trên ta thấy khi âm thanh có cường độ càng cao  sự ảnh hưởng
của tần số lên độ ồn càng giảm, thể hiện ở càng lên cao các đường cong càng gần
với đường thằng.


Nhóm 16

Page 8


2.2.

Hiện tượng che

Một tính chất cơ bản khác của hệ thính giác con người mà các phương pháp mã
hóa âm thanh hay lợi dụng đó là che. Đây là hiện tượng khi 1 hoặc 1 số âm thanh
tuy tồn tại trong không gian (vẫn nằm trong dải tần mà con người có thể cảm nhận
được) nhưng ta không thể nghe thấy do 1 số lý do nhất định (biên độ nhỏ hoặc bị
âm thanh khác lấn át mất).

Hình 2.2:Che khiến ngưỡng nghe được bị nâng lên cao hơn so với bình thường. Vì
thế tất cả các tín hiệu ở dưới ngưỡng che cũng có thể được loại bỏ trong quá trình
mã hóa.
Những thử nghiệm có hệ thống đầu tiên nhằm nghiên cứu những ảnh hưởng
của hiện tượng che và vai trò của những thông số như phổ, mức độ và chu kì của
tín hiệu che được thực hiện bởi Fletcher. Trong thí nghiệm này một tín hiệu che
được phát sinh và giữ ở một mức cố định trong khi một tín hiệu âm thanh khác
đượng tằng dần cường độ từ ngưỡng nghe được bình thường cho đến khi nó có thể
được cảm nhận bởi cơ quan thính giác của con người mặc dù bị che phủ bởi che.
Sự chênh lệch giữa cường độ ban đầu và cường độ cần thiết để vượt qua ảnh
hưởng của che được gọi là mức thay đổi ngưỡng (threshold shift).
Thử nghiệm của Fletcher đã chứng minh nhận xét của Mayer rằng những âm
thanh với tần số cao dễ bị che hơn là những âm thanh với tần số thấp. Điều này
nghĩa là nếu ta mã hóa một tín hiệu âm thanhlà hợp của nhiều nguồn với tần số

khác nhau thì hiện tượng che sẽ khiến ta có cảm giác rằng những tín hiệu ở tần số
thấp được tăng mức cường độ (do các tín hiệu ở tần số cao dễ bị che phủ hơn và
gây cho người nghe cảm giác là nó có cường độ thấp hơn). Một điều thú vị là nếu
như tín hiệu che được tiếp nhận bởi 1 tai còn tín hiệu bị che được tiếp nhận độc
Nhóm 16

Page 9


lập bởi tai còn lại thì ta sẽ không cảm thấy cường độ các âm tần số thấp được tăng
lên.
2.2.1.

Hiện tượng che theo tần số (Frequency masking)

Hiện tượng che đối với các âm thanh phức tạp hợp của nhiều âm thanh đơn
lẻ không chỉ là sự hợp nhất của kết quả trên từng âm thanh đơn lẻ mà còn là kết
quả của tổng cũng như sự chênh lệch giữa các âm thanh đó.
Phổ của tín hiệu che luôn đóng một vai trò quan trọng trong quá trình che,
một tín hiệu đơn nhất (tức là phổ chỉ bao gồm 1 đường) có thể đóng vai trò như 1
tín hiệu che.Các tín hiệu tần số thấp có thể che phủ các tín hiệu tần số cao nhưng
các tín hiệu tần số cao không thích hợp để đóng vai trò tín hiệu che cho các tín
hiệu tần số thấp. Những nghiên cứu sau này xác nhận kết luận trên đồng thời chỉ ra
thêm rằng khi cường độ của tín hiệu che tăng lên, tác dụng che phủ của nó chỉ tăng
về phía các tín hiệu có tần số cao mà không tăng về phía các tín hiệu có tần số
thấp, hơn nữa các tín hiệu che ở tần số thấp có khoảng che phủ cao hơn nhiều so
với các tín hiệu có tần số cao. Điều này cho thấy rằng các tín hiệu che tần số thấp
có thể ảnh hưởng lên một vùng tần số rộng hơn nhiều so với khả năng của tín hiệu
che có tần số cao


Hình 2.3 Với tín hiệu che băng thông rộng, chỉ có phần năng lượng trong
vùng găng có tác dụng làm xuất hiện hiện tượng che.
Cơ quan thính giác của con người có khả năng hoạt động như một thiết bị
phân tích phổ và nó có thể phân tách những tần số trong tin hiệu âm thanh sử dụng
một ngưỡng lọc gọi là lọc nghe được. Độ rộng của bộ lọc này là thay đổi tùy thuộc
vào tần số của âm thanh đến. Trong những công trình của mình, Fletcher đã chỉ ra
rằng ngưỡng che phủ của một giai điệu là tỉ lệ thuận với cả băng thông của nhiếu
che, tuy nhiên khi tín hiệu che đạt đến một độ rộng nhất định thì tác dụng che phủ
của nó không tăng thêm nữa. Điều này cho phép đặt ra giả thuyết rằng mỗi bộ lọc
nghe được có một vùng găng xác định.Fletcher định nghĩa vùng găng như là tỉ lệ
giữa cường độ của tín hiệu và cường độ của nhiễu, thể hiện bằng độ chênh lệch
tính bằng dB giữa tín hiệu âm thanh và tín hiệu che (hình 2.3).
2.2.2.
Nhóm 16

Hiện tượng che trên miền thời gian
Page 10


Với hiện tượng che về mặt tần số hai âm thanh cùng xuất hiện đồng thời thì
hiện tượng che về mặt thời gian hai âm thanh che và bị che có thể xuất hiện ở các
thời điểm khác nhau.Hiện tượng che về mặt thời gian có thể chia làm 2 loại: che
thuận khi tín hiệu bị che xuất hiện sau tín hiệu che và che ngược khi tín hiệu bị che
sinh ra trước tín iệu che.

Hình 2.4 Hiện tượng che theo miền thời gian (che thuận và che ngược)
 Che thuận: Tín hiệu che xuất hiện trước tín hiệu bị che. Với hiện

tượng che thuận khi âm thanh che có cường độ lớn xuất hiện thì sau
đó một lúc tai ta mới có thể nghe được âm thanh khác. Nếu âm thanh

bị che xuất hiện trong khoảng thời gian này thì ta không thể nghe thấy
được. Đây là dạng thuồng thấy của hiện tượng che về mặt thời gian.
Hiện tượng này xuất hiện khi khoảng cách giữa 2 tín hiệu che và bị
che là nhỏ hơn 200 ms.
 Che ngược: Tín hiệu che xuất hiện sau tín hiệu bị che. Đây là hiện
tượng âm thanh che sẽ che mất phần cuối của âm thanh trước đó được
phát ra. Hiện tượng này ít xảy ra hơn và ngược chỉ có thể xảy ra khi
mức độ của tín hiệu che cao hơn tương đối nhiều so với mức độ của
tín hiệu âm thanh bị che phủ và khoảng cách thời gian giữa 2 tín hiệu
này nhỏ hơn 25ms. Mặc dù tín hiệu âm thanh tới tai trước nhưng do
não bộ lại xủa lý tín hiệu che (có độ ồn cao) trước nên hiện tượng che
ngược xuất hiện.
Một ví dụ cho hiện tượng che thuận với âm thanh che có tần số 1 kHz và biên độ
60dB.Âm thanh sử dụng để thí nghiệm (test tone) có tần số 1.1 kHz. Giảm dần
biên độ của test tone từ 50dB xuống ta có kết quả sau:

Nhóm 16

Page 11


Hình 4.
2.2.3.

Hiện tượng che chênh lệch

Hiện tượng này xuất hiện khi tín hiệu che đến một bên tai còn tín hiệu còn lại
đến tai còn lại. Khi cường độ của tín hiệu che tăng đến một ngưỡng nào đó, nó có
thể che phủ được tín hiệu âm thanh ở bên tai còn lại.
Hiện tượng che chênh lệch có hiệu quả thấp hơn rất nhiều so với hiện tượng che

cùng một bên tai. Tuy nhiên trong trường hợp này, các tín hiệu ở tần số cao lại có
tác dụng che phủ lớn hơn nhiều so với các tín hiệu ở tần số thấp (tín hiệu che cần
phải có biên độ lớn hơn rất nhiều so với tín hiệu bị che).Trong trường hợp che
chênh lệch, các tín hiệu ở tần số cao lại có tác dụng che phủ lớn hơn rất nhiều so
với các tín hiệu ở tần số thấp.

3.

Nén âm thanh kết hợp mô hình cảm thụ âm thanh
Nén âm thanh tiếng nói kết hợp với mô hình cảm nhận âm thanh là phương
pháp giảm lượng dữ liệu cần thiết khi số hóa các tín hiệu âm thanh. Điểm khác
biệt giữa phương pháp này và các phương pháp nén thông thường khác đó là mặc

Nhóm 16

Page 12


dù những âm thanh bị cắt bỏ có thể dễ dàng bị nhận ra nếu ta phát nó riêng rẽ
nhưng chúng lại không thể được nghe thấy nếu như ta phát toàn bộ tín hiệu ban
đầu. Phương pháp này ưu việt hơn những phương pháp nén khác ví dụ như
ADPCM là ở chỗ nó có thể lợi dụng được những Skhiếm khuyết trong cơ chế cảm
nhận âm thanh của con người nhằm làm tăng tí số nén.
Cơ sở chính của phương pháp nén này đó là một số tín hiệu âm thanh có khả năng
gây kích thích mạnh lên não bộ và khiến não bộ bỏ qua không xử lí những tín hiệu
âm thanh nhất định khác.Nói cách khác, một âm thanh có thể che lấp những âm
thanh khác, vì vậy ta có thể lợi dụng điểm này và bỏ qua không mã hóa những âm
thanh đó.

Hình 2.5 Sơ đồ quá trình nén mã hóa

Trong hình 2.5 ở trên ta có thể thấy các bước chính của quá trình nén.Tín hiệu đầu
vào được chia ra thành nhiều dải tần số khác nhau, trải rộng trên khắp phổ tần số.
Sau khi thực hiện xong việc phân chia, ta có thể xử lí từng dải tần số đó một cách
riêng rẽ, dựa vào các đặc điểm của quá trình cảm nhận âm thanh của cơ quan thính
giác của con người và từ ảnh hưởng che của các dải tần số xung quanh, từng dải sẽ
có 1 ngưỡng nghe mới nhất định. Nếu như dải nào có cường độ thấp hơn ngưỡng
nghe đó thì ta có thể loại bỏ nó đi (vì dải này đã bị che bởi các dải lân cận và tai
người không thể cảm nhận được nó nữa).
Đối với những dải có cường độ cao hơn ngưỡng nghe mới thì quá trình mã hóa sẽ
được thực hiện. Tín hiệu có cường độ càng cao thì con người sẽ càng cảm nhận
được nó một các rõ ràng, vì vậy nó sẽ được mã hóa bởi nhiều bit hơn so với những
tín hiệu có cường độ thấp.
Cuối cùng, bộ mã hóa sẽ thực hiện việc format dòng dữ liệu, giảm thiểu kích
thước dữ liệu và tổ chức chúng thành các dòng bit dữ liệu để bộ giải mã có thể
hiểu được. Ngoài ra bộ mã hóa cũng sẽ bổ sung thêm một số thông tin điều khiển
Nhóm 16

Page 13


để đảm bảo rằng quá trình nhận dạng dữ liệu có thể được thực hiện một cách dễ
dàng, các thông tin được bổ sung có thể là tần số lấy mẫu hay tần số bit…. Ở bước
này nếu cần thiết ta cũng có thể bổ sung thêm các thông tin phát hiện và sửa lỗi.
Ví dụ: Giả sử ta có một tín hiệu mà 16 dải tần số đầu tiên có cường độ như ở bảng
dưosi đây:

Với cường độ là 60dB, tín hiệu dải tần thứ 8 sẽ gây ra hiện tượng che làm ngưỡng
nghe ở dải 7 chở thành 12dB và ngưỡng nghe ở dải 9 trở thành 15dB
Vì cường độ tín hiệu ở dải 7 chỉ là 10dB nên ta không cần mã hóa dải này mà bỏ
qua nó luôn.

Vì cường độ dải 9 là 35dB nên ta cần phải mã hóa dải này.
 Khối Time/Frequency Mapping:

Khối có đầu vào là tín hiệu gốc.Được sử dụng để chia tín hiệu đầu vào thành
các subband. Khối này thường là băng lọc với nhiều bộ lọc với đáp ứng tần số
khác nhau.
 Khối Psychoacoustic Model:

Khối này có đầu vào là tín hiệu gốc và tín hiệu sau khi đã được chia thành các
subbands. Khối được sử dụng để tính toán các hiệu ứng che của tín hiệu đưa vào
dựa vào mô hình cảm thụ âm thanh của con người. Từ đó tính ra masking level
cho mỗi bang tần và đưa tới khối lượng tử hóa để tiến hành lượng tử hóa.
 Khối lượng tử hóa và mã hóa (Quantizer and Coding):

Khối có đầu vào là các subband được chia sau khi tín hiệu gốc đi qua băng lọc
và các hiệu ứng che được tính toán từ khối Psychoacoustic Model. Nhiệm vụ của
khối này là tiến hành lượng tử hóa tín hiệu trên các subbands một cách phù hợp
sao cho số bit sử dụng cho mỗi subband là ít nhất (tất nhiên vẫn cần đảm bảo chất
lượng tín hiệu) và sau đó mã hóa tín hiệu trên các subband với các phương pháp
mã hóa như huffman, mã hóa đại số …
Ta có sai số lượng tử với trường hợp lượng tử đều và bước lượng tử là Q gần như
xấp xỉ với phân bố đều trong khoảng ( với phương sai là (Đây là nhiễu gây ra do
lượng tử)

Nhóm 16

Page 14


Giả sử tín hiệu gốc có phân phối đều trên khoảng B. Với R bits/mẫu ta sẽ có mức

lượng tử có thể sử dụng. Mối liên hệ giữa bước lượng tử Q và R :
Nhiễu do lượng tử hóa sẽ giảm đi 6 dB với việc ta sử dụng thêm một bit cho việc
lượng tử :

Như ta đã biết mỗi subband có ngưỡng che riêng (masking threshold –
masking level). Khối lượng tử hóa làm nhiệm vụ lượng tử tín hiệu của mỗi
subband với đủ số bit để duy trì khoảng cách giữa nhiễu do lượng tử và ngưỡng
che của mỗi subband (Giữ cho nhiễu lượng tử nhỏ hơn ngưỡng che của subband
để các thành phần nhiễu này không thể nghe thấy được bởi tai con người). Như
vậy ta có thể giảm được số bit cần để lượng tử hóa mỗi mẫu tín hiệu của subband
tùy thuộc vào ngưỡng che của subband tương ứng nhờ vậy ta có thể tăng được
hiệu quả nén dữ liệu (Việc giảm mỗi bit làm tăng nhiễu lượng tử lên 6 dB ta cần
giữ cho giá trị nhiễu này nhỏ hơn ngưỡng che).
Bên cạnh đó, ta cũng thấy được một trong những giới hạn của mã hóa tín hiệu âm
thanh là khi nhiễu do lượng tử hóa vượt quá ngưỡng che và trở thành một phần
của tín hiệu âm thanh mà tai có thể nghe được. Ta luôn phải cố gắng giảm số bit
sử dụng để lượng tử hóa giá trị của mẫu sao cho giá trị của nhiễu do lượng tử xấp
xỉ với giá trị của ngưỡng che nhưng luôn phải nhỏ hơn giá trị của ngưỡng che.
Sau khi tiến hành lượng tử hóa với số bit tương ứng cho từng subband ta tiến hành
encode cho từng subband bằng các phương pháp mã hóa đã nêu.

 Khối Frame Packing

Dữ liệu sau khi ta lượng tử và mã hóa được đưa vào khối này để đóng gói
thành các frame và chuyển đi trong hệ thống mạng.

Nhóm 16

Page 15



Nhóm 16

Page 16


4.

Phân tích kỹ thuật SBC trong phương pháp nén
audio theo chuẩn MP3
Kỹ thuật SBC

4.1.

Nguyên lý phương pháp mã hóa các dải tần con:
- Tín hiệu nguồn được phân tách thành các tín hiệu trên các dải tần con
bằng kỹ thuật lọc số.
- Tín hiệu trên mỗi dải tần được mã hóa riêng.
• Mã hóa các dải tần sử dụng bộ lọc số để phân tách tín hiệu nguồn thành các
tín hiệu trên các dải băng tần khác nhau. Mã hóa riêng các dải tần cho phép
đạt hiệu quả nén tốt hơn.


4.2.

Phân tích kỹ thuật SBC trong phương pháp nén audio
theo chuẩn MP3
Phân tích các khối Analysis Filterbank, Scaler and Quantizer, Huffman Coding
trong sơ đồ nén audio theo chuẩn MP3.


Hình 4.2: Sơ đồ nén audio theo chuẩn MP3

Nhóm 16

Page 17


4.2.1.

Chia tín hiệu nguồn thành các tín hiệu trên các dải tần con



Hình 4.2.1: Sơ đồ mô phỏngbăng lọc được sử dụng trong khối Analysis
Filterbanks
Phương pháp nén audio theo chuẩn MP3 thực hiện việc chia tín hiệu nguồn
thành các tín hiệu trên các dải tần con khác nhau bằng cách sử dụng một băng
lọc song song cách đều nhau chứa 32 bộ lọc phân tích (Khối Analysis
Filterbanks).
Tín hiệu nguồn là: tín hiệu audio PCM, 1 chuỗi 1152 mẫu PCM được lọc bởi
băng lọc song song cách đều chứa 32subband, mỗi subband lại chứa 36 mẫu
subband.
Trong nén MP3 sau khi tín hiệu nguồn được chia thành các tín hiệu trên các
dải tần con khác nhau bởi băng lọc thì nó sẽ được ánh xạ vào một MDCT,
trước khi quá trình biến đổitrong MDCT xảy ra các subband sẽ được áp dụng
một loại cửa sổ, cửa sổ dài hay ngắn được áp dụng tùy thuộc vào mỗi subband
và quyết định chọn cửa sổ nào đc áp dụng phụ thuộc vào khối Masking
Thresholds.
Với mỗi subband đc áp dụng cửa sổ dài sau khi qua MDCT sẽ sản sinh ra 18
dòng tần số. Và các subband đc áp dụng cửa sổ ngắn sẽ sinh ra thêm 3 nhóm

của 6 tần số.
Do có sự chồng cửa sổ lên nhau 50% nên kích thước cửa sổ là 36 mẫu cho khối
dài và 12 mẫu cho khối ngắn.
Như vậy sẽ tạo ra 576 dòng tần số sau khi đi qua khối MDCT.
Cửa sổ dài đc áp dụng nhằm tăng cường độ phân giải phổ được đưa ra bởi
MDCT
Cửa sổ ngắn: chứa 3 cửa sổ ngắn gối lên nhau có tác dụng tăng cường độ phân
giải thời gian được đưa ra bởi MDCT.

Nhóm 16

Page 18


4.2.2.

Mã hóa các tín hiệu trên các dải tần con
Lượng tử hóa:
Lượng tử hóa được thực hiện trong khối Scaler and Quantizer
Khối lượng tử hóa được áp dụng cho 576 giá trị phổ cùng lúc, thực hiện trong
2 vòng lặp:
• Vòng lặp kiểm soát tốc độ (vòng trong).
• Vòng lặp kiểm soát các nhiễu lượng tử (vòng ngoài).
Số bit dùng để lượng tử hóa được quyết định bởi khối Masking Thresholds.
Vòng lặp kiểm soát tốc độ
Vòng lặp tốc độ thực hiện lấy mẫu trên miền tần số quyết định độ
lớn của bước lượng tử hóa. Ngoài việc chia giá trị lớn thành các
vùng, quyết định chọn bảng Huffman cho mỗi vùng và việc tính
toán biên giữa các vùng cũng được diễn ra ở đây.
• Ta sẽ bắt đầu với các mẫu được lượng tử hóa với bước lượng tử hóa

tăng dần cho tới khi giá trị lượng tử hóa có thể mã hóa sử dụng một
trong các giá trị của bảng mã Huffman. Một bước lượng tử hóa lớn
hơn sẽ dẫn theo một giá trị lượng tử hóa nhỏ hơn. Sau đó bit tổng
của mã Huffman được tính toán và so sánh với các bit hiện có. Nếu
bit tổng vượt quá số bit hiện có, bước lượng tử hóa sẽ tăng lên và
các thủ tục còn lại sẽ lặp lại cho tới khi đủ các bit hiện có.
• Sự phi tuyến đạt được bằng cách lũy thừa mỗi mẫu lên ¾.


Vòng lặp kiểm soát sai khác
Vòng lặp này kiểm soát các nhiễu lượng tử được tạo ra bởi quá
trình lượng tử hóa các dòng trên miền tần số trong vòng lặp kiểm
soát tốc độ. Mục đích là để giữ nhiễu lượng tử dưới ngưỡng che
(cho phép các tiếng ồn do mô hình âm thanh tri giác tạo ra).
• Để định hình nhiễu lượng tử, nhân tố tỉ lệ (mặc định bằng 1.0) được
dùng vào các dòng tần số trong mỗi băng. Các nhân tố tỉ lệ của các
băng và bước lượng tử hóa sau đó được lưu lại trước khi vòng lặp
kiểm soát tốc độ được gọi. Sau vòng lặp kiểm soát tốc độ (bên
trong), nhiễu lượng tử hóa sẽ được tính toán. Điều này lặp lại cho
tới khi không có băng nào có tiếng ồn lớn hơn ngưỡng cho phép.
Các giá trị của nhân tố tỉ lệ của các băng quá ồn sẽ tăng cho mỗi
vòng lặp được lặp lại. Cuối cùng tai người sẽ không nghe được
tiếng ồn do quá trình lượng tử hóa tạo ra và vòng lặp kết thúc.


Nhóm 16

Page 19





Vẫn có những trường hợp cả hai vòng lặp tính toán vô hạn. Để
tránh trường hợp này, có thể kiểm tra một vài điều kiện trong vòng
lặp kiểm soát sai khác để dừng quá trình lặp lại sớm hơn.

Đầu vào vòng lặp:


Vector độ lớn của 576 giá trị phổ.



Sự sai khác cho phép của các băng.



Số lượng băng.



Các bit hiện có của mã Huffman và mã của nhân tố tỉ lệ.



Số bit trung bình.

Đầu ra vòng lặp:



Vector của 576 giá trị lượng tử hóa.



Nhân tố tỉ lệ.



Độ lớn thông tin bước lượng tử hóa.



Số bit hiện không sử dụng .



Cờ nhấn mạnh trước vòng lặp.



Mã Huffman liên quan tới thông tin bên lề.
o

big_values (số cặp mã giá trị Huffman, trừ “count1”)

o

count1table_select (bảng mã Huffman của các giá trị <= 1 ở
phía trên của phổ)


o

table_select (bảng mã Huffman của các vùng)

o

region0_count và region1_count (dùng để tính biên giữa các
vùng).

o

Part2_3_length

Mã hóa Huffman
Nhóm 16

Page 20


Phương pháp nén MP3 sử dụng mã hóa Huffman để mã hóa các
subband.
• Phương pháp mã hóa Huffman là phương pháp mã hóa không mất
dữ liệu làm nâng cao chất lượng của phương pháp nén MP3.


Nhóm 16

Page 21



5.

Ứng dụng thử nghiệm nén âm thanh dải rộng theo
chuẩn MPEG (MP3)
Phần mềm sử dụng: Free make Audio Converter
Kịch bản: Nén 1 file nhạc WAV sang MP3 sau đó đánh giá chất lượng trong 2
trường hợp:
Nén cùng tần số lấy mẫu 44,1 kHz, tốc độ bit khác nhau là 64kbps và
128kbps.
• Nén cùng tốc độ bit 128kbps, tần số lấy mẫu khác nhau là 32kHz và
44,1kHz


Dữ liệu âm thanh trong tập tin WAV là dạng dữ liệu âm thanh không nén. Định
dạng WAV có ưu điểm là cấu trúc đơn giản , chất lượng âm thanh được bảo toàn,
nhưng nhược điểm là dung lượng file khá lớn. Nếu được lấy mẫu với tần số 44.1
kHz (44100 lần/giây), độ phân giải 16 bit (tương đương với chất lượng CD) thì 1
phút âm thanh sẽ tiêu tốn tới 10 MB, nghĩa là một bài hát khoảng 5 phút sẽ mất
dung lượng 50MB ổ cứng. Phổ biến hơn là các chuẩn nén âm thanh không bảo
toàn nội dung (Lossy) như MP3, WMA,AC-3 … mặc dù âm thanh không còn
nguyên vẹn, nhưng chất lượng cũng tương đối tốt, và đặc biệt chỉ chiếm khoảng
5MB cho một bài hát khoảng 5 phút (bằng 10% so với chuẩn WAV).
Giao diện phần mềm

Nhóm 16

Page 22


File WAV ban đầu


Nén với tần số lấy mẫu 44,1kHz, tốc độ bit 128kbps

Nhóm 16

Page 23


Nén với tần số lấy mẫu 44,1kHz, tốc độ bit 64kbps

Nén với tần số lấy mẫu 32kHz, tốc độ bit 128kbps

Nhóm 16

Page 24


Đánh giá chất lượng nén có 2 phương pháp là: nghe thử hoặc dựa vào thông số
SNR
 Nghe thử

 Dựa vào SNR

Ta có tính SNR trên matlab
Ví dụ với file nén tần số lấy mẫu 44,1kHz và tốc độ bit 128kbps
[signal,sr]=audioread('C:\Users\Mr\Desktop\DiemXua.wav');
[noise,sr]=audioread('C:\Users\Mr\Desktop\44,1-128.mp3');
P1=sum(signal);
P2=sum(noise);
SNR=mean(10*log10(sum(signal.^2)./((P1-P2).^2)));

disp(SNR);
Nhóm 16

Page 25


×