by-nc-sa     개발자, DBA가 함께 만들어가는 구루비 지식창고!

1. 동영상의 구성




1. 동영상의 구성

컨테이너(Container)

  • 하나 이상의 스트림 (비디오스트림 + 오디오스트림)
  • 스트림을 제어하기 위한 정보만 있으며, 어떤 방식으로 압축되었는지는 알 수 없다.
  • 규격에 맞는 스트림만을 담을 수있다.
  • 컨테이너에 스트림을 담는 일련의 과정을 멀티플렉싱(Multiplexing), 줄여서 먹싱(Muxing)이라 한다.

코덱 (Codec)

  • 코덱은 Coder와 Decoder의 앞 글자를 딴 합성어
  • 아날로그 신호나 스트림 데이터로 이루어진 비디오와 오디오를 압축된 부호로 변환하기 위한 규격 → 인코딩(Encoding)
  • 압축된 데이터를 본래의 아날로그 신호나 스트림 데이터로 복원하기 위한 규격 → 디코딩(Decoding)
  • 코덱의 압축방식
    • 원본이 손상되는 손실 압축
    • 원본의 손실 없이 그대로 보전되는 무손실 압축

픽셀(Pixel)

  • 픽셀은 화면을 표현하기 위한 가장 작은 요소이다.
  • 일부 디바이스에서는 가로,세로의 비율이 다른 픽셀을 사용하기도 함
  • 픽셀의 가로, 세로의 비율을 픽셀 종횡비(Pixel Aspect Ratio) 라고 함

해상도(Display Resolution)

  • 픽셀의 개수를 나타내는 것이 해상도 이다.
  • 해상도는 픽셀 단위의 가로*세로 형식
  • 480p, 720p, 1080p의 p는 progressive 영상 → 순차 주사방식
  • 480i, 720i, 1080i의 i는 interlaced 영상→ 비월 주사방식

프레임 레이트(Frame Rate)와 화면 주사방식

  • 프레임 레이트 : 초 당 프레임 개 수, 단위로는 fps(frame per second) 사용
  • 비월 주사방식(Interlacing)
    • 한 번에 모든 화면을 보내지 않고 홀수 줄과 짝수 줄을 나누어 보내는 방식
    • 한 번에 보내는 프레임의 전송용량이 절반으로 줄어들어 낮은 성능으로도 지연없이 전송
    • 사람 눈의 착시 현상으로 인해 온전한 프레임을 보는 듯한 느낌
  • 인터레이스 노이즈(Interlace noise)
    • 비월 주사방식에서 영상이 급격한 움직임을 보일때 잔상이 남는 단점
  • 순차 주사방식 (progressive)
    • 한 번에 하나의 프레임으로 전송하는 방식

크로마 서브샘플링 (Chroma subsampling)

  • 사람의 눈은 밝기 차이에는 민감하지만 색상 차이에는 상대적으로 둔감
  • 색차 정보를 줄이고 민감한 명도를 기반으로 영상을 압축하는 방식을 크로마 서브샘플링이라 한다.
  • RGB
    • 빛의 3원색인 적색, 녹색, 청색을 조합하여 색을 표현하는 방식
    • 하나의 픽셀을 표현할 때 24bit(한 색당 8bit) 사용, 영상을 압축할 때 많은 비트가 사용 됨
  • YUV
    • 빛의 양을 정하는 휘도(Y)와 색차(U,V)를 이용
    • 디지털에서는 U,V 대신 RGB의 파랑(Cb)과 빨강(Cr)을 사용
    • 대표적으로 YUV444, YUV422, YUV420이 있음

