2.2. Kỹ thuật nén MPEG1 layer 3 (MP3)
2.2.6. Nâng cao hiệu quả của giải thuật MP3 ở những tốc độ bit thấp
Tiêu chuẩn MPEG-1 đại diện cho các bộ mã hóa thế hệ thứ nhất với tác dụng mã hóa khiêm tốn, chất lƣợng bị giảm đáng kể khi giảm tốc độ bitrate, băng thông và mức độ phức tạp. Chúng không đƣợc thiết kế cho các ứng dụng streaming. Tiêu chuẩn MPEG-2 giải quyết một số trong số các vấn đề này. Đối với mã hóa âm thanh, MPEG-2 LSF mở rộng việc mã hóa lập thể và mono của tiêu chuẩn MPEG-1 sang tốc độ mẫu đã giảm một nửa (16, 22.05 và 24 kHz), đem lại chất lƣợng tốt hơn trong khi tốc độ trên mỗi kênh bằng hoặc dƣới 64 kb/s. Tuy nhiên, phải chỉ ra rằng việc lắp một bộ mã âm thanh có độ trung thực cao để đạt đƣợc tần suất/lấy mẫu thấp hơn và do đó tốc độ bitrate thấp hơn không phải là giải pháp tốt nhất cho vấn đề đang phải xử lý. Trái lại, các bộ mã hóa tham số và phân tích tổng hợp hoạt động rất tốt ở tốc độ rất thấp. Để cải thiện chất lƣợng khi áp dụng tỷ lệ nén cao, phần này sẽ tập trung vào việc đƣa ra một thuật toán cho việc lồng ghép một mô hình tham số làm lớp tăng cƣờng trong bitstream MP3 tiêu chuẩn.
2.2.6.1 Tiêu chuẩn
Tất cả các bộ mã hóa âm thanh có độ trung thực cao phụ thuộc vào mô hình hóa trang thính giác của con ngƣời để hình thành tiếng ồn lƣợng tử hóa ở khía cạnh tần số. Trong trƣờng hợp MP3, ta đạt đƣợc việc kiểm soát tốc độ bằng cách thay đổi đi thay đổi lại các bộ lƣợng tử hóa đến khi nào tiếng ồn dƣới mức JND(Just Noticeable Distortion) cho tất cả các dải hệ số phạm vi. Quá trình này là phi tuyến tính và nhằm tối đa hóa SMR bằng việc chấp nhận loại bỏ các tần số cao hơn. Hình 2.2.cho thấy bitream MP3 ban đầu và sau giải mã ở tốc độ 64 kb/giây. Hình 2.3 cho thấy bitream MP3 ban đầu và sau giải mã cho trƣờng hợp khắt khe hơn – 48 kb/giây. Các tín hiệu đã đƣợc giải mã này có hiệu ứng lọc truyền thấp đã đƣợc đánh dấu.
Khi quan sát kỹ hơn, ta thấy thiết kế backend mã hóa không gây mất mát của bộ mã hóa dựa trên thực tế là các bộ phận hợp thành có tần số cao hơn có năng lƣợng thấp về mặt/ theo thống kê. Nhƣ vậy, khi loop kiểm soát bit rate lặp lại việc tăng kích cỡ bƣớc của bộ lƣợng tử hóa, một phần của quang phổ tần số cao lƣợng tử hóa sẽ đóng góp vào chuỗi zero run-length. Các bit đƣợc lƣu trữ nhƣ thế đƣợc phân bố giữa các yếu tố tín hiệu mạnh hơn.
Nghiên cứu này gợi ý cho ta về cách lồng ghép thông tin về quang phổ đã đƣợc cắt ngắn nhằm nâng cao chất lƣợng bitream đƣợc giải mã, nhƣ minh họa bằng đồ thị dƣới đây.
Hình 2.3 Những tần số cao bị mất khi nén ở những tốc độ bit thấp(64 kb/s)
Header CRC Audio Data Ancillary Data
Hình 2.5 Trình bày lô gích của bitstream MP3.
Ta thấy việc đƣa dữ liệu phụ thuộc là không bắt buộc, có thể sử dụng Bitstream phụ thuộc để mã hóa thông tin không nhất thiết liên quan đến dữ liệu âm thanh đang đƣợc nén. Trái lại, bitstream phụ thuộc có thể liên quan theo một cách nào đó đến dữ liệu đang đƣợc nén; chẳng hạn, một lớp tăng cƣờng. Đối với một bit rate cụ thể đƣợc nhắm tới, dự liệu phụ thuộc chỉ có thể đƣa vào bằng cách giảm số bit cho việc mã hóa dữ liệu âm thanh.
Với bộ mã hóa đang hoạt động ở tỷ lệ nén rất cao và lớp tăng cƣờng chỉ có thể hỗ trợ đƣợc khi chấp nhận làm tổn hại đến bitstream chính thì điều có ý nghĩ quan trọng vô cùng là sử dụng số lƣợng tối thiểu các bit trong dữ liệu phụ thuộc. Ví dụ điển hình là ở tốc độ dƣới 64 kb/giây, chất lƣợng khó có thể “trong rõ” đƣợc; điều chúng ta mong muốn ở đây là đạt đƣợc bất cứ sự cải thiện đáng kể nào về chất lƣợng âm thanh trong khi chỉ phải tăng một chút mức độ phức tạp của công đoạn vi tính. Các mô hình tham số có thể đƣợc xây dựng cho độ phức tạp thấp.
Bảng 2.1 PE trung bình trong các zero run-length của phổ Huffman và số lượng tương đương của các băng hệ số phạm vi.
Trong khuôn khổ nghiên cứu này, ngƣời ta đã thiết kế một thí nghiệm tính toán entrôpi nhận thức trung bình trong các zero run-length của phổ Huffman bao hàm những tỷ số lấy mẫu và tốc độ bit. Con số tƣơng ứng của các băng hệ số phạm vi cũng đƣợc xác định ở mức trung bình. Bảng 2-1 liệt kê các kết quả này. Bảng này chỉ rõ rằng với tỷ lệ nén cao hơn thì một phần đáng kể của PE(Perceptual Entropy) đƣợc chứa đựng trong phổ rút ngắn. Việc thể hiện phần này của phổ bằng môt gain mã hóa đơn cho bộ lƣợng tử phá hoại chất lƣợng của tín hiệu đƣợc xây dựng lại.
2.2.6.2 Thuật toán tăng cƣờng
Hình 2.4 là một sơ đồ khối của mô hình tăng cƣờng đƣợc đề xuất nhằm mô hình hóa phổ rút ngắn bằng kết hợp hình sin với tiếng động
Cách làm này dựa trên loop kiểm soát rate hai đƣờng dùng cho việc xác đinh một cách năng động số bit cần cho mô hình. Ở đƣờng thứ 1, các yếu tố MDCT đƣợc lƣợng tử hóa và số các dải hệ số phạm vi trong phổ rút ngắn đƣợc tính. Cái này đƣợc đem so sánh với số liệu trung bình đƣợc xác định ở bảng trên và ngƣời ta đã chọn tối thiểu là hai. Thực sự thì sơ đồ này ƣu tiên mô hình hóa các dải hệ số phạm vi cao hơn. Một khi xác định đƣợc các tham số mô hình thực tế, một phần nhỏ của các bit dữ liệu âm thanh đƣợc phân bổ cho bitstream phụ thuộc, còn các thành phần phổ của ngăn lọc cấy ghép cuối cùng sẽ đƣợc lƣợng tử hóa bằng đƣờng 2 của loop điều khiển tốc độ. Do thuật toán MP3 chuyển sang các khối ngắn khi PE cao và sử dụng các bit trong bộ phận dự trữ bit (nếu cần) nên mô hình này chỉ đƣợc áp dụng cho các khối dài.
Tại bộ giải mã, các thông số mô hình đƣợc rút gọn và phổ tham số đƣợc gắn vào phổ MDCT tiêu chuẩn. Với cách tính toán mô hình này, sẽ không bị chồng chéo với phổ ban đầu, thậm chí trong trƣờng hợp tốt nhất, điều này dẫn tới 1 lỗ hỏng nhỏ trong phổ đƣợc tái tạo giữa 2 khu vực. Lợi thế của phƣơng pháp này là không cần gọt giũa các chồng chéo phổ tiềm tàng. Tín hiệu địa hạt thời gian đƣợc xây dựng lại từ ngăn lọc tổng hợp tiêu chuẩn.
2.2.6.2.1 Chi tiết của mô hình các sin và tiếng động
Để tối thiểu hóa các yêu cầu và mức độ phức tạp của bit rate, mỗi dải hệ số phạm vi (scale factor band - sfb) trong mô hình chỉ có đƣờng sin đơn. Năng lƣợng còn lại trong dải hệ số phạm vi đƣợc mô hình hóa nhƣ tiếng động bark-band.