2012-04-12 23 views
5

Tệp H264 là một luồng các đơn vị NAL (Lớp trừu tượng mạng), mỗi khung mã hóa một khung (I, B hoặc P). Cách tốt nhất để phân tích tệp này là gì và trích xuất kích thước và phát hiện các đầu của mỗi đơn vị NAL trong tệp, cũng như phát hiện loại khung mà đơn vị NAL chứa?Làm thế nào tôi có thể phân tích cú pháp tệp và khung H264

+0

nếu bạn quay trở lại, bạn có thể chấp nhận câu trả lời khác để tôi có thể xóa câu trả lời của tôi không – EdChum

Trả lời

19

Nếu bạn không thực sự cố gắng để giải mã các khung hình, bạn có thể viết một đơn giản 'phân tích cú pháp bằng cách đọc luồng byte h.264 và tìm chữ ký đơn vị NAL.

Đây là những gì bạn cần biết:

  • NAL Đơn vị bắt đầu mã: 00 00 01 XY
  • X = Units IDR Hình NAL (ví dụ như 25, 45, 65)
  • Y = Non IDR Hình ảnh Các đơn vị NAL (ví dụ: 01, 21, 41, 61)

Vì vậy, nếu bạn tìm thấy 3 byte [00 00 01] theo thứ tự, rất có thể đó là khởi đầu của đơn vị NAL. Sau đó, bạn sẽ cần phải phân tích cú pháp hai byte tiếp theo [X Y] để tìm ra loại khung. Vui lòng tham khảo spec để biết thêm chi tiết.

Các vấn đề liên quan