핵심 요약
- 압축하지 않은 1080p 60fps 영상은 초당 370MB에 달해 블루레이 한 장에도 고작 2분밖에 담지 못하므로 영상 압축은 필수적입니다.
- 애플 홈페이지를 캡처한 PNG 사진 한 장은 1,015KB지만, 동일 화면의 5초(300프레임)짜리 H.264 영상은 고작 175KB에 불과할 정도로 극적인 압축 효율을 보여줍니다.
- H.264는 육안으로 구분하기 힘든 미세 디테일을 쳐내는 손실 압축과 정보 엔트로피, 주파수 도메인 변환 같은 수학적 원리를 활용해 용량을 극단적으로 줄입니다.
요약 우리가 일상에서 보는 인터넷 영상, 스마트폰, 블루레이, 드론까지 거의 모든 곳에 쓰이는 영상 압축 코덱 H.264의 원리를 설명한 글이 해외 개발자 커뮤니티에서 흥미로운 화두를 던졌습니다.
만약 영상을 전혀 압축하지 않는다면 어떻게 될까요? 1080p 해상도에 60Hz 영상은 각 픽셀(RGB 3바이트)의 데이터만 따져도 초당 약 370MB라는 엄청난 용량이 발생합니다. 이 속도라면 50GB짜리 블루레이 디스크 한 장에 겨우 2분 남짓한 영상밖에 담지 못하며, 웬만한 SSD로도 메모리에서 디스크로 제때 쏟아붓기 힘들 만큼 처리가 불가능해집니다. 결국 영상 압축은 선택이 아닌 필수인 셈입니다.
H.264의 압축 능력을 보여주는 단적인 예로 애플 홈페이지 캡처 사례가 소개되었습니다. 애플 홈페이지를 캡처한 단 한 장의 PNG 이미지 용량은 약 1,015KB인데, 동일한 화면을 5초 동안 60fps(총 300프레임)로 녹화한 H.264 영상 파일은 고작 175KB에 불과했습니다. 프레임 수는 300배나 더 많은데도 전체 용량은 사진 한 장의 5분의 1 수준으로 줄어든 것입니다.
이러한 마법 같은 효율의 첫 번째 핵심은 '손실 압축(lossy compression)'에 있습니다. 원본 데이터를 1비트도 버리지 않는 PNG 같은 무손실 코덱과 달리, H.264는 레이싱 카에서 불필요한 뒷좌석이나 오디오를 뜯어내듯 사람이 눈으로 잘 알아차리지 못하는 세부 디테일을 과감히 버립니다. 예컨대 맥북 프로의 스피커 그릴에 뚫린 미세한 구멍 같은 정보는 화면을 확대해 보지 않는 이상 티가 나지 않으므로 과감히 쳐내며, 이 과정만으로도 원본 대비 7% 수준까지 용량이 줄어듭니다.
여기에 더해 정보 엔트로피를 활용한 무손실 부호화 기법과 픽셀 좌표(x-y) 데이터를 주파수 도메인 좌표로 변환해 중복을 줄이는 수학적 알고리즘 등 다채로운 압축 기술이 종합적으로 결합되어 오늘날 우리가 막힘없이 고화질 영상을 스트리밍할 수 있게 만들어 줍니다.
Sponsored · 광고