WIPIVERSE

VP8

VP8은 2008년 On2 테크놀로지스(On2 Technologies)가 발표한 개방형 로열티 프리(royalty-free) 비디오 압축 포맷이다. 2010년 2월 구글이 On2 테크놀로지스를 인수한 후, 같은 해 5월 VP8을 개방형 무료 포맷으로 공개하였다. 구글은 VP8 구현과 관련된 자사의 특허에 대해 취소 불가능한 특허 약속(irrevocable patent promise)을 제공하였고, 포맷의 사양을 크리에이티브 커먼즈 저작자표시 3.0 라이선스로 공개하였다. 같은 해 구글은 VP8의 참조 구현체인 libvpx도 수정된 BSD 라이선스로 배포하였다.

VP8은 전통적인 블록 기반 변환 코딩(block-based transform coding) 포맷으로, H.264와 여러 공통점을 가진다. 4:2:0 크로마 서브샘플링과 8비트 샘플당 해상도만 지원하며, 프로그레시브 스캔(progressive scan) 비디오 신호만 처리한다. 순수 인트라 모드(pure intra mode)를 지원하여 비디오 편집과 같은 응용에서 임의 접근(random access)이 가능하다. 이산 코사인 변환(DCT)과 월시-아다마르 변환(WHT)을 기본 주파수 변환으로 사용하며, 최대 3개의 참조 프레임을 시간적 예측에 활용할 수 있다. 움직임 벡터는 1/4 화소(quarter-pixel) 정밀도를 가진다.

VP8은 주로 WebRTC(Web Real-Time Communication)와 함께 사용되며, GIF를 대체하는 짧은 반복 애니메이션 포맷으로도 활용된다. VP8 비디오는 Vorbis 또는 Opus 오디오와 함께 Matroska 기반의 컨테이너 포맷인 WebM으로 다중화(multiplex)될 수 있다. 이미지 포맷 WebP는 VP8의 인트라 프레임 코딩에 기반을 두고 있다. VP8의 직접적인 후속 코덱은 VP9이며, Alliance for Open Media의 로열티 프리 코덱 AV1도 VP8에 기반을 두고 있다.

주요 웹 브라우저 중 Opera, Firefox, Chrome, Pale Moon, Chromium은 HTML5 video 태그에서 VP8 비디오 재생을 지원한다. Internet Explorer는 DirectShow 필터가 설치된 경우 VP8을 지원한다. 운영체제별로는 마이크로소프트 윈도우, macOS, BSD/리눅스, 안드로이드, iOS에서 코덱 지원이 이루어지며, 컨테이너 지원은 운영체제 버전에 따라 차이가 있다.

VP8의 참조 구현체는 libvpx라는 프로그래밍 라이브러리로, 자유 소프트웨어로 배포된다. FFmpeg 팀이 개발한 ffvp8 디코더는 구글의 libvpx 디코더보다 더 빠른 성능을 보인 것으로 알려져 있다. 하드웨어 측면에서는 Nvidia Tegra 모바일 칩셋(Tegra 4 이후), Intel Bay Trail 및 Broadwell 칩셋, Marvell ARMADA 1500-mini 등에서 VP8 하드웨어 인코딩 또는 디코딩을 지원한다.

VP8의 인터넷 미디어 타입은 video/VP8이며, 표준 사양은 RFC 6386으로 IETF(Internet Engineering Task Force)를 통해 2011년 11월에 발행되었다.

둘러보기

더 찾아볼 만한 주제

    전체 문서 보기