EVR(Enhanced Video Renderer)에 대하여 (1)에서 EVR과 EVR Renderless(EVR CP)의 차이에 대해 알아 보았습니다. 그런데 동영상 플레이어마다 EVR(or EVR Renderless)의 기능과 명칭이 조금씩 다릅니다. 이번 포스트에서는 이 부분에 대하여 알아보겠습니다.

1. EVR
EVR은 EVR, Enhanced Video Renderer, EVR(Vista/.Net3) 중의 하나로 표기되며, 기능에 따라 3가지 정도로 분류할 수 있습니다.

(1) 순수한 EVR : 가장 순수한 EVR로 곰플레이어와 KMP 1434 이하 버전에서 사용되는데, 자막이 출력되지 않는 상당히 치명적인 단점을 가지고 있습니다.
(2) 적절한 EVR : 순수한 EVR에 최소한의 자막 출력 기능만 포함되어 있습니다. 팟플레이어, 톡플레이어, 알쇼, 제트오디오, 초코플레이어의 EVR이 여기에 해당합니다.
(3) 가짜 EVR : KMP 1435 이상 버전의 EVR이 여기에 해당합니다. 이름만 EVR이지 EVR Renderless입니다.


2. EVR Renderless
EVR Renderless는 동영상 플레이어마다 명칭이 조금씩 다르며, 아예 지원하지 않는 동영상 플레이어들도 있습니다.

EVR Renderless : 팟플레이어, 알쇼, 초코플레이어
EVR C/AKMPlayer
EVR CP(Custom Present) : 톡플레이어
EVR Renderless를 지원하지 않음 : 곰플레이어, 제트오디오

PS. 알쇼와 초코플레이어의 EVR Renderless는 픽셀셰이더 기능이 빠져 있습니다.


3. EVR Renderless의 문제점
비교적 안정적인 VMR9 Renderless와 달리 EVR Renderless는 불안정해서 개선해야 할 부분이 많습니다. 다행히 720p급 고화질 영상에는 별 무리없이 작동되지만, 초고화질급 영상(1080p,1080i, 60 프레임 영상 등등)에서는 화면 버벅임, 깨짐, 싱크 어긋남, 프레임 소실 등의 문제가 발생할 확률이 높습니다.(컴퓨터 사양과 동영상에 따라 변수가 많기는 합니다.)

그래로 국산 동영상 플레이어 중 톡플레이어제법 안정적인 EVR Renderless를 가지고 있습니다. 톡플레이어의 EVR CP는 60 프레임 H.264/AVC 영상을 상당히 안정적으로 재생합니다. 하지만 다른 동영상 플레이어들의 EVR Renderless는 초고화질 영상에서는 불안정한 모습을 보이기 때문에, 초고화질 영상에서는 EVR Renderless 보다는 기능은 적지만 안정적인 EVR를 쓰는 편이 좋습니다.

참고로 EVR Renderless가 가장 안정적인 동영상 플레이어는 외국의 MPC-HC란 동영상 플레이어입니다. 이 동영상 플레이어는 좋은 성능을 가지고 있고 한글화도 되어있지만 인터페이스가 좀 불편해서 국내에서는 대중적으로 사용되고 있지는 않습니다.


4. Windows Vista/7에서는 꼭 EVR(or EVR Renderless)를 써야 하나요?
그렇지는 않습니다. Windows Vista/7에서도 Windows XP와 같이 오버레이 믹서, VMR7, VMR9 같은 다른 렌더러를 사용할 수도 있습니다.(다만 오버레이 믹서를 쓰면 에어로 기능이 꺼지기 때문에 그것은 감수해야 합니다.)

그런데도 EVR 이야기를 계속 한 것은 DXVA 하드웨어 가속 때문입니다. 일반적으로 Windows Vista/7 컴퓨터에서 DXVA 하드웨어 가속을 사용하려면 반드시 EVR이나 EVR Renderless를 사용해야 합니다. 이 말을 바꾸어 말하면 DXVA 하드웨어 가속을 사용하지 않는다면 굳이 EVR이나 EVR Renderless를 고집할 필요가 없다는 뜻도 됩니다.

그렇기 때문에 DXVA 하드웨어 가속을 사용하지 않는 Windows Vista/7 유저들이라면 불안한 EVR Renderless보다는 안정적인 VMR9 Renderless를 쓰는 편이 나을거라 생각합니다.
Posted by 커피.
,
동영상 플레이어의 환경 설정에서 영상 출력 방식(장치)을 선택할 때 오버레이믹서니 VMR이니 EVR이니 하는 것들을 보신 적이 있을 겁니다. 그 중 EVR과 EVR Renderless(EVR CP)에 관한 설명입니다.

지금부터 하는 이야기는 Windows Vista와 Windows 7 유저에게만 해당되며 Windows XP 유저에게는 해당되지 않습니다. 사실 Windows XP에서도 .NET Framework 3.0 이상이 설치되어 있으면 EVR을 사용할 수는 있지만 불안정한데다 EVR를 사용함으로서 얻을 수 있는 이득도 없습니다. 그러니 Windows XP 유저는 관심을 끄셔도 됩니다. 다만 EVR과 EVR Renderlss의 차이는 VMR9와 VMR9 Rendeless의 차이와 비슷하니 그런 점에서는 참고하셔도 되겠네요.

EVR(Enhanced Video Renderer)는 Windows Vista와 함께 새롭게 등장한 렌더러로 DXVA 2.0을 지원합니다. EVR은 Windows가 제공하는 렌더러를 별다른 가공없이 사용하는데 반해, EVR Rendeless(EVR CP)는 동영상 플레이어가 영상 처리를 담당합니다. 그래서 EVR Renderless(EVR CP)는 EVR에 비해 몇가지 기능을 더 가지고 있습니다.

[EVR Renderless(EVR CP)의 기능]

(1) 자막의 화면 밖 출력 기능



EVR(왼쪽)은 영상 내에서만 자막 출력이 가능하지만 EVR Renderless(오른쪽)은 영상 밖에서도 자막을 출력할 수 있습니다.( 일부 동영상 플레이어의 EVR은 아예 자막 출력이 안됩니다.)


(2) 좋은 품질의 자막


EVR의 자막(위쪽)도 나쁘지는 않지만, EVR Renderless의 자막(아래쪽)의 품질이 더 좋은 것을 알 수 있습니다.


(3) 픽셀셰이더 기능
픽셀셰이더는 그래픽카드의 기능 중 하나인데, 동영상 플레이어에서 쓰일 때는 동영상에 여러가지 효과를 줄 수 있습니다. 그냥 포토샵의 뽀샵 기능 정도로 이해하시면 될 듯 싶네요. 예를 들어 픽셀셰이더 중 Emboss를 적용하면 이런 식의 화면이 나타납니다.


그러나 동영상은 대부분 원본 그대로 보기 때문에 큰 의미는 없겠죠? 다만 렌더러와 그래픽카드 드라이버의 버그에 의해서 동영상이 뿌옇게 보이는 현상이 있을 경우 이를 해결하기 위한 방법으로 픽셀셰이더 중 Remap_16_235가 사용되기도 하였습니다. 요즘은 다른 해결 방법이 있기 때문에 잘 사용하지는 않지만요.


(4) 화면 캡처 기능
EVR Renderless를 사용하면 화면 캡처가 가능합니다. 영상 처리 필터를 사용하면 EVR Rendeless의 사용여부와 관계없이 화면 캡처가 가능하지만, DXVA 하드웨어 가속시에는 영상 처리 필터를 사용할 수 없기 때문에, DXVA 하드웨어 가속을 사용하면서 화면 캡처를 하려면 EVR Renderless가 필요합니다.


(5) 영상이 뿌옇게 보이는 단점



이건 기능은 아니고 단점에 관한 이야기입니다. EVR Renderless(오른쪽)은 EVR(왼쪽)과 달리 화면이 뿌옇게 보이는 단점이 있습니다. 얇은 막이 덮인 것처럼 검은색이 회색으로 보이죠. 위 사진들은 영화 재생시 검은색 화면을 캡처해본 것입니다. EVR(왼쪽)은 까만 레터박스와 영화 화면이 구분이 가지않을 정도로 검은색을 정확하게 표현하고 있는데 비해, EVR Renderless(오른쪽)은 까만 레터박스와 구분이 되는 회색 비슷한 화면을 표현하고 있습니다.

이러한 뿌옇게 보이는 버그를 해결하기 위해 다양한 방법들이 고안되었습니다. RGB 출력을 하거나, 위에서 잠깐 언급한 픽셀셰이더의 Remap_16_235를 하는 방법들이 이용되었습니다.


