Virtual Dub의 Frameserver 이용하기.
< 여기서 할 것은 Virtual Dub 의 Frameserver 기능을 이용해서 소프트웨어 MPEG 인코더(TMPGEnc,
LSX Mpeg Encoder)와 연결하여 AVI 파일을 MPEG 파일로 인코딩하는 겁니다.>
준비물 : Virtual Dub 1.4c / TMPGEnc Beta 12b / Test 용으로 10M 정도의 *.avi 파일하나 이상.
(혹시 이미 설치된 버전으로 아래의 과정등을 하시다가 문제가 생기면 위 버전들을 설치하고 해 보세요.)
Virtual Dub 이 설치되어 있는 폴더로 이동. 여기서 AuxSetup을 실행하고 뜨는 화면에서 Install
Handler 란걸 실행합니다.
그럼 Install AVIFile Frameclient 창이 뜹니다. OK를 합니다.
확인을 하고 Exit 합니다. 다시 Virtual Dub 폴더내에 있는 aviproxy 라는 폴더로 이동을 합니다.
그럼 이중 proxyon을 클릭합니다. ( 이건 레지스트리에 해당 정보 내역을 넣는 것으로 여기까지가
프레임서버를 쓸 수 있게 하는 과정입니다.)
Virtual Dub을 실행하고 미리 준비해 둔 *.avi 파일을 불러옵니다. 만약 불러들여야 할 파일이 여러
개 라면 Append Video Segment...를 선택해서 동일한 포맷의 여러 파일들을 같이 불러서 Virtual
Dub에다 올려 놓으시고 작업을 진행해도 됩니다.
메뉴의 File => Start Frame Server를 실행합니다. Frameserver setup 창이 뜹니다.
여기서 아무 이름이나 써 넣으셔도 무방합니다. 이 과정을 성공해야 되기 때문에 "Success" 라는
이름을 넣어 보겠습니다. 그리고 Start를 클릭합니다.
다시 창하나가 뜨는데 이건 저장할 디렉토리와 파일 이름을 정해주는 곳입니다. 파일 이름란에다
정확히 test.avi 라고 기입하고 확인을 누릅니다.
아래의 그림과 같은 Frameserver mode 창이 뜨는데 이것은 인코딩이 시작될 때 전체적인 상황을
볼 수 있는 감시창 정도로 생각하시면 됩니다. 여기 까지 하셨으면 Virtual Dub에서 할 설정은 끝이
났습니다.
위 Frameserver mode 창을 그대로 둔 다음 TMPGEnc를 실행합니다.
영상 소스의 참조를 클릭하고 test.avi를 선택합니다. 영상소스에 오디오가 포함되어 있다면 바로
아래의 음성 소스는 자동으로 읽어 들입니다. 출력파일 이름에서는 저장할 디렉토리 및 파일명을
선택하고 적으시면 됩니다. 스트림의 종류는 물론 AV 가 포함된 System(Video + Audio)를 선택
하셔야겠죠.
여기서 바로 압축 시작을 클릭해서 인코딩 작업을 시작 하셔도 됩니다.
< TMPGEnc 는 아직 Intel의 MMX기술을 완전히 지원하지 않기 때문에 다른 Encorder에 비해 인코딩
시간이 늘어날 수 있습니다.>
※ 만약 VCD(비디오 시디)를 Recording 하실려면 로드를 클릭하시고 뜨는 분류 중
Video CD(NTSC).mcf 를 선택하시고 Encording을 하시면 됩니다.
그럼 좀 더 자세한 설정을 위해 설정을 클릭합니다. 젤 처음으로 비디오 탭에 비디오 설정란이
나옵니다. TMPGEnc는 스트림 형식이나 프레임 사이즈 / 프레임 레이트를 자동으로 읽어 드려
맞춰줍니다. 간혹 원본과 틀리거나 사용자 임의 대로 변경을 하고 싶을 때는 여기서 변경을 하시면
됩니다.
먼저 맨 아래쪽에 있는 동작 검색정도를
으로 합니다.
이것은 글자 뜻 그대로 인코딩 시간 대 화질을 어떻게 할 것인가를 설정합니다. 모두 4가지의
mode가 있는데 일반적으로 약간 저속에 좀더 나은 화질을 우선하시면 고품질(저속)을 선택하세요.
레이트 조정 모드로 가서 2페스 가변레이트(VBR)을 선택합니다. 아마 7가지 모드 중 위에서
두 번째가 되겠네요.
※ 비트레이트 조정란의 바로 아래에 보면 VBV 버퍼 사이즈란게 있습니다.
VBV는 Video Buffering Verifier 의 약자로 하나의 그림에 사용되는 비트수 변화의 최대값을
제한하기 위해 사용되어 집니다. 이것은 나중 윈도우 미디어 플레이어와 같은 디코더가 파일을
재생할 때 사용하는 버퍼의 크기를 설정하는 것으로 이 값은 그냥 0으로 두셔도 무방합니다.
참고로 VideoCD MPEG1 자료를 만들기 위해 사용되어지는 버퍼의 크기는 40Kbyte입니다.
그리고 오디오 탭을 선택합니다. 오디오 스트림의 설정란이 나옵니다. 화질 대 용량을 줄일
목적이라면 샘플링 주파수와 , 비트레이트를 약간씩 낮추셔도 무방합니다. 단, 스테레오를
모노럴로 설정하면 심각한 음질저하가 생깁니다.
OK를 하시고 압축시작을 눌러서 Encording을 합니다.
▒ 레이트 조정모드에 대한 간략한 내용( 7가지 중 3가지 만..)
1. 고정레이트 (CBR) : 이건 모든 MPEG 엔코더에 다 붙어있는 가장 기본적인 압축 방식으로,
지정한 크기(기본값 - 비트레이트 : 1150 kbit/sec)를 모든 프레임에서 사용합니다. Constant
Bitrate 이라고도 합니다. 만약 이과정을 거쳐 비디오시디(VCD)를 만드실거라면 반드시 이것만을
하셔야 합니다. 장점은 인코딩 시간이 짧다는거 물론 단점은 움직임이 많은 곳에서는 화질저하가
옵니다.
2. 2패스가변비트레이트 (VBR) : VBR 은 Variable Bit Rate의 약자로, 움직임이 많은 곳에서는
더 많은 용량을 쓰고, 움직임이 없는 곳에서는 약간의 용량만을 쓰는 방법입니다. 그러므로 보통
조금 더 작은 크기에서 더 나은 화질이 나옵니다. 이 2 Pass VBR은 비디오 전체를 일단 읽으며
그 비디오를 조사한 후, 처음부터 다시 읽으며 실제 압축이 시작되죠. ( 50% 까지 시커먼 화면이
나오다가 그 이후 실제 압축과정이 보여집니다.)
이것은 어느정도의 VBR 기능이 들어있어 움직임이 많은 곳에서도 화질 저하가 적습니다.
이곳에서 설정 할 수 있는 값으로는 Average, Max, Min Bitrate으로, 보통의 압축 과정에선
Average Bitrate 정도를 주로 사용하다가, 움직임이 많은 곳에서는 최고 Max Bitrate 까지
사용합니다. 이것의 단점이라면 물론 두 번의 읽어들이는 과정으로 인해 CBR에 비해 최소 2배의
시간이 걸립니다.
3. 자동 가변레이트 (CQ_VBR) : 이것은 처음부터 상황에 따라 용량을 할당하는 것으로 아무리
움직임이 많고 복잡한 장면도 일단 비슷한 화질로 만들기 위해 사용자가 지정한 최고 Bitrate
값까지를 사용합니다. 여기서 설정할수 있는 값으로는 Max Bitrate, Min Bitrate, Quality meter 로,
Quality meter 는 보통 화질을 대략 Max Bitrate의 몇 % 정도로 지정할 것인가 하는 것입니다.
이것의 장점은 2 Pass VBR 보다 보통 화질면에서는 더 낫습니다. 특히 특정 장면에서 화질 저하가
없습니다. 하지만 때에 따라 CBR 보다도 훨씬 큰 크기의 결과물이 나옵니다.
용어 해설(Bitrate) - Bitrate란 1초에 해당하는 MPEG 파일에 얼마의 Bit 수를 집어 넣느냐를 의미
합니다. 즉, 이 bitrate 가 높을수록 화질은 좋아지나 그 만큼 압축이 덜 됐으므로 파일 크기는 커집니다.
아래의 노란색 그래프를 보시면 이해가 빠를 겁니다.
▒ 위 레이트 조정모드 3가지에 대한 간단한 테스트 결과
테스트 환경 : 펜티엄 3 500, 메모리 128 메가...// 이상 (Bitrate Viewer를 활용한 시각화 => 자료실에
있음)
화질 캡쳐 : NONE
아래의 그래프 중 노란색은 Bitrate를 나타내며, 녹색은 Quantization Scale(양자화 크기)로서
그래프가 높은 곳일수록 더 많이 압축을 했다는걸 나타냄... 물론 그 만큼의 화질을 손상시켰다는 뜻.
1. CBR
설정 - 비트 레이트 : 1150 / 동작검색정도 : 고품질(저속)
결과 - 18M (*.avi) => 9.5M (*.mpg) / 압축 시간 : 3분 40초
2. VBR
설정 - 평균 : 1150, 최대 : 3000, 최소 300 / 동작검색정도 : 고품질(저속)
결과 - 18M (*.avi) => 8.5 (*.mpg) / 압축 시간 : 7분 25초
3. CQ_VBR
설정 - 품질 : 50%, 최대 : 3000, 최소 : 0 / 동작검색정도 : 고품질(저속)
결과 - 18M (*.avi) => 11M (*.mpg) / 압축 시간 : 3분 45초
※ 위 테스트 결과는 사용자의 컴 환경에 따라서 조금씩 달라질 수 있으며, 설정 또한 전부 기본값으로서
테스트 하였으므로 개인에 따라 설정값을 조금씩 변경해서 자신 만의 노하우를 가지시기 바랍니다.
※ Bitrate Viewer 홈페이지 - http://www.tecoltd.com/bitratev.htm 입니다. 여기서 맨 위 상단
User's Guide에 가면 자세한 사용법등이 있는데, 데모용이라 기능상의 제약이 있습니다. 기능 전부를
사용할려면 정품을 직접 구입하는 것 외에는 별다른 방법이 없습니다...그래도 위 처럼 그래프 정도는
볼 수 있습니다.