'비디오포맷'에 해당하는 글 1건

지난 포스팅에서 윈도우즈 환경에서 동영상을 재생할 때, 크게 소스필터, 변환필터 그리고 렌더필터로 구분되는 필터들이 사용된다고 말씀드렸지만, 실제로는 필요에 따라 더 많은 수의 다양한 필터들이 따라 붙을 때가 많습니다. 

필터가 추가로 필요한 이유는 많지만, 인코더 분들이 아닌 이상은 동영상을 별 문제없이 재생해서 감상하려는 목적이 대부분이시리라 봅니다. 이런 경우에는 동영상 포맷에 대한 기초적인 이해도 필요합니다. 




동영상 포맷

포맷 (출처 : 다음백과사전 )

http://en.wikipedia.org/wiki/File_format

포맷 ( format ) 이란 말은 컴퓨터 관련 분야에서는 정말 흔한 말이지만, 컴퓨터와 별 관련없으신 분들이 가장 싫어하는 말들 중 하나죠. ^^;; 

동영상 포맷은 동영상 정보가 디지털 저장장치 ( 보통 컴퓨터의 하드 디스크 ) 에 저장되는 형태입니다. 하드 디스크에 저장되는 파일들은 동영상 파일 외에도 문서, 사진, 음성 등등 다양하므로 각각에 맞는 포맷이 필요합니다. 동영상 포맷도 자신만의 독특한 저장형태가 있다고 알고 계시면 될 것 같습니다. 


동영상 포맷은 크게 컨테이너 포맷, 비디오 포맷, 오디오 포맷을 구분할 수 있습니다. 이렇게 구분한 이유는 동영상 압축기술과 재생할 때의 문제점 때문입니다.

먼저 압축기술은 소리와 화면으로 이루어진 동영상 정보를 효율적으로 압축하기 위해 이 두 가지 정보를 분리해서 그 특성에 맞게 발전시켰기 때문에 각각의 포맷이 생겼습니다. 언뜻 생각해 봐도 비디오가 오디오보다 훨씬 더 많은 양의 정보를 저장해야 될 것 같지 않으신지요? ^^;;

이렇게 두 개로 나누어 잘 압축한 것까진 좋았지만, 재생을 할 때 약간의 어려움이 발생하게 됩니다. 특정 시간에 알맞은 한 개의 화면과 알맞은 소리들이 나와주도록 해야 하는데, 별도로 구분된 파일(포맷)인지라 원활하게 동작하지 못한다는 문제입니다. 파일도 별도로 관리해야 하는 불편한 점도 있구요. ^^;;

이 때문에 비디오 포맷과 오디오 포맷을 한데 묶어주는 컨테이너 포맷이 필요해졌습니다. 그럼 한개의 파일에 비디오 압축부분과 오디오 압축부분도 넣어 편리하게 관리할 수 있고, 재생시간도 공유해서 효과적으로 영상과 소리를 즐길 수 있게 됐습니다.

비디오 포맷은 영상정보를 압축한 비디오 포맷과 소리정보를 압축한 오디오 포맷, 그리고 이를 묶어주는 컨테이너 포맷으로 구분될 수 있으며, 우리가 즐기는 대부분의 멀티미디어 파일은 이 컨테이너 포맷의 확장자(*.avi, *.mkv 등등)를 가집니다. 물론, 비디오 포맷만 가진 파일이라면 비디오 포맷의 확장자를 가지고, 오디오 포맷만 가진 파일이라면 오디오 포맷의 확장자를 가집니다. ^^;;

http://en.wikipedia.org/wiki/Container_format_(digital)

http://en.wikipedia.org/wiki/Comparison_of_container_formats




대개의 동영상 재생과정

동영상 포맷에 대해서도 약간의 감을 얻으셨다면 대체로 아래와 같은 윈도우즈 환경에서 동영상 재생과정을 거친다고 알아두시면 될 것 같습니다. KMP 포럼에 있던 내용 중 기억나는대로 다시 작성한 것이며, 모든 경우에 반드시 이런 것은 아닙니다. 단지 MSDN 에서 제공한 웹문서보다는 자세하고 이해하기 쉬운 것 같아 작성했습니다.
 
소스필터 -> 스플리터 ( splitter ) -> 코덱 ( 변환필터 ) -> 후처리필터 ( postprocessing filter ) -> 렌더필터

1. 소스필터 : 동영상 파일을 읽어오는 작업.

2. 스플리터 : 읽어온 동영상 파일을 파악해서 비디오 압축부분, 오디오 압축부분 등등의 멀티미디어 정보를 뒤에 따라오는 필터들이 작업할 수 있도록 분리. ( 여기까지가 컨테이너 포맷을 분석하는 역할입니다. ^^;; )

3. 변환필터(코덱) : 비디오 코덱, 오디오 코덱 등이 압축된 정보들을 풀어주는 작업.

4. 후처리 필터 : 필요한 만큼 복구된 멀티미디어 데이타들에 어떤 효과나 보정을 위해 다시 데이타를 추가.

5. 렌더필터 : 출력장치 ( 비디오카드, 사운드카드 등) 들이 이해할 수 있는 정보로 만들어 해당 장치로 전송.


예전에 간혹 어떤 게시판을 보면 비디오 코덱과 오디오 코덱을 설치했는데 재생이 안된다고 하시는 분들이 계셨습니다. 오가는 답변들을 보니 컨테이너 포맷에 대한 스플리터가 없는 경우이신 듯 한데, 서로 오해가 심해져서 대화가 진행되지 않는 경우도 본 적이 있습니다. ( 한쪽은 비디오, 오디오 코덱 있는 거 확인했는데 재생이 안된다고 주장하고, 한쪽은 필요한 코덱이 없어서 재생이 안된다고 주장하는 막막해 보이는 상황이었습니다. ^^;; ) 정말 깨끗한(?) 친구의 컴퓨터에서 동영상을 재생하고자 할 때 저 역시 3 종류의 필터를 찾아 설치해 줬는데, 친구에게 설명할 때는 별 수 없이 알맞은 코덱을 찾아 설치했다고 말했습니다. --;; 컴퓨터 용어는 정말 말하면서도 짜증날 때가 많습니다. --;;

스플리터, 파서필터, 소스필터의 역할은 저도 많이 헷갈리는 부분인데, 제가 확실하게 느끼는 건 이 부분을 지나야 비디오 압축코덱, 오디오 압축코덱이 필요한 상황이 된다는 점과 스플리터란 말이 나오면 추가로 설치해야 하는 코덱(? 사실은 필터)이 필요하다는 겁니다. 앞으로 잘 설명된 글을 찾을 수 있으면 좋겠습니다. ^^;;


WRITTEN BY
리컨
영화를 즐기는 취미를 기록한 블로그입니다.

,