Có định dạng video hiện có ghi siêu dữ liệu trên mỗi khung không?


7

Tôi muốn truyền phát video với siêu dữ liệu động. Tôi biết tôi chỉ có thể hấp riêng video và siêu dữ liệu, nhưng lý tưởng nhất là tôi muốn chúng bị ràng buộc vĩnh viễn.

Có một giao thức / mã hóa / định dạng hiện có làm điều này? Tôi có thể lưu trữ dữ liệu trong mỗi khung hình bằng cách sử dụng chức năng ghi ảnh, nhưng đây không phải là một giải pháp lý tưởng và khá khó khăn.

Câu trả lời:


4

Nếu tốc độ khung hình không quá cao và bạn có thể liên kết khung với dấu thời gian chính xác thì cách dễ nhất là thêm siêu dữ liệu dưới dạng phụ đề văn bản.

Tùy chọn khác là mux siêu dữ liệu dưới dạng các tiêu đề tiêu chuẩn ở .mp4định dạng chứa tương tự. .mp4có thể được chia thành nhiều mảnh, mỗi mảnh có tiêu đề riêng và về mặt lý thuyết có thể được thực hiện trên mỗi khung. Tuy nhiên, làm điều đó trong hơn một vài khung hình là cực kỳ kém hiệu quả về kích thước và hiệu suất của tệp. Một biến thể của phương pháp này sẽ là trích xuất mọi khung hình dưới dạng hình ảnh (ví dụ JEPG) và đặt siêu dữ liệu của nó.

Tuy nhiên, một tùy chọn khác là sử dụng tính năng ghi tốc độ mà không cần hack, bạn chỉ cần mã hóa siêu dữ liệu thành một luồng riêng được đồng bộ hóa dấu thời gian với luồng video chính. Hầu hết các định dạng bộ chứa hiện đại, bao gồm .mp4, có thể chứa nhiều luồng video trong cùng một bộ chứa (ví dụ: bạn có thể gắn nhãn luồng siêu dữ liệu được mã hóa thành cùng một nội dung nhưng bằng ngôn ngữ khác).


Luồng phụ đề là những gì tôi đã nghĩ đến, quá. Đảm bảo rằng bạn gắn cờ nó là không mặc định hoặc thêm luồng phụ đề trống làm luồng phụ đầu tiên, để người chơi không biết định dạng phụ tùy chỉnh của bạn sẽ không hiển thị dưới dạng văn bản.
Peter Cordes

ffmpeg phân biệt giữa phụ đề và các luồng dữ liệu khác. ví dụ: có những thứ như siêu dữ liệu RTP trong một số tệp video và đó là một luồng siêu dữ liệu riêng biệt trong bộ chứa mp4. Vì vậy, tùy thuộc vào những gì bạn cần, bạn có thể chỉ cần sử dụng luồng dữ liệu tùy chỉnh được chuyển sang dạng mp4 hoặc mkv.
Peter Cordes

2

Tôi không chắc làm thế nào điều này phù hợp với chiến lược phát trực tuyến, nhưng định dạng tệp DPX bao gồm siêu dữ liệu trên mỗi khung hình (có khả năng rất lớn về chiến lược này). Bài viết Wikipedia này có thông tin cơ bản.

Tôi cũng không rõ ý của bạn là 'bị ràng buộc vĩnh viễn'. Trong vùng chứa tệp AVI, "I" là viết tắt của "Xen kẽ", trong đó các gói video và âm thanh (đại khái) xen kẽ trong tệp. Điều này đúng với hầu hết các định dạng container. Các luồng có thể được tách ra, nhưng chúng thực sự cùng tồn tại trong một luồng meta.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.