엔조이데브 v11
로그인회원가입

개발 노트

전체글

1

🎞 AVI 파일 포맷 완전 정복

🎞 AVI 파일 포맷 완전 정복

이론

·

3/5/2012

·

🔍 AVI란 무엇인가? AVI (Audio Video Interleave)는 Microsoft가 1992년에 발표한 비디오 파일 포맷으로, RIFF(Resource Interchange File Format) 기반으로 설계되었다. 이 포맷은 오디오와 비디오 데이터를 하나의 파일에서 동시에 관리할 수 있도록 설계되었으며, .avi 확장자로 널리 사용된다. ✅ 대표 확장자: .avi ✅ MIME 타입: video/x-msvideo 📦 기본 구조: RIFF 기반 컨테이너 AVI는 RIFF 포맷을 기반으로 하기 때문에, 파일은 "청크(chunk)" 단위로 구성된다. 각 청크는 4바이트 식별자(Tag) + 4바이트 크기 + 실제 데이터 구조를 가진다. ✔ 주요 청크 구조 🧠 주요 구성 요소 설명 🎥 스트림 분리: Multi-stream Support AVI는 다중 스트림을 지원하여, 하나의 파일에 여러 비디오/오디오 트랙을 담을 수 있다. 예: 스트림 0: 비디오 (vids) 스트림 1: 오디오 (auds) 스트림 2: 자막 or 텍스트 (txts) 그러나 자막이나 챕터 정보는 MKV와 같은 현대 포맷에 비해 기능적으로 제약이 있다. 📐 비디오 & 오디오 코덱 AVI는 코덱에 독립적인 포맷이기 때문에 다양한 코덱을 내장할 수 있다. 하지만 H.264 + MP3 조합 같은 경우, AVI의 타임스탬프 체계와 충돌하여 싱크 문제가 발생하기도 한다. 이 때문에 MP4, MKV로 대체되는 경우가 많다. ⚠️ 한계점 🎯 이 한계 때문에 AVI는 로컬 재생/저장용 포맷으로만 사용되는 경우가 대부분 💡 활용 예시 개발 중 디버그 영상 캡처 – 단순한 프레임 기록이 필요할 때, MJPEG 압축으로 구현 용이 의료 영상 처리 – 무압축(또는 PCM) 기반의 포맷을 요구할 때 사용 DirectShow / VFW 기반 영상 재생 – Windows 환경에서는 호환성이 높아 여전히 활용됨 🛠 AVI 관련 주요 도구 📘 결론 AVI는 고전적이...

  • 개발 언어
    • - Visual Basic 6.0 (16)
    • - Visual C++ 6.0 (18)
    • - 기타 (0)
    • - JavaScript (0)
    • - Next.js (0)
    • - C# (12)
    • - DevExpress (4)
    • - Java (0)
  • 개발 도구
  • 개발 DB

Tag

©2002-2025 EnjoyDev. All rights reserved

엔조이데브엔조이다물