Введение
Audio Video Interleave (также Audio Video Interleaved и известный по своим аббревиатурам и расширению файла AVI, обычно произносится ,/eɪ//.//v//iː/'/aɪ/) — это запатентованный мультимедийный контейнерный формат и стандарт Windows, представленный компанией Microsoft в ноябре 1992 года в составе программного обеспечения Video for Windows. Файлы AVI могут содержать как аудио-, так и видеоданные в файловом контейнере, обеспечивающем синхронное воспроизведение аудио и видео. Подобно формату DVD-видео, файлы AVI поддерживают несколько потоков аудио и видео, хотя эти возможности используются редко. Многие файлы AVI используют расширения формата, разработанные группой Matrox OpenDML в феврале 1996 года. Эти файлы поддерживаются Microsoft и неофициально называются «AVI 2.0». В 2010 году Национальное управление архивов и документации США определило AVI как официальный формат контейнера для сохранения цифрового видео.
Audio Video Interleave (also Audio Video Interleaved and known by its initials and filename extension AVI, usually pronounced ,/eɪ//.//v//iː/'/aɪ/) is a proprietary multimedia container format and Windows standard introduced by Microsoft in November 1992 as part of its Video for Windows software. AVI files can contain both audio and video data in a file container that allows synchronous audio with video playback. Like the DVD video format, AVI files support multiple streaming audio and video, although these features are seldom used. Many AVI files use the file format extensions developed by the Matrox OpenDML group in February 1996. These files are supported by Microsoft, and are unofficially called "AVI 2.0". In 2010 the US government's National Archives and Records Administration defined AVI as the official wrapper for preserving digital video.
История
Издатели столкнулись с дилеммой относительно того, как распространять видео на CD-ROM. Тридцать секунд видео, отображаемого в 24-битном цвете с частотой тридцать кадров в секунду и разрешением Super VGA, могло занимать 680 мегабайт – объём памяти, доступный на большинстве CD-ROM в 1992 году. Сжатие видео с потерями позволило бы значительно сэкономить место, но при этом снизилось бы качество изображения. Издатели, для которых качество видео было приоритетнее, искали оптимальный алгоритм сжатия, который бы уменьшал размер файлов, сохраняя при этом качество. Microsoft осознала проблему и приступила к разработке стандарта для сжатия видео без потерь. Компания также понимала, что из-за высоких требований к аппаратному обеспечению для воспроизведения видео в несжатом формате, необходимо обеспечить возможность просмотра сжатого видео на компьютерах с более скромными характеристиками. 10 ноября 1992 года Microsoft разработала и опубликовала формат Audio Video Interleave в составе Video for Windows, включив поддержку кодеков для удовлетворения потребностей пользователей с различными конфигурациями компьютеров.
Формат
AVI — это подформат формата файлов обмена ресурсами (RIFF), который разделяет данные файла на блоки, называемые "чанками". Каждый чанк идентифицируется тегом FourCC. Файл AVI имеет структуру, начинающуюся с заголовка RIFF, который затем разделяется на два обязательных и один необязательный чанк. Первый чанк идентифицируется тегом "hdrl" и хранит информацию, необходимую кодеку для декомпрессии файла AVI для воспроизведения. Второй чанк идентифицируется тегом "movi" и содержит фактические аудио- и визуальные данные, составляющие видео AVI. Третий необязательный чанк идентифицируется тегом "idx1" и содержит индексы смещений чанков данных внутри файла.
Метаданные
Как производный от формата файлов обмена ресурсами (RIFF), файлы AVI обычно снабжаются метаданными в блоке INFO. Кроме того, файлы AVI могут включать платформу расширяемых метаданных. По своей конструкции любой файл RIFF может легально содержать дополнительные блоки данных, каждый из которых идентифицируется четырехсимвольным кодом. Существует несколько конкурирующих подходов к включению таймкода в файлы AVI, что влияет на удобство использования формата в кино- и телевизионном постпродакшене, хотя он и широко распространен. Для аудиофайлов WAV расширения Broadcast Wave (BWF) были разработаны для стандартизации метаданных постпродакшна, но эквивалента для файлов AVI пока не появилось. Известно, что некоторые разработчики записывают блоки BWF в AVI для хранения метаданных. AVI не был разработан для хранения видео, использующего методы сжатия, требующие доступа к данным будущих видеокадров за пределами текущего (B-кадров). Существуют способы поддержки современных методов сжатия видео (например, MPEG 4), которые полагаются на эту функцию, однако это выходит за рамки первоначальных спецификаций и может вызвать проблемы с программным обеспечением для воспроизведения, не рассчитанным на такое использование. AVI не может надежно содержать некоторые типы данных с переменным битрейтом (VBR), такие как MP3-аудио с частотой дискретизации ниже 32 кГц. Дополнительные накладные расходы для файлов AVI с разрешением и частотой кадров, обычно используемыми для кодирования полнометражных фильмов стандартной четкости, составляют около 5 МБ в час видео, что существенно зависит от области применения. Файлы AVI не могут содержать вложения, такие как шрифты и субтитры. Следовательно, субтитры должны распространяться в отдельном файле или быть жестко встроены в видеопоток. Более современные форматы контейнеров (такие как Matroska, Ogg и MP4) решают все эти проблемы, хотя программное обеспечение для создания и корректного воспроизведения файлов AVI, использующих описанные здесь методы, находится в свободном доступе.
There are several competing approaches to including a time code in AVI files, which affects usability of the format in film and television post production, although it is widely used. For WAV audio files, Broadcast Wave (BWF) extensions were designed to standardize post production metadata, but an equivalent for AVI files has not emerged. Some parties are known to write BWF chunks into AVI for metadata. AVI was not intended to contain video using any compression technique that requires access to future video frame data beyond the current frame (B frame). Approaches exist to support modern video compression techniques (such as MPEG 4) that rely on this function, although this is beyond the intent of the original specification and may cause problems with playback software which does not anticipate this use. AVI cannot contain some specific types of variable bitrate (VBR) data reliably (such as MP3 audio at sample rates below 32 kHz). Overhead for AVI files at the resolutions and frame rates normally used to encode standard definition feature films is about 5 MB per hour of video, the significance of which varies with the application. AVI files cannot contain attachments such as fonts and subtitles. Consequently, subtitles must be distributed in a separate file or hardcoded into the video stream. More recent container formats (such as Matroska, Ogg and MP4) solve all these problems, although software is freely available to both create and correctly replay AVI files which use the techniques described here.