NVIDIA 그래픽 카드라면 좀더 단순하게 해결할 수 있습니다. NVIDIA 제어판비디오 - 비디오 컬러 설정 조정에서 2. 컬러 조정 방법NVIDA 설정 사용을 클릭합니다. 그리고 고급 탭에서 동적 범위를 전체(0-255)로 지정해주시고 적용 버튼을 클릭하면 EVR Rendeless 사용시 뿌옇게 보이는 버그가 해결됩니다.


이렇게 EVR Renderless(EVR CP)는 EVR에 비해 여러가지 기능을 더 포함하고 있습니다. 하지만 EVR Renderless는 좀 불안하기 때문에 개선이 필요하다는 단점도 가지고 있습니다. 이에 대한 이야기와 각 동영상 플레이어들에 포함된 EVR이나 EVR Rerenderless의 문제점에 대해서는 다음 포스트에서 알아보겠습니다.
Posted by 커피.
,
국산 동영상 플레이어는 내장 코덱으로 거의 대부분의 고화질 동영상을 재생할 수 있지만 외부 코덱을 사용하여 재생할 수도 있습니다.

외부 코덱에는 최강의 소프트웨어 가속 코덱이라 불리우는 CoreAVC 코덱, 오랫동안 널리 사용되고 있는 CyberLink 코덱, 인지도는 높지 않지만 막강한 성능의 ArcSoft 코덱, Windows 7에 기본으로 포함되어 있는 Microsoft DTV-DVD Decoder, 좋은 성능의 무료 코덱 MPC Video Decoder 등등 다양한 종류가 있습니다.

국산 동영상 플레이어들은 알쇼를 제외하고 모두 외부 코덱 연결이 가능합니다. 하지만 외부 코덱을 설정시 편의성 측면에서 보면 동영상 플레이어마다 차이가 있습니다. 국산 동영상 플레이어들의 외부 코덱 설정시 편의성에 대해 점수를 매겨보면 다음과 같습니다.

   외부 코덱 지원의 편의성
 곰플레이어 B
 KMPlayer A
 팟플레이어 A
 톡플레이어 A
 알쇼  F
 제트오디오  C
 초코플레이어  C

A (편리): 팟플레이어, 톡플레이어, KMPlayer외부 코덱을 선택하여 지정할 수 있기 때문에 외부 코덱을 컨트롤하기가 편리합니다.

B (보통)
: 곰플레이어는  중간 쯤으로 외부 코덱을 선택하여 지정할 수는 없지만, 곰플레이어 내에서 외부 코덱간의 우선 순위를 설정해줄 수는 있습니다.

C (불편)
: 제트오디오, 초코플레이어는 외부 코덱을 사용할 수는 있으나 문제점이 많습니다. 내장 코덱을 사용 해제하면 외부 코덱이 사용되는 시스템인데, 컴퓨터에 있는 외부 코덱 중 가장 우선순위가 높은 외부 코덱이 무조건 사용되기 때문에 원하는 외부 코덱을 선택해 사용할 수가 없습니다.

F (불가)
: 알쇼는 설정상으로 내장 코덱을 사용 해제할 수 있게 되어있지만, 실제로 이 설정은 작동하지 않습니다. 설정과 관계없이 무조건 내장 코덱으로만 재생이 되며 외부 코덱을 사용할 수가 없습니다.


그러므로, 내장 코덱 보다는 외부 코덱을 주력으로 사용하시려는 유저들은 팟플레이어, 톡플레이어, KMPlayer를 사용하는 것이 좋습니다.



그냥 넘어가기 서운하니 테스트를 하나 해보았습니다. 최강의 H.264/AVC 소프트웨어 가속 코덱으로 불리는 CoreAVC와 동영상 플레이어의 내장 코덱의 CPU 점유율 비교입니다.

테스트한 컴퓨터의 사양 : 1년여 전에 구입한 노트북
Intel Pentium Dual Core T3400 2.16GHz,  GeForce 9200M GS,  2GB RAM, Windows 7

테스트 방법
영상 출력 방식은 EVR(Enhanced Video Render), 작업 우선권은 높음으로, 음성 노말라이저 기능은 해제하였습니다. 각각의 테스트 동영상을 재생시키고 재생타임 30초부터 1분 30초까지 1분 동안 동영상 플레이어가 차지한 CPU 점유율의 평균값(소수점 첫째자리 반올림)을 산출했습니다. 측정도구는 Windows 7의 리소스 모니터입니다.

팟플레이어의 내장코덱, 팟플레이어 + CoreAVC, 팟플레이어 + CoreAVC + 영상 처리 필터 끄기, 초코플레이어의 내장 코덱, 이렇게 4개로 나누어 테스트를 하였습니다.(DXVA나 CUDA같은 하드웨어 가속 능력은 제외하였습니다)

테스트 영상 : 5가지 종류의 고화질 H.264/AVC 영상입니다.

   팟플레이어
내장코덱
팟플레이어 + CoreAVC
팟플레이어 +
CoreAVC +
영상 처리 필터 끄기
 초코플레이어
내장코덱
DVD Rip 영화
(800x336, 24fps, MKV)
9 %
8 %
7 %
8 %
HD 드라마
(1280x720, 30fps, AVI)
16 %
16 %
12 %
14 %
HD 애니
(1280x720, 30fps, MP4)
21 %
15 %
12 %
13 %
BluRay Rip 영화
(1920x800, 24fps, MKV)
49 %
38 %
34 %
36 %
HD 쇼프로
(1280x720, 60fps, MKV)
65 %
48 %
39 %
43 %

국산 동영상 플레이어들의 내장 코덱은 기본적으로 영상 처리 필터 기능을 포함하고 있습니다. 영상 처리 필터는 명도/채도/색상/대비나 부드럽게/선명하게/노이즈 제거 등등 다양한 영상 처리를 가능하게 하며, 화면 캡처와 이미지 자막 출력에도 관여합니다. 하지만 그만큼 CPU 점유율이 올라가는 단점도 있습니다.

내장 코덱으로 재생을 하는 경우 영상 처리 필터를 끌 수가 없습니다.(단, DXVA를 사용하는 경우에는 꺼지며, KMPlayer는 예외적으로 끌 수 있습니다.) 그에 비해 외부 코덱으로 재생을 하는 경우에는 영상 처리 필터를 킬 수도 끌 수도 있습니다. 그 점을 감안하고 테스트 결과를 봐주시기 바랍니다.

일단 팟플레이어의 결과만 보면, 내장 코덱으로 재생할 때 보다 CoreAVC로 재생할 때 CPU 점유율이 상당히 감소하였습니다. 또한 영상 처리 필터를 꺼버리고 CoreAVC를 연결하는 경우에는 더욱더 큰 감소효과를 볼 수 있었습니다. 소프트웨어 가속 코덱의 최강자라는 CoreAVC의 명성에 걸맞는 결과입니다.

하지만 초코플레이어의 내장 코덱과 비교하면 이야기가 좀 달라집니다. 결과에서 보듯이 최근에 나온 초코플레이어의 내장 코덱은 상당 수준 CoreAVC에 근접했음을 알 수 있습니다. 영상 처리 필터를 쓰지 않는 유저들은 CoreAVC가 낫다고 판단하겠지만, 영상 처리 필터를 쓰는 유저들은 초코플레이어가 낫다는 평가를 내릴 수 있을만한 결과이기도 합니다.(CPU 점유율 측면에서만 본다면요.)


물론 외부 코덱의 비교에서 CPU 점유율만으로 우수함을 판단하는 것은 무리입니다. 외부 코덱마다 고유의 색감과 화질 및 기능이 있기 때문입니다. 특정 코덱의 색감과 화질을 좋아하는 분들도 많습니다.

전반적인 성능에서 외부 코덱이 내장 코덱보다 조금 나은 걸로 알려져 있습니다. 하지만 외부 코덱들은 보통 자체 동영상 플레이어(PowerDVD, TotalMedia, WMP, MPC-HC 등)에서 사용하기 위해 만들어진 것입니다. 그러므로 외부 코덱들을 국산 동영상 플레이어에서 끌어다 쓰는 경우 궁합이 잘 맞을 거라는 보장은 없습니다. 게다가 외부 코덱을 쓰면 설정이 꽤나 복잡해집니다.

이렇게 내장 코덱과 외부 코덱은 일장 일단이 있습니다. 어느 것이 좋다고 선뜻 말씀드리기가 어렵네요. 간편하고 무난한 설정을 선호하시면 내장 코덱을 추천드리며, 이리 저리 세팅하고 설정하는 것을 좋아하신다면 외부 코덱을 권해드리고 싶습니다.
Posted by 커피.
,
DXVA 하드웨어 가속은 고화질 영상 재생시에 CPU가 전담하던 동영상의 디코딩 작업을 그래픽카드가 분담해서, CPU의 점유율을 크게 낮추는 기술을 말합니다. CPU의 힘으로 고화질 동영상을 재생하던 것을 그래픽카드의 힘으로 재생한다고 생각하시면 이해가 편하실겁니다.

