티스토리 툴바


 
 
동영상 파일의 구성요소 및 재생 원리
 

동영상의 의미 및 구성요소
동영상의 영상과 음성, 그리고 코덱
동영상 재생에 필요한 것들

 
 동영상의 의미 및 구성요소 - 영상, 음성, 컨테이너

동영상이란 컴퓨터 모니터를 통해 보여지는 움직이는 상태로 나타나는 화면을 말합니다.

이러한 동영상은 TV를 녹화해서 만들어진 것도 있고 실제로 촬영을 해서 만들어진 것도 있습니다. 또한 이미 만들어진 파일을 수정해서 새로운 형태의 동영상이 만들어지기도 합니다. 어떤식으로 만들어졌든지 컴퓨터를 통해 보는 모든 움직이는 화면은 동영상이라고 통칭합니다.

동영상은 크게 영상과 음성으로 구성됩니다. 영상과 음성은 각각 구분되어진 별개의 파일이며 이 두 파일을 하나의 그릇에 담아낸 결과물이 동영상입니다.

이 때, 영상과 음성을 담는 그릇은 컨테이너라고 부릅니다. 컨테이너는 단순히 동영상의 구성물을 포장하는 박스에 불과하죠. 하지만 컨테이너의 종류에 따라 avi, flv, mp4, tp, mpg 등의 동영상 파일의 확장자가 결정됩니다. 

결국 동영상의 구성요소는 영상파일, 음성파일, 그리고 이 두 파일을 담는 그릇인 컨테이너가 됩니다.


 동영상의 영상과 음성, 그리고 코덱

동영상은 기본적으로 용량이 클수록 화질이나 음질이 뛰어납니다.

하지만 용량이 큰 동영상은 여러사람들이 공유하는데 시간적인 제약이 있고 컴퓨터의 저장용량의 문제로 인해 효율성이 떨어집니다. 결국 이런 불편함 해소를 위해 영상파일과 음성파일을 압축해서 비교적 저용량으로 줄이는 방법이 개발되었고 그 방법 또한 다양합니다. 흔히 우리는 이러한 과정을 가능케 해주는 소프트웨어를 코덱이라고 부릅니다. 

코덱은 크게 두가지로 나눌 수 있습니다. 먼저 새로운 동영상을 만들기 위해 영상과 음성 파일을 압축하는 역할의 인코더가 있습니다. 인코더를 이용해 새롭게 동영상을 만드는 과정을 인코딩이라고 하죠. 다음으로 동영상을 재생할 때, 인코딩 된 영상과 음성파일의 압축을 풀어주는 디코더가 있습니다. 정리하자면 코덱이란 동영상을 만들기 위한 인코더, 동영상을 재생하기 위한 디코더로 나뉘는거죠.

코덱은 영상파일과 음성파일을 압축해서 원본의 화질이나 음질을 떨어뜨리는 대신에 용량을 줄이는 기술입니다. 현재는 화질이나 음질의 저하를 최소화하면서 용량을 큰 폭으로 줄여주는 뛰어난 성능의 코덱들이 많이 개발되었습니다. 대표적인 영상 코덱으로는 H.264, Xvid, Divx, mpeg, wmv 등의 코덱이 있고 음성 코덱으로는 mp3, ac3, aac, wma 등의 코덱이 있습니다.

앞서 소개한 컨테이너가 동영상의 외부 모습, 즉 avi, mp4, flv, mpg, tp 등의 확장자를 결정한다면 영상파일과 음성 파일에 사용 된 코덱은 동영상의 내부 모습, 즉 실제 동영상의 종류를 결정한다고 볼 수 있죠.

만약 우리가 오류가 나는 동영상의 문제를 해결하고자 한다면 겉모습인 확장자가 아닌 영상과 음성에 사용 된 코덱이 무엇인지 파악해야 합니다. 간혹 네이버같은 포털사이트에서 검색해보면 "avi 동영상 재생이 안되요"라는 질문글을 확인할 수 있습니다. 정확한 문제해결을 원한다면 컨테이너의 종류가 아닌 영상과 음성 코덱의 종류를 얘기하는 쪽이 정확합니다. 단순히 확장자만 얘기해서는 문제를 정확히 해결하기 어렵습니다.


 동영상 재생에 필요한 것들 - 스플리터, 코덱(디코더)

동영상은 영상과 음성을 특정한 코덱을 사용해서 압축하고 이렇게 만들어진 두 파일을 하나의 컨테이너에 담은 것입니다. 또한 만들어진 과정의 역순으로 진행되면서 동영상은 재생됩니다. 동영상의 컨테이너에서 영상과 음성 파일을 꺼내고 꺼낸 영상과 음성 파일의 압축을 풀어서 화면에 나타내면 그게 바로 동영상의 재생 과정인거죠.

동영상 재생 과정에는 필요한 것들이 있습니다. 

우선 컨테이너에서 영상과 음성파일을 꺼내고 이를 코덱(디코더)에 전달하는 역할을 하는 '스플리터'가 필요합니다. 당연한 얘기겠지만 스플리터가 없으면 코덱이 완벽하게 갖춰졌다고 해도 동영상은 재생되지 않습니다. 이어서 꺼낸 영상 파일과 음성 파일의 압축을 풀고 화면에 나타내기 위한 코덱(디코더)이 필요합니다. 이때의 코덱은 인코딩에 사용 된 코덱과 같은 종류의 디코딩용 코덱이겠죠.  

정리하면 아래와 같습니다.

사실 이런 과정을 몰라도 동영상을 재생하는데 큰 무리가 없습니다. 최근에 많이 사용되는 동영상 재생 프로그램들은 대부분 스플리터와 디코더를 플레이어 자체에 내장하고 있어서 별도로 신경쓰지 않아도 대부분의 동영상을 무리없이 재생시켜 주기 때문이죠.

다만 동영상을 인코딩해서 새롭게 만들고자 하는 분들이나 보다 뛰어난 성능의 코덱으로 동영상을 재생하고자 하는 분들, 그리고 동영상의 오류발생 시 스스로 해결해야겠다는 분들이라면 기본적으로 알아야 할 내용들입니다.

이상 동영상과 코덱에 관한 기본적인 사항들을 대충 적어보았습니다. 용어나 기타 상세한 부분에선 오류가 있을 수 있지만 이 글의 목적 자체가 기본적인 사항의 이해에 맞춰져 있기 때문에 크게 문제되진 않을 것입니다. 

그럼 많은 분들에게 도움이 되기를 바라면서 이만 마칩니다.


저작자 표시 비영리 변경 금지
Posted by 오롯한몽니

댓글을 달아 주세요