Video và codec
Hầu hết mọi điều khó hiểu về tệp video đều xuất phát từ một điểm khác biệt - giữa hộp và nội dung bên trong. Đây là những từ dành cho cả hai và cho các hoạt động di chuyển mọi thứ giữa chúng.
-
Thùng chứa
trình bao bọc, định dạng -
Cấu trúc tệp chứa các bản nhạc video, âm thanh và phụ đề cùng nhau và mô tả vị trí của từng bản. MP4, MKV, AVI và WebM là các thùng chứa. Một thùng chứa không nén bất cứ thứ gì.
Hãy hình dung nó như một chiếc hộp hồ sơ có nhãn ghi nội dung. Chiếc hộp nói: có một track video ở đây, được mã hóa theo cách này; hai track âm thanh ở kia, bằng những ngôn ngữ này; phụ đề ở vị trí này. Nó không mang bất kỳ quan điểm nào về việc bất cứ thứ gì trong đó đã được nén ra sao.
Đây là lý do cùng một video có thể tồn tại trong một MP4 và một MKV với chất lượng hình ảnh giống hệt nhau và kích thước tệp giống hệt nhau, và là lý do một trong hai cái đó mở được trên iPhone còn cái kia thì không. Khác biệt nằm ở chiếc hộp, không phải ở nội dung bên trong.
Xem thêm: Bộ giải mãBản phối lại
-
Bộ giải mã
bộ giải mã -
Phương pháp được sử dụng để nén luồng video hoặc âm thanh và giải nén lại để phát lại. H.264, HEVC, AV1, AAC và MP3 là các codec. Codec không phải là một định dạng tệp.
Cái tên là từ ghép rút gọn của coder-decoder (bộ mã hóa - giải mã). Mã hóa vứt bỏ chi tiết theo cách được tính toán để khó nhận ra, còn giải mã dựng lại một phiên bản gần đúng với bản gốc từ những gì đã được giữ lại. Codec càng tốt, sự mất mát càng khó nhận ra ở cùng một kích thước.
Một thiết bị phát được một tệp khi nó có thể đọc được vùng chứa *và* giải mã được mọi codec bên trong đó. Cả hai nửa đều bắt buộc, và khi một tệp mở ra nhưng không hiển thị gì, chính nửa thứ hai là thứ đã thất bại.
Xem thêm: Thùng chứaGiải mã phần cứng
-
H.264
AVC, MPEG-4 Phần 10 -
Bộ giải mã video mà mọi thứ đều có thể giải mã được. Được xuất bản vào năm 2003, vẫn là sự lựa chọn an toàn nhất về khả năng tương thích và được tăng tốc phần cứng trên mọi điện thoại, máy tính và TV được sản xuất trong mười lăm năm qua.
H.264 chiến thắng triệt để tới mức "cái này có phát được ở mọi nơi không" và "đây có phải H.264 không" gần như là cùng một câu hỏi. Nó không phải codec hiệu quả nhất hiện có — cả HEVC lẫn AV1 đều làm được nhiều hơn với ít bit hơn — nhưng không gì khác đến gần được nó về độ phổ biến hỗ trợ.
Nó có các profile, và một trong số đó gây rắc rối trên thiết bị Apple: High 10, thường được viết là Hi10P, mã hóa mười bit cho mỗi kênh màu thay vì tám. Bộ giải mã phần cứng chỉ xử lý 8 bit, nên một tệp Hi10P phát ra âm thanh nhưng không có hình trên một thiết bị không có phương án dự phòng bằng phần mềm.
Xem thêm: HEVCGiải mã phần cứng10-bit
-
HEVC
H.265 -
Người kế nhiệm của H.264, có kích thước gần bằng một nửa nhưng vẫn có chất lượng tương tự. Mọi thiết bị Apple từ năm 2015 trở đi đều giải mã nó bằng phần cứng và đó là những gì iPhone ghi lại.
HEVC là thứ khiến 4K trở nên thực tế trên điện thoại: cùng một hình ảnh với tốc độ bit chỉ bằng khoảng một nửa. Apple áp dụng nó sớm và triệt để, nên trên phần cứng Apple, nó là một lựa chọn an toàn ngang với H.264.
Ở những nơi khác thì lộn xộn hơn. Việc cấp phép bằng sáng chế quanh HEVC bị tranh chấp đủ nhiều khiến các trình duyệt web chậm hỗ trợ nó, và đó chính xác là khoảng trống mà AV1 được tạo ra để lấp đầy.
Xem thêm: H.264AV1Tốc độ bit
-
AV1
-
Một codec miễn phí bản quyền được xuất bản vào năm 2018, hiệu quả hơn HEVC và không giống như nó, không có tranh chấp về cấp phép. Giải mã phần cứng chỉ có trên các thiết bị Apple có iPhone 15 Pro.
AV1 tồn tại vì việc cấp phép của HEVC khiến các công ty phát trực tuyến và trình duyệt web lớn nhất muốn có một giải pháp thay thế mà họ có thể phát hành mà không phải trả tiền cho ai. Giờ đây nó là thứ mà một lượng lớn video web được phân phối bằng.
Cái giá phải trả là chi phí giải mã. Không có hỗ trợ phần cứng, AV1 được giải mã bằng phần mềm, điều khả thi nhưng ngốn pin rõ rệt và có thể giật ở độ phân giải cao. Trên các thiết bị cũ hơn, một phiên bản H.264 của cùng video đó là tệp tốt hơn.
Xem thêm: HEVCGiải mã phần cứng
-
Tốc độ bit
-
Lượng dữ liệu mà một giây video hoặc âm thanh sử dụng, thường tính bằng megabit trên giây. Điều chính quyết định cả kích thước tệp và mức độ hoạt động của thiết bị.
Độ phân giải thu hút sự chú ý, nhưng tốc độ bit mới quyết định một tệp thực sự trông ra sao. Một tệp 4K ở tốc độ bit thấp trông tệ hơn một tệp 1080p ở tốc độ bit cao, vì bộ mã hóa đã phải vứt bỏ nhiều hơn để đạt mục tiêu của nó.
Đây cũng thường là nguyên nhân của một tệp bị giật. Khi một video phát mượt trên máy tính nhưng giật trên điện thoại, không có gì sai với tệp cả: nó chỉ đơn giản là đòi hỏi nhiều công việc giải mã mỗi giây hơn mức con chip đó muốn làm.
Xem thêm: Bộ giải mãTốc độ bit thích ứng
-
Bản phối lại
gói lại -
Di chuyển các luồng video và âm thanh hiện có từ vùng chứa này sang vùng chứa khác mà không cần mã hóa lại chúng. Không mất dữ liệu và đủ nhanh để bị giới hạn bởi tốc độ ổ đĩa thay vì bộ xử lý.
Một lượt remux sao chép các luồng; nó không chạm vào một khung hình nào. Một tệp MKV dài một giờ chứa H.264 và AAC trở thành một MP4 chỉ trong vài giây, giống hệt từng bit về hình ảnh và âm thanh.
Nó chỉ hoạt động khi vùng chứa đích chấp nhận những gì nguồn chứa — MP4 sẽ nhận H.264 và AAC, nhưng sẽ không nhận VP9 hay Vorbis. Khi mọi người nói một lượt chuyển đổi "diễn ra tức thì", đó là họ đã remux. Khi nó mất cả giờ đồng hồ, có gì đó đã được mã hóa lại.
Xem thêm: Chuyển mãThùng chứa
-
Chuyển mã
mã hóa lại, chuyển đổi -
Giải mã một luồng và mã hóa lại nó, thường là sang một codec khác hoặc ở tốc độ bit thấp hơn. Lúc nào cũng chậm và mất mát — chất lượng không bao giờ quay trở lại.
Chuyển mã là điều mọi người muốn nói khi họ nói "chuyển đổi một video", và đó là một thao tác thực sự tốn kém: mỗi khung hình đều được giải mã, xử lý và nén lại. Đây là câu trả lời đúng khi codec thực sự không được hỗ trợ, hoặc khi một tệp cần được làm nhỏ lại.
Đây là câu trả lời sai cho "điện thoại của tôi không mở được cái này" khi một lượt remux đã đủ để giải quyết, và nó cũng là câu trả lời tệ cho một tệp mà vấn đề duy nhất là track âm thanh DTS — chỉ thay track đó thôi sẽ để hình ảnh nguyên vẹn.
Xem thêm: Bản phối lạiTốc độ bit
-
Giải mã phần cứng
-
Giải mã video trên chip chuyên dụng thay vì bộ xử lý chính. Nhanh hơn nhiều, mát hơn nhiều và tốt hơn nhiều cho pin — nhưng nó chỉ xử lý các codec được thiết kế riêng cho nó.
Mọi điện thoại đều có một bộ giải mã video chức năng cố định xử lý H.264 và HEVC cực kỳ hiệu quả. Bất cứ thứ gì nó không hỗ trợ sẽ rơi xuống phần mềm, thứ vẫn hoạt động được nhưng tốn pin và sinh nhiệt, và có thể không theo kịp ở độ phân giải cao.
Đây là lý do việc hỗ trợ định dạng trên điện thoại không phải một câu trả lời có hoặc không đơn giản. Một thiết bị có thể phát hoàn hảo một codec ở 1080p bằng phần mềm nhưng thất bại với cùng codec đó ở 4K, và không kết quả nào trong hai trường hợp nói lên rằng tệp bị lỗi.
Xem thêm: Bộ giải mãAV110-bit
-
10-bit
Hi10P, Cao 10 -
Video lưu trữ 10 bit trên mỗi kênh màu thay vì 8 bit để có độ chuyển màu mượt mà hơn. Trong HEVC, điều đó là bình thường và được hỗ trợ tốt; trong H.264, đây là nguyên nhân phổ biến nhất khiến tệp có âm thanh nhưng không có hình ảnh trên iPhone.
Nhiều bit hơn cho mỗi kênh nghĩa là các bước chuyển sắc độ mịn hơn, giúp loại bỏ hiện tượng dải màu bạn thấy trên bầu trời tối và các cảnh mờ dần chậm. Với HDR, đây là một yêu cầu bắt buộc, không phải một sự tinh chỉnh thêm.
Vấn đề cụ thể nằm ở H.264. H.264 10 bit nằm ngoài những gì bộ giải mã phần cứng triển khai, và trình phát hệ thống của Apple không có đường dẫn phần mềm cho nó, nên âm thanh vẫn phát nhưng hình ảnh không bao giờ hiện lên. Các bản phát hành anime dùng nó rất nhiều, đó là lý do vấn đề này xuất hiện thường xuyên hơn hẳn so với tỷ trọng tổng thể của định dạng này gợi ý.
Xem thêm: H.264Giải mã phần cứng
-
Khung hình chính
khung chữ I -
Một khung được lưu trữ đầy đủ chứ không phải là một sự khác biệt so với khung trước đó. Việc tìm kiếm chỉ có thể đến một thời điểm, đó là lý do tại sao video đôi khi chuyển sang thời điểm hơi khác so với thời điểm bạn yêu cầu.
Nén video hoạt động bằng cách mô tả hầu hết các khung hình như những thay đổi so với khung hình lân cận. Chỉ có khung hình chính đứng độc lập, và chúng thường xuất hiện mỗi hai đến mười giây.
Khi bạn kéo thanh tua, trình phát tìm khung hình chính gần nhất và bắt đầu từ đó. Các khung hình chính cách xa nhau khiến tệp nhỏ hơn và việc tua trở nên thô hơn; sự đánh đổi đó được quyết định ngay lúc mã hóa và không thể thay đổi sau đó nếu không mã hóa lại.