Bài Thảo Luận
Truyền Thông Đa Phương Tiện
Lớp ĐH Tin3A-Nhóm 18
Giảng viên:TS.Trần Bích Thảo
Các Thành Viên: Lê Huy Dưỡng
Lê Thị Lân
Nội dung báo cáo: Chuẩn nén tiếng nói (ITU-TG.7xx)
1. Mở đầu
• Nén dữ liệu âm thanh nói chung và dữ liệu tiếng nói nói riêng đã và đang
được các nhà khoa học, công nghệ trên thế giới quan tâm nghiên cứu, các
kết quả đạt được đã được ứng dụng nhiều trong lĩnh vực truyền thông và giải
trí. Trong lĩnh vực nén âm thanh, người ta đã từng biết đến các chuẩn nén
khá nổi tiếng nhưdòng họ nén MPEG, MP3, JPEG đặc điểm chung của các
thuật toán nén trên là: hiệu suất nén cao, chất lượng âm thanh sau khi giải
nén tốt. Tuy nhiên do tính phức tạp của các thuật toán đó nên quá trình nén
và giải nén luôn phải tách thành hai quá trình riêng biệt. Đặc điểm này làm
cho các thuật toán trên không thể sử dụng trong các trường hợp cần nén và
giải nén trực tuyến . Vì vậy, việc tìm kiếm và thiết lập các thuật toán nén và
giải nén có thể thực hiện trực tuyến đã và đang là vấn đề thời sự.
• Hiệp hội viễn thông quốc tế, ITU-T ( International Telecommunication
Union – Telecommunication ) đã đưa ra những chuẩn nén âm thanh mới
nhất như G728, G729, G723.1 v.v… dành cho băng thông thoại thấp với tần
số 300 Hz đến 3,4kHz. Các khuyến nghị G.7xx được sử dụng trong hệ thống
truyền dẫn kỹ thuật số, và đặc biệt, được sử dụng để mã hóa tín hiệu tương
tự thành tín hiệu số. Tất cả các chuẩn này đều dựa trên chuẩn mã hóa CELP
(Code-Excited Linear Prediction). Chuẩn nén âm thanh đã được tiêu chuẩn
hóa trong mã ANSI-C với 2 lý do chính:
Độ tin cậy khi tương tác giữa các thiết bị.
Giá thành thấp và những tiện ích thực thi dựa trên 16 bit fixpoint DSP.
2. Một số đặc điểm của âm thanh tiếng nói
Về nguyên tắc các phương pháp nén audio đều có thể dùng để nén âm thanh
của một khúc cong đơn điệu.
Đầu vào: Dãy tín hiệu tiếng nói.
Đầu ra: Các véctơ có dạng (A,B,n) tương ứng là phần tử đầu, cuối và số phần tử
của dãy con đơn điệu.
Các biến sử dụng trong thuật toán TT1 mô tả trong hình 3:
Dấu: nhận giá trị +1 hoặc -1 biểu thị dãy con không tăng hay giảm,
s: lưu giá trị tín hiệu,
Y1, Y2: lưu hai giá trị liên tiếp của tín hiệu.
A, B: lưu giá trị đầu và cuối của dãy con đơn điệu.
n: lưu số phần tử của dãy con đơn điệu.
Nhận xét:
1) Thuật toán trên có thể làm việc trực tuyến vì quá trình nén chỉ thực hiện hai thao
tác chủ yếu là so sánh hai tín hiệu liên tiếp và đếm.
2) Thuật toán mô tả bởi sơ đồ khối hình 3 có thể cải tiến để nâng cao tỷ lệ nén.
Chúng ta hãy xét hai lần truyền dữ liệu nén liên tiếp trongthuật toán trên là
Output (A,B,n) và Output (B,C,n1), với A, B là phần tử đầu, cuối của dãy con thứ
nhất và B, C là phần tử đầu, cuối của dãy con thứ hai. Rõ ràng ta có thể bớt đi phần
tử B ở lần truyền thứ hai.
3) Thuật toán mô tả trên còn có thể cải tiến để nâng cao tỷ lệ nén bằng cách thay
các khúc đường cong AB (bao gồm cả các khúc cong không giảm, không tăng)
bằng đoạn thẳng AB nếu mọi điểm trên khúc đường cong AB thỏa mãn điều kiện
|s1-s2|<h (h>0), ở đây s1, s2 nằm trên khúc cong AB, minh họa ở hình 4.
Hình 3.Sơ đồ khối thuật toán TT1.
Hình 4.Minh họa ý tưởng cải tiến thuật toán TT1.
2.3. Thuật toán giải nén ứng với thuật toán TT1
Dữ liệu nén dạng (A, B, n) do thuật toán TT1 thực hiện được giải nén bằng cách
nội suy tuyến tính n điểm cách đều với giá trị đầu, cuối tương ứng là A, B. Ký hiệu
(y1, y2, , yn) là ngiá trị được giải nén. Khi đó:
yi=A+(i-1)*(B-A)/(n-1), với n>1, i=1 n.
Ký hiệu thuật toán giải nén ứng với thuật toán TT1 là thuật toán TT2. Thuật toán
Từ mã LPC hoàn chỉnh có khoảng 80 bit – 1 bit để chuyển đổi trường hợp có âm
và không có âm, 6 bit cho cao độ, 5 bit cho độ khuếch đại, 6 bit cho từng độ lợi của
10 nhánh, và một vài bit phát hiện lỗi. Ghi nhận các tham số mỗi 10-25ms tương
đương lấy mẫu ở tần số 40-100hz, vì thế LPC đòi hỏi tốc độ bit khoảng 3000-
8000bps. Việc giảm đáng kể tốc độ bit làm cho LPC có khả năng thay thế trong nổ
lực cải tiến chất lượng của tổng hợp tiếng nói cho truyền thong thoại.
+ Một số chuẩn nén tiếng nói thuộc họ ITU – TG.7XX
Họ tiêu chuẩn G.7xx mã hóa và giải mã âm thanh và giải mã chủ yếu được sử dụng
trong điện thoại di động và điện thoại Internet bao gồm kết nối VoIP. Có một số
giao thức trong họ G.7xx của bộ G mà ITU khuyến nghị, một số chuẩn của họ như:
5.1 Chuẩn G.711: Nén tín hiệu âm thanh cơ bản tại 48Kbps tới 64 Kbps. Kỹ thuật
điều chế mã xung nhịp thấp giống như sử dụng trong điện thoại thông thường. Có
hai phiên bản của tiêu chuẩn này:
+G.711.0: Nén ít hao tổn G.711 điều chế mã xung:mô tả một chương trình
nén ít hao tổn G.711 bitstream, chủ yếu là nhằm mục đích để truyền qua IP
(ví dụ, VoIP)
+G.711.1: Wideband(băng thông rộng) nhúng phần mở rộng cho ITU-T
G.711 điều chế mã xung:nhúng âm thanh và điều khiển thuật toán mã hóa
âm thanh băng rộng tại 64, 80 và 96 kbit / s.
Chuẩn nén G.711:
Giới thiệu:
Chuẩn G.711 là một chuẩn nén âm thanh được sử dụng rộng rãi cho
các hội nghị âm thanh. Chuẩn này mô tả phương pháp mã hoá và giải mã âm
thanh với tốc độ 64Kbps.
Tốc độ lấy mẫu:
Một giá trị được đề nghị của tần số lấy mẫu là 8000 samples/giây. Độ
sai sót thường là +/- 50 phần triệu.
Quy luật mã hoá:
Mỗi mẫu âm thanh là một số nhị phân có tám bit được sử dụng cho
phạm vi toàn cầu. ITU – T đưa ra hai quy luật mã hóa là mã hóa theo quy luật
+Đầu ra của các codec G.718 ITU -T có khả năng hoạt động với một băng thông
của 300-3400Hz tại 8 và 12kbit / s; 50-7000Hz tại 8 đến 32 kbit / s.
Cốt lõi codec chất lượng cao thể hiện một cải tiến hiệu suất đáng kể , cung cấp
băng rộng 8 kbit / s chất lượng giọng nói sạch tương đương các codec ITU-T
G.722.2 tại 12,65 kbit / s trong khi 8 kbit / s chế độ băng hẹp bộ codec hoạt động
cung cấp giọng nói sạch chất lượng tương đương với ITU- T G.729E codec ở 11,8
kbit / s.
+Codec hoạt động trên khung truyền 20 ms và có một độ trễ tối đa của khung
truyền 42,875 ms cho tín hiệu đầu vào và các tín hiệu đầu ra băng rộng .Độ trễ tối
đa cho tín hiệu đầu vào và đầu ra băng hẹp là 43,875 ms. Codec cũng có thể được
sử dụng trong một chế độ có độ trễ thấp khi bộ mã hóa và giải mã tốc độ bit tối đa
được thiết lập đến 12 kbit / s . Trong trường hợp này , độ trễ tối đa được giảm 10
ms.
+Codec cũng kết hợp một chế độ mã hóa thay thế, với một tỷ lệ bit tối thiểu 12,65
kbit / s, đó là luồng bit tương thích với các chuẩn của ITU - T G.722.2 , điện thoại
di động 3GPP AMR- WB và 3GPP2 VMR -WB WB tiêu chuẩn mã hóa giọng nói.
Tùy chọn này thay thế lớp 1 và lớp 2 , và các lớp 3-5 là tương tự như tùy chọn mặc
định với các trường hợp ngoại lệ trong lớp 3 bit ít được sử dụng để bù cho các bit
đặc biệt của 12,65 kbit/s lõi. Bộ giải mã là tiếp tục có khả năng giải mã tất cả ITU
-T chế độ hoạt động khác G.722.2 . Hơn nữa, một phụ lục mới chuẩn này đang
được phát triển có hiệu quả sẽ cho phép luồng bit có khả năng tương tác với EVRC
WB 3GPP2 codec. Chuẩn này cũng bao gồm chế độ truyền dẫn không liên tục
( DTX) và các thuật toán phát sinh tiếng ồn thoải mái (CNG) cho phép tiết kiệm
băng thông trong suốt thời gian không hoạt động. Tích hợp thuật toán giảm tiếng
ồn có thể được sử dụng đó là phiên giao tiếp với giới hạn đến 12 kbit / s .
+Các thuật toán cơ bản được dựa trên một cấu trúc hai giai đoạn mã hóa : dưới hai
lớp được dựa trên mã dự đoán tuyến tính kích thích ( CELP ) mã hóa của giọng nói
( 50-6400 Hz) lớp lõi tận dụng phân loại tín hiệu để sử dụng tối ưu hóa chế độ mã
hóa cho mỗi khung truyền. Các lớp cao hơn mã hóa các tín hiệu báo lỗi trọng từ
các lớp thấp hơn bằng cách sử dụng chồng chéo thêm sửa đổi cosin rời rạc chuyển
Bộ mã hóa này được thiết kế để thực thi với một tín hiệu số. Tín hiệu
này có được bằng cách thực hiện lọc tín hiệu tương tự đầu vào trong băng tần
thoại, sau đó tiến hành lấy mẫu ở tần số 8000 Hz, tiếp theo nó chuyển đổi
thành PCM tuyến tính 16 bit để đưa vào đầu vào của bộ mã hóa. Đầu ra của
bộ mã hóa phải được chuyển đổi ngược lại sang tín hiệu tương tự bằng những
cách tương tự. Những kiểu dữ liệu có đầu vào/đầu ra(input/output) khác, như
dữ liệu PCM 64 kbit/s trong Khuyến nghị G711, phải được chuyển đổi sang
PCM tuyến tính 16 bit trước khi mã hóa hoặc từ PCM tuyến tính 16 bit đến
định dạng đúng sau khi giải mã. Luồng bit từ bộ mã hóa sang bộ giải mã
được định nghĩa rõ trong chuẩn này.
Bộ mã hóa dựa trên nguyên lý mã hóa phân tích bằng cách tổng hợp(
analysis-by-synthesis) dự đoán tuyến tính và cố gắng tối thiểu tín hiệu trọng
số lỗi một cách trực quan( conceptual). Bộ mã hóa hoạt động dựa trên những
khối (frame 240 mẫu), tương đương với thời gian lấy mẫu là 30 ms ở tốc độ
lấy mẫu 8 kHz. Với mỗi block, trước tiến nó được đưa qua bộ lọc tần số cao
để loại bỏ thành phần DC, sau đó chia vào 4 subframe, mỗi subframe có 60
mẫu. Ứng với mỗi subframe, bộ lọc mã hóa dự đoán tuyến tính (LPC filter–
Linear Prediction Coder filter) cấp 10 được tính toán dùng những tín hiệu đầu
vào chưa được xử lý. LPC filter cho subframe cuối cùng được lượng tử hóa
dùng PSVQ (Predictive Split Vector Quantizer). Các hệ số LPC không được
lượng tử hóa được sử dụng để xây dựng bộ lọc trọng số ngắn hạn(short-term
perceptual weighting filter). Bộ lọc này dùng để lọc toàn bộ frame để nhận
được tín hiệu trong số thoại.
Ứng với 2 subframe (120 mẫu), vòng lặp mở định kỳ cường độ, LOL,
được tính toán dùng tín hiệu trọng số thoại. Sự đánh giá về cường độ âm
thanh được thực thi trên một khối 120 mẫu. Định kỳ về cường độ được dò
tìm trong một khoảng từ 18 đến 142 mẫu. Từ điểm này âm thoại được xử lí
với 60 mẫu trên một subframe.
Bằng cách dùng sự ước lượng về cường độ âm thanh được tính toán ở
phía trước ta xây dựng được bộ lọc định dạng nhiễu điều hòa( harmonic noise
Nguyên lý mã hóa:
Nguyên lý mã hóa được biểu diễn trong hình dưới đây. Tín hiệu đầu
vào được chuyển lên bộ lọc chất lượng cao và được chia tỷ lệ trong những
khối trước khi xử lý . Tín hiệu tiền xử lý cung cấp như là tín hiệu đầu vào để
dùng cho tất cả những việc phân tích tiếp theo. Việc phân tích dự đoán tuyến
tính (Linear Prediction - LP) được làm một lần trên một khung 10 ms để tiến
hành tính toán hệ số lọc LP. Các hệ số này được chuyển sang dạng quang phổ
vạch dạng đôi (Line Spectrum Pairs - LSP) và dạng lượng tử hóa sử dùng dự
đoán hai giai đoạn vector lượng tử (Vector Quantization – VQ) 18 bits. Sự
kích hoạt tín hiệu được chọn bằng cách dùng một thủ tục tìm kiếm phân tích
tổng hợp, trong đó những lỗi giữa âm thanh nguồn và âm thanh sau khi được
tổng hợp lại giảm đến mức tối thiểu theo một quan niệm về việc đo lường
trọng lượng không chính xác. Việc này được thực hiện bằng cách lọc những
tín hiệu lỗi theo quan niệm về trọng lượng mà các hệ số của nó nhận được từ
bộ lọc LP chưa được lượng tử hóa. Hầu hết các quan niệm về trọng lượng
được tương thích hóa để cải thiện hiệu năng của tín hiệu đầu vào với một tần
số đáp ứng không thay đổi. Sự kích hoạt các tham số (các tham số cố định và
tương thích các ký hiệu điện tử) được xác định trên mỗi khung phụ
(subframe) 5 ms (40 mẫu). Các hệ số trong bộ lọc LP đã được lượng tử hóa
và chưa được lượng tử hóa được sử dụng trong một khung phụ thứ hai, trong
khi khung phụ thứ nhất được tự động thêm vào các hệ số trong bộ lọc LP để
sử dụng ( cả hệ số lượng tử và hệ số chưa được lượng tử hóa). Một vòng lặp
mở với độ delay của chất lượng tiếng nói được đánh giá một lần trên một
khung 10 ms dựa trên quan niệm về trọng lượng của tín hiệu tiếng nói. Sau
đó các thao tác này được lặp lại cho mỗi khung phụ. Tín hiệu cần đạt đến
x(n) được tính toán bằng cách lọc LP còn dư lại qua một bộ lọc phân tích
trọng lượng W(z)/Â(z). Trạng thái khởi tạo của các bộ lọc này được cập nhật
bằng cách lọc các lỗi giữa LP còn dư và LP kích thích, nó tương đương với
việc trừ đi những tín hiệu zero ở đầu vào của bộ lọc tổng hợp trọng lượng từ
trọng lượng của tín hiệu tiếng nói. Những xung đáp ứng h(n) của bộ lọc tổng
lệ.