DXVA를 사용하려면 우선 그래픽카드가 DXVA를 지원해야 하며, 코덱 역시 DXVA를 지원해야 합니다.
예전에는 DXVA를 사용하기 위해 반드시 DXVA를 지원하는 외부 코덱이 필요했지만, 최근에는 내장 코덱이 DXVA를 지원하는 동영상 플레이어들이 속속 등장하였습니다.

외부 코덱의 DXVA를 사용하려면 아주 복잡한 과정이 필요합니다. 하지만 내장 코덱의 DXVA를 사용하면 DXVA 설정이 매우 간편해집니다. 그래서 초보분들도 쉽게 DXVA를 사용할 수 있습니다.


 내장 코덱의 DXVA
 곰플레이어  미지원
 KMPlayer  미지원
 팟플레이어  지원
 톡플레이어  지원
 알쇼  미지원
 제트오디오  미지원
 초코플레이어  지원

현재 내장 코덱이 DXVA를 지원하는 동영상 플레이어팟플레이어, 톡플레이어, 초코플레이어 이렇게 3개입니다. 곰플레이어를 비롯한 다른 동영상 플레이어들의 내장 코덱은 DXVA를 지원하지 않으며, DXVA를 사용하려면 외부 코덱을 연결해야 합니다.



DXVA의 최대 장점은 무엇보다도 CPU 점유율이 크게 낮아진다는 점입니다. CPU 점유율이 낮아지면 그만큼 동영상 재생이 끊길 확률이 줄어들고, 다른 작업과의 병행에도 큰 도움이 됩니다.

아래는 팟플레이어에서 DXVA를 사용하지 않는 경우와 사용하는 경우의 CPU  점유율입니다.

테스트한 컴퓨터의 사양 : 1년여 전에 구입한 노트북
Intel Pentium Dual Core T3400 2.16GHz,  GeForce 9200M GS,  2GB RAM, Windows 7

테스트 방법
팟플레이어의 내장 코덱 만을 테스트 하였으며, 영상 출력 방식은 EVR(Vista/.Net3), 작업 우선권은 높음으로, 음성 노말라이저 기능은 해제하였습니다. 각각의 테스트 동영상을 재생시키고 재생타임 30초부터 1분 30초까지 1분 동안 동영상 플레이어가 차지한 CPU 점유율의 평균값(소수점 첫째자리 반올림)을 산출했습니다. 측정도구는 Windows 7의 리소스 모니터입니다.

 

 소프트웨어 가속 (DXVA 미사용)
DXVA 하드웨어 가속 
 DVD Rip 영화 - H.264/AVC
(800 x 336, 24fps, MKV)
 9 %  2 %
 HD 드라마 - H.264/AVC
(1280 x 720, 30fps, AVI)
 16 %  2 %
 HD 애니 - H.264/AVC
(1280 x 720, 30fps, MP4)
 21 %  2 %
 BluRay Rip 영화 - H.264/AVC
(1920 x 800, 24fps, MKV)
 49 %  4 %
 HD 쇼프로 - H.264/AVC
(1280 x 720, 60fps, MKV)
 65 %  4 %
 TP 영상 - MPEG2
 (1920 x 1080i)
 27 %  6 %

상당히 다이나믹한 결과죠? 톡플레이어초코플레이어DXVA 사용시 CPU 점유율도 팟플레이어와 거의 흡사합니다.
이렇게 DXVA를 사용하면 CPU 점유율이 놀라울 정도로 감소합니다. 또한 DXVA를 사용하여 TS, TP 영상을 재생하면 하드웨어 디인터레이싱이 자동적으로 적용되어 좋은 화질의 60 프레임 영상을 볼 수 있다는 장점도 있습니다.


그러나 DXVA 하드웨어 가속에도 단점이 있습니다.
우선 DXVA를 사용하려면 DXVA가 지원되는 그래픽카드가 필요합니다. TS, TP 영상의 DXVA는 그래도 대다수의 그래픽카드에서 지원되지만, H.264/AVC 영상의 DXVA는 비교적 신형 그래픽카드에서만 지원합니다. 또한 DXVA가 적용되지 않는 고화질 영상들도 간혹 있으며, DXVA 적용시 일시적인 화면깨짐이 발생하는 영상들도 있습니다. 영상 처리 필터를 사용하지 못하기 때문에 몇가지 기능을 쓸 수 없다는 단점도 있고요.

이렇게 DXVA  하드웨어 가속은 소프트웨어 가속보다 안정성과 호환성이 조금 떨어집니다.
안정적이지만 CPU 부담이 높은 소프트웨어 가속을 사용할지, CPU 부담이 거의 없지만 안정성과 호환성이 살짝 떨어지는 DXVA 하드웨어 가속을 사용할지의 결정은 유저의 몫입니다. 취향에 따라 선택하세요.
Posted by 커피.
,
국산 동영상 플레이어들의 고화질 영상 재생 능력 테스트 (1) - H.264/AVC 영상에 이어 이번에는 국산 동영상 플레이어들의 TS, TP 영상 재생 능력을 테스트 해보겠습니다.

TS, TP 영상HD 방송을 HDTV로 수신하고 녹화해서 만든 원본 MPEG2 영상으로 TS나 TP의 확장자를 가집니다. 원본 영상답게 고작 7분 분량이 무려 1기가에 달해서 용량 대비 효율이 좋지 않지만, 비교적 쉽게 만들 수 있다는 장점이 있어 아이돌 쇼프로 영상이나 김연아 피겨스케이팅 영상 등등 특정 분야에서 제법 널리 사용되고 있습니다.

국산 동영상 플레이어 모두 TS, TP 영상 재생이 가능합니다. 다만 곰플레이어는 권장 코덱의 형태로 외부 코덱에 그 역할을 떠맡기고 있으며, KMPlayer는 설치시 포함되는 외부 코덱을 통해 재생을 합니다. 그 밖에 팟플레이어, 톡플레이어, 알쇼, 제트오디오, 초코플레이어는 내장 코덱이 TS, TP 영상 재생을 지원하고 있습니다.

그럼 7개 동영상 플레이어들이 TS, TP 영상(MPEG2 영상)을 재생할 때 어느 정도의 CPU 점유율을 필요로 하는지 테스트해보겠습니다. CPU 점유율이 낮을수록 우수한 능력을 가지고 있다고 생각하시면 됩니다.

테스트한 컴퓨터의 사양 : 1년여 전에 구입한 노트북
Intel Pentium Dual Core T3400 2.16GHz,  GeForce 9200M GS,  2GB RAM, Windows 7

테스트 방법
7개의 동영상 플레이어의 설정은 초기설정을 기본으로 하고, 공평함을 위해서 몇가지만 통일시켰습니다. 코덱은 내장 코덱만을 사용했고(단, 곰플레이어는 권장 코덱, KMPlayer는 권장 외부 코덱 사용), 영상 출력 방식은 EVR(Enhanced Video Render), 작업 우선권은 높음으로, 음성 노말라이저 기능은 해제하였습니다.

각각의 테스트 동영상을 재생시키고 재생타임 30초부터 1분 30초까지 1분 동안 동영상 플레이어가 차지한 CPU 점유율의 평균값(소수점 첫째자리 반올림)을 산출했습니다. 측정도구는 Windows 7의 리소스 모니터입니다.

테스트에 사용한 동영상 플레이어 (이 글을 쓰는 시점에서 최신 버전입니다.)
(1) 곰플레이어 2.1.23.5007
(2) KMPlayer 2.9.4.1436
(3) 팟플레이어 1.4.20879
(4) 톡플레이어 1.0  build 1125
(5) 알쇼 1.9.0.1
(6) 제트오디오 8.0.5.320 Basic
(7) 초코플레이어 1.0.1 build 26681

테스트한 동영상 : TP 영상 (1920 x 1080i)

   TP 영상 (1920 x 1080i)  프레임
 곰플레이어  26 %  30 프레임
 KMPlayer  19 % / 32 %  30 프레임 / 60 프레임
 팟플레이어  30 % / 27 %  30 프레임 / 60 프레임
 톡플레이어  30 %  30 프레임
 알쇼  23 %  60 프레임
 제트오디오  24 %
 30 프레임
 초코플레이어  27 %  60 프레임


