Hoạt động của thuật toán nén âm thanh AAC

Một phần của tài liệu Xây dựng hệ thống DVTS truyền video chất lượng cao báo cáo nghiên cứu khoa học (Trang 32 - 35)

Dựa vào tính chất này của tai, thuật toán nén mất âm thanh theo tần số và thời gian làm việc theo các bước sau.

Hình 3.16: Biểu đồ hoạt động của thuật toán nén âm thanh

• Đầu tiên các tin hiệu âm thanh sau khi đã lấy mẫu được gom thành những nhóm gối lên nha (tức là dùng những cửa sổ trượt) rồi đưa vào bộ lọc

(Filter Bank). Tại bộ lọc, mỗi cửa sổ sẽđược chuyển thành các giá trị tần số. Các giá trị này tương ứng với một khoảng của tần số (dải tần số) và chỉ ra cường độ của âm thanh ở dải tần số này.

• Sử dụng các giá trị này để quyết định nhưng âm thanh bị che (loại bỏ). Khi quyết định âm thanh nào bị che, một mô hình cảm giác (Perceptual model) được sử dụng. Mô hình này đưa ra các thông số về ngưỡng cụ thể cho từng loại tần sốđể quyết định xem những giá trị tần số nào là không quan trọng.

• Các giá trị tần số sẽđược lượng tử rồi được mã hoá bằng loại mã có chiều dài thay đổi. Các từ mã này là kết quả của cả quá trình trên.

Nhiệm vụ đầu tiên của bộ mã hoá là lấy các mẫu âm thanh rồi tính toán ra các tần số của sóng âm thanh biểu diễn những âm thanh này. Trên thực tế là các khoảng âm thanh (hay dải âm thanh) được tính toán ra, và một hệ số tần số ( hay hệ số phổ) được tính toán cho một dải âm thanh. Độ rộng của dải phải không được vượt quá bộ rộng của dải âm thanh của tai người. Điều này được hoàn thành bởi ngân hàng bộ lọc. Đối với mp3, 512 mậu được lưu trong bộđệm và được tính toán cho 32 dải tần số. Sau đó 32 mẫu âm thanh tiếp theo được chuyển vào bộ đệm và quá trình được lặp lại. Còn đối vời AAC cũng thực hiện như trên nhưng sử dụng 2048 mẫu âm thanh, tính toán cho 1024 hệ số phổ, mỗi hệ số biểu diễn cho một dải băng tần rộng 23.4 Hz, và sau đó 1024 mẫu âm thanh tiếp theo được chuyển vào trong bộđệm.

Thành phần tiếp theo là mô hình cảm giác. Nó quyết định độ cao của ngưỡng cho mỗi dải tần số. Trong mp3, mô hình này không được đặc tả chi tiết và do đó mỗi nhà thiết kế lại cho ra những mô hình của riêng họ. Sự thành công của mỗi mô hình phụ thuộc nhiều vào sự chi tiết và sự giống nhau của nó với mô hình của tai người. Còn AAC cũng tương tự với mô hình cảm giác mà không đặc tả hoạt động chính xác của nó.

Đối với mỗi dải tần số, bộ mã hoá so sánh hệ số của phổ so với ngưỡng của dải tần số. Nếu hệ số phổ nhỏ hơn ngưỡng thì hệ số được lượng tử theo dải tần số tương ứng. Nếu lượng tứ quá nhiều sẽ làm giảm chất lượng của âm thanh và nhiễu rất cao. Ngược lại nếu lượng tử không đủ thì sẽ không đáp ứng được tốc độ bit đề ra.

Do đó AAC bổ sung thêm một số công cụ phục vụ cho việc tăng chất lượng của quá trình lượng tử:

• TNS là một thuật toán tinh vi mà làm giảm thiểu ảnh hưởng của “trải rộng thời gian” Điều này làm tăng hầu hết khả năng lượng tử của các tín hiệu giọng nói.

• Module dựđoán tăng hiệu suất của bộ lượng tử trong trường hợp âm thanh gốc giống với mẫu cò sẵn, như là âm giọng cao (âm thanh có dạng hình sin).

Bước kế tiếp là mã hoá (coding). Hệ số phổ sau được lượng tử sẽ được mã hoá. Bước này cũng đóng góp vào việc làm tăng khả năng nén bởi vì hệ số được thay thế bởi các từ mã có kích thước thay đổi, nhưng với cách mã hoá này thì không làm mất dữ liệu. Cả mp3 và AAC đều sử dụng mã Huffman.

Như vậy, AAC chia sẻ những điểm mạnh của mp3 dồng thời có nhưng cải tiến như sau:

Ngân hàng bộ lọc lớn hơn với 1023 hệ số phổ được tao ra từ cửa sổ 2048 mẫu âm thanh, dẫn tới dải tần số hẹp hơn do đó có chất lượng âm thanh khi giải nén tốt hơn mp3.

Temporal noise shaping (TNS) một thuật toán mới cho phép giải thiểu đến thấp nhất ảnh hưởng của … điều này đặc biệt hữu dụng đối với nén tín hiệu giọng nói.

Module dự đoán làm tăng khả năng lượng tử cho nhưng âm thanh theo chu kì hoặc những âm thanh theo mẫu có sẵn.

Một phần của tài liệu Xây dựng hệ thống DVTS truyền video chất lượng cao báo cáo nghiên cứu khoa học (Trang 32 - 35)