I Slices P Slices
Video Coding Layer
Data PartitioningControl Data Control Data
IV.3.5.1 Nguyên tắc của lọc tách khối
Nguyên tắc cơ bản là nếu đo được sự sai khác giữa các mẫu gần nhau ở mép khối như minh họa ở hình IV.33, thì cần phải hạn chế sai khác này để tránh hiện tượng kết khối mà độ bĩng của nội dung vẫn khơng thay đổi.
IV.3.5.2 Quá trình lọc khối
Mỗi MB và mỗi thành phần sẽ được tách riêng để lọc, các mép theo chiều thẳng đứng sẽ được lọc trước, bắt đầu tại mép nằm bên tay trái của MB cho đến các mép cuối cùng nằm bên tay phải của MB, sau đĩ lọc theo chiều ngang, bắt đầu với mép nằm phía trên MB cho tới mép nằm phía dưới cùng của MB.
IV.3.6 CẤU TRÚC VÀ CÚ PHÁP CHUẨN H.264/AVC.
Để cĩ thể truyền trong các mơi trường khác nhau được hiệu quả, sự tích hợp các giao thức và cấu trúc mạng là rất quan trọng. H.264/AVC cĩ sự phân biệt giữa đặc tính mã hĩa và truyền tải của 2 lớp VCL và NAL như hình IV.35. mang lại hiệu quả cao trong mơi trường mạng khắc nghiệt.
Ngồi ra trong H.264/AVC cịn hỗ trợ ảnh IDR, ảnh này được tạo ra từ ảnh I hoặc ảnh SP nhằm xĩa nội dung vùng nhớ đệm ảnh tham khảo hay nĩi cách khác là làm tươi bộ nhớ. Khi nhận được ảnh IDR thì bộ giải mã sẽ đánh dấu tất cả các bức ảnh trong bộ đệm là “khơng sử dụng cho tham khảo”. Tất cả các chuỗi con cĩ các slice được truyền đi cĩ thể giải mã mà khơng cần bất kỳ một ảnh tham khảo nào trước ảnh IDR. Cấu trúc của một dịng bit H.264/AVC minh họa như hình sau
.NAL header RBSP NAL header RBSP NAL header RBSP
Hình IV.36. Cấu trúc dịng bit.
IV.3.6.1 Lớp trừu tượng mạng NAL
Tất cả dữ liệu được chứa trong các khối NAL, mỗi khối chứa một số nguyên byte xác định định dạng chung cho cả hệ thống định hướng gĩi (packet - oriented) và hệ thống định hướng dịng bit (bitstream), ngoại trừ mỗi khối NAL trong lớp truyền tải định hướng dịng bit cĩ thể cĩ một tiền tố mã hĩa ở trước, và cĩ thể là một trong 2 định dạng sau: định dạng theo từng đơn vị NAL hoặc theo từng byte.
+ Định dạng theo từng đơn vị NAL là một kiểu định dạng cơ bản, bao gồm các chuỗi cấu trúc cú pháp NAL được sắp xếp để giải mã.
+ Định dạng theo từng byte cĩ thể được xây dựng lại từ cấu trúc của NAL bằng cách xắp xếp các đơn vị NAL trong quá trình giải mã và thêm vào một tiền tố mã bắt đầu cho mỗi NAL.
Một chuỗi video H.264 bao gồm một chuỗi các đơn vị NAL, mỗi đơn vị NAL sẽ chứa các thành phần RBSP như bảng 1, RBSP là một tập hợp dữ liệu tương ứng với dữ liệu video được mã hĩa hay thơng tin đầu mục, ví dụ một chuỗi các đơn vị RBSP như hình IV.37, trong đĩ các đơn vị được truyền đi dưới dạng các đơn vị NAL riêng biệt. Byte đầu tiên của NAL hay cịn gọi là header cĩ chiều dài 1byte chỉ ra loại RBSP được sử dụng, cịn những byte cịn lại thì chứa dữ liệu cho việc truyền tải hoặc lưu trữ.
Sequence
parameter set SEI
Picture
parameter set I slice
Picture
delimiter P slice P slice
Hình IV.37. Minh họa một chuỗi thành phần RBSP.
Bảng các thành phần RBSP được miêu tả như sau:
Bảng 1: Các thành phần RBSP
Loại RBSP Mơ tả
Thơng số cài đặt Thơng số về kích thước, định dạng video, vị trí ánh xạMB, số lượng ảnh tham khảo, thơng số lượng tử…
Thơng tin mở rộng Mảng báo tin. Yếu tố này khơng cần thiết cho việc giảimã đúng thứ tự chuỗi video
Bộ phân đoạn ảnh
Đường biên giữa các ảnh, nếu khơng cĩ thì bộ giải mã sẽ dựa vào số thứ tự frame trong mỗi tiền tố slice để phân
đoạn
Slice mã hĩa Chứa tiền tố và dữ liệu mã hĩa
Phân vùng dữ liệu A, B, C Ba dạng phân vùng nhằm tăng cường khả năng chốnglỗi.
Kết thúc chuỗi Chỉ định bức ảnh kế tiếp trong thứ tự giải mã là ảnhIDR. (Khơng cần thiết) Kết thúc luồng dữ liệu Khơng cịn ảnh tiếp theo nào cả.
Dữ liệu lấp đầy Chứa dữ liệu “giả” nhằm tăng số lượng byte trong chuỗi.
IV.3.6.2 Lớp mã hĩa video VCL (Video Coding Layer)
Ngõ ra của quá trình mã hĩa là các dữ liệu VCL bao gồm một chuỗi các bits đặc trưng cho dữ liệu video mã hĩa được ánh xạ vào NAL để truyền đi hoặc lưu trữ. Nĩ là sự kết hợp dự đốn theo thời gian và khơng gian và với mã chuyển vị. Thuật tốn mã hĩa nguồn cơ bản vẫn dựa trên kỹ thuật nén liên ảnh để khai thác, thống kê sự phụ thuộc dư thừa về thời gian và dự đốn mã hĩa biến đổi để khai thác sự dư thừa về mặt khơng gian nhằm mục đích cuối cùng là nâng cao hiệu suất nén. Hơn nữa, lớp VCL bao gồm nhiều đặc tính như 17 kiểu dự đốn Intra, thuật tốn biến đổi, lọc tách khối, mã hĩa Entropy hay mã hĩa thích nghi khung và mành…cung cấp một mơi trường mạng thân thiện và tăng cường khả năng chống lỗi phù hợp cho các dịch vụ thời gian thực như truyền luồng, quảng bá và ứng dụng hội nghị…
IV.3.6.3 Kỹ thuật FMO và Data Partitioned Slices
Kỹ thuật FMO mơ tả cách phân chia bức ảnh thành các slice và MB bằng cách sử dụng khái niệm nhĩm slice. Nhằm che giấu các kênh cĩ khuynh hướng bị lỗi với các ứng dụng cĩ độ trễ thấp. Dữ liệu mã hĩa từ các Slice được chi thành 3 loại phân vùng như A, B, C chứa tập hợp con của slice được mã hĩa. Phân vùng A chứa slice header và dữ liệu header cho mỗi MB. Phân vùng B chứa phần dữ liệu sai khác được mã hĩa cho slice Intra và SI và phân vùng C chứa phần dữ liệu sai khác được mã hĩa cho MB mã hĩa Inter. Mỗi phân vùng cĩ thể được đặt riêng biệt và truyền tách biệt trong từng NAL. Nếu dữ liệu phân vùng A bị mất, thì rất khĩ khăn cho việc cấu trúc lại Slice, vì thế phân vùng A sẽ ảnh hưởng sâu sắc đến sai số truyền. Phân vùng B và C được chọn
lựa thơng số mã hĩa kỹ càng, cĩ thể giải mã độc lập, do đĩ cĩ thể chỉ mã hĩa A và C hoặc chỉ A và B.
IV.3.6.4 Kỹ thuật Arbitrary Slice Ordering
Kỹ thuật sắp xếp trật thứ tự slice bất kỳ ASO cho phép bộ giải mã cĩ thể xử lý slice theo thứ tự bất kỳ mà nĩ nhận được. Do đĩ bộ giải mã khơng cần phải chờ đợi slice đúng theo
thứ tự để cĩ thể bắt đầu xử lý chúng. Điều này làm giảm độ trễ xử lý ở bộ giải mã, kết quả là độ trễ tiềm ẩn trong các ứng dụng truyền video thời gian thực sẽ nhỏ đi.
IV.3.6.5 Cấu trúc dịng bit H.264/AVC
Cấu trúc dịng bit H.264/AVC được minh họa như hình IV.38. Trong đĩ:
Seq : thơng tin về chuỗi ảnh (Squence)
- Video Params : thơng số chiều cao, rộng, tỷ lệ khuơn hình các phần tử ảnh. - Bistream Params : tốc độ bit và các thơng số khác.
- QTs : cĩ 2 loại QTs
+ Nén trong ảnh
+ Nén liên ảnh
GOP : thơng tin về nhĩm ảnh
- Time code : SMPTE time code : Giờ, phút, giây, ảnh. - GOP Params: Miêu tả cấu trúc và các thơng số của GOP.
PICT : thơng tin về ảnh (Picture information.) - Type :ảnh loại I, P hay B.
+ Buffer Params : thơng tin về bộ đệm.
+ Encode Params : thơng tin về vector chuyển động.
Slice : thơng tin về Slice ảnh.
- Vert Pos : Slice bắt đầu từ dịng nào. - Qscale : thơng tin về bảng lượng tử.
MB : thơng tin về MB.
- Addr Incr : Số lượng MB được bỏ qua.
- Type : loại vector chuyển động dùng cho MB.