TS, TP 영상 (MPEG2 영상)은 1080i의 i라는 글자가 말해주듯이 인터레이스 방식의 영상입니다. 그래서 컴퓨터로 보기위해서는 디인터레이싱 과정을 거쳐야 합니다. 어떤 디인터레이싱 방식을 쓰느냐에 따라 30 프레임 영상이 되기도 하고, 60 프레임 영상이 되기도 하는데, 60 프레임 영상으로 볼 때 움직임이 훨씬 부드럽고 체감적으로 화질이 좋게 느껴집니다.

또한 디인터레이싱을 CPU가 하느냐 그래픽카드가 하느냐에 따라 소프트웨어 디인터레이싱하드웨어 디인터레이싱으로 나뉘어집니다. 소프트웨어 디인터레이싱에는 Weave(30 프레임), Blend(30 프레임),  Bob(60 프레임) 방식이 있으며, 하드웨어 디인터레이싱(60 프레임)에는 Pixel Adaptive, Adaptive, Motion Adaptive 방식 등이 있습니다.(그래픽카드 회사와 그래픽카드 종류에 따라 지원하는 하드웨어 디인터레이싱이 다릅니다.)

그러므로 단순히 CPU 점유율이 높은가 낮은가만 확인하면 되었던 H.264/AVC 영상 테스트와 달리, TS, TP 영상 테스트 결과는 어떤 디인터레이싱 방식을 사용하였는지를 감안하면서 판단해야 합니다.


우선 곰플레이어와 KMPlayer는 사실 같은 코덱(Gabest MPEG-2 Video Decoder)입니다. 다만 곰플레이어가 권장 코덱이라며 설치해주는 코덱은 아주 오래된 코덱이고, KMPlayer그나마 신형 코덱이라는 차이가 날 뿐입니다.

팟플레이어와 톡플레이어, 그리고 제트오디오는 30 프레임 재생이 되었고, 알쇼와 초코플레이어, 그리고 하드웨어 인터레이싱을 적용시킨 팟플레이어는 60 프레임 재생이 되었습니다. 원래 동영상 플레이어가 그렇게 지원하는 건지, 제 컴퓨터에서만 발생하는 특수한 상황인 건지, 아니면 NVIDIA와 ATI의 차이인지 잘 모르겠지만, 테스트 결과가 그렇게 나와버렸습니다.

알쇼가 가장 뛰어난 성능을 보여주었으며, 초코플레이어와 팟플레이어(+ 하드웨어 디인터레이싱)가 그 뒤를 이었습니다. CPU 점유율만 보면 Gabest MPEG-2 Video Decoder라는 외부 코덱을 사용하는 KMPlayer가 가장 낮았지면, 30 프레임 재생이라 화질이 썩 좋지 못합니다. 설정에서 디인터레이싱 방식을 Bob 방식으로 바꾸면 60 프레임 재생도 가능하지만, CPU 점유율이 많이 올라가서 효율이 떨어집니다.

결국 컴퓨터의 성능이 많이 떨어져서 어쩔수 없이 30 프레임 재생을 선택해야만 하는 경우가 아니라면, 알쇼나 초코플레이어, 팟플레이어 등의 60 프레임 재생을 하는 것이 좋습니다.




이렇게 2개의 포스트를 통해 국산 동영상 플레이어들의 고화질 영상 재생 능력을 살펴 보았습니다. 하지만 지금까지 살펴본 것은 소프트웨어 가속 코덱으로서의 (한마디로 CPU 빨로 동영상을 재생하는) 내장 코덱의 재생 능력만 알아 본 것입니다. 그렇다면 뭐가 또 있을까요?

하나는 하드웨어 가속 코덱으로서의 내장 코덱의 재생 능력입니다. 상당수 동영상 플레이어들의 내장 코덱은 DXVA라는 하드웨어 가속 기능을 지원하고 있습니다. DXVA는 CPU 빨이 아니라 그래픽카드 빨로 동영상을 재생하는 기능으로 이 기능을 사용하면 CPU 점유율이 놀라울 정도로 감소합니다.

또 하나는 외부 코덱의 연결입니다. 위에서 언급한 내장 코덱을 전혀 사용하지 않고, 외부 코덱을 연결해서 동영상 플레이어를 사용하는 분들도 많습니다. 그런 분들에게는 내장 코덱의 성능은 무의미하며, 동영상 플레이어가 얼마만큼 외부 코덱을 수월하고 안정적으로 연결해주는지가 중요할 겁니다.

다음 포스트들에서는 이런 측면에서 국산 동영상 플레이어들의 고화질 영상 재생 능력을 살펴보겠습니다.
Posted by 커피.
,
국산 동영상 플레이어의 종류는 무척 많습니다. 최강 동영상 플레이어로 군림하고 있는 곰플레이어, 마니아들의 전폭적인 지지를 받았었던 KMPlayer, KMPlayer 원제작자가 제작에 참여해서 화제가 되었던 팟플레이어, 최근에 마니아들의 많은 관심을 받고 있는 톡플레이어, 무적 알툴즈 군단의 일원인 알쇼, 음악 플레이어로 유명한 제트오디오에 최근에 나온 초코플레이어까지 정말 많습니다.

어떤 동영상 플레이어를 선택할지 조금은 고민이 되시죠? 그래서 이 7개 동영상 플레이어의 내장 코덱으로 고화질 영상(H.264/AVC 영상)을 재생할 때 어느 정도의 CPU 점유율을 필요로 하는지 테스트해보았습니다. CPU 점유율이 낮을수록 우수한 능력을 가지고 있다고 생각하시면 됩니다.

테스트한 컴퓨터의 사양 : 1년여 전에 구입한 노트북
Intel Pentium Dual Core T3400 2.16GHz,  GeForce 9200M GS,  2GB RAM, Windows 7

테스트 방법
7개의 동영상 플레이어의 설정은 초기설정을 기본으로 하고, 공평함을 위해서 몇가지만 통일시켰습니다. 코덱은 내장 코덱만을 사용했고, 영상 출력 방식은 EVR(Enhanced Video Render), 작업 우선권은 높음으로, 음성 노말라이저 기능은 해제하였습니다.

각각의 테스트 동영상을 재생시키고 재생타임 30초부터 1분 30초까지 1분 동안 동영상 플레이어가 차지한 CPU 점유율의 평균값(소수점 첫째자리 반올림)을 산출했습니다. 측정도구는 Windows 7의 리소스 모니터입니다.

테스트에 사용한 동영상 플레이어 (이 글을 쓰는 시점에서 최신 버전입니다.)
(1) 곰플레이어 2.1.23.5007
(2) KMPlayer 2.9.4.1436
(3) 팟플레이어 1.4.20879
(4) 톡플레이어 1.0  build 1125
(5) 알쇼 1.9.0.1
(6) 제트오디오 8.0.5.320 Basic
(7) 초코플레이어 1.0.1 build 26681

테스트한 동영상 : 가장 흔하게 볼수 있는 3가지 유형의 H.264/AVC 고화질 영상을 테스트하였습니다.
(1) DVD Rip 영화 (800 x 336, 24fps, MKV)
(2) HD 드라마 (1280 x 720, 30fps, AVI)
(3) HD 애니 (1280 x 720, 30fps, MP4)

흔히 고화질 영상이라고 하면 대부분 이 H.264/AVC 코덱으로 인코딩된 영상을 말합니다. H.264/AVC 영상은 주로 MKVMP4의 확장자를 가지고 있으며, AVI의 확장자를 가지기도 합니다. 파일명에 264란 숫자가 보이면 H.264/AVC 영상이라고 생각하시면 됩니다.

   DVD Rip 영화
(800x336, 24fps, MKV)
 HD 드라마
(1280x720, 30fps, AVI)
 HD 애니
(1280x720, 30fps, MP4)
 곰플레이어  8 %  16 %
 20 %
 KMPlayer  9 %
 18 %
 16 %
 팟플레이어  9 %
 16 %
 21 %
 톡플레이어  9 %
 18 %
 17 %
 알쇼  8 %
 15 %
 16 %
 제트오디오  7 %
 13 %
 14 %
 초코플레이어  8 %
 14 %
 13 %

위에서 테스트한 7개의 국산 동영상 플레이어는 모두 다 내장 코덱으로 FFmpeg를 사용하고 있습니다. 똑같은 코덱을 모태로 껍데기만 다르게 씌운 것이니 일종의 배다른 형제들이라고 볼 수 있습니다. 그러니 어찌보면 동영상 플레이어들끼리 성능이나 화질을 비교하는 것은 무의미할지도 모릅니다.

