Avi

video/avivideo/msvideovideo/x-msvideo
| type code = 'Vfw '
| uniform type = public.avi
| released =
| owner = Microsoft
| type = Container format
| container for =Audio, video
| contained by =
| extended from = Resource Interchange File Format
| extended to =
| standard =
| open = No
| free = Có
| url =
}}

Audio Video Interleave (còn gọi là Audio Video Interleaved được viết tắt là AVI, thường đươc phát âm là ) là một định dạng đa phương tiện container độc quyền và là tiêu chuẩn Windows được Microsoft giới thiệu vào tháng 11 năm 1992 như một phần của phần mềm Video for Windows. Các file AVI có thể chứa cả dữ liệu âm thanh và video trong một file chứa file không nén cho phép phát lại âm thanh với video đồng bộ.

Giống như định dạng video DVD, các file AVI hỗ trợ nhiều luồng âm thanh và video, mặc dù các tính năng này hiếm khi được sử dụng. Các codec thường được sử dụng cho AVI bao gồm DivX và Xvid, mặc dù nhiều codec khác cũng có thể được chứa trong file AVI.

Nhiều file AVI sử dụng phần mở rộng định dạng file do nhóm Matrox OpenDML phát triển vào tháng 2 năm 1996. Các tệp này được Microsoft hỗ trợ và được gọi không chính thức là AVI 2.0. Năm 2010, Cục Quản lý Hồ sơ và Lưu trữ Quốc gia của chính phủ Mỹ đã định nghĩa AVI là lớp bọc chính thức để bảo quản video kỹ thuật số.

Lịch sử
Các nhà xuất bản phải đối mặt với tình thế tiến thoái lưỡng nan về cách họ nên phân phối video trên đĩa CD-ROM. Ba mươi giây video hiển thị ở chế độ màu 24 bit và ở ba mươi khung hình mỗi giây và độ phân giải Super VGA có thể chiếm 680 megabyte dung lượng—dung lượng lưu trữ của hầu hết các đĩa CD-ROM vào năm 1992. Nén video theo kiểu mất dữ liệu sẽ tiết kiệm được rất nhiều dung lượng, nhưng không phải là không làm giảm chất lượng video. Thay vào đó, các nhà xuất bản quan tâm nhiều hơn đến chất lượng video đang tìm kiếm một thuật toán nén lý tưởng có thể nén các tệp video trong khi vẫn giữ nguyên chất lượng.

Microsoft đã nhận ra vấn đề và tìm cách phát triển một tiêu chuẩn có thể nén không mất dữ liệu các file video. Họ cũng nhận ra rằng do yêu cầu về phần cứng để phát video ở chất lượng không nén, vốn rất khắt khe vào thời điểm đó, nên cần phải cho phép người dùng máy tính cấp thấp phát video ở chất lượng nén. Họ đã phát triển và công bố định dạng Audio Video Interleave vào ngày 10 tháng 11 năm 1992, như một phần của Video for Windows và bao gồm hỗ trợ cho các codec để đáp ứng những người dùng đó.

Định dạng
AVI là một định dạng phụ của Resource Interchange File Format (RIFF), định dạng này chia dữ liệu của tệp thành các khối hoặc "chunk". Mỗi chunk được xác định bằng thẻ FourCC.

File AVI có dạng tiêu đề RIFF, sau đó được chia thành hai chunk bắt buộc và một chunk tùy chọn. Chunk đầu tiên được xác định bằng thẻ "hdrl", lưu trữ thông tin mà codec yêu cầu để giải nén file AVI để xem. Chunk phụ thứ hai được xác định bằng thẻ "movi", chứa dữ liệu âm thanh và hình ảnh thực tế tạo nên video AVI. Chunk tùy chọn thứ ba được xác định bằng thẻ "idx1", lập chỉ mục các phần bù của các chunk dữ liệu trong file.

Một số chương trình, như VLC, phàn nàn khi không tìm thấy sub-chunk chỉ mục "idx1", vì nó cần thiết để di chuyển hiệu quả giữa các dấu thời gian. Chúng đề nghị "sửa" tệp bằng cách xây dựng chỉ mục tạm thời hoặc vĩnh viễn.

Metadata
Là một dẫn xuất của Resource Interchange File Format (RIFF), các file AVI thường được gắn thẻ siêu dữ liệu trong khối INFO.Ngoài ra, các tệp AVI có thể nhúng Extensible Metadata Platform. Theo thiết kế, bất kỳ tệp RIFF nào cũng có thể hợp pháp bao gồm các khối dữ liệu bổ sung, mỗi khối được xác định bằng mã bốn ký tự; phần mềm không hiểu mã cụ thể đó sẽ bỏ qua khối. Như vậy, về mặt lý thuyết, có thể mở rộng bất kỳ định dạng tệp RIFF nào, bao gồm AVI, để hỗ trợ hầu hết mọi siêu dữ liệu có thể hình dung được. Một số hạn chế của AVI trong quá trình sử dụng hiện đại liên quan đến việc thiếu chuẩn hóa trong siêu dữ liệu này (xem phần Hạn chế bên dưới).

Xem thêm

WMV

Tham khảo

Liên kết ngoài
John P. McGowan's AVI Overview
Microsoft's AVI RIFF File Reference
PVDTools' RIFF-AVI File Format Documentation
Dave Wilson's comprehensive list of FourCC codes
OpenDML (AVI 2.0) format specification
AVI file format documentation