동영상 압축 원리? 크기 압축 (여기서 compression은 size reduction)

 

좋아, "동영상 압축"의 원리가 궁금한 거지? 특히 **파일 크기를 줄이는 압축(compression)**에 초점을 둔 질문이네! 🎥➡️📦

 

 

✅ 핵심 요약 먼저!

동영상 압축은 불필요한 데이터를 버리거나 줄여서 저장 용량을 줄이는 기술이야.
주로 영상의 시간적/공간적 중복을 제거하고, 인간의 시각적 특성을 이용해서 압축함.

 

 

📦 동영상은 이렇게 구성됨

  • 💡 동영상 = **수많은 정지 이미지(프레임)**의 연속
  • 보통 초당 30~60장 (fps: frame per second)
  • 사운드 트랙 포함

 

🔍 압축의 두 가지 종류

구분 설명 예시
무손실(Lossless) 정보 손실 없이 원본 복원 가능 ZIP, PNG
손실(Lossy) 일부 정보 버리고 용량 확 줄임 MP4, JPG

🔽 동영상 압축은 대부분 손실 압축이야 (사람 눈은 다 못 알아차리니까!)

 

 

🧠 동영상 압축의 핵심 원리 3가지

1. 공간적 압축 (Spatial Compression)

한 프레임 안에서 비슷한 색상/패턴의 픽셀들을 간단한 방식으로 표현
예: 블럭을 나눠서 같은 색은 하나로 표현 → JPEG 방식과 유사

 

 

2. 시간적 압축 (Temporal Compression)

프레임 간 변화가 없거나 작으면, 차이만 저장
예:

  • 1프레임: 사람 고개 들고 있음
  • 2프레임: 고개만 살짝 돌림
    👉 배경은 그대로니까 고개 움직인 정보만 저장

 

 

3. 지각 기반 압축 (Perceptual Compression)

사람 눈이 못 느끼는 정보는 과감히 버림

  • 예: 고주파수 색상 변화, 너무 빠른 움직임 등

 

 

 

📼 GOP 구조 (Group of Pictures)

  • 압축된 동영상은 일반적으로 이렇게 구성돼:
    • I-frame (Key Frame): 완전한 이미지
    • P-frame (Predicted): 이전 프레임과의 차이만 저장
    • B-frame (Bidirectional): 앞뒤 프레임 둘 다 참고해서 차이만 저장
 
I --- P --- B --- B --- P --- B --- B --- I ... 

💡 I-frame만 모아보면 영상이 엄청 끊겨! 왜냐면 나머지는 '변화'만 저장돼 있으니까.

 

 

🔧 그럼 실제로 압축하면 어떻게 되냐?

  • 원본: 1920x1080 해상도, 30fps, 무압축 → 수십 GB
  • 압축 후 (H.264, MP4 등): 300~800MB (1시간짜리 영상)

🤯 수십~수백 배까지 줄일 수 있음!

 

 

 

✨ 비유로 쉽게 말하자면

  • 원본: 동영상 한 장면을 사진 1000장 찍은 것
  • 압축: 처음 한 장은 제대로 찍고,
    나머지는 “움직임만 적어놓은 노트”로 대체!

 

 

🎥 요즘 동영상 압축 코덱 예시

코덱 특징
H.264 (AVC) 널리 쓰이는 표준 압축, 유튜브, 넷플릭스 등
H.265 (HEVC) H.264보다 더 효율적 (4K 시대)
AV1 오픈소스, 차세대 고효율 압축

 

 

📌 요약 

  • 🎥 동영상 압축은 "변화만 저장 + 비슷한 건 단순화 + 눈에 안 띄면 버려!"
  • 🔁 시간적 + 공간적 + 시각적 중복 제거
  • 📼 I / P / B 프레임 구조로 압축
  • ⚡ 압축 코덱(H.264 등)을 사용해 수십~수백 배 용량 줄이기 가능

+ Recent posts