하지만 결과에서 볼 수 있듯이 조금씩 차이가 납니다. 오차범위가 1% 정도 되는 것을 감안해도 다른 동영상 플레이어들에 비해 초코플레이어와 제트오디오, 알쇼의 점유율이 낮음을 알 수 있습니다.

왜 이런 차이가 날까요? 솔직히 저도 모릅니다. 다만 국산 동영상 플레이어들의 내장 코덱들이 모태로 삼고 있는 FFmpeg가 꾸준히 업데이트되고 있다는 사실을 감안해볼 때, 얼마나 최신의 FFmpeg를 썼는지 얼마나 최적화를 했는지에 따라 차이가 나는게 아닌가 추측됩니다. 실제로 FFmpeg 업데이트 동향을 가장 쉽게 파악할 수 있는 외국의 동영상 플레이어 MPC-HC의 경우에 2009년 8월에 나온 정식 버전과 2010년 4월에 나온 베타 버전의 CPU 점유율 차이가 상당히 나니까요.


그런데, 동영상 플레이어의 재생능력에서 CPU 점유율 말고도 중요한게 있습니다. 재생시 탐색(Seek), 즉 5초나 10초 이동을 했을 때, 얼마나 버벅임없이 이동이 되는가가 중요합니다. 이 부분을 통해 동영상 플레이어들의 스플리터와 탐색기능이 얼마나 최적화되었는가를 가늠할 수 있습니다.

이 부분에서 가장 높은 점수를 받은 것KMPlayer팟플레이어, 그리고 초코플레이어입니다. 이 3개의 동영상 플레이어는 MKV, AVI, MP4 모두 원활하게 이동이 되었습니다. 톡플레이어는 AVI에서 이동시 버벅임이 발생하였고, 곰플레이어는 MKV에서 버벅임이 발생하였습니다. 알쇼는 MP4와 MKV에서 약간의 딜레이가 있었고, 제트오디오는 MKV, AVI, MP4 모두 딜레이가 있어 가장 낮은 점수를 기록했습니다.(내용 추가 : 톡플레이어의 AVI  이동시 딜레이는 EVR에서만 발생합니다. EVR CP나 다른 렌더러에서는 원활히 이동됩니다.)

어떤 동영상 플레이어가 좋다 나쁘다 딱 잘라 말할 수는 없지만 조금 감은 오시죠? 그러나 아직 판단은 금물입니다.



이번에는 위에서 테스트한 영상보다 좀 더 높은 사양을 요구하는 초고화질 H.264/AVC 영상을 테스트해보겠습니다. 흔히 1080p나 60 프레임 영상이라고 일컬어지는 초고화질 영상으로 대중적인 영상은 아니지만 심심치않게 많이 돌아다닙니다. 특히 블루레이립 영화를 선호하신다던가 걸그룹을 좋아하신다면 이런 영상들을 제법 많이 접하셨을 겁니다.

테스트한 동영상
(1) BluRay Rip 영화 (1920 x 800, 24fps, MKV)
(2) HD 쇼프로 (1280 x 720, 60fps, MKV)

   BluRay Rip 영화
(1920 x 800, 24fps, MKV)
 HD 쇼프로
(1280 x 720, 60fps, MKV)
 곰플레이어  47 %  재생 불량
  KMPlayer  39 %  재생 불량
  팟플레이어  49 %  65 %
 톡플레이어  41 %  47 %
  알쇼  37 %  재생 불량
 제트오디오  36 %
 재생 불량
  초코플레이어  36 %  43 %

테스트 결과 초코플레이어톡플레이어가 뛰어난 성능을 보여주었습니다. 특히 초코플레이어는 MPC-HC의 최신 베타버전에 필적하는 성능을 보여줘서 사실 좀 놀랐습니다. 초코플레이어 1.0.0 버전까지만 해도 팟플레이어와 비슷한 수준이었는데, 1.0.1 버전에서 확 달라졌습니다.

그에 비해 곰플레이어, KMPlayer, 알쇼, 제트오디오60 프레임의 HD 쇼프로 재생시 싱크가 어긋나거나 버벅임이 크게 발생하는 등 정상적으로 재생이 되지 않았습니다. 내장 코덱의 멀티스레드 디코딩의 지원 여부가 이 결과를 불러온게 아닌가 추측이 됩니다만 정확한 것은 모르겠습니다.

예를 들어 KMPlayer의 경우 초고화질 영상 재생시 듀얼 코어 중 주로 한쪽 코어의 CPU만 사용하는데, 높은 CPU 점유율이 필요한 초고화질 영상 재생시에는 한쪽 코어에 CPU 100% 같은 폭주 현상이 나타나고, 그것이 정상적인 재생을 막는게 아닌가 싶습니다. 결국 KMPlayer의 내장 코덱이 구형인 것 같다는 이야기입니다.(다만 CPU가 아주 좋아서 한쪽 코어만으로도 높은 점유율을 커버할 수 있다면 KMPlayer로도 정상적인 재생이 되지 않을까 하는 생각도 해봅니다.)

구형 코덱의 선구자 곰플레이어는 크게 기대도 안했기 때문에 넘어가고 알쇼와 제트오디오는 조금 의외입니다. 다른 테스트 결과가 제법 좋았기 때문에 신형 코덱이 아닌가 했는데 60 프레임 영상 재생에서 문제가 발생하더군요.

팟플레이어는 재생 자체는 무리가 없었지만, CPU 점유율이 꽤 높게 나왔습니다. 추측이지만 아무래도 팟플레이어는 한동안 내장 코덱 업데이트를 안한 것 같습니다. 2009년 8월에 나온  MPC-HC의 정식버전과 CPU 점유율이 흡사하게 나왔으니까요.



결론적으로 이번 H.264/AVC 고화질 영상의 내장 코덱 성능 테스트에서는 초코플레이어가 1등, 곰플레이어가 꼴찌를 기록했습니다. 나머지 동영상 플레이어들은 일장일단이 있어서 순위를 매기기가 조금 애매하네요.

그렇다면 초코플레이어가 최고의 동영상 플레이어이고 곰플레이어가 최악의 동영상 플레이어일까요?
그건 아닙니다. 이번 테스트는 H.264/AVC 고화질 영상 재생시 동영상 플레이어의 내장 코덱의 재생 능력, 그것도 소프트웨어 가속 코덱으로서의 능력만을 체크해본 것입니다. 게다가 내장 코덱을 아예 사용하지 않고, 외부 코덱을 사용하는 유저에게는 이 테스트가 의미가 없을 겁니다.

또한 CPU 점유율 몇 프로 더 먹는다고 컴퓨터가 뻗어버리지는 않죠? 유저들 입장에서는 동영상 플레이어의 사용자 편의성과 유용한 기능 같은 것이 CPU 점유율 몇 프로보다는 더 와닿을 것입니다. 그런 걸 모두 감안해서 최고의 동영상 플레이어를 가려야겠죠.

다만 고사양 컴퓨터에서 CPU 점유율은 단순히 CPU가 일을 더하네 덜하네 정도의 의미이지만, 저사양 컴퓨터에서 CPU 점유율은 동영상의 정상적인 재생을 할 수 있느냐 없느냐의 문제가 되는 것은 사실입니다. 아무리 기능이 많고 편리하다해도 CPU 점유율이 100%에 육박해서 동영상을 정상적으로 재생할 수 없다면 말짱 꽝이니까요. 그러니 CPU 점유율도 충분히 고려해서 동영상 플레이어를 선택하시는게 좋습니다.
Posted by 커피.
,
DXVA(DirectX Video Acceleration)CPU가 전담하던 코덱의 디코딩 작업을 그래픽카드의 GPU가 분담하는 하드웨어 가속 기술을 말합니다.

DXVA가 지원되는 코덱은 H.264/AVC, MPEG2, WMV3(Windows Media Video 9), VC1 등이 있으며, DivX나 Xvid 코덱은 지원하지 않습니다.

DXVA를 쓰면 동영상 재생시 CPU 점유율이 놀라울 정도로 줄어듭니다. 또한 MPEG2 영상(TS, TP 영상) 재생시에 DXVA를 사용하면 하드웨어 디인터레이싱을 통해 부드러운 60 프레임 재생이 가능하다는 부가적인 장점도 있습니다.



동영상 플레이어에서 DXVA를 사용하려면 4가지 조건이 반드시 충족되어야 합니다. 하나라도 조건이 맞지 않으면 DXVA는 작동하지 않습니다.


1) DXVA를 지원하는 그래픽카드
그래픽카드의 DXVA 지원 여부와 지원 정도를 알려면 DXVA Checker 라는 프로그램이 필요합니다. (다운로드 사이트로 가기) 이 프로그램을 실행시키면 그래픽카드의 DXVA 지원 여부가 표시됩니다.(Windows XP의 경우에는 .NET Framework 2.0 이상의 버전이 설치되어 있어야 작동합니다.)


