CHƯƠNG 2 CÁC KỸ THUẬT MÃ HÓA VIDEO
2.2. Kỹ thuật mã hóa video H.264/AVC
2.2.2. Cấu trúc H.264/AVC
2.2.2.1. Các profiles và level
Chuẩn H264/AVC bao gồm 3 profile. Mỗi profile hỗ trợ một tập các chức năng và cơng cụ mã hóa xác định cho bộ nén và bộ giải nén nhằm để tạo ra luồng bit nén ứng với profile đó.
Profile cơ bản (Baseline Profile)
Hỗ trợ mã hóa Inter và mã hóa Intra (dùng các slice I và slice P), mã hóa entropy sử dụng thuật tốn mã hóa chiều dài thay đổi ứng ngữ cảnh (Context Adaptive Variable Length Coding-CAVLC). Các ứng dụng của profile này là trong điện thoại video, hội nghị trực tuyến và các hệ thống truyền thơng khơng dây.
Profile chính (Main Profile)
Ngồi các slice I, P được mã hóa, profile này cịn mã hóa video dùng các slice B. Mã hóa Entropy dùng thuật tốn mã hóa số học ngữ cảnh (CABAC). Profile chính được ứng dụng trong các hệ thống truyền hình kỹ thuật số, các hệ thống lưu trữ dữ liệu.
Profile mở rộng (Extended Profile)
Ngoài các kỹ thuật được sử dụng trong profile cơ bản và một phần của profile chính, profile mở rộng cịn sử dụng thêm các slice SI và SP trong mã hóa ảnh. Profile mở rộng được dùng trong các ứng dụng xem hoặc truyền tải video trực tuyến, có khả năng nén cao và một số cải tiến riêng để xử lý việc mất dữ liệu và đồng bộ hóa các dịng dữ liệu khi gặp sự cố về đường truyền Internet.
Có 16 level trong H264/AVC xác định số khung hình, tốc độ xử lý, độ phân giải, tốc độ bit video. Trong luận văn sử dụng level 5.1 để mã hóa so sánh với H.265, chi tiết các giới hạn mức H.264/AVC xem ở phụ lục H.2.2.2.2. Slices
Ảnh khi mã hóa được chia thành một hoặc nhiều slice. Một slice có thể chứa một hoặc nhiều macroblock. Trong trường hợp ảnh chỉ có một slice, slice sẽ chứa tất cả các macroblock trong ảnh đó. Số lượng các macroblock trong các slice của ảnh không cần thiết phải giống nhau.
Có 5 loại slice và một ảnh có thể chứa nhiều loại slice khác nhau. Các ảnh được mã hóa của profile cơ bản chứa các slice loại P và I, các ảnh được mã hóa của profile chính và profile mở rộng có thể chứa tập các slice kiểu I, P, B, SI và SP.
Bảng 2.1. Các loại slice mã hóa trong H264/AVC [3]
LOẠI SLICE MƠ TẢ PROFILE
HỖ TRỢ
I (Intra)
Chứa các macroblock I (mỗi macroblock được dự đoán từ các dữ liệu đã được mã hóa trong cùng slice).
Tất cả
P (Predicted)
Chứa các macroblock P (mỗi macroblock hoặc phần chia macroblock được dự đoán từ danh sách ảnh tham chiếu list 0 và /hoặc từ các macroblock I).
Tất cả
B(Bi-predictive )
Chứa các macroblock B (mỗi macroblock hoặc phần chia macroblock được dự đoán từ danh sách ảnh tham chiếu list 0 và/hoặc list 1 và/hoặc các maroblock I).
Profile chính và mở rộng
SP (Switching P)
Chứa các macroblock kiểu I và/hoặc P, cung cấp khả năng chuyển đổi dễ dàng giữa những luồng bit được mã hóa.
Profile mở rộng
SI (Switching I)
Chứa các macroblock SI (loại maroblock đặc biệt trong mã hóa Intra), cung cấp khả năng chuyển đổi dễ dàng giữa những luồng bit được mã hóa.