AAC (Advanced Audio Coding) – Mã hóa âm thanh tiên tiến là một tiêu chuẩn mã hóa cho việc nén âm thanh kỹ thuật số có tổn hao (lossy). Nó được thiết kế với mục tiêu tích hợp nhiều kiểu mã hóa âm thanh khác nhau như: Âm thanh tự nhiên với âm thanh nhân tạo, truyền tải tốc độ bít thấp với tốc độ bít cao, lời thoại với âm nhạc, ghi âm phức tạp với ghi âm đơn giản, nội dung đơn giản với nội dung thực tế ảo (virtual-reality).
Tiêu chuẩn AAC (Advanced Audio Coding) – Mã hóa âm thanh tiên tiến là một tiêu chuẩn mã hóa cho việc nén âm thanh kỹ thuật số có tổn hao (lossy). Nó được thiết kế với mục tiêu tích hợp nhiều kiểu mã hóa âm thanh khác nhau như: Âm thanh tự nhiên với âm thanh nhân tạo, truyền tải tốc độ bít thấp với tốc độ bít cao, lời thoại với âm nhạc, ghi âm phức tạp với ghi âm đơn giản, nội dung đơn giản với nội dung thực tế ảo (virtual-reality).
ACC được phát triển với sự hợp tác và đóng góp của nhiều công ty như AT&T Bell, Fraunhofer IIS, Dolby, Sony và Nokia. Năm 1997, AAC mới được chính thức tiêu chuẩn hóa trong Phần 7 của tiêu chuẩn MPEG-2 (MPEG-2 Part 7 hay tiêu chuẩn ISO/IEC 13818-7:1997) bởi Nhóm chuyên gia mã hóa phim ảnh (Moving Picture Coding Experts Group – MPEG, được thành lập năm 1988 với sự hợp tác của các tổ chức ISO (International Organization for Standardization – Tổ chức tiêu chuẩn quốc tế) và IEC (International Electrotechnical Commission - Ủy ban Kỹ thuật điện quốc tế)). So sánh với các thuật toán nén âm thanh thời đó, MPEG-2 AAC có chất lượng âm thanh nổi bật và tỉ lệ nén hiếm có, nhờ khả năng nén cả những tín hiệu có tốc độ bít thấp hơn nên nó đã trở thành một trong những tiêu chuẩn mã hóa/giải mã hàng đầu cho các ứng dụng phát quảng bá (broadcasting), các dịch vụ Internet và các ứng dụng di động.
Năm 1999, MPEG-4 AAC được thông qua bởi Nhóm MPEG, tiêu chuẩn ISO/IEC 14496-3:1999, với một số cải tiến. Nó được xây dựng dựa trên tiêu chuẩn MPEG-2 AAC, giữ lại tối đa khả năng tương thích về cú pháp bitstream (chuỗi bit được mã hóa hoặc giải mã một phần chứa đoạn mã hóa dữ liệu ngẫu nhiên) của tiêu chuẩn MPEG-2 AAC. Nói cách khác, bộ giải mã MPEG-4 ACC có khả năng giải mã các bitstream của tiêu chuẩn MPEG-2 AAC. Mặt khác, MPEG-4 AAC đã cải thiện về khả năng mở rộng (scalability), khả năng phục hồi lỗi (error resilience) và bổ sung thêm một số đặc tính xử lý phổ (spectral).
Năm 2003, nhóm MPEG đã giới thiệu tiêu chuẩn HE-AAC (High Efficiency AAC), một thuật toán mở rộng của AAC với mục tiêu hướng tới các ứng dụng có tốc độ bít thấp nhưng đạt hiệu quả mã hóa cao. HE-AAC cung cấp một bộ công cụ mới có tên gọi là Sao chép dải của phổ (Spectral Band Replication – SBR), công cụ này có thể xây dựng lại tín hiệu đầu ra có dải tần số cao dựa trên dữ liệu có dải tần số thấp và một số thông tin khác.
Năm 2004, HE-AAC phiên bản 2 đã được Nhóm MPEG giới thiệu. HE-AAC 2 sử dụng công cụ Parametric Stereo (cơ bản dựa trên SBR của HE-AAC), công cụ này có khả năng xây dựng lại các tín hiệu âm thanh stereo (sử dụng hai hoặc nhiều kênh độc lập để tái tạo âm thanh từ nhiều hướng khác nhau) dựa trên các tín hiệu mono (tất cả tín hiệu âm thanh được pha trộn với nhau và được định tuyến thông qua một kênh âm thanh duy nhất) hỗn hợp và một vài các tham số khác.
Đặc điểm kỹ thuật
MPEG-2 AAC gồm 3 mô hình để người dùng cuối có thể lựa chọn theo yêu cầu về mức độ phức tạp và chất lượng đầu ra. Cụ thể gồm:
Mô hình chính (Main): Cung cấp chất lượng âm thanh tốt nhất với tốc độ bít bất kỳ. Tất cả các công cụ mã hóa đều có thể được sử dụng (ngoại trừ điều khiển khuếch tán). Do đó, yêu cầu về bộ nhớ (memory) và mức độ tính toán của cấu hình này cao hơn so với 2 mô hình sau.
Mức độ phức tạp thấp (Low Complexity – LC): Mô hình này không sử dụng công cụ điều khiển khuếch tán và công cụ dự đoán. Thêm nữa, bộ lọc nhiễu của tín hiệu cũng kém hơn so với mô hình AAC chính. Với mô hình này, bộ mã hóa/giải mã của AAC tiêu thụ bộ nhớ ít hơn và không yêu cầu cao về sức mạnh xử lý. Tuy nhiên, chất lượng âm thanh đầu ra cũng có thể chấp nhận được, vì thế AAC LC là mô hình được sử dụng phổ biến nhất trong công nghiệp.
Tỉ lệ lấy mẫu mở rộng (Scalable Sampling Rate – SSR): AAC SSR có khả năng cung cấp tín hiệu với tần số thay đổi được (scalable). Mô hình này sử dụng bộ điều khiển khuếch đại, các khối xử lý khác hoạt động giống với mô hình AAC LC. Do đó, yêu cầu về bộ nhớ và mức độ phức tạp trong tính toán của bộ mã hóa/giải mã AAC SSR thấp hơn với mô hình AAC chính.
Hình 1: Sơ đồ mã hóa trong ACC
Với sơ đồ mã hóa, tín hiệu đầu vào được xử lý bởi mô đun tiền xử lý (preprocessing module). Phụ thuộc vào tốc độ bít yêu cầu và tần số lấy mẫu của tín hiệu đầu vào, mô đun tiền xử lý sẽ đưa ra tỉ lệ lấy mẫu cho tín hiệu gốc để đạt được chất lượng tốt nhất. Nếu tín hiệu đầu vào không nằm trong dải cho phép, nó vẫn có thể được xử lý trong mô đun này. Sau đó, tín hiệu sẽ được xử lý bởi bộ điều khiển khuếch đại. Tiếp đó, chúng sẽ được chuyển trực tiếp đến khối biến đổi để ánh xạ với tín hiệu theo thời gian với miền tần số và có được dữ liệu phổ của tín hiệu. Theo sau là quá trình xử lý phổ để loại bỏ các thông tin không liên quan hoặc không quan trọng (quá trình xử lý nhiễu). Cuối cùng, dữ liệu phổ đã được xử lý nhiễu sẽ được lượng tử hóa và mã hóa. Xuyên suốt toàn bộ quá trình mã hóa, tín hiệu đầu ra từ mô hình cảm quan (psychoacoustic model) sẽ được sử dụng như một hướng dẫn để kiểm soát từng mô đun mã hóa. Dữ liệu phổ đã được nén và các dữ liệu được sinh ra trong từng mô đun mã hóa đều được ghép kênh (multiplexed) thành bitstream.
Hình 2: Sơ đồ giải mã trong ACC
Khi bộ giải mã nhận được bitstream, việc đầu tiên là các bitstream này sẽ được phân tách (demultiplexed). Dữ liệu phổ bị nén sẽ được giải mã bởi bộ giải mã entropy và lượng tử hóa ngược. Sau đó, các thông tin thu được từ các bitstream sẽ được sử dụng để làm đầu vào cho quá trình xử lý phổ ngược, biến đổi ngược và điều khiển khuếch đại ngược. Nếu tín hiệu âm thanh đầu vào ban đầu nằm ngoài dải xử lý của bộ mã hóa, chúng vẫn có thể được mô đun hậu xử lý phục hồi lại.
Mô hình cảm quan (psychoacoustic model)
Mô hình cảm quan đóng vai trò quan trọng nhất trong quá trình mã hóa âm thanh. Đầu ra của mô hình này sẽ điều khiến hầu hết các khối mã hóa chính khác trong sơ đồ mã hóa của AAC. Nhiệm vụ chính của mô hình cảm quan là tính toán ngưỡng (thresholds). Bất kỳ nhiễu nào được thêm vào khối lượng tử sau đều không thể nhận biết được nếu như năng lượng của nó nhỏ hơn so với ngưỡng cho phép.
Điều khiển khuếch đại (Gain control)
Khối điều khiển khuếch đại, chỉ được sử dụng trong mô hình AAC SSR, bao gồm một bộ lọc bốn pha (polyphase quadrature filter – PQF), bộ phát hiện khuếch đại và bộ chỉnh sửa khuếch đại. Bộ lọc PQF sẽ chia tín hiệu đầu vào thành 4 băng tần có độ rộng như nhau, ví dụ như một tín hiệu đầu vào có tốc độ lấy mẫu là 48 kHz, tín hiệu đầu ra 4 băng tần từ bộ lọc PQF bao gồm các tín hiệu có tần số trong dải 0-6kHz, 6-12 kHz, 12-18 kHz và 18-24 kHz. Do đó, đạt được khả năng co giãn băng thông bằng cách loại bỏ một hoặc nhiều tín hiệu thuộc các băng tần đó.
Lượng tử hóa và nén
Thực hiện các lượng tử hóa và nén các thành phần phổ với yêu cầu nhiễu lượng tử hóa thấp hơn ngưỡng của mặt nạ. Các giá trị lượng tử hóa được mã hóa Huffman với giá trị bảng mã thay đổi đối với các dải tần khác nhau, để thích nghi tốt hơn với các tín hiệu. Vì mã Huffman là mã có độ dài từ mã thay đổi và cần giữ cho nhiễu thấp hơn ngưỡng nên phải tính độ khuếch đại và các hệ số trước khi lượng tử hóa. Để tìm được độ khuếch đại và hệ số tỉ lệ tối ưu đối với một khối cho trước, AAC dùng hai vòng lặp lồng nhau.
Ứng dụng
ACC là một tiêu chuẩn được áp dụng cho tất cả các ứng dụng yêu cầu sử dụng nén, ghép, thao tác hay phát lại âm thanh có chất lượng cao, cụ thể nó là một trong những định dạng sử dụng phổ biến nhất trong xã hội di động ngày nay, đặc biệt là dành cho các ứng dụng như YouTube, iPhone, iPod, IPad, Nintendo DSi, Nintendo 3DS, iTunes, DivX Plus Web Player và PlayStation 3… Nó cũng được hỗ trợ bởi nhiều nhà sản xuất các hệ thống âm thanh trong ô tô.
--------------------------------------
Các chủ đề cùng chuyên mục
0 nhận xét:
Đăng nhận xét