제 그래픽카드(Geforce 9200M GS)에서는 MPEG2, VC1, WMV9, H264 코덱에서 DXVA가 지원됨을 알 수 있습니다. 코덱명_의 다음에 오는 VLD, IDCT, MoCompDXVA의 분담 정도를 의미합니다. VLD일때 가장 많은 분담을 하고, MoComp일때 가장 적은 분담을 합니다. 즉 VLD까지 지원하는 그래픽카드는 MoComp까지 지원하는 그래픽카드에 비해 CPU 점유율의 하락폭이 크다는 의미입니다.

DXVA2는 DXVA1의 개선형인데...
DXVA1은 Windows XP/Vista/7에서 영상 출력 방식을 VMR7, VMR9, Overlay Mixer로 설정해야 사용할 수 있고, DXVA2는 Windows Vista/7에서 영상 출력 방식을 EVR로 설정해야 사용할 수 있다는 정도로만 이해하시면 됩니다.

720x480 / 1280x720 /1920x1080 등은 해당 해상도에서 그래픽카드가 DXVA를 지원한다는 뜻입니다.

DXVA Checker의 결과에서 알 수 있듯이, 코덱에 따라 DXVA의 지원 여부와 지원 정도가 다릅니다. MPEG2 영상(TS, TP 영상)은 DXVA를 지원하지만 H.264/AVC 영상은 DXVA를 지원하지 않는 그래픽카드들도 많습니다. 그러니 DXVA Checker를 이용해서, 그래픽카드가 해당 코덱의 DXVA를 지원하는지, 지원한다면 어느 정도 지원하는지 알아두세요.



2) DXVA를 지원하는 코덱 + DXVA 설정
DXVA를 지원하는 외부 코덱은 다음과 같습니다.

MPEG2
: CyberLink Video/SP Decoder, Nero Video Decoder HD, NVIDIA PureVideo Decoder(DXVA1만 지원)
H.264 / AVC1 :  CyberLink H.264/AVC Decoder
H.264 / AVC1 / VC1 : MPC Video Decoder
MPEG2 / H.264 / AVC1 : CyberLink Video Decoder, Microsoft DTV-DVD Decoder(Windows 7 전용)
MPEG2 / H.264 / AVC1 / VC1 / WMV3 : ArcSoft Video Decoder

이런 코덱들은 대부분 코덱 설정 화면에서 DXVA의 사용유무를 정해줄 수 있기 때문에 DXVA에 관련된 옵션을 설정해주셔야 합니다. 예를 들어 CyberLink 코덱의 경우 아래 그림과 같은 코덱 설정 화면을 가지고 있습니다.


Miscellaneous에서 DXVA를 체크해야 DXVA를 사용할 수 있습니다. 다른 코덱들도 이런 비슷한 설정이 있으니 잘 찾아서 체크하세요.


그런데 대부분의 DXVA 지원 코덱들은 상용 동영상 플레이어에서 자체적으로 쓰기 위해 만들어진 것입니다. 그래서 곰플레이어나 KMPlayer 등에서 외부 코덱으로 쓰려고 하면 문제가 발생할 때가 많습니다.

다행히(?) 인터넷 상에는 외부 코덱으로 쓸 수 있게 제작된 (법적인 문제가 다분히 있어 보이는) 코덱팩들이 많이 풀려있습니다. 법적인 문제가 마음에 걸리시면 팟플레이어를 추천합니다. 팟플레이어는 내장 코덱에서 DXVA를 지원하니까요. 또한 오픈 소스로 만들어진 무료 코덱인 MPC Video Decoder나 Windows 7에 내장되어 있는 Microsoft DTV-DVD Decoder를 쓰는 방법도 있습니다.

참고로 유명한 상용 H.264/AVC 코덱인 CoreAVC는 DXVA를 지원하지 않습니다. CoreAVC는 CUDA라는 다른 형태의 하드웨어 가속을 지원합니다.



3) 영상 처리 필터(내부 비디오 필터) 끄기
동영상 플레이어의 영상 처리 필터(내부 비디오 필터)가 켜져 있으면 DXVA는 작동하지 않기 때문에 반드시 영상 처리 필터를 꺼야 합니다.
(각 동영상 플레이어에서 영상 처리 필터를 끄는 방법)



4) 올바른 영상 출력 방식
영상 출력 방식에는 Overlay Mixer, VMR7, VMR9, EVR 등이 있습니다.(Windowed와 Renderless는 순수 방식과 응용 방식의 차이 정도로 이해하시면 됩니다. 아무래도 응용 방식(Renderless)이 좀 더 기능이 많은 대신 조금 무겁겠죠.)

올바른 영상 출력 방식을 설정하려면 우선 DXVA Checker에서 그래픽카드가 지원하는 DXVA의 종류를 알아야 합니다. 각 코덱별로 DXVA1을 지원하는지, DXVA2를 지원하는지 확인해보세요.

(1) Windows Vista/7 + DXVA2 지원 그래픽카드 (대부분의 Windows Vista / 7 컴퓨터)
무조건 EVR(Enhanced Video Renderer)EVR Renderless(동영상 플레이어에 따라 EVR CP, EVR (C/A) 등등 다양하게 표기)를 선택해야 합니다. EVR Renderless는 기능이 많은 대신 좀 불안정하므로 EVR(Enhanced Video Renderer)이 무난합니다. 그 밖의 다른 영상 출력 방식으로는 DXVA 하드웨어 가속이 되지 않습니다.

(2) Windows Vista/7 + DXVA1 지원 그래픽카드
VMR9 Renderless, VMR9 Windowed, Overlay Mixer가 비교적 무난합니다. 혹시 문제가 있으면 VMR7 계열도 테스트 해보세요. Overlay Mixer를 사용하면 에어로 기능이 꺼져버리니 참고하세요.

(3) Windows XP
VMR9 Renderless, VMR9 Windowed, Overlay Mixer가 비교적 무난합니다. 혹시 문제가 있으면 VMR7 계열도 테스트 해보세요.

PS. 1 : VMR9 Renderless을 사용하는 경우 TS, TP 영상을 60프레임으로 재생(하드웨어 디인터레이싱)하려면 VMR Mixer Mode(VMR9 혼합 모드)에 체크가 되어야 있어야 합니다.(이 옵션은 영상 아래부분에 생기는 줄 문제를 해결해주기도 합니다.) 하지만 VMR Mixer Mode는 영상의 버벅임을 유발할수도 있기 때문에 체크 여부에 신중해야 합니다.
PS. 2 : 곰플레이어는 EVR, VMR9 Windowed, VMR7 Windowed에서 자막 출력이 되지 않습니다.(다른 동영상 플레이어에서는 자막 출력이 됩니다.)



이렇게 4가지 조건이 모두 충족되면 DXVA로 재생이 됩니다. 재생 정보에서 출력 형식(Output)DXVANV12로 표기되면 보통은 DXVA가 성공적으로 사용된 것을 의미합니다. 하지만 간혹 이 표기가 틀리기 때문에 맹신할 수는 없습니다.

가장 확실한 방법은 CPU 점유율을 확인하는 겁니다. DXVA를 사용하지 않았을 때보다 CPU 점유율이 눈에 띄게 줄어들면 성공적으로 DXVA가 사용되고 있는 것입니다.



그런데 DXVA에는 이런 까다로운 조건들 말고도 단점들이 있습니다.

우선 DXVA 하드웨어 가속은 일반적인 소프트웨어 가속에 비해 호환성과 안정성이 약간 떨어집니다. 동영상을 제공하는 사람이 동영상을 어떤 옵션으로 어떻게 인코딩했느냐에 따라 DXVA가 아예 안 되는 영상도 있고 DXVA가 되더라도 간간히 화면의 깨짐이 발생하는 영상도 있습니다.(그래서 위에서 말한 4가지 조건을 맞추며 DXVA 테스트를 할 때는 여러 개의 동영상으로 해보시기를 권합니다. 원래부터 DXVA가 안되는 동영상을 가지고 씨름해봤자 DXVA가 될 리가 없으니까요.)

또, 영상 출력 방식과 영상 처리 필터에 제약을 받기 때문에, 자막의 표시나 자막의 품질, 화면 캡처 등에서 문제가 발생할 수도 있습니다. 특히 곰플레이어처럼 DXVA를 어설프게 지원하는 동영상 플레이어에서는 더욱 그렇습니다.

