Định dạng tệp

MKV - Matroska Multimedia Container

MKV là vùng chứa Matroska, một định dạng mở có thể chứa bất kỳ số lượng video, âm thanh và phụ đề, cùng với các chương và tệp đính kèm trong một tệp duy nhất.

.mkv

MKV là viết tắt của Matroska, một định dạng vùng chứa mở được bắt đầu từ năm 2002 bởi Steve Lhomme và một nhóm cộng tác viên, những người muốn có một tệp video không thuộc sở hữu của ai và không bị hạn chế gì. Tên gọi này xuất phát từ búp bê lồng Nga, và nó mô tả rất đúng ý tưởng: một tệp Matroska là một chiếc hộp có thể chứa bất cứ thứ gì bạn đặt vào. Trong khi MP4 chỉ chấp nhận một tập hợp codec và tính năng xác định, Matroska được viết để chấp nhận mọi thứ, đó là lý do nó trở thành định dạng được lựa chọn cho lưu trữ phim, anime với nhiều bộ phụ đề, và các đĩa Blu-ray được sao chép vào ổ cứng. Cấu trúc nền tảng của nó sau đó đã được công bố như một tiêu chuẩn internet, và Google đã dùng lại một phần trong đó để tạo ra WebM.

Cấu trúc của một tệp MKV

Matroska được xây dựng trên EBML, một cấu trúc nhị phân hoạt động giống như phiên bản thu gọn của XML: mọi thứ đều là một phần tử, các phần tử lồng vào nhau, và mỗi phần tử tự khai báo độ dài của nó. Một tệp bao gồm phần đầu, sau đó là một phân đoạn chứa các track, một chỉ mục để tìm kiếm và chính nội dung media, được chia thành các cụm gồm những khối nhỏ có kèm dấu thời gian.

MKV tự nó không nén gì cả. Hình ảnh bên trong thường là H.264, HEVC, AV1 hoặc VP9; âm thanh có thể là AAC, Opus, FLAC, DTS hoặc Dolby audio cùng nhiều loại khác. Vì vùng chứa không quan tâm đến nội dung bên trong, một tệp có thể chứa một track âm thanh không mất dữ liệu cạnh một track nén, nhiều bản lồng tiếng, các bộ phụ đề bắt buộc và đầy đủ dưới dạng văn bản hoặc bitmap, mốc chương để chọn cảnh, và tệp đính kèm: ảnh bìa, hoặc đúng kiểu font mà một track phụ đề cần để hiển thị chính xác.

Siêu dữ liệu mà một tệp MKV chứa

Matroska lưu siêu dữ liệu ở hai chỗ, và cả hai đều xuất hiện trong báo cáo.

Khối thông tin phân đoạn mô tả chính tệp đó. Nó chứa tiêu đề tổng thể, thời lượng, ngày tạo theo UTC, một mã nhận dạng duy nhất cho phân đoạn, và hai trường khá tiết lộ: ứng dụng muxing và ứng dụng ghi, cho biết thư viện và chương trình đã tạo ra tệp, thường kèm theo số phiên bản. Sau đó mỗi track có mục riêng của nó với tên, mã ngôn ngữ, codec, kích thước hiển thị, và các cờ đánh dấu một track là mặc định hoặc bắt buộc.

Siêu dữ liệu mô tả sử dụng hệ thống thẻ (tag) của Matroska, cấu trúc chặt chẽ hơn hầu hết. Thẻ được nhóm theo đối tượng, nên một thẻ có thể áp dụng cho toàn bộ tệp, cho một track, cho một chương hoặc cho một tập hợp dạng album phía trên, và mỗi thẻ gồm một tên và một giá trị. Các tên quy ước được viết bằng chữ in hoa, và những tên bạn thường gặp nhất là title, artist, date released, genre, comment, description, encoder, part number và total parts. Một thẻ cũng có thể cho biết nó được viết bằng ngôn ngữ nào, vì vậy cùng một trường có thể xuất hiện nhiều lần cho các nhóm người xem khác nhau.

Điều mà Matroska thường không mang theo là siêu dữ liệu từ máy ảnh. Không có khối EXIF, không có model máy ảnh và không có trường GPS, vì tệp MKV thường được tạo ra bằng cách chuyển đổi hoặc sao chép từ thứ khác chứ không phải trực tiếp từ máy quay. Dấu vết cá nhân là kiểu khác: ứng dụng ghi cho biết bạn đã dùng chương trình và phiên bản nào, ngày tạo cho biết thời điểm, tiêu đề và tên track thường giữ lại tên bản phát hành gốc hoặc đĩa, và một tệp đính kèm có thể là bất kỳ tệp nào, kể cả tệp mà ai đó để sót lại bên trong.

Khi nào nên chọn MKV

Hãy dùng MKV khi tệp là thứ bạn muốn giữ lâu dài. Đây là vùng chứa phù hợp nhất ở đây cho một bộ phim có nhiều ngôn ngữ âm thanh, các track phụ đề bạn muốn chuyển đổi qua lại, và các chương, đồng thời nó chấp nhận các codec bất thường mà không gặp vấn đề.

MP4 là lựa chọn thay thế, và nó thắng về độ phổ biến: trình duyệt, điện thoại, tivi và đầu set‑top có thể phát MP4 mà không cần hỗ trợ thêm, trong khi khả năng phát MKV phụ thuộc vào thiết bị và vào việc cài đặt nhiều trình phát. Một thói quen hợp lý là lưu trữ bằng MKV và chia sẻ bằng MP4. Việc chuyển đổi giữa hai định dạng này thường chỉ là remux, sao chép các luồng vào một lớp vỏ khác mà không bị mất dữ liệu, miễn là các codec bên trong nằm trong số những codec MP4 chấp nhận.