오디오 비디오 인터리브
| 파일 확장자 | |
|---|---|
| 인터넷 미디어 타입 | |
| 타입 코드 | 'Vfw ' |
| UTI | public.avi |
| 개발 | 마이크로소프트 |
| 발표일 | 1992년 11월 10일 |
| 포맷 종류 | 컨테이너 포맷 |
| 다음의 컨테이너 | 오디오, 비디오 |
| 다음으로부터 확장 | RIFF |
| 오픈 포맷? | 예[2] |
| 웹사이트 | https://docs.microsoft.com/en-us/windows/win32/directshow/avi-file-format |
오디오 비디오 인터리브(영어: Audio Video Interleave, AVI)는 마이크로소프트에서 1992년 11월에 처음 선을 보였고 비디오 포 윈도 기술의 일부인 멀티미디어 컨테이너 포맷이다. AVI 파일은 소리와 영상이 함께 재생되는 소리, 영상 데이터를 표준 컨테이너 안에 둘 다 포함할 수 있다. DVD와 마찬가지로 AVI 파일은 여러 개의 스트리밍 소리, 영상을 지원하지만 이러한 기능이 그리 자주 쓰이지는 않는다. 대부분의 AVI 파일은 1996년 2월에 매트록스 오픈DML 그룹이 개발한 파일 형식 확장자를 사용한다. 이러한 파일들은 마이크로소프트가 지원하며 "AVI 2.0"이라고 비공식적으로 불린다.[3]
역사
출판사들은 CD-ROM에 비디오를 배포하는 방법과 관련하여 난관에 직면했다. 24비트 컬러, 초당 30프레임 및 슈퍼 VGA 해상도로 표시되는 30초의 비디오는 680MB의 공간을 차지할 수 있다. 이는 1992년 대부분의 CD-ROM의 저장 용량이다. 비디오를 손실 있게 압축하면 많은 공간이 절약된다. 하지만 동영상의 품질이 저하되지는 않는다. 대신 비디오 품질에 더 관심이 있는 출판사는 품질을 유지하면서 비디오 파일을 압축하는 이상적인 압축 알고리즘을 찾고 있었다.[4]
마이크로소프트는 이 문제를 인식하고 비디오 파일을 비손실 압축하는 표준을 개발하려고 했다. 또한 당시 까다로웠던 비압축 품질로 비디오를 재생하기 위한 하드웨어 요구 사항으로 인해 저가형 컴퓨터 사용자가 압축 품질로 비디오를 재생할 수 있도록 허용해야 한다는 점을 인식했다. 1992년 11월 10일에 윈도우용 비디오의 일부로 오디오 비디오 인터리브 형식을 개발 및 발표했으며 이러한 사용자를 만족시키기 위한 코덱 지원을 포함했다.[4][5][6]
포맷
AVI는 파일 데이터를 블록 또는 "청크"로 나누는 RIFF(Resource Interchange File Format)의 하위 형식이다. 각 청크는 FourCC 태그로 식별된다.[7]
AVI 파일은 RIFF 헤더 형식을 취하며 두 개의 필수 청크와 하나의 선택적 청크로 나뉜다. 첫 번째 청크는 보기 위해 AVI 파일의 압축을 풀기 위해 코덱에 필요한 정보를 저장하는 "hdrl" 태그로 식별된다. 두 번째 하위 청크는 AVI 비디오를 구성하는 실제 오디오 및 시각적 데이터를 포함하는 "movi" 태그로 식별된다. 세 번째 선택적 청크는 파일 내 데이터 청크의 오프셋을 색인화하는 "idx1" 태그로 식별된다.[7]
RIFF 형식을 통해 "movi" 청크에 포함된 오디오 및 시각적 데이터는 코덱((en)coder/decoder의 약어)이라는 소프트웨어로 인코딩되거나 디코딩될 수 있다. 파일이 생성되면 코덱은 원시 데이터와 청크 내부에 사용되는 (압축) 데이터 형식을 변환한다. AVI 파일은 전체 프레임(비압축), Indeo, 런 렝스 부호화 및 마이크로소프트 비디오1을 포함한 거의 모든 압축 방식으로 청크 내부에 오디오 및 시각적 데이터를 전달할 수 있다.[6]
VLC와 같은 일부 프로그램은 타임스탬프 간 효율적인 이동에 필요한 "idx1" 인덱스 하위 청크를 찾을 수 없을 때 불평한다. 이 프로그램은 일시적으로 또는 영구적으로 색인을 구축하여 파일을 "수정"할 것을 제안한다.[8]
메타데이터
RIFF(Resource Interchange File Format)의 파생 형식인 AVI 파일은 일반적으로 INFO 청크의 메타데이터로 태그가 지정된다. 또한 AVI 파일에는 확장 가능한 메타데이터 플랫폼이 포함될 수 있다. 설계상 모든 RIFF 파일에는 각각 4자리 코드로 식별되는 추가 데이터 청크가 합법적으로 포함될 수 있다.[7] 특정 코드를 이해하지 못하는 소프트웨어는 청크를 건너뛰어야 한다. 따라서 이론적으로 거의 모든 메타데이터를 지원하기 위해 AVI를 포함한 모든 RIFF 파일 형식을 확장하는 것이 가능하다. 현대적 이용에서 AVI의 제한 사항 중 일부는 이 메타데이터의 표준화 부재와 관련이 있다. (아래 제약 문단 참고)
제약
90년대 초반에 도입된 이후 원래 AVI 사양에서는 예상하지 못했던 새로운 컴퓨터 비디오 기술이 도입되었다.
- 원본 AVI 사양은 종횡비 정보를 인코딩하는 표준화된 방법을 제공하지 않지만 이후 OpenDML(AVI 2.0) 사양에서는 제공한다. 결과적으로, 노년층 플레이어는 올바른 종횡비를 자동으로 선택하지 못할 수 있다(수동으로 선택하는 것도 가능할 수 있음).
- AVI 파일에 타임 코드를 포함하는 방법에는 여러 가지 경쟁적인 접근 방식이 있다. 이는 널리 사용되기는 하지만 영화 및 TV 후반 작업에서 해당 형식의 유용성에 영향을 미친다. WAV 오디오 파일의 경우 BWF(Broadcast Wave) 확장자가 후반 작업 메타데이터를 표준화하도록 설계되었지만 AVI 파일에 해당하는 확장자는 나타나지 않았다. 일부 당사자는 메타데이터용으로 BWF 청크를 AVI에 기록하는 것으로 알려져 있다.[9]
- AVI는 현재 프레임(B-프레임) 이후의 향후 비디오 프레임 데이터에 접근해야 하는 압축 기술을 사용하는 비디오를 포함하기 위한 것이 아니다. 이 기능을 사용하는 최신 비디오 압축 기술(예: MPEG-4)을 지원하는 접근 방식이 존재한다. 하지만 이는 원래 사양의 의도를 벗어나며 이러한 사용을 예상하지 못하는 재생 소프트웨어에 문제를 일으킬 수 있다.[10]
- AVI는 일부 특정 유형의 가변 비트 전송률(VBR) 데이터를 안정적으로 포함할 수 없다(예: 32kHz 미만 샘플 속도의 MP3 오디오).
- 표준 화질 장편 영화를 인코딩하는 데 일반적으로 사용되는 해상도 및 프레임 속도에서 AVI 파일의 오버헤드는 비디오 시간당 약 5MB이며, 그 중요성은 응용 프로그램에 따라 다르다.
- AVI 파일에는 글꼴, 자막 등의 첨부 파일을 포함할 수 없다. 따라서 자막은 별도의 파일로 배포되거나 비디오 스트림에 하드코딩되어야 한다.
최신 컨테이너 형식(예: Matroska, Ogg 및 MP4)은 이러한 모든 문제를 해결하지만 여기에 설명된 기술을 사용하여 AVI 파일을 생성하고 올바르게 재생할 수 있는 소프트웨어를 무료로 사용할 수 있다.
DV AVI
DV AVI 또는 DV-AVI는 동영상을 DV 표준에 맞게 압축하는 AVI 파일의 일종이다. 일반적으로 DV 캠코더와 같은 DV 장치는 이 방식으로 영상을 캡처한다. DV AVI 파일이 용량이 크다는 믿음이 있지만 이 방식은 무압축 상태로 여겨진다. 더 정확히 말해서는 각 프레임만 압축을 하며 인트라프레임은 압축하지 않는다. 이로써 AVI 압축 코덱을 사용하여 압축한 파일보다 화질 손실이 적고 파일의 크기가 상대적으로 커진다. DV AVI 파일에는 유형 1, 유형 2, 이렇게 두 가지 종류가 있다.
- 유형 1: 다중송신 오디오/비디오를 유지하며 AVI 파일이 비디오 섹션에 저장된다. 공간을 많이 낭비하지 않는다. (오디오는 무압축 상태이지만 압축되지 않은 오디오는 DV의 영상과 견주어 보면 큰 용량을 차지하는 것은 아니다.) 비디오 포 윈도 API를 기반으로 하는 윈도 응용 프로그램들은 DV AVI 압축 해제 프로그램이 윈도의 일부가 아닌 까닭에 이를 기본으로 지원하지 않는다.
- 유형 2: 유형 1과 비슷하지만 소리를 파일 안의 별도의 오디오 스트림에 저장한다. 비디오 포 윈도 응용 프로그램이 이 유형을 지원하며 파일 크기가 조금 늘어난다는 단점이 있다.
같이 보기
각주
- ↑ Microsoft Corporation (June 1998). “WAVE and AVI Codec Registries - RFC 2361”. IETF. doi:10.17487/RFC2361. 2009년 12월 6일에 확인함.
- ↑ 《AVI (Audio Video Interleaved) File Format》 (Full draft). Sustainability of Digital Formats. Washington, D.C.: Library of Congress. 2016년 3월 9일. 2021년 12월 13일에 확인함.
- ↑ stevewhims. “AVI RIFF File Reference - Windows applications” (미국 영어). 《docs.microsoft.com》. 2019년 9월 1일에 확인함.
- ↑ 가 나 Raskin, Robin (1992년 12월 22일). “27 Good Reasons To Buy A CD-ROM Player”. 《PC Magazine》. 11권 22호. 345–346쪽. 2021년 9월 19일에 확인함.
- ↑ Damore, Kelley; Corcoran, Cate (1992년 11월 9일). “Microsoft, vendors team up to air Video for Windows”. 《InfoWorld》. 14권 45호. 3쪽. 2021년 9월 19일에 확인함.
- ↑ 가 나 Quain, John R. (1993년 1월 12일). “Microsoft Goes Hollywood With Video for Windows”. 《PC Magazine》. 12권 1호. 39쪽. 2021년 9월 19일에 확인함.
- ↑ 가 나 다 Gloe, Thomas (2014년 4월 16일). “Forensic analysis of video file formats § AVI Container format”. 《Digital Investigation》 (Elsevier) 11 (1). doi:10.1016/j.diin.2014.03.009. ISSN 1742-2876.
- ↑ “WindowsFAQ-1.1.x”. 《VideoLAN Wiki》.
- ↑ “AVI MetaEdit - Technical Metadata”. 《mediaarea.net》.
- ↑ “Using B-frames”. 《Avidemux》.
외부 링크
- CS1 - 미국 영어 인용 (en)
- 잘못된 파일 링크가 포함된 문서
- 영어 표기를 포함한 문서
- 위키데이터 속성 P18을 사용하는 문서
- 위키데이터 속성 P41을 사용하는 문서
- 위키데이터 속성 P94를 사용하는 문서
- 위키데이터 속성 P117을 사용하는 문서
- 위키데이터 속성 P154를 사용하는 문서
- 위키데이터 속성 P213을 사용하는 문서
- 위키데이터 속성 P227을 사용하는 문서
- 위키데이터 속성 P242를 사용하는 문서
- 위키데이터 속성 P244를 사용하는 문서
- 위키데이터 속성 P245를 사용하는 문서
- 위키데이터 속성 P268을 사용하는 문서
- 위키데이터 속성 P269를 사용하는 문서
- 위키데이터 속성 P271을 사용하는 문서
- 위키데이터 속성 P347을 사용하는 문서
- 위키데이터 속성 P349를 사용하는 문서
- 위키데이터 속성 P350을 사용하는 문서
- 위키데이터 속성 P373을 사용하는 문서
- 위키데이터 속성 P380을 사용하는 문서
- 위키데이터 속성 P396을 사용하는 문서
- 위키데이터 속성 P409를 사용하는 문서
- 위키데이터 속성 P428을 사용하는 문서
- 위키데이터 속성 P434를 사용하는 문서
- 위키데이터 속성 P435를 사용하는 문서
- 위키데이터 속성 P436을 사용하는 문서
- 위키데이터 속성 P454를 사용하는 문서
- 위키데이터 속성 P496을 사용하는 문서
- 위키데이터 속성 P549를 사용하는 문서
- 위키데이터 속성 P650을 사용하는 문서
- 위키데이터 속성 P651을 사용하는 문서
- 위키데이터 속성 P691을 사용하는 문서
- 위키데이터 속성 P716을 사용하는 문서
- 위키데이터 속성 P781을 사용하는 문서
- 위키데이터 속성 P791을 사용하는 문서
- 위키데이터 속성 P864를 사용하는 문서
- 위키데이터 속성 P865를 사용하는 문서
- 위키데이터 속성 P886을 사용하는 문서
- 위키데이터 속성 P902를 사용하는 문서
- 위키데이터 속성 P906을 사용하는 문서
- 위키데이터 속성 P947을 사용하는 문서
- 위키데이터 속성 P950을 사용하는 문서
- 위키데이터 속성 P966을 사용하는 문서
- 위키데이터 속성 P982를 사용하는 문서
- 위키데이터 속성 P1003을 사용하는 문서
- 위키데이터 속성 P1004를 사용하는 문서
- 위키데이터 속성 P1005를 사용하는 문서
- 위키데이터 속성 P1006을 사용하는 문서
- 위키데이터 속성 P1015를 사용하는 문서
- 위키데이터 속성 P1045를 사용하는 문서
- 위키데이터 속성 P1048을 사용하는 문서
- 위키데이터 속성 P1053을 사용하는 문서
- 위키데이터 속성 P1146을 사용하는 문서
- 위키데이터 속성 P1153을 사용하는 문서
- 위키데이터 속성 P1157을 사용하는 문서
- 위키데이터 속성 P1186을 사용하는 문서
- 위키데이터 속성 P1225를 사용하는 문서
- 위키데이터 속성 P1248을 사용하는 문서
- 위키데이터 속성 P1273을 사용하는 문서
- 위키데이터 속성 P1315를 사용하는 문서
- 위키데이터 속성 P1323을 사용하는 문서
- 위키데이터 속성 P1330을 사용하는 문서
- 위키데이터 속성 P1362를 사용하는 문서
- 위키데이터 속성 P1368을 사용하는 문서
- 위키데이터 속성 P1375를 사용하는 문서
- 위키데이터 속성 P1407을 사용하는 문서
- 위키데이터 속성 P1556을 사용하는 문서
- 위키데이터 속성 P1584를 사용하는 문서
- 위키데이터 속성 P1695를 사용하는 문서
- 위키데이터 속성 P1707을 사용하는 문서
- 위키데이터 속성 P1736을 사용하는 문서
- 위키데이터 속성 P1886을 사용하는 문서
- 위키데이터 속성 P1890을 사용하는 문서
- 위키데이터 속성 P1907을 사용하는 문서
- 위키데이터 속성 P1908을 사용하는 문서
- 위키데이터 속성 P1960을 사용하는 문서
- 위키데이터 속성 P1986을 사용하는 문서
- 위키데이터 속성 P2041을 사용하는 문서
- 위키데이터 속성 P2163을 사용하는 문서
- 위키데이터 속성 P2174를 사용하는 문서
- 위키데이터 속성 P2268을 사용하는 문서
- 위키데이터 속성 P2349를 사용하는 문서
- 위키데이터 속성 P2418을 사용하는 문서
- 위키데이터 속성 P2456을 사용하는 문서
- 위키데이터 속성 P2484를 사용하는 문서
- 위키데이터 속성 P2558을 사용하는 문서
- 위키데이터 속성 P2750을 사용하는 문서
- 위키데이터 속성 P2980을 사용하는 문서
- 위키데이터 속성 P3223을 사용하는 문서
- 위키데이터 속성 P3233을 사용하는 문서
- 위키데이터 속성 P3348을 사용하는 문서
- 위키데이터 속성 P3372를 사용하는 문서
- 위키데이터 속성 P3407을 사용하는 문서
- 위키데이터 속성 P3430을 사용하는 문서
- 위키데이터 속성 P3544를 사용하는 문서
- 위키데이터 속성 P3562를 사용하는 문서
- 위키데이터 속성 P3563을 사용하는 문서
- 위키데이터 속성 P3601을 사용하는 문서
- 위키데이터 속성 P3723을 사용하는 문서
- 위키데이터 속성 P3788을 사용하는 문서
- 위키데이터 속성 P3829를 사용하는 문서
- 위키데이터 속성 P3863을 사용하는 문서
- 위키데이터 속성 P3920을 사용하는 문서
- 위키데이터 속성 P3993을 사용하는 문서
- 위키데이터 속성 P4038을 사용하는 문서
- 위키데이터 속성 P4055를 사용하는 문서
- 위키데이터 속성 P4114를 사용하는 문서
- 위키데이터 속성 P4143을 사용하는 문서
- 위키데이터 속성 P4186을 사용하는 문서
- 위키데이터 속성 P4423을 사용하는 문서
- 위키데이터 속성 P4457을 사용하는 문서
- 위키데이터 속성 P4534를 사용하는 문서
- 위키데이터 속성 P4535를 사용하는 문서
- 위키데이터 속성 P4581을 사용하는 문서
- 위키데이터 속성 P4613을 사용하는 문서
- 위키데이터 속성 P4955를 사용하는 문서
- 위키데이터 속성 P5034를 사용하는 문서
- 위키데이터 속성 P5226을 사용하는 문서
- 위키데이터 속성 P5288을 사용하는 문서
- 위키데이터 속성 P5302를 사용하는 문서
- 위키데이터 속성 P5321을 사용하는 문서
- 위키데이터 속성 P5368을 사용하는 문서
- 위키데이터 속성 P5504를 사용하는 문서
- 위키데이터 속성 P5587을 사용하는 문서
- 위키데이터 속성 P5736을 사용하는 문서
- 위키데이터 속성 P5818을 사용하는 문서
- 위키데이터 속성 P6213을 사용하는 문서
- 위키데이터 속성 P6734를 사용하는 문서
- 위키데이터 속성 P6792를 사용하는 문서
- 위키데이터 속성 P6804를 사용하는 문서
- 위키데이터 속성 P6829를 사용하는 문서
- 위키데이터 속성 P7293을 사용하는 문서
- 위키데이터 속성 P7303을 사용하는 문서
- 위키데이터 속성 P7314를 사용하는 문서
- 위키데이터 속성 P7902를 사용하는 문서
- 위키데이터 속성 P8034를 사용하는 문서
- 위키데이터 속성 P8189를 사용하는 문서
- 위키데이터 속성 P8381을 사용하는 문서
- 위키데이터 속성 P8671을 사용하는 문서
- 위키데이터 속성 P8980을 사용하는 문서
- 위키데이터 속성 P9070을 사용하는 문서
- 위키데이터 속성 P9692를 사용하는 문서
- 위키데이터 속성 P9725를 사용하는 문서
- 위키데이터 속성 P9984를 사용하는 문서
- 위키데이터 속성 P10020을 사용하는 문서
- 위키데이터 속성 P10299를 사용하는 문서
- 위키데이터 속성 P10608을 사용하는 문서
- 위키데이터 속성 P10832를 사용하는 문서
- 위키데이터 속성 P11249를 사용하는 문서
- 위키데이터 속성 P11646을 사용하는 문서
- 위키데이터 속성 P11729를 사용하는 문서
- 위키데이터 속성 P12204를 사용하는 문서
- 위키데이터 속성 P12362를 사용하는 문서
- 위키데이터 속성 P12754를 사용하는 문서
- 위키데이터 속성 P13049를 사용하는 문서
- 파일 포맷
- 컨테이너 포맷
- 마이크로소프트 윈도우 멀티미디어 기술