그렇지만 팟플레이어나 톡플레이어가 DXVA를 비교적 잘 지원하는데다, 최근에 쏟아져 나오는 동영상들(외국에서 흘러들어오는 일부 영화 제외)은 거의 다 DXVA가 잘되기 때문에 설정만 제대로 되었다면 DXVA로 동영상을 감상하는데 별 무리가 없을 겁니다.

그러니 조건들이 까다로워도 CPU 점유율의 대폭 하락과 하드웨어 디인터레이싱이라는 풍부한 매력을 지닌 DXVA의 세계에 한번 빠져 보시기를 권해드립니다.
Posted by 커피.
,
각각의 동영상 플레이어에서 고화질 동영상(H.264/AVC, TP, TS 등등) 재생시 영상 처리 필터가 사용되지 않게 하는 방법입니다.

(1) KMPlayer


환경 설정... (F2)로 들어가서...
영상 처리 - 영상 처리 필터 탭에서 아래의 조건이라면 사용하지 않음을 선택하고 FOURCC 에 체크를 하시면 됩니다.




(2) 팟플레이어


환경 설정... (F5)로 들어가서...
재생 탭의 코덱/필터 관리 버튼을 클릭합니다.



코덱/필터 설정 화면에서 기본 설정 탭으로 들어가면, 내장 영상 처리 필터 설정이 있습니다. 위 그림처럼 체크를 해주시면 됩니다.




(3) 곰플레이어



환경 설정 (F5)로 들어가서...
필터 - 필터 차단 탭 - 빠른 재생 모드에 서 빠른 재생 모드 활성화 (내부 비디오 필터 사용 안함)에 체크를 해주시면 내부 비디오 필터(Gretech Video Filter)가 작동하지 않습니다.

곰플레이어의 경우 다른 동영상 플레이어들과 달리 내부 비디오 필터를 꺼버리면 내부 코덱의 기능까지 작동하지 않으니 주의해야 합니다. 따라서 내부 코덱를 사용하여 DivX, Xvid, H.264/AVC 등의 영상을 재생하려 한다면 해당 영상을 재생할 때는 이 체크를 해제해야 합니다.

결국 외부 코덱으로 고화질 동영상을 재생할 때는 체크하고, 내부 코덱으로 동영상을 재생할 때는 체크를 해제해야 하는데, 꽤나 번거롭습니다.



그런데, 위의 번거로운 방법을 대신할 수 있는 또 다른 방법이 있습니다. 일종의 편법이라 사용에 주의하셔야 합니다. (아래는 외부코덱으로 CoreAVC를 쓰는 경우의 예입니다.)

우선 윈도우즈 탐색기에서 C:\Program Files\GRETECH\GomPlayer 폴더GVF.ax를 찾아 파일명을 GVF_.ax로 변경합니다. (파일명 변경은 개인의 취향에 따라 바꾸셔도 됩니다.)

곰플레이어를 실행시키고, 환경 설정 (F5)로 들어갑니다.


필터 - 고급 설정 탭에서 필터 추가를 클릭합니다.



파일에서 찾기를 클릭합니다.




C:\Program Files\GRETECH\GomPlayer 폴더의 GVF_.ax 를 선택하고 열기를 클릭합니다.




추가된 Gretech Video Filter을 선택하고 우선순위 사용 숫자를 00200001 이상으로 변경합니다.(Windows 7의 경우에는 00800001 이상로 변경해야만 시스템 코덱보다 Gretech Video Filter가 우선적으로 사용됩니다.)

이렇게 설정해 놓으면 H.264/AVC 영상 재생시에는 내부 비디오 필터가 꺼지고, DivX나 Xvid 영상 재생시에는 곰플레이어 내장 코덱에 의해 동영상이 재생됩니다.

그런데,  이 방법을 사용하면, H.264/AVC 영상 재생시는 물론 DivX나 Xvid 영상 재생시에도 영상 처리 기능(명도/채도/색상/대비 변경이나 화면 캡처 등등)을 사용할 수 없습니다. 또 DivX나 Xvid 재생시에 재생 정보(Ctrl + F1)의 비디오 정보가 정상적으로 표시되지 않습니다. 외부 코덱 형식으로 추가된 Gretech Video Filter는 영상 처리 필터의 기능 중 내장 코덱의 기능만 할 수 있기 때문입니다.

그러므로, H.264/AVC 영상 재생시에는 영상 처리 필터를 끄고, DivX나 Xvid 영상 재생시에는 영상 처리 필터의 기능(명도/채도/색상/대비 변경, 화면 캡처 등등)을 사용하려는 유저분들은 이 편법을 쓰지마세요. 그런 분들은 번거로워도 첫번째 방법을 사용해서 그때그때마다 체크를 하거나 해제하는 수밖에 없습니다.

혹시 이 편법을 사용하다 문제가 발생하는 경우에는 GVF_.ax 파일명을 다시 GVF.ax로 바꾸시면 원래대로 돌아갑니다. (그래도 원래대로 안 돌아간다면 regsvr32 "C:\Program Files\GRETECH\GomPlayer\GVF.ax" 을 실행시키면 해결될겁니다.)
Posted by 커피.
,
H.264/AVC 영상 재생시 영상 처리 필터가 어느정도의 CPU 부담을 주는지 알기 위해 간단한 테스트를 해보았습니다.

테스트한 컴퓨터의 사양 : 1년여 전에 구입한 노트북
Intel Pentium Dual Core T3400 2.16GHz,  GeForce 9200M GS,  2GB RAM, Windows 7

테스트 방법
곰플레이어로 테스트를 하였습니다.(곰플레이어에서는 영상 처리 필터를 내부 비디오 필터라고 부릅니다.) CoreAVC, CoreAVC(+내부 비디오 필터), CoreAVC+CUDA, CoreAVC+CUDA(+내부 비디오 필터), 이렇게 4개로 나누어 테스트를 해보았습니다.

각각의 테스트 동영상에서 특정한 구간(1분)을 정하고, 그 1분동안 곰플레이어가 차지한 CPU 점유율의 평균값을 산출했습니다. Windows 7의 리소스 모니터를 사용하면 간단하게 곰플레이어만의 평균 CPU 점유율을 알 수 있습니다.

테스트한 동영상 : 인터넷에 돌아다니는 H.264/AVC 영상들 중 고화질에 해당하는 영상들입니다.
(1) HD 드라마 (1280 x 720, 30fps)
(2) BluRay Rip 영화 (1920 x 800, 24fps)
(3) HD 쇼프로 (1280 x 720, 60fps)

   CoreAVC
CoreAVC
+내부 비디오 필터
CoreAVC+CUDA
CoreAVC+CUDA
+내부 비디오 필터
HD 드라마
1280x720, 30fps
12 % 17 % 3 % 6 %
BluRay Rip영화
1920x800, 24fps
33 % 37 % 6 % 9 %
HD 쇼프로
1280x720, 60fps
38 % 46 % 7 % 13 %

내부 비디오 필터(영상 처리 필터)로 인하여 CoreAVC는 4~8%, CoreAVC + CUDA 가속은 3~6% 정도 CPU 점유율이 상승하였음을 알 수 있습니다. 무시하려면 무시할 만한 작은 CPU 점유율의 상승이지만 개인적으로는 그만큼도 아깝더군요.



그런데, 저사양 컴퓨터에서는 고사양 컴퓨터와 사정이 다릅니다.

테스트한 컴퓨터의 사양 : 5년 전에 구입한 보급형 컴퓨터, 곰플레이어
AMD Sempron 2500+ 1.76G Hz, ATI Radeon 9550, 512MB RAM, Windows XP

테스트한 동영상 :  HD 드라마 (1280 x 720, 30fps, H.264/AVC)

  CoreAVC   CoreAVC
+내부 비디오 필터
 HD 드라마
1280 x 720, 30fps
 62% 82%

저사양 컴퓨터에서는 내부 비디오 필터(영상 처리 필터)로 인하여 H.264/AVC 영상의 정상적인 재생을 위협할 만큼 CPU 점유율이 상승했음을 알 수 있습니다.



결론적으로 H.264/AVC 같은 고화질 영상 재생시 저사양 컴퓨터에서는 영상 처리 필터를 끄는게 좋고, 고사양 컴퓨터에서는 개인의 취향에 따라 선택하시면 된다는 이야기입니다. 다만 고사양 컴퓨터라 해도 가끔은 영상 처리 필터 때문에 동영상의 끊김이 발생할 수도 있다는 것을 염두해 두세요. 또한 DXVA 하드웨어 가속을 사용하려면 선택의 여지 없이 영상 처리 필터를 꺼야 한다는 것도 기억해두셔야겠죠.

