4. Cấu trúc luận văn
2.2. Các phƣơng pháp nén âm thanh
Về cơ bản các phương pháp nén thoại có ba loại: phương pháp nén kiểu Waveform, phương pháp nén kiểu Vocoder và phương pháp nén kiểu hybrid – kết hợp cả hai loại phương pháp trên
2.2.1. Phương pháp mã hóa dạng sóng
Nguyên lý của mã hóa dạng sóng là tìm cách số hóa dạng sóng của tiếng nói theo cách thích hợp
- Tại phía phát, bộ mã hóa sẽ nhận các tín hiệu nói tương tự liên tục và chuyển thành tín hiệu số trước khi truyền đi
- Tại phía nhận, sẽ làm nhiệm vụ ngược lại để khôi phục tín hiệu tiếng nói Khi không có lỗi âm thanh sẽ được khôi phục gần như âm thanh gốc.
Ưu điểm: bộ mã độ lập với nguồn âm, giá thành thiết kế, độ trễ và công suất tiêu thụ thấp, kỹ thuật mã hóa đơn giản nhất là điều chế xung mã (PCM). Cho chất lượng âm thanh tốt với băng thông 16kbps trở lên.
2.2.2. Phương pháp mã hóa theo nguồn âm
Nguyên tắc của các bộ mã hoá theo nguồn âm đó là phân tích các tín hiệu âm thanh sau đó tách ra các thông số đặc trưng của tín hiệu âm thanh, mã hoá các thông số đó và gửi đi, ở nơi thu cũng sử dụng một cơ chế phát âm tương tự, dùng các thông số nhận được để kích thích bộ phát âm, phát lại âm thanh như ở bên gửi. Điển hình của các bộ mã hoá theo nguồn âm là bộ mã hoá dự báo tuyến tính LPC (Linear Prediction Coder). Các bộ mã hoá dạng này có thể thực hiện mã hoá với tốc độ rất thấp, có thể là 2kbps. Nhược điểm chủ yếu của các bộ mã hoá theo nguồn âm là bộ mã hoá phụ thuộc vào nguồn âm phát. Hình dưới thể hiện cơ chế phát âm của các bộ mã hoá theo nguồn âm.
o Bộ mã hoá
o Bộ giải mã
Hình 2.2.: Sơ đồ mã hóa và giải mã của bộ mã hóa nguồn âm
Trong đó:
u(n): tín hiệu kích thích s(n): tín hiệu tiếng nói gốc
S*(n): tín hiệu tiếng nói tổng hợp ew(n): tín hiệu sai số
Phần thứ nhất: Bộ lọc tổng hợp LPC là bộ lọc toàn cục biến đổi theo thời gian để mô hình hoá đường bao phổ ngắn hạn của dạng sóng tiếng nói. Đầu ra của bộ lọc tổng hợp là tín hiệu tiếng nói tổng hợp.
Phần thứ hai: Bộ tạo kích thích, bộ này sẽ cho ra dãy kích thích cấp cho bộ lọc tổng hợp để tạo ra tiếng nói tái tạo ở máy thu. Việc kích thích sẽ được tối ưu
hoá bằng cách cực tiểu hoá sai lệch, có tính trọng số thụ cảm giữa tiếng nói gốc và tiếng nói tổng hợp.
Phần thứ ba: Thủ tục được sử dụng trong việc tối thiểu hoá sai lệch gồm hai khối: tính trọng số sai số và cực tiểu hoá sai số. Tiêu chuẩn cực tiểu hoá sai lệch được sử dụng rộng rãi nhất là sai lệch bình phương trung bình. Trong mô hình này, tiêu chuẩn cực tiểu hoá sai số được sử dụng là: tín hiệu sai lệch ew(n) được đưa qua một bộ lọc đánh giá trọng số sai số, có tính trọng số thụ cảm và bộ lọc này sẽ tạo dạng phổ tạp âm theo một cách nào đó để công suất tín hiệu sẽ tập trung nhất tại các tần số formant của phổ tiếng nói.
Thủ tục mã hoá: bao gồm hai bước
o Bước 1: Thông số của bộ lọc tổng hợp được xác định từ các mẫu tiếng nói.
o Bước 2: dãy kích thích tối ưu đối với bộ lọc này được xác định bằng cách cực tiểu hoá, có tính theo trọng số thụ cảm giữa tiếng nói gốc và tiếng nói tổng hợp. Khoảng thời gian tối ưu hoá kích thích khoảng 4 – 7.5ms, thấp hơn khung con, việc kích thích được xác định riêng rẽ cho từng khung con. Các tham số của bộ lọc và tín hiệu kích thích sẽ được lượng tử hoá trước khi gửi đến phía thu. Thủ tục giải mã: Cho tín hiệu kích thích đã được giải mã qua bộ lọc tổng hợp để
tạo tiếng nói khôi phục. Có nhiều phương pháp mô hình hoá sự kích thích: phương pháp kích thích đa xung (MPE - Multi Pulse Excite), phương pháp kích thích xung đều RPE, phương pháp dự đoán tuyến tính kích thích mã CELP (Code Excited Linear Prediction). Trong đó phương pháp CELP hiện nay đã trở thành một công nghệ chủ yếu cho mã hoá tiếng nói tốc độ thấp.
2.2.3. Phương pháp nén kiểu Haybrid
Mã hóa Waveform nói chung không cho phép đạt chất lượng tiếng nói tố ở tốc độ bit dưới 16kbps. Mặt khác, mã hóa Voicder có thể đạt được tốc độ bít rất thấp, tuy nhiên phương pháp này tổng hợp lại tiếng nói nên có nhược điểm là khó nhận diện được người nói và thường xuyên gặp vấn đề về nhiều nền. Mã hóa lai có gắng tận dụng ưu điểm của cả hai phương pháp điều chế trên. Nó mã hóa tiếng nói ở tốc độ thấp, mà lại cho kết quả tiếng nói tái tạo lại tốt, có thể nhận dạng được người nói. Băng thông yêu cầu thường nằm trong khoảng từ 4,8Kbps đến 16Kbps.
Vấn đề cơ bản của Voicder là nguồn kích thích được mô phỏng một cách đơn giản: tín hiệu tiếng nói chỉ được coi là vô thanh hay hữu thanh, nó làm cho tiếng nói nhận được có dạng nhân tạo hơn là tự nhiên. Các phương pháp mã hóa lai có gắng cải thiện điều này bằng cách thay đổi nguồn kích thích theo cơ chế khác.