비디오 압축

  • 비디오는 수많은 프레임(정지 이미지)이 시간 축을 기준으로 모여 저장된 것이다.
  • 비디오를 압축할때는 하나의 프레임과 주변 프레임과의 상관관계를 이용하여 압축한다.
  • 기준이 되는 프레임 : I-프레임, 상관관계에 있는 프레임 : P-프레임, B-프레임 (합쳐서 인터 프레임, 레퍼런스 프레임)
  • 기준이 되는 프레임 : I-프레임, 상관관계에 있는 프레임 : P-프레임, B-프레임 (합쳐서 인터 프레임, 레퍼런스 프레임)
  • Intra Frame (I-Frame)
    • 정지 영상처럼 화면의 모든 정보를 담고 있는 frame
    • 키 역할을 하기 때문에 key frame 이라고도 함
  • Prediction Frame (P-Frame)
    • 이전 화면에서 바뀐 부분의 내용을 담고 있는 frame
    • P-프레임을 디코딩하려면 반드시 P-프레임과 연결된 I-Frame이 필요하다.
  • Bi-directional (B-Frame)
    • 앞/뒤 화면에서 바뀐 부분의 내용을 담고 있는 frame
    • P또는 I프레임 다음 P프레임의 변경된 정보만을 담고있어 크기가 가장 적다
    • 디코딩할 때 가장많은 정보(P,I프레임)가 필요 함
  • 비디오 프레임은 GOP란 그룹을 단위로 압축 * 비디오 프레임은 GOP란 그룹을 단위로 압축

오디오 샘플링(Sampling)

  • 샘플링은 아날로그 신호를 디지털 신호로 변환하는 과정이다.
  • sampling rate
    • 샘플링의 정교함에 대한 주파수(Frequency)를 의미하며 1초 단위 샘플링 횟수를 비율에 따라 표시한다.
    • 11kHz, 22kHz, 44kHz로 분류하는데, 44kHz는 입력되는 아날로그 데이터를 1초 동안 4만 4천번으로 세분하여 샘플링 했다는 것을 의미한다.
    • 샘플링레이트가 크면 클수록 원음과 가까운 음질을 가지지만 용량이 커질 수밖에 없다.
    • 일반 CD는 44.1kHz, DVD에 사용되는 오디오의 경우는 48kHz의 샘플링 레이트를 가진다.
  • bit depth
    • sampling rate는 시간 즉 x 축에 대한 함수이며 샘플링 신호를 표기하기 위해서는 음량 (Amplitude) 즉 y축에 해당하는 값이 동시에 필요하다.
    • 이를 "Bit Depth (비트 해상도)"라고 하며, 단위는 bit (비트)를 사용 한다.
    • 비트 깊이에 따른 표현 가능한 신호의 강도는 2의 N승과 같으며, 많은 비트를 사용할수록 정확한 신호의 강도를 표현
    • bit depth가 16이라면 65,536종류의 신호의 강도를 표현
    • 해상도 (비트수)가 높아질수록 원래의 아날로그 신호와 동일하게 샘플링 될 수 있다.
  • 비트 깊이에 따른 신호의 차이

비트레이트

  • 초당 전송되는 데이터 양이다. 즉 1초당 전송되는 비트 수이다.
  • 보통 320Kbps, 192Kbps, 128Kbps 등을 사용한다.
  • bitrate가 높을 수록 고음질
  • 작은 해상도와 낮은 샘플링 레이트를 가진 영상을 인코딩 할 때는 많은 비트레이트가 필요하지 않다.
    • 많은 비트레이트를 할당하여도 눈에 띄는 변화는 없으며 용량만 커진다.
  • 가변 비트레이트(VBR, Variable Bitrate)
    • 영상의 복잡도에 따라 할당하는 비트레이트 양이 결정
    • 영상의 복잡도를 계산하는 과정이 필요하여 시간이 두 배 정도 더 걸린다.
  • 고정 비트레이트(CBR, Constant Bitrate)
    • 항상 같은 양의 비트레이트 할당,품질이 상대적으로 떨어짐
    • 일정한 비트레이트를 유지하기 때문에 전체 크기 가늠이 가능하고, 스트리밍의 최소 대역폭을 알 수 있다.
  • 평균 비트레이트(ABR, Average Bitrate)
    • 영상의 복잡도에 따라 비트레이트를 할당하지만 평균 비트레이트를 유지

문서정보

Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.