다음 포스트에서는 각각의 동영상 플레이어들에서 영상 처리 필터를 끄는 방법을 설명하겠습니다.
동영상 플레이어 - 영상 처리 필터 (3)
Posted by 커피.
,
일반적으로 사용하는 동영상 플레이어들의 설정에 보면 영상 처리 필터라는 것이 있습니다. 동영상 플레이어마다 명칭이 조금씩 다르고 기능도 조금씩 다르지만요.

곰플레이어 : 내부 비디오 필터 (Gretech Video)
KMPlayer : 영상 처리 필터 (KMP Video Transform)
팟플레이어 : 내장 영상 처리 필터 (Video Codec/Transform)
톡플레이어 : 내장 영상처리 필터 (EZHLD Video/Transform)

영상 처리 필터의 일반적인 기능은 다음과 같습니다.
(1) 다양한 영상 처리 (명도/채도/색상/대비, 부드럽게/선명하게/노이즈 제거 등등)
(2) 이미지 자막 출력 (TV출력)
(3) 화면 캡처
(4) Divx, Xvid 등의 내장 비디오 코덱 포함 (KMPlayer 제외)

저화질의 동영상들이 많았던 예전에는 영상 처리 필터가 쓸모가 많았습니다. 영상 처리 필터의 설정을 이리저리 변경해가며 조금이라도 좋은 화질을 보기 위해 노력했었습니다.

하지만 H.264/AVC과 같은 고화질 영상에서는 영상 처리 필터가 그리 큰 도움이 되지 않습니다.
고화질 소스에서 뽑아내 높은 압축률로 인코딩한 고화질 영상들은 영상 처리를 따로 하지 않아도 충분히 좋은 화질을 보여주기 때문입니다. 또한 명도/채도/색상/대비의 경우에는 코덱의 설정에서도 변경이 가능하기 때문에 꼭 영상 처리 필터가 필요하지는 않습니다.

이미지 자막 출력은 TV 출력을 하지 않는 유저들에게는 별 의미가 없고, 화면 캡처는 영상 출력 장치를 렌더리스 모드로 하면 영상 처리 필터 없이도 가능합니다.(단, 곰플레이어는 영상 처리 필터가 있어야만 화면 캡처가 가능합니다.)

내장 비디오 코덱 문제는 H.264/AVC과 같은 고화질 영상에서만 영상 처리 필터가 꺼지게 설정할 수 있기 때문에 Divx나 Xvid 영상 재생에는 문제가 없습니다.(단, 곰플레이어는 고화질 영상에서만 영상 처리 필터가 꺼지게 설정할 수 없기 때문에 영상 처리 필터를 끄면 Divx나 Xvid 등의 영상 재생이 되지 않습니다.)



그렇다면, 영상 처리 필터를 사용하지 않음으로써 얻을 수 있는 이득은 뭘까요?
H.264/AVC과 같은 고화질 영상 재생시 CPU 점유율을 조금 낮출 수 있습니다. 물론 고사양 컴퓨터에서 영상 처리 필터가 차지하는 CPU 점유율은 미미해서 별 의미가 없습니다. 그냥 기분상 CPU 점유율이 낮아지니 좋은거죠.

하지만, 저사양 컴퓨터에서는 큰 의미를 가지고 있습니다. 조금이라도 CPU 점유율을 낮춰야 원활하게 고화질 영상을 재생할 수 있기 때문에 영상 처리 필터가 차지하는 CPU 점유율이 꽤나 부담스럽습니다.

또 하나 중요한 이유는 DXVA 하드웨어 가속 때문입니다. DXVA 하드웨어 가속을 사용하면 H.264/AVC과 같은 고화질 영상 재생시 CPU 점유율을 현저하게 낮출 수 있습니다. 그런데 영상 처리 필터가 켜져 있으면 DXVA 하드웨어 가속이 되지 않습니다. 다시 말해 DXVA 하드웨어 가속을 사용하기 원한다면 영상 처리 필터를 무조건 꺼야 합니다.


결론적으로 DXVA 하드웨어 가속을 사용하지 않고, 저사양 컴퓨터도 아니고, CPU 점유율에 별 신경 안 쓴다면 영상 처리 필터에 관심을 안 가지셔도 됩니다. 하지만 세가지 중 한가지라도 해당이 된다면 다음 포스트를 읽어주시길 바랍니다.
동영상 플레이어의 영상 처리 필터 (2)
Posted by 커피.
,
CoreAVC는 H.264/AVC 소프트웨어 코덱으로 12.95 달러의 유료임에도 불구하고 가장 널리 쓰이고 있는 코덱입니다. 소프트웨어 코덱답게 호환성이 좋고 안정적인 재생 능력을 가지고 있으며, NVIDIA의 CUDA를 통한 하드웨어 가속도 지원합니다.

설치는 순서대로 하시면 됩니다. (혹시 설치가 안되는 버그가 있으면 이 포스트를 참고하세요.)


I Agree를 클릭합니다.



선택화면은 아니고 NVIDIA의 CUDA 지원에 대한 간략한 설명 화면입니다. CUDA를 지원하는 NVDIA 그래픽 카드와 191.07 버전 이상의 NVIDIA 그래픽 카드 드라이버를 설치했다면, CoreAVC에서 CUDA를 통한 하드웨어 가속이 가능합니다.



Serial를 넣는 화면입니다. 위에서 언급했지만  CoreAVC는 유료 코덱입니다. CoreAVC 홈페이지에서 구입하거나 어둠의 루트를....



CoreAVC 설치 파일에는 Haali Media Splitter가 포함되어 있습니다. CoreAVC와 궁합이 잘 맞는 Splitter이니 기본설정대로 그냥 설치를 하는 것이 좋습니다.



전체 사용자용으로 설치할 것이냐 개인 사용자용으로 설치할 것이냐를 묻는 화면입니다. 그냥 전체 사용자용으로 두겠습니다.



이로써 설치가 마무리 됩니다.


프로그램 - CoreCodec - CoreAVC Professional Edition - Configure CoreAVC를 실행하면 CoreAVC 설정을 할 수 있습니다.


일단은 처음 설정 그대로 두는 것이 무난합니다. 나중에 각 옵션이 주는 의미를 파악하고 나서 개개인의 취향과 컴퓨터 상황에 따라 설정을 변경하시면 됩니다..

그래도 한 두가지만 짚어보면...
Use Tray Icon에 체크를 하면 H.264/AVC 영상 재생시 CoreAVC 코덱의 사용여부와 CUDA 가속여부를 쉽게 판별할 수 있습니다. 트레이 아이콘에 파란색 아이콘이 뜨면 CoreAVC 코덱이 사용 된다는 뜻이며, 녹색 아이콘이 뜨면 CUDA 하드웨어 가속이 이루어지고 있다는 뜻입니다.

Prefer CUDA acceleration에 체크하면 CUDA 하드웨어 가속을 사용할 수 있습니다. (물론 CUDA를 지원하는 NVIDIA 그래픽카드와 그래픽카드 드라이버가 필요합니다.)


CoreAVC를 설치했다고 해서 동영상 플레이어에서 CoreAVC를 사용할 수 있는 것이 아닙니다. 각 동영상 플레이어마다 설정을 따로 해주어야 합니다. 다음 포스트에서 각각의 설정에 대해 알아보겠습니다.
Posted by 커피.
,
CoreAVC는 H.264/AVC 동영상을 재생해주는 소프트웨어 코덱입니다. 설치는 단순합니다만 일부 컴퓨터에서 설치가 안되는 오류가 발생합니다. (아마 1.95 버전부터 생긴 오류일겁니다.)

이것은 Microsoft Office IME 2007과의 충돌때문인데, 혹시 설치가 안된다면 제어판에서 Microsoft Office IME 2007을 잠시 다른 것으로 바꾸고 설치하시면 됩니다. 설치할 때만 발생하는 오류이니 설치 후에 원래대로 복구하셔도 됩니다.

Microsoft Office IME 2007이 설치된 컴퓨터의 바탕화면에는 (지구 A 漢 ?) 모양의 입력 도구 모음이 있습니다. 여기를 마우스 우클릭하면 메뉴가 뜨는데, 설정을 클릭합니다. (물론 제어판에서 찾아 들어가셔도 됩니다.)


한국어(대한민국)-Microsoft Office IME 2007한국어(대한민국)-Microsoft 입력기로 바꿔주시고 확인을 클릭하면 됩니다.



만약 Microsoft 입력기가 없다면, 추가 버튼을 클릭하세요.


입력 언어 추가에서 한국어를 체크하시고 확인을 클릭하세요.



그리고 한국어(대한민국)-Microsoft Office IME 2007한국어(대한민국)-한국어로 바꾸어 주시고 확인 버튼을 클릭하면 됩니다.
Posted by 커피.
,