DXVA 하드웨어 가속를 사용하여 H.264/AVC 영상을 재생하면 CPU 점유율을 크게 낮출 수 있습니다.

톡플레이어는 곰플레이어나 KMPlayer와 달리 내장 코덱이 DXVA를 지원합니다. 덕분에 간단한 설정만으로도 어렵지않게 DXVA를 사용할 수 있습니다. DXVA가 너무 어렵다고 생각하신다면 이 포스트를 참고하세요.

톡플레이어의 내장 코덱으로 고화질 영상 재생하기 (DXVA 사용)

내장 코덱의 DXVA도 성능이 꽤 좋기 때문에 내장 코덱의 DXVA만으로 충분하시면 아래의 글은 읽지 않으셔도 됩니다.
외부 코덱이
뭔가 있어 보이기는 하지만, 외부 코덱은 원래 자체 동영상 플레이어에서 사용하기 위해 만들어진 것이라 톡플레이어와 궁합이 맞을거라는 보장은 없으니까요.

그래도 색감이나 화질, 개인의 취향 등등의 이유로 외부 코덱의 DXVA가 낫다고 판단되시면 아래의 글을 읽어주세요.
미리 경고를 드리지만 상당히 복잡합니다.^^



그럼 톡플레이어로 외부 코덱의 DXVA를 사용하여 H.264/AVC 영상을 재생하는 방법을 설명하겠습니다.

DXVA를 사용하려면 4가지 조건이 충족되야 합니다. (DXVA의 4가지 조건에 관한 포스트)

우선 DXVA Checker를 통해 그래픽카드가 H.264/AVC 코덱의 DXVA를 지원하는지 확인하세요.(조건1 충족)
그 다음에는 H.264/AVC 영상의 DXVA를 지원하는 외부코덱을 설치해야 합니다.

H.264/AVC 영상의 DXVA를 지원하는 코덱은 Microsoft DTV-DVD Decoder(Windows 7 전용), CyberLink Video Decoder, ArcSoft Video Decoder, MPC Video Decoder 등이 있습니다.

여기서는 CyberLink Video Decoder를 예로 들어 설명을 해보겠습니다. CyberLink Video Decoder는 PowerDVD의 최신 버전에 포함되어 있는 코덱으로 MPEG2와 H.264/AVC의 DXVA를 지원합니다.



톡플레이어의 환경설정(F5)로 들어가서...


재생 탭의 코덱/필터 관리 버튼을 클릭합니다.



비디오 탭필터 목록/관리 버튼을 클릭합니다.



코덱검색 버튼을 클릭합니다.



쭉 외부 코덱들이 나오는데, 그 중 사용하려는 외부 코덱이 있다면 닫기 버튼을 클릭합니다.
하지만 없다면 시스템필터 추가 버튼을 클릭합니다.



사용하려는 외부 코덱(CyberLink Video Decoder)선택하고 확인 버튼을 클릭합니다.
만약 여기에서마저 없다면 확인 버튼을 클릭하여 일단 나옵니다.



외부필터 추가 버튼을 클릭합니다.



사용하고자 하는 외부 코덱의 ax 파일을 직접 찾아 선택한 후 열기 버튼을 클릭합니다. 참고로 CyberLink Video Decoder의 ax 파일CLCvd.ax입니다.



어떤 방법을 쓰든 필터 목록/관리 화면사용하려는 외부코덱이 표시되면 성공입니다. 닫기 버튼을 클릭합니다.



위의 그림처럼 내장 영상처리 필터를 사용합니다.체크를 해제해서 고화질 영상 재생시 내장 영상 처리 필터가 작동하지 않도록 해야 합니다. (조건3 충족)

H264 AVC1사용하려는 외부 코덱(CyberLink Video Decoder)으로 바꾸어 준 다음,
옆에 있는 ? 버튼을 클릭하면 CyberLink Video Decoder의 설정창이 뜹니다.



MiscellaneousDXVA를 체크하고 확인 버튼을 클릭합니다.(조건2 충족)
코덱마다 DXVA 설정 부분이 조금씩 다르며, Microsoft DTV-DVD Decoder처럼 설정이 아예 없는 코덱도 있습니다.




마지막으로 영상 탭영상출력을 설정해야 합니다.(조건4 충족)

우선 DXVA Checker를 통해 그래픽카드가 MPEG2 코덱의 DXVA1을 지원하는지, DXVA2를 지원하는지 확인해보세요.

(1) Windows Vista/7 + DXVA2 지원 그래픽카드 (대부분의 Windows Vista/7 컴퓨터)
무조건 EVR이나 EVR CP를 선택해야 합니다. EVR CP는 기능이 많은 대신 살짝 불안합니다. 그래도 KMPlayer나 팟플레이어에 비해서는 안정적이기 때문에 비교적 무난하게 사용할 수 있습니다. 안정성만 생각한다면 EVR이 좋은 선택입니다.
(내용 추가 : H.264/AVC 영상 재생시 EVR CP가 EVR보다 나은 재생을 보일 때도 많더군요. EVR CP가 더 적당한 선택일지도 모르겠습니다.)

(2) Windows Vista/7 + DXVA1 지원 그래픽카드
VMR9 Renderless가 비교적 무난합니다. 다른 영상 출력 방식들도 테스트해보세요. Overlay Mixer는 재생만 보면 부드럽지만 톡플레이어에서는 자막을 지원하지 않는데다 에어로 기능이 꺼져버렵니다.

(3) Windows XP
VMR9 Renderless가 비교적 무난합니다. 다른 영상 출력 방식들도 테스트해보세요. Overlay Mixer는 재생만 보면 부드럽지만 톡플레이어에서는 자막을 지원하지 않습니다.





이렇게 4가지 조건에 맞추어 모든 설정을 끝냈다면 TS 영상이나 TP 영상을 재생시켜 보세요.
DXVA가 제대로 적용되었는지 확인해 보시려면 Tab 키를 누르시면 됩니다.


필터이름우리가 설정한 외부 코덱(Cyberlink Video Decoder)이 표시되고, 출력타입DXVANV12라고 표기되었다면 DXVA가 적용된 것입니다. CPU 점유율(CPU Usage)이 이전보다 크게 줄어든 것을 확인하는 것이 가장 확실한 방법이기는 하지만요.

이렇게 DXVA가 제대로 적용되었다면 DXVA 적용 전에 비해 CPU 점유율이 뚝 떨어지는 것을 확인할 수 있을 겁니다. 만약 CPU 점유율이 별 차이가 없다면 DXVA가 적용되지 않은 겁니다. 다시 한번 찬찬히 DXVA의 4가지 조건을 체크해보세요.




아래는 톡플레이어의 내장 코덱CyberLink Video DecoderCPU 점유율 비교 결과 입니다.

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

테스트 방법 : 테스트 동영상에서 특정한 구간(1분)을 정하고, 그 1분동안 톡플레이어가 차지한 CPU 점유율의 평균값을 산출했습니다.

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

   톡플레이어의
내장 코덱
(SW 가속)
 톡플레이어의
내장 코덱
(DXVA)
 CyberLink
Video Decoder
(SW 가속)
 CyberLink
Video Decoder
(DXVA)
BluRay Rip 영화
(1920 x 800, 24fps)
41 % 5 % 45 %
4 %
 HD 쇼프로
(1280 x 720, 60fps)
47 % 4 % 58 %
5 %

톡플레이어의 내장 코덱은 60 프레임 H.264/AVC 영상을 정상적으로 재생하였을 뿐만 아니라 소프트웨어 가속시 다른 동영상 플레이어들의 내장 코덱보다 낮은 CPU 점유율을 보여주었습니다. 모든 동영상 플레이어들이 똑같이 FFMPEG를 내장 코덱으로 사용한다 할지라도 꾸준히 업데이트되고 있는 동영상 플레이어와 그렇지 못한 동영상 플레이어는 차이가 난다는게 뜻이겠죠.

그래도 소프트웨어 가속의 최강자인 CoreAVC에는 아직 못 미치기 때문에 소프트웨어 가속으로 재생하는 경우에는 CPU 부담이 좀더 적은 CoreAVC 코덱이 나은 선택이 될 겁니다.

내장 코덱과 외부 코덱 모두 DXVA 하드웨어 가속를 사용하면 어마어마하게 CPU 점유율이 낮아짐을 알 수 있습니다. 50% 정도의 CPU 점유율이 5% 정도로 떨어지니 이 맛에 DXVA를 사용하는거겠죠.

하지만 신형 NVIDIA 그래픽 카드를 가지고 있다면 DXVA 말고도 다른 방법도 있습니다. CoreAVC 코덱의 CUDA 가속이 그 주인공이죠(관련 포스트). CUDA 가속은 CPU 점유율 감소면에서 DXVA에 조금 못미치지만 안정성 측면에서 DXVA보다 조금 낫습니다. 무엇보다 DXVA처럼 설정이 복잡하지 않다는게 강점입니다.

이렇게 톡플레이어로 H.264/AVC 영상을 재생하는 방법은 무척 다양합니다. 선택은 유저의 몫이지만요.
CPU 점유율만 따진다면 대략 이런 순서입니다.

내장 코덱 or 외부 코덱 > CoreAVC >>>>> CoreAVC+CUDA > 내장 코덱+DXVA or 외부 코덱+DXVA

Posted by 커피.
,
DXVA 하드웨어 가속을 사용하여 TS, TP 영상 (MPEG2 영상)을 재생하면 낮은 CPU 점유율로도 부드러운 60프레임 재생을 할 수 있습니다.

톡플레이어는 곰플레이어나 KMPlayer와 달리 내장 코덱이 DXVA를 지원합니다. 덕분에 간단한 설정만으로도 어렵지않게 DXVA를 사용할 수 있습니다. DXVA가 너무 어렵다고 생각하신다면 이 포스트를 참고하세요.

톡플레이어의 내장 코덱으로 고화질 영상 재생하기 (DXVA 사용)

내장 코덱의 DXVA도 성능이 꽤 좋기 때문에 내장 코덱의 DXVA만으로 충분하시면 아래의 글은 읽지 않으셔도 됩니다.
외부 코덱이
뭔가 있어 보이기는 하지만, 외부 코덱은 원래 자체 동영상 플레이어에서 사용하기 위해 만들어진 것이라 톡플레이어와 궁합이 맞을거라는 보장은 없으니까요.

그래도 색감이나 화질, 개인의 취향 등등의 이유로 외부 코덱의 DXVA가 낫다고 판단되시면 아래의 글을 읽어주세요.
미리 경고를 드리지만 상당히 복잡합니다.^^



그럼 톡플레이어로 외부 코덱의 DXVA를 사용하여 TS, TP 영상을 재생하는 방법을 설명하겠습니다.

DXVA를 사용하려면 4가지 조건이 충족되야 합니다. (DXVA의 4가지 조건에 관한 포스트)

우선 DXVA Checker를 통해 그래픽카드가 MPEG2 코덱의 DXVA를 지원하는지 확인하세요.(조건1 충족)
그 다음에는 MPEG2 영상의 DXVA를 지원하는 외부 코덱을 설치해야 합니다.

TS, TP 영상 (MPEG2 영상)의 DXVA를 지원하는 외부 코덱은 NVIDIA PureVideo Decoder(DXVA1만 지원), Microsoft DTV-DVD Decoder(Windows 7 전용), CyberLink Video/SP Decoder, CyberLink Video Decoder, ArcSoft Video Decoder, Nero Video Decoder HD 등이 있습니다.

여기서는 CyberLink Video Decoder를 예로 들어 설명을 해보겠습니다. CyberLink Video Decoder는 PowerDVD의 최신 버전에 포함되어 있는 코덱으로 MPEG2와 H.264/AVC의 DXVA를 지원합니다.




톡플레이어의 환경설정(F5)로 들어가서...


재생 탭의 코덱/필터 관리 버튼을 클릭합니다.



비디오 탭필터 목록/관리 버튼을 클릭합니다.



코덱검색 버튼을 클릭합니다.



쭉 외부 코덱들이 나오는데, 그 중 사용하려는 외부 코덱이 있다면 닫기 버튼을 클릭합니다.
하지만 없다면 시스템필터 추가 버튼을 클릭합니다.



사용하려는 외부 코덱(CyberLink Video Decoder)선택하고 확인 버튼을 클릭합니다.
만약 여기에서마저 없다면 확인 버튼을 클릭하여 일단 나옵니다.



외부필터 추가 버튼을 클릭합니다.



사용하고자 하는 외부 코덱의 ax 파일을 직접 찾아 선택한 후 열기 버튼을 클릭합니다. 참고로 CyberLink Video Decoder의 ax 파일CLCvd.ax입니다.



어떤 방법을 쓰든 필터 목록/관리 화면사용하려는 외부코덱이 표시되면 성공입니다. 닫기 버튼을 클릭합니다.



위의 그림처럼 내장 영상처리 필터를 사용합니다.체크를 해제해서 고화질 영상 재생시 내장 영상 처리 필터가 작동하지 않도록 해야 합니다. (조건3 충족)

MPEG2사용하려는 외부 코덱(CyberLink Video Decoder)으로 바꾸어 준 다음,
옆에 있는 ? 버튼을 클릭하면 CyberLink Video Decoder의 설정창이 뜹니다.



MiscellaneousDXVA를 체크하고 확인 버튼을 클릭합니다.(조건2 충족)
코덱마다 DXVA 설정 부분이 조금씩 다르며, Microsoft DTV-DVD Decoder처럼 설정이 아예 없는 코덱도 있습니다.




마지막으로 영상 탭영상출력을 설정해야 합니다.(조건4 충족)

우선 DXVA Checker를 통해 그래픽카드가 MPEG2 코덱의 DXVA1을 지원하는지, DXVA2를 지원하는지 확인해보세요.

(1) Windows Vista/7 + DXVA2 지원 그래픽카드 (대부분의 Windows Vista/7 컴퓨터)
무조건 EVR이나 EVR CP를 선택해야 합니다. EVR CP는 기능이 많은 대신 살짝 불안합니다. 그래도 KMPlayer나 팟플레이어에 비해서는 안정적이기 때문에 비교적 무난하게 사용할 수 있습니다. 안정성만 생각한다면 EVR이 좋은 선택입니다.

(2) Windows Vista/7 + DXVA1 지원 그래픽카드
VMR9 WindowedVMR7 Windowed가 비교적 무난합니다. Overlay Mixer는 재생만 보면 부드럽지만 톡플레이어에서는 자막을 지원하지 않는데다 에어로 기능이 꺼져버렵니다.

(3) Windows XP
VMR9 WindowedVMR7 Windowed가 비교적 무난합니다. Overlay Mixer는 재생만 보면 부드럽지만 톡플레이어에서는 자막을 지원하지 않습니다.

PS. VMR9 Renderless는 하드웨어 디인터레이싱이 되지 않기 때문에 60 프레임 재생이 되지 않으며, 계단현상이 나타납니다.




이렇게 4가지 조건에 맞추어 모든 설정을 끝냈다면 TS 영상이나 TP 영상을 재생시켜 보세요.
DXVA가 제대로 적용되었는지 확인해 보시려면 Tab 키를 누르시면 됩니다.


필터이름우리가 설정한 외부 코덱(Cyberlink Video Decoder)이 표시되고, 출력타입DXVANV12라고 표기되었다면 DXVA가 적용된 것입니다. CPU 점유율(CPU Usage)이 이전보다 크게 줄어든 것을 확인하는 것이 가장 확실한 방법이기는 하지만요.

또한 하드웨어 디인터레이싱이 제대로 적용되었다면 현재 FPS60 프레임에 근접되어 있어야 합니다. 만약 30 프레임 정도로 표기되면 하드웨어 디인터레이싱이 적용이 안된 것입니다.

이렇게 DXVA가 제대로 적용되었다면 DXVA 적용 전에 비해 CPU 점유율이 뚝 떨어지는 것은 물론 하드웨어 디인터레이싱에 의해 60프레임으로 부드럽게 재생되는 것을 확인할 수 있을 겁니다. 만약 CPU 점유율이 별 차이가 없다면 DXVA가 적용되지 않은 겁니다. 다시 한번 찬찬히 DXVA의 4가지 조건을 체크해보세요.



다음은 필수 과정은 아니고 선택 과정입니다.
외부 코덱을 사용한다면 톡플레이어의 내장 Splitter 보다는 외부 코덱 전용 Splitter가 궁합이 아무래도 잘 맞겠죠? CyberLink Video Decoder의 경우에도 Cyberlink Demuxer 2.0을 Splitter로 쓰는 편이 여러모로 낫습니다. 특히 Seek(5초 뒤로 , 30초 앞으로 등등)를 할 때 차이가 드러나죠.

그럼 외부 코덱 전용 Splitter를 설정하는 방법Cyberlink Demuxer 2.0을 예로 들어 설명하겠습니다.


재생 탭의 코덱/필터 관리 버튼을 클릭합니다.



소스/스플리터 탭에서 필터 목록/관리 버튼을 클릭합니다.



필터 목록/관리 화면에 설정하려는 외부 코덱 전용 Splitter(Cyberlink Demuxer 2.0)가 보이면 확인 버튼을 클릭합니다.
하지만 없다면 시스템필터 추가 버튼을 클릭합니다.



외장 코덱 전용 Splitter(여기서는 Cyberlink Demuxer 2.0)선택하고 확인 버튼을 클릭합니다.
만약 여기에서마저 없다면 확인 버튼을 클릭하여 일단 나옵니다.



외부필터 추가 버튼을 클릭합니다.



사용하고자 하는 외부 코덱 전용 Splitterax 파일(CLDemuxer2.ax)을 직접 찾아 선택한 후 열기 버튼을 클릭합니다.



필터 목록/관리 화면사용하려는 외부 코덱 전용 Splitter(Cyberlink Demuxer 2.0)가 표시되었다면,
외부 코덱 전용 Splitter
(Cyberlink Demuxer 2.0)를 선택하고, MPEG2 TS 체크를 한 후 확인 버튼을 클릭합니다.



MPEG2 TS외부 코덱 전용 Splitter(Cyberlink Demuxer 2.0)으로 바꿔주면 설정이 마무리 됩니다.




아래는 톡플레이어의 내장 코덱CyberLink Video DecoderCPU 점유율 비교 결과 입니다.

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

테스트 방법 : 테스트 동영상에서 특정한 구간(1분)을 정하고, 그 1분동안 톡플레이어가 차지한 CPU 점유율의 평균값을 산출했습니다.

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

  톡플레이어의
내장 코덱
SW 가속
(30 프레임)
톡플레이어의
내장 코덱
DXVA 사용
(60 프레임)
CyberLink Video Decode
SW 가속
(30 프레임)
CyberLink Video Decoder
DXVA 사용
(60 프레임)
TP 영상
( 1920 x 1080i )
30 %

25 %
5 %

톡플레이어의 내장 코덱은 소프트웨어 가속시 Bob 방식의 디인터레이싱을 지원하지 않는데다, 하드웨어 디인터레이싱을 적용할 수 있는 방법이 없어 살짝 아쉬움이 남습니다. 그래도 DXVA 하드웨어 가속시에는 문제가 없이 디인터레이싱이 됩니다.

DXVA를 사용하면 CPU 점유율이 뚝 떨어지는데다 60 프레임으로 부드럽게 재생이 되는 것을 확인할 수 있습니다. 내장 코덱이 좋을지 외부 코덱이 좋을지, 외부 코덱이 좋다면 어떤 외부 코덱이 좋을지는 여러분께서 직접 재생해보시고 결정하세요.
Posted by 커피.
,
DXVA 하드웨어 가속를 사용하여 H.264/AVC 영상을 재생하면 CPU 점유율을 크게 낮출 수 있습니다.

팟플레이어는 곰플레이어나 KMPlayer와 달리 내장 코덱이 DXVA를 지원합니다. 덕분에 간단한 설정만으로도 어렵지않게 DXVA를 사용할 수 있습니다. DXVA가 너무 어렵다고 생각하신다면 이 포스트를 참고하세요.

팟플레이어의 내장 코덱으로 고화질 영상 재생하기 (DXVA 사용)

내장 코덱의 DXVA도 성능이 꽤 좋기 때문에 내장 코덱의 DXVA만으로 충분하시면 아래의 글은 읽지 않으셔도 됩니다.
외부 코덱이
뭔가 있어 보이기는 하지만, 외부 코덱은 원래 자체 동영상 플레이어에서 사용하기 위해 만들어진 것이라 팟플레이어와 궁합이 맞을거라는 보장은 없으니까요.

그래도 색감이나 화질, 개인의 취향 등등의 이유로 외부 코덱의 DXVA가 낫다고 판단되시면 아래의 글을 읽어주세요.
미리 경고를 드리지만 상당히 복잡합니다.^^



그럼 팟플레이어로 외부 코덱의 DXVA를 사용하여 H.264/AVC 영상을 재생하는 방법을 설명하겠습니다.

DXVA를 사용하려면 4가지 조건이 충족되야 합니다. (DXVA의 4가지 조건에 관한 포스트)

우선 DXVA Checker를 통해 그래픽카드가 H.264/AVC 코덱의 DXVA를 지원하는지 확인하세요.(조건1 충족)
그 다음에는 H.264/AVC 영상의 DXVA를 지원하는 외부코덱을 설치해야 합니다.

H.264/AVC 영상의 DXVA를 지원하는 코덱은 Microsoft DTV-DVD Decoder(Windows 7 전용), CyberLink Video Decoder, ArcSoft Video Decoder, MPC Video Decoder 등이 있습니다.

여기서는 CyberLink Video Decoder를 예로 들어 설명을 해보겠습니다. CyberLink Video Decoder는 PowerDVD의 최신 버전에 포함되어 있는 코덱으로 MPEG2와 H.264/AVC의 DXVA를 지원합니다.



팟플레이어의 환경 설정...(F5)로 들어가서...


재생 탭코덱/필터 관리 버튼을 클릭합니다.



비디오 코덱 탭필터/코덱 관리 버튼을 클릭하세요.



검색해서 추가 버튼을 클릭합니다.



쭉 외부 코덱들이 나오는데, 그 중 사용하려는 외부 코덱이 있다면 확인 버튼을 클릭합니다.
하지만 없다면 시스템 코덱 추가... 버튼을 클릭합니다.



사용하려는 외부 코덱 (CyberLink Video Decoder)선택하고 확인 버튼을 클릭합니다.
만약 여기에서마저 없다면 외부 코덱 추가... 버튼 클릭한 후 외부 코덱의 ax 파일(CLCvd.ax)을 직접 찾아 지정해줘야 합니다.



어떤 방법을 쓰든 코덱/필터 관리 화면사용하려는 외부코덱이 표시되면 성공입니다.
확인 버튼
을 클릭합니다.



H264 AVC1을 각각 사용하려는 외부 코덱(CyberLink Video Decoder)으로 바꾸어 주면 됩니다.
그리고 옆에 있는 ... 버튼을 클릭하면 CyberLink Video Decoder의 설정창이 뜹니다.



MiscellaneousDXVA를 체크하고 확인 버튼을 클릭합니다.(조건2 충족)
코덱마다 DXVA 설정 부분이 조금씩 다르며, Microsoft DTV-DVD Decoder처럼 설정이 아예 없는 코덱도 있습니다.





기본 설정 탭내장 영상 처리 필터 설정위의 그림처럼 체크를 해서 MPEG2 영상 재생시 영상 처리 필터가 작동하지 못하게 합니다.(조건3 충족)





마지막으로 영상 탭영상 출력 방식을 설정해야 합니다.(조건4 충족)

우선 DXVA Checker를 통해 그래픽카드가 MPEG2 코덱의 DXVA1을 지원하는지, DXVA2를 지원하는지 확인해보세요.

(1) Windows Vista/7 + DXVA2 지원 그래픽카드 (대부분의 Windows Vista/7 컴퓨터)
무조건 EVR(Vista/.Net3)이나 EVR Renderless를 선택해야 합니다. EVR Renderless는 기능이 많은 대신 좀 불안합니다. EVR(Vista/.Net3)이 가장 무난한 선택입니다.

(2) Windows Vista/7 + DXVA1 지원 그래픽카드
Overlay MixerVMR 9 Renderless가 비교적 무난합니다. 나머지 렌더러들도 테스트 해보세요. Overlay Mixer를 사용하면 에어로 기능이 꺼져버리니 참고하세요.

(3) Windows XP
Overlay MixerVMR 9 Renderless가 비교적 무난합니다. 나머지 렌더러들도 테스트 해보세요.





이렇게 4가지 조건에 맞추어 모든 설정을 끝냈다면 H.264/AVC 영상을 재생시켜 보세요.
DXVA가 제대로 적용되었는지 확인해 보시려면 Ctrl + Tab 키를 누르시면 됩니다.


디코더우리가 설정한 외부 코덱(Cyberlink Video Decoder)으로 표시되고, 출력 형식dxvaNV12라고 표기되었다면 DXVA가 올바르게 적용된 것입니다. (가장 확실한 확인 방법은 CPU 점유율의 감소 정도를 체크하는 것이지만요.)

이렇게 DXVA가 제대로 적용되었다면 DXVA 적용 전에 비해 CPU 점유율이 뚝 떨어지는 것을 확인할 수 있을 겁니다. 만약 CPU 점유율이 별 차이가 없다면 DXVA가 적용되지 않은 겁니다. 다시 한번 찬찬히 DXVA의 4가지 조건을 체크해보세요.




아래는 팟플레이어의 내장 코덱 CyberLink Video Decoder CPU 점유율 비교 결과입니다.

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

테스트 방법 : 테스트 동영상에서 특정한 구간(1분)을 정하고, 그 1분동안 팟플레이어가 차지한 CPU 점유율의 평균값을 산출했습니다.

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

   팟플레이어의
내장 코덱
(SW 가속)
 팟플레이어의
내장 코덱
(DXVA)
 CyberLink
Video Decoder
(SW 가속)
 CyberLink
Video Decoder
(DXVA)
BluRay Rip 영화
(1920 x 800, 24fps)
49 % 4 % 45 %
4 %
 HD 쇼프로
(1280 x 720, 60fps)
65 %
4 %
58 %
5 %

곰플레이어나 KMPlayer의 내장 코덱과 달리 팟플레이어의 내장 코덱은 60 프레임 H.264/AVC 영상을 정상적으로 재생하였습니다. 하지만 CPU 점유율이 높아서 소프트웨어 가속으로 재생하는 경우에는 CPU 부담이 적은 CoreAVC 코덱이 나은 선택이 될 겁니다.

내장 코덱과 외부 코덱 모두 DXVA 하드웨어 가속를 사용하면 어마어마하게 CPU 점유율이 낮아짐을 알 수 있습니다. 50% 이상의 CPU 점유율이 5% 정도로 떨어지니 이 맛에 DXVA를 사용하는거겠죠.

하지만 신형 NVIDIA 그래픽 카드를 가지고 있다면 DXVA 말고도 다른 방법도 있습니다. CoreAVC 코덱의 CUDA 가속이 그 주인공이죠(관련 포스트). CUDA 가속은 CPU 점유율 감소면에서 DXVA에 조금 못미치지만 안정성 측면에서 DXVA보다 조금 낫습니다. 무엇보다 DXVA처럼 설정이 복잡하지 않다는게 강점입니다.

이렇게 팟플레이어로 H.264/AVC 영상을 재생하는 방법은 무척 다양합니다. 선택은 유저의 몫이지만요.
CPU 점유율만 따진다면 대략 이런 순서입니다.

내장 코덱 or 외부 코덱 > CoreAVC >>>>> CoreAVC+CUDA > 내장 코덱+DXVA or 외부 코덱+DXVA

Posted by 커피.
,
DXVA 하드웨어 가속을 사용하여 TS, TP 영상 (MPEG2 영상)을 재생하면 낮은 CPU 점유율로도 부드러운 60프레임 재생을 할 수 있습니다.

팟플레이어는 곰플레이어나 KMPlayer와 달리 내장 코덱이 DXVA를 지원합니다. 덕분에 간단한 설정만으로도 어렵지않게 DXVA를 사용할 수 있습니다. DXVA가 너무 어렵다고 생각하신다면 이 포스트를 참고하세요.

팟플레이어의 내장 코덱으로 고화질 영상 재생하기 (DXVA 사용)

내장 코덱의 DXVA도 성능이 꽤 좋기 때문에 내장 코덱의 DXVA만으로 충분하시면 아래의 글은 읽지 않으셔도 됩니다.
외부 코덱이
뭔가 있어 보이기는 하지만, 외부 코덱은 원래 자체 동영상 플레이어에서 사용하기 위해 만들어진 것이라 팟플레이어와 궁합이 맞을거라는 보장은 없으니까요.

그래도 색감이나 화질, 개인의 취향 등등의 이유로 외부 코덱의 DXVA가 낫다고 판단되시면 아래의 글을 읽어주세요.
미리 경고를 드리지만 상당히 복잡합니다.^^



그럼 팟플레이어로 외부 코덱의 DXVA를 사용하여 TS, TP 영상을 재생하는 방법을 설명하겠습니다.

DXVA를 사용하려면 4가지 조건이 충족되야 합니다. (DXVA의 4가지 조건에 관한 포스트)

우선 DXVA Checker를 통해 그래픽카드가 MPEG2 코덱의 DXVA를 지원하는지 확인하세요.(조건1 충족)
그 다음에는 MPEG2 영상의 DXVA를 지원하는 외부 코덱을 설치해야 합니다.

TS, TP 영상 (MPEG2 영상)의 DXVA를 지원하는 외부 코덱은 NVIDIA PureVideo Decoder(DXVA1만 지원), Microsoft DTV-DVD Decoder(Windows 7 전용), CyberLink Video/SP Decoder, CyberLink Video Decoder, ArcSoft Video Decoder, Nero Video Decoder HD 등이 있습니다.

여기서는 CyberLink Video Decoder를 예로 들어 설명을 해보겠습니다. CyberLink Video Decoder는 PowerDVD의 최신 버전에 포함되어 있는 코덱으로 MPEG2와 H.264/AVC의 DXVA를 지원합니다.




팟플레이어의 환경 설정...(F5)로 들어가서...


재생 탭코덱/필터 관리 버튼을 클릭합니다.



비디오 코덱 탭필터/코덱 관리 버튼을 클릭하세요.



검색해서 추가 버튼을 클릭합니다.



쭉 외부 코덱들이 나오는데, 그 중 사용하려는 외부 코덱이 있다면 확인 버튼을 클릭합니다.
하지만 없다면 시스템 코덱 추가... 버튼을 클릭합니다.



사용하려는 외부 코덱 (CyberLink Video Decoder)선택하고 확인 버튼을 클릭합니다. 만약 여기에서마저 없다면 외부 코덱 추가... 버튼 클릭한 후 외부 코덱의 ax 파일(CLCvd.ax)을 직접 찾아 지정해줘야 합니다.



어떤 방법을 쓰든 코덱/필터 관리 화면에 원하는 사용하려는 외부코덱이 표시되면 성공입니다.
확인 버튼
을 클릭합니다.



MPEG2사용하려는 외부 코덱(CyberLink Video Decoder)으로 바꾸어 주면 됩니다.
그리고 옆에 있는 ... 버튼을 클릭하면 CyberLink Video Decoder의 설정창이 뜹니다.



MiscellaneousDXVA를 체크하고 확인 버튼을 클릭합니다.(조건2 충족)
코덱마다 DXVA 설정 부분이 조금씩 다르며, Microsoft DTV-DVD Decoder처럼 설정이 아예 없는 코덱도 있습니다.





기본 설정 탭내장 영상 처리 필터 설정위의 그림처럼 체크를 해서 MPEG2 영상 재생시 영상 처리 필터가 작동하지 못하게 합니다. (조건3 충족)





마지막으로 영상 탭영상 출력 방식을 설정해야 합니다.(조건4 충족)

우선 DXVA Checker를 통해 그래픽카드가 MPEG2 코덱의 DXVA1을 지원하는지, DXVA2를 지원하는지 확인해보세요.

(1) Windows Vista/7 + DXVA2 지원 그래픽카드 (대부분의 Windows Vista/7 컴퓨터)
무조건 EVR(Vista/.Net3)이나 EVR Renderless를 선택해야 합니다. EVR Renderless는 기능이 많은 대신 좀 불안합니다. EVR(Vista/.Net3)이 가장 무난한 선택입니다.

(2) Windows Vista/7 + DXVA1 지원 그래픽카드
Overlay MixerVMR 9 Renderless + VMR9 혼합 모드 체크가 비교적 무난합니다. 나머지 렌더러들도 테스트 해보세요. Overlay Mixer를 사용하면 에어로 기능이 꺼져버리니 참고하세요.

(3) Windows XP
Overlay MixerVMR 9 Renderless + VMR9 혼합 모드 체크가 비교적 무난합니다. 나머지 렌더러들도 테스트 해보세요.

PS. VMR 9  Renderless mode 사용시 VMR9 혼합 모드에 체크를 해야 하드웨어 디인터레이싱이 되어서 TS, TP 영상을 60 프레임으로 재생할 수 있습니다. (VMR9 혼합 모드 옵션은 옆에 있는 ... 버튼을 누르면 나오는 창에 있습니다.)
또한 VMR9 혼합 모드에 체크하면 영상 아래부분에 생기는 줄 문제를 해결해주기도 합니다. 다만 버벅임이 생길 수도 있으니 사용에 주의하셔야 합니다.




이렇게 4가지 조건에 맞추어 모든 설정을 끝냈다면 TS 영상이나 TP 영상을 재생시켜 보세요.
DXVA가 제대로 적용되었는지 확인해 보시려면 Ctrl + Tab 키를 누르시면 됩니다.


디코더우리가 설정한 외부 코덱(Cyberlink Video Decoder)으로 표시되고, 출력 형식DXVANV12라고 표기되었다면 DXVA가 올바르게 적용된 것입니다. (가장 확실한 확인 방법은 CPU 점유율의 감소 정도를 체크하는 것이지만요.)

이렇게 DXVA가 제대로 적용되었다면 DXVA 적용 전에 비해 CPU 점유율이 뚝 떨어지는 것은 물론 하드웨어 디인터레이싱에 의해 60프레임으로 부드럽게 재생되는 것을 확인할 수 있을 겁니다. 만약 CPU 점유율이 별 차이가 없다면 DXVA가 적용되지 않은 겁니다. 다시 한번 찬찬히 DXVA의 4가지 조건을 체크해보세요.



다음은 필수 과정은 아니고 선택 과정입니다.
외부 코덱을 사용한다면 팟플레이어의 내장 Splitter 보다는 외부 코덱 전용 Splitter가 궁합이 아무래도 잘 맞겠죠? CyberLink Video Decoder의 경우에도 Cyberlink Demuxer 2.0을 Splitter로 쓰는 편이 여러모로 낫습니다. 특히 Seek(5초 뒤로 , 30초 앞으로 등등)를 할 때 차이가 드러나죠.

그럼 외부 코덱 전용 Splitter를 설정하는 방법Cyberlink Demuxer 2.0을 예로 들어 설명하겠습니다.


재생 에서 코덱/필터 관리 버튼을 클릭합니다.



Splitter 탭에서 필터/코덱 관리 버튼을 클릭합니다.



코덱/필터 관리 화면에 사용하려는 외부 코덱 전용 Splitter(Cyberlink Demuxer 2.0)가 보이면 확인 버튼을 클릭합니다.
하지만 없다면 시스템 코덱 추가... 버튼을 클릭합니다.



외부 코덱 전용 Splitter(여기서는 Cyberlink Demuxer 2.0)선택하고 확인 버튼을 클릭합니다.
만약 여기에서마저 없다면 외부 코덱 추가... 버튼 클릭한 후 외부 코덱 전용 Splitter의 ax 파일(CLDemuxer2.ax)을 직접 찾아 지정해줘야 합니다.

그런데, 제 경우에 Cyberlink Demuxer 2.0은 직접 ax 파일(CLDemuxer2.ax)을 찾아 지정해주는 방법을 써야만 Spilitter로 인식하더군요. 혹시 Cyberlink Demuxer 2.0이 제대로 작동하지 않지 않는다면 참고하세요.



외부 코덱/필터 관리 화면사용하려는 외부 코덱 전용 Splitter(Cyberlink Demuxer 2.0)가 표시되었다면,
외부 코덱 전용 Splitter
(Cyberlink Demuxer 2.0)를 선택하고, MPEG2 TS 체크를 한 후 확인 버튼을 클릭합니다.



MPEG2 TS외부 코덱 전용 Splitter(Cyberlink Demuxer 2.0)으로 바꿔주면 설정이 마무리 됩니다.




아래는 팟플레이어의 내장 코덱CyberLink Video DecoderCPU 점유율 비교 결과 입니다.

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

테스트 방법 : 테스트 동영상에서 특정한 구간(1분)을 정하고, 그 1분동안 팟플레이어가 차지한 CPU 점유율의 평균값을 산출했습니다.

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

  팟플레이어의
내장 코덱
자동 방식
(30 프레임)
팟플레이어의
내장 코덱
H/W 디인터레이싱
(60 프레임)
팟플레이어의
내장 코덱
DXVA 사용
(60 프레임)
CyberLink Video Decoder
DXVA 사용
(60 프레임)
TP 영상
( 1920 x 1080i )
30 %
27 %
6 %
4 %

팟플레이어의 내장 코덱은 TS, TP 영상(MPEG2 영상) 재생시에 소프트웨어 가속 + 소프트웨어 디인터레이싱, 소프트웨어 가속 + 하드웨어 디인터레이싱, 하드웨어 가속(DXVA) 등 다양한 방법을 사용할 수 있다는 장점이 있습니다.

팟플레이어의 내장 코덱과 CyberLink Video Decoder 모두 DXVA를 사용하면 CPU 점유율이 뚝 떨어짐을 알 수 있습니다. 게다가 60 프레임으로 부드럽게 재생되죠. 내장 코덱이 좋을지 외부 코덱이 좋을지, 외부 코덱이 좋다면 어떤 외부 코덱이 좋을지는 여러분께서 직접 재생해보시고 결정하세요.
Posted by 커피.
,
DXVA 하드웨어 가속를 사용하여 H.264/AVC 영상을 재생하면 CPU 점유율을 크게 낮출 수 있습니다.
KMPlayer의 내장 코덱은 DXVA를 지원하지 않지만, 외부 코덱을 적용하면 KMPlayer에서도 DXVA를 사용할 수 있습니다.

[주의사항]
대부분의 Windows Vista/7 컴퓨터(DXVA2 지원 그래픽카드)에서 DXVA를 사용하여 H.264/AVC 영상을 재생하려면 반드시 EVR(Enhanced Video Renderer) 계열의 렌더러가 필요합니다. 그런데 KMPlayer의 EVR은 문제가 좀 있습니다.

EVR은 시스템이 제공하는 순수한 EVR과 동영상 플레이어가 부가적인 처리를 하는 EVR Renderless(동영상 플레이어에 따라 EVR CP, EVR (C/A) 등등 다양하게 표기)의 2가지가 있는데, EVR Renderless는 기능이 많은 대신 아직 불안해서 초고화질 영상에서 간헐적인 화면 버벅임이나 싱크 어긋남 등의 여러 문제가 발생합니다.(그래도 KMPlayer나 팟플레이어와 달리 톡플레이어와 MPC-HC의 EVR CP는 상당히 안정화되었습니다.)

여하튼 순수한 EVR을 쓰는 게 기능은 적더라도 가장 안정적인데 KMPlayer 최신버전(1435부터)에는 순수한 EVR이 없습니다. 설정에 Enhanced Video Renderer가 분명 있기는 합니다만 이름만 EVR이고 실제적으로는 Enhanced Video Renderer(C/A)와 마찬가지로 EVR Renderless입니다.

그에 비해 KMPlayer 1434 버전까지는 Enhanced Video Renderer가 순수한 EVR이었습니다. 하지만 이 EVR은 곰플레이어의 EVR과 마찬가지로 자막을 출력하지 못하는 단점을 가지고 있습니다.

KMPlayer는 최신버전을 쓰든 구버전을 쓰든, 자막이 지원되면서도 순수하고 안정적인 EVR(예를 들어 팟플레이어의 EVR(Vista/.Net3))을 사용할 수 없다는 뜻입니다. KMPlayer의 EVR Renderless가 안정적이라면 별 문제가 아니겠지만, 위에 언급했듯이 KMPlayer의 EVR Renderless는 불안합니다.

결론적으로 DXVA를 사용하기 원하는 Windows Vista/7 유저들은 KMPlayer보다는 순수한 EVR를 사용할 수 있는 팟플레이어나, 안정적인 EVR Renderless(EVR CP)를 가지고 있는 톡플레이어를 쓰는게 좋습니다.

KMPlayer를 꼭 고집하셔야 한다면 Windows Vista/7에서도 VMR 계열이나 Overlay Mixer를 선택할 수 있는 CoreAVC 코덱를 써보세요(관련 포스트). CoreAVC는 DXVA 하드웨어 가속 기능이 없는 대신에 CUDA 하드웨어 가속 기능이 있습니다. CUDA를 쓰면 DXVA에 근접하는 CPU 점유율 감소 효과를 볼 수 있습니다. 단, CUDA 하드웨어 가속 기능은 NVDIA 그래픽카드에서만 사용할 수 있습니다.(CUDA 지원 여부 확인)




그래도 KMPlayer의 EVR 문제는 Windows Vista/7에만 해당되기 때문에 Windows XP에서는 문제가 없습니다.
그러니 본론으로 돌아와서 KMPlayer로 DXVA를 사용하여 H.264/AVC 영상을 재생하는 방법을 설명하겠습니다.

DXVA를 사용하려면 4가지 조건이 충족되야 합니다. (DXVA의 4가지 조건에 관한 포스트)

우선 DXVA Checker를 통해 그래픽카드가 H.264/AVC 코덱의 DXVA를 지원하는지 확인하세요.(조건1 충족)
그 다음에는 H.264/AVC 영상의 DXVA를 지원하는 외부코덱을 설치해야 합니다.

H.264/AVC 영상의 DXVA를 지원하는 코덱은 Microsoft DTV-DVD Decoder(Windows 7 전용), CyberLink Video Decoder, ArcSoft Video Decoder, MPC Video Decoder 등이 있습니다.

여기서는 CyberLink Video Decoder를 예로 들어 설명을 해보겠습니다. CyberLink Video Decoder는 PowerDVD의 최신 버전에 포함되어 있는 코덱으로 MPEG2와 H.264/AVC의 DXVA를 지원합니다.



KMPlayer의 환경 설정...(F2)로 들어가서...


내장 비디오 코덱기본 코덱 탭에서 H.264AVC1체크를 해제합니다.



외부 비디오 코덱에서 외부 코덱 사용자 정의 버튼을 클릭하세요.



검색해서 추가 버튼을 클릭합니다.



쭉 외부 코덱들이 나오는데, 그 중 사용하려는 외부 코덱이 있다면 확인 버튼을 클릭합니다.
하지만 없다면 시스템 코덱 추가... 버튼을 클릭합니다.



사용하려는 외부 코덱 (CyberLink Video Decoder)선택하고 확인 버튼을 클릭합니다.
만약 여기에서마저 없다면 외부 코덱 추가... 버튼 클릭한 후 외부 코덱의 ax 파일(CLCvd.ax)을 직접 찾아 지정해줘야 합니다.



어떤 방법을 쓰든 외부 코덱/필터 관리 화면사용하려는 외부코덱이 표시되면 성공입니다. 확인 버튼을 클릭합니다.



H.264AVC1 사용하려는 외부 코덱 (CyberLink Video Decoder)으로 바꾸어 주면 됩니다.
그리고 옆에 있는 ... 버튼을 클릭하면 CyberLink Video Decoder의 설정창이 뜹니다.



MiscellaneousDXVA를 체크하고 확인 버튼을 클릭합니다.(조건2 충족)
코덱마다 DXVA 설정 부분이 조금씩 다르며, Microsoft DTV-DVD Decoder처럼 설정이 아예 없는 코덱도 있습니다.





영상 처리 - 영상 처리 필터 탭에서 아래의 조건이라면 사용하지 않음을 선택하고 FOURCC에 체크를 해서 H.264/AVC 영상 재생시 영상 처리 필터가 작동하지 못하게 합니다. (조건3 충족)





마지막으로 영상 처리영상 출력 장치 탭에서 출력 장치를 설정해야 합니다.(조건4 충족)

우선 DXVA Checker를 통해 그래픽카드가 MPEG2 코덱의 DXVA1을 지원하는지, DXVA2를 지원하는지 확인해보세요.

(1) Windows Vista/7 + DXVA2 지원 그래픽카드 (대부분의 Windows Vista/7 컴퓨터)
무조건 Enhanced Video RendererEnhanced Video Renderer(C/A)를 선택해야 합니다. 다만 이 글의 처음 주의사항에 언급했듯이 KMPlayer의 EVR 계열은 전반적으로 불안해서 개선이 필요합니다.

(2) Windows Vista/7 + DXVA1 지원 그래픽카드
Overlay MixerVMR9 - Renderless mode가 비교적 무난합니다. 나머지 렌더러들도 테스트 해보세요. Overlay Mixer를 사용하면 에어로 기능이 꺼져버리니 참고하세요.

(3) Windows XP
Overlay MixerVMR9 - Renderless mode가 비교적 무난합니다. 나머지 렌더러들도 테스트 해보세요.




이렇게 4가지 조건에 맞추어 모든 설정을 끝냈다면 H.264/AVC 영상을 재생시켜 보세요.
DXVA가 제대로 적용되었는지 확인해 보시려면 Ctrl + Tab 키를 누르시면 됩니다.


비디오 정보의 코덱우리가 설정한 외부 코덱(Cyberlink Video Decoder)이 맞고, VideoInfo2dxvaNV12라고 표기되었다면 DXVA가 올바르게 적용된 것입니다. (가장 확실한 확인 방법은 CPU 점유율의 감소 정도를 체크하는 것이지만요.)

이렇게 DXVA가 제대로 적용되었다면 DXVA 적용 전에 비해 CPU 점유율이 뚝 떨어지는 것을 확인할 수 있을 겁니다. 만약 CPU 점유율이 별 차이가 없다면 DXVA가 적용되지 않은 겁니다. 다시 한번 찬찬히 DXVA의 4가지 조건을 체크해보세요.





아래는 KMPlayer 내장 코덱 CyberLink Video Decoder CPU 점유율 비교 결과입니다.

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

테스트 방법 : 테스트 동영상에서 특정한 구간(1분)을 정하고, 그 1분동안 KMPlayer가 차지한 CPU 점유율의 평균값을 산출했습니다.

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

   KMPlayer 내장 코덱
 CyberLink
Video Decoder
(SW 가속)
 CyberLink
Video Decoder
(DXVA)
BluRay Rip 영화
 (1920 x 800, 24fps)
36 %
45 %
3 %
HD 쇼프로
(1280 x 720, 60fps)
재생불량
(싱크 어긋남)
58 % 5 %

곰플레이어의 내장 코덱과 마찬가지로 KMPlayer의 내장 코덱도 60프레임의 H.264/AVC 영상을 정상적으로 재생해내지 못했습니다. (제 CPU가 좀 더 좋았다면 재생할 수 있었을지는 모르겠지만요.) 어쩌면 한때를 풍미했던 곰플레이어와 KMPlayer 모두 이제는 구세대의 유물이 되가는지도 모르겠습니다.

KMPlayer 내장 코덱과 CyberLink Video Decoder(SW 가속)처럼 소프트웨어 가속 코덱을 사용할 때는 CPU 점유율이 30~50% 정도로 높게 나왔지만, DXVA를 사용하면 5% 이하로 낮게 나왔습니다.  그러니 비교적 괜찮은 컴퓨터 사양을 가진 Windows XP 유저라면 한번 DXVA 사용에 도전해보시길 권합니다.

다만 이 글의 처음 주의사항에서 말했듯이 KMPlayer의 영상 출력 방식 중 Windows Vista/7에서 선택해야 하는 Enhanced Video Renderer 계열은 문제가 많습니다. 720p 30프레임급의 일반적인 H.264/AVC 영상은 그런대로 무난하게 재생하지만 그 이상의 초고화질 영상에서는 화면 버벅임이나 싱크 어긋남 등의 문제가 발생할 가능성이 높습니다. 그러니 DXVA 사용을 원하는 Windows Vista/7 유저들은 KMPlayer보다 팟플레이어나 톡플레이어를 쓰시는게 낫습니다.
Posted by 커피.
,
DXVA 하드웨어 가속을 사용하여 TS, TP 영상 (MPEG2 영상)을 재생하면 낮은 CPU 점유율로도 부드러운 60프레임 재생을 할 수 있습니다.

[주의사항]
대부분의 Windows Vista/7 컴퓨터(DXVA2 지원 그래픽카드)에서 DXVA를 사용하여 TS, TP 영상을 재생하려면 반드시 EVR(Enhanced Video Renderer) 계열의 렌더러가 필요합니다. 그런데 KMPlayer의 EVR은 문제가 좀 있습니다.

EVR은 시스템이 제공하는 순수한 EVR과 동영상 플레이어가 부가적인 처리를 하는 EVR Renderless(동영상 플레이어에 따라 EVR CP, EVR (C/A) 등등 다양하게 표기)의 2가지가 있는데, EVR Renderless는 기능이 많은 대신 아직 불안해서 초고화질 영상에서 간헐적인 화면 버벅임이나 싱크 어긋남 등의 여러 문제가 발생합니다.(그래도 KMPlayer나 팟플레이어와 달리 톡플레이어와 MPC-HC의 EVR CP는 상당히 안정화되었습니다.)

여하튼 순수한 EVR을 쓰는 게 기능은 적더라도 가장 안정적인데 KMPlayer 최신버전(1435부터)에는 순수한 EVR이 없습니다. 설정에 Enhanced Video Renderer가 분명 있기는 합니다만 이름만 EVR이고 실제적으로는 Enhanced Video Renderer(C/A)와 마찬가지로 EVR Renderless입니다.

그에 비해 KMPlayer 1434 버전까지는 Enhanced Video Renderer가 순수한 EVR이었습니다. 하지만 이 EVR은 곰플레이어의 EVR과 마찬가지로 자막을 출력하지 못하는 단점을 가지고 있습니다.

KMPlayer는 최신버전을 쓰든 구버전을 쓰든, 자막이 지원되면서도 순수하고 안정적인 EVR(예를 들어 팟플레이어의 EVR(Vista/.Net3))을 사용할 수 없다는 뜻입니다. KMPlayer의 EVR Renderless가 안정적이라면 별 문제가 아니겠지만, 위에 언급했듯이 KMPlayer의 EVR Renderless는 불안합니다.

결론적으로 DXVA를 사용하기 원하는 Windows Vista/7 유저들은 KMPlayer보다는 순수한 EVR를 사용할 수 있는 팟플레이어나, 안정적인 EVR Renderless(EVR CP)를 가지고 있는 톡플레이어를 쓰는게 좋습니다.




그래도 KMPlayer의 EVR 문제는 Windows Vista/7에만 해당되기 때문에 Windows XP에서는 문제가 없습니다.
그러니 본론으로 돌아와서 KMPlayer로 DXVA를 사용하여 TS, TP 영상을 재생하는 방법을 설명하겠습니다.

DXVA를 사용하려면 4가지 조건이 충족되야 합니다. (DXVA의 4가지 조건에 관한 포스트)

우선 DXVA Checker를 통해 그래픽카드가 MPEG2 코덱의 DXVA를 지원하는지 확인하세요.(조건1 충족)
그 다음에는 MPEG2 영상의 DXVA를 지원하는 외부 코덱을 설치해야 합니다.

TS, TP 영상 (MPEG2 영상)의 DXVA를 지원하는 외부 코덱은 NVIDIA PureVideo Decoder(DXVA1만 지원), Microsoft DTV-DVD Decoder(Windows 7 전용), CyberLink Video/SP Decoder, CyberLink Video Decoder, ArcSoft Video Decoder, Nero Video Decoder HD 등이 있습니다.

여기서는 CyberLink Video Decoder를 예로 들어 설명을 해보겠습니다. CyberLink Video Decoder는 PowerDVD의 최신 버전에 포함되어 있는 코덱으로 MPEG2와 H.264/AVC의 DXVA를 지원합니다.



KMPlayer의 환경 설정...(F2)로 들어가서...


내장 비디오 코덱기본 코덱 탭에서 MPEG 2Libmpeg2.DLL 사용(권장)체크를 해제합니다.



외부 비디오 코덱에서 외부 코덱 사용자 정의 버튼을 클릭하세요.



검색해서 추가 버튼을 클릭합니다.



쭉 외부 코덱들이 나오는데, 그 중 사용하려는 외부 코덱이 있다면 확인 버튼을 클릭합니다.
하지만 없다면 시스템 코덱 추가... 버튼을 클릭합니다.



사용하려는 외부 코덱 (CyberLink Video Decoder)선택하고 확인 버튼을 클릭합니다.
만약 여기에서마저 없다면 외부 코덱 추가... 버튼 클릭한 후 외부 코덱의 ax 파일(CLCvd.ax)을 직접 찾아 지정해줘야 합니다.



어떤 방법을 쓰든 외부 코덱/필터 관리 화면사용하려는 외부코덱이 표시되면 성공입니다. 확인 버튼을 클릭합니다.



MPEG2 Video사용하려는 외부 코덱(CyberLink Video Decoder)으로 바꾸어 주면 됩니다.
그리고 옆에 있는 ... 버튼을 클릭하면 CyberLink Video Decoder의 설정창이 뜹니다.



MiscellaneousDXVA를 체크하고 확인 버튼을 클릭합니다.(조건2 충족)
코덱마다 DXVA 설정 부분이 조금씩 다르며, Microsoft DTV-DVD Decoder처럼 설정이 아예 없는 코덱도 있습니다.





영상 처리 - 영상 처리 필터 탭에서 아래의 조건이라면 사용하지 않음을 선택하고 FOURCC에 체크를 해서 MPEG2 영상 재생시 영상 처리 필터가 작동하지 못하게 합니다. (조건3 충족)





마지막으로 영상 처리영상 출력 장치 탭에서 출력 장치를 설정해야 합니다.(조건4 충족)

우선 DXVA Checker를 통해 그래픽카드가 MPEG2 코덱의 DXVA1을 지원하는지, DXVA2를 지원하는지 확인해보세요.

(1) Windows Vista/7 + DXVA2 지원 그래픽카드 (대부분의 Windows Vista/7 컴퓨터)
무조건 Enhanced Video RendererEnhanced Video Renderer(C/A)를 선택해야 합니다. 다만 이 글의 처음 주의사항에 언급했듯이 KMPlayer의 EVR 계열은 전반적으로 불안해서 개선이 필요합니다.

(2) Windows Vista/7 + DXVA1 지원 그래픽카드
Overlay MixerVMR9 - Renderless mode + VMR Mixer Mode 체크가 비교적 무난합니다. 나머지 렌더러들도 테스트 해보세요. Overlay Mixer를 사용하면 에어로 기능이 꺼져버리니 참고하세요.

(3) Windows XP
Overlay MixerVMR9 - Renderless mode + VMR Mixer Mode 체크가 비교적 무난합니다. 나머지 렌더러들도 테스트 해보세요.

PS. VMR9 - Renderless mode 사용시 VMR Mixer Mode에 체크를 해야 하드웨어 디인터레이싱이 되어서 TS, TP 영상을 60 프레임으로 재생할 수 있습니다. 또한 VMR Mixer Mode를 체크하면 영상 아래부분에 생기는 줄 문제를 해결해주기도 합니다. 다만 버벅임이 생길 수도 있으니 사용에 주의하셔야 합니다.




이렇게 4가지 조건에 맞추어 모든 설정을 끝냈다면 TS 영상이나 TP 영상을 재생시켜 보세요.
DXVA가 제대로 적용되었는지 확인해 보시려면 Ctrl + Tab 키를 누르세요.


비디오 정보의 코덱우리가 설정한 외부 코덱(Cyberlink Video Decoder)이 맞고, VideoInfo2DXVANV12라고 표기되었다면 DXVA가 올바르게 적용된 것입니다. (가장 확실한 확인 방법은 CPU 점유율의 감소 정도를 체크하는 것이지만요.)

이렇게 DXVA가 제대로 적용되었다면 DXVA 적용 전에 비해 CPU 점유율이 뚝 떨어지는 것은 물론 하드웨어 디인터레이싱에 의해 60프레임으로 부드럽게 재생되는 것을 확인할 수 있을 겁니다. 만약 CPU 점유율이 별 차이가 없다면 DXVA가 적용되지 않은 겁니다. 다시 한번 찬찬히 DXVA의 4가지 조건을 체크해보세요.



다음은 필수 과정은 아니고 선택 과정입니다.
외부 코덱을 사용한다면 KMPlayer의 내장 Splitter 보다는 외부 코덱 전용 Splitter가 궁합이 아무래도 잘 맞겠죠? CyberLink Video Decoder의 경우에도 Cyberlink Demuxer 2.0을 Splitter로 쓰는 편이 여러모로 낫습니다. 특히 Seek(5초 뒤로 , 30초 앞으로 등등)를 할 때 차이가 드러나죠.

그럼 외부 코덱 전용 Splitter를 설정하는 방법Cyberlink Demuxer 2.0을 예로 들어 설명하겠습니다.


Splitter 필터기본 Splitter 탭에서 외부 코덱/필터 사용자 정의 버튼을 클릭하세요.



외부 코덱/필터 관리 화면에 사용하려는 외부 코덱 전용 Splitter(Cyberlink Demuxer 2.0)가 보이면 확인 버튼을 클릭합니다. 하지만 없다면 시스템 코덱 추가... 버튼을 클릭합니다.



외부 코덱 전용 Splitter(여기서는 Cyberlink Demuxer 2.0)선택하고 확인 버튼을 클릭합니다.
만약 여기에서마저 없다면 외부 코덱 추가... 버튼 클릭한 후 외부 코덱 전용 Splitter의 ax 파일(CLDemuxer2.ax)을 직접 찾아 지정해줘야 합니다.



어떤 방법을 쓰든 외부 코덱/필터 관리 화면사용하려는 외부 코덱 전용 Splitter가 표시되면 성공입니다.
외부 코덱 전용 Splitter(Cyberlink Demuxer 2.0)선택하고, 사용할 코덱/필터 선택에서 MPEG2(TS) Splitter체크를 한 후 확인 버튼을 클릭합니다.



MPEG2(TS) Splitter외부 코덱 전용 Splitter(Cyberlink Demuxer 2.0)으로 바꿔주면 설정이 마무리 됩니다.




아래는 Gabest MPEG Decoder(KMP에 기본적으로 포함되어 있는 MPEG2 Decoder)와  CyberLink Video Decoder(DXVA)의 CPU 점유율 비교 결과 입니다.

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

테스트 방법 : 테스트 동영상에서 특정한 구간(1분)을 정하고, 그 1분동안 KMPlayer가 차지한 CPU 점유율의 평균값을 산출했습니다.

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

  Gabest
MPEG Decoder
Auto 방식 (30 프레임)
 Gabest
MPEG Decoder
 Bob 방식 (60 프레임)
CyberLink Video Decoder
DXVA 사용 (60 프레임)
 TP 영상
( 1920 x 1080i )
19 %
 32 % 5 %

소프트웨어 가속 코덱인 Gabest MPEG Decoder로 60 프레임의 부드러운 재생을 하려면 32% 정도의 비교적 높은 점유율이 필요하지만, DXVA를 사용하면 5% 정도의 낮은 점유율로 60 프레임 재생을 할 수 있음을 알 수 있습니다.
Posted by 커피.
,
DXVA 하드웨어 가속를 사용하여 H.264/AVC 영상을 재생하면 CPU 점유율을 크게 낮출 수 있습니다.
곰플레이어의 내부 코덱(Gretech Video Filter)은 DXVA를 지원하지 않지만, 외부 코덱을 적용하면 곰플레이어에서도 DXVA를 사용할 수 있습니다.

[주의사항]
대부분의 Windows Vista/7 컴퓨터(DXVA2 지원 그래픽카드)에서 곰플레이어로 DXVA를 사용하여 H.264/AVC 영상을 재생하면 자막이 보이지 않습니다. DXVA2를 지원하는 그래픽카드는 DXVA를 사용하기 위해 EVR 계열의 렌더러가 반드시 필요한데, 곰플레이어의 EVR은 자막 출력이 되지 않기 때문입니다.

그러므로 Windows Vista/7 컴퓨터에서 H.264/AVC 영상을 DXVA로 재생하기 원하신다면 곰플레이어 대신에 자막 출력 문제가 없는 팟플레이어톡플레이어 등을 쓰시는게 좋습니다.

만약 곰플레이어를 죽어도 못버리시겠다면 Windows Vista/7에서도 VMR 계열이나 Overlay Mixer를 선택할 수 있는 CoreAVC 코덱를 써보세요(관련 포스트). CoreAVC는 DXVA 하드웨어 가속 기능이 없는 대신에 CUDA 하드웨어 가속 기능이 있습니다. CUDA를 쓰면 DXVA에 근접하는 CPU 점유율 감소 효과를 볼 수 있습니다. 단, CUDA 하드웨어 가속 기능은 NVDIA 그래픽카드에서만 사용할 수 있습니다.(CUDA 지원 여부 확인)



위의 주의사항에 해당하지 않는 유저분들(신형 컴퓨터가 아니거나, 자막 따위는 필요없다는 부러운 분들)을 위해 곰플레이어로 DXVA를 사용하여 H.264/AVC 영상을 재생하는 방법을 설명하겠습니다.

DXVA를 사용하려면 4가지 조건이 충족되야 합니다. (DXVA의 4가지 조건에 관한 포스트)

우선 DXVA Checker를 통해 그래픽카드가 H264 코덱의 DXVA를 지원하는지 확인하세요.(조건1 충족)
그 다음에는 H.264/AVC 영상의 DXVA를 지원하는 외부코덱을 설치해야 합니다.

H.264/AVC 영상의 DXVA를 지원하는 코덱은  Microsoft DTV-DVD Decoder(Windows 7 전용), CyberLink Video Decoder, ArcSoft Video Decoder, MPC Video Decoder 등이 있습니다.

여기서는 CyberLink Video Decoder를 예로 들어 설명을 해보겠습니다. CyberLink Video Decoder는 PowerDVD의 최신 버전에 포함되어 있는 코덱으로 MPEG2와 H.264/AVC의 DXVA를 지원합니다.



곰플레이어의 환경 설정(F5)로 들어가서...


필터 - 코덱 탭의 지원가능한 코덱 형식에서 H264체크 해제합니다.



필터고급 설정 탭에서 필터 랜더링 방식고급 랜더링 방식으로 바꿔주시고, 필터 추가 버튼을 클릭합니다.



H.264/AVC의 DXVA를 지원하는 코덱(여기서는 CyberLink Video Decoder)선택하고 확인 버튼을 클릭합니다. 혹시 없다면 파일에서 찾기 버튼을 클릭한 후 외부 코덱의 ax 파일(CLCvd.ax)을 직접 찾아 지정해줘야 합니다.



CyberLink Video Decoder를 선택하고, 사용 조건을 최우선 사용으로 바꿉니다.
그리고, CyberLink Video Decoder를 더블 클릭하면 CyberLink Video Decoder의 설정창이 뜹니다.



MiscellaneousDXVA를 체크하고 확인 버튼을 클릭합니다.(조건2 충족)
코덱마다 DXVA 설정 부분이 조금씩 다르며, Microsoft DTV-DVD Decoder처럼 설정이 아예 없는 코덱도 있습니다.





필터 - 필터 차단 탭 - 빠른 재생 모드에서 빠른 재생 모드 활성화 (내부 비디오 필터 사용 안함)에 체크를 해서 내부 비디오 필터(영상 처리 필터)가 작동하지 못하게 합니다. (조건3 충족)





마지막으로 영상 영상 탭에서 영상 출력 방식을 설정해야 합니다.(조건4 충족)
우선 DXVA Checker를 통해 그래픽카드가 MPEG2 코덱의 DXVA1을 지원하는지, DXVA2를 지원하는지 확인해보세요.

(1) Windows Vista/7 + DXVA2 지원 그래픽카드 (대부분의 Windows Vista/7 컴퓨터)
무조건 Enhanced Video Renderer를 선택해야 하는데, 이 방식은 자막 출력이 되지 않습니다. 다른 영상 출력 방식으로는 DXVA 하드웨어 가속이 되지 않습니다.

(2) Windows Vista/7 + DXVA1 지원 그래픽카드
VMR9 - Renderless mode와 Overlay Mixer가 비교적 무난합니다. VMR9(7) - Windowed mode는 자막 출력이 되지 않습니다. VMR7 - Renderless mode도 시험삼아 테스트 해보세요. Overlay Mixer를 사용하면 에어로 기능이 꺼져버리니 참고하세요.

(3) Windows XP
VMR9 - Renderless mode와 Overlay Mixer가 비교적 무난합니다. VMR9(7) - Windowed mode는 자막 출력이 되지 않습니다. VMR7 - Renderless mode도 시험삼아 테스트 해보세요.


이렇게 4가지 조건에 맞추어 모든 설정을 끝내고 곰플레이어를 일단 종료한 후 H.264/AVC 영상을 재생해보세요. CPU 점유율이 이전보다 크게 줄어들었을 겁니다. 만약 CPU 점유율이 별 차이가 없다면 DXVA가 적용되지 않은 겁니다. 다시 한번 찬찬히 DXVA의 4가지 조건을 체크해보세요.




아래는 곰플레이어 내장 코덱 CyberLink Video Decoder CPU 점유율 비교 결과입니다.

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

테스트 방법 : 테스트 동영상에서 특정한 구간(1분)을 정하고, 그 1분동안 곰플레이어가 차지한 CPU 점유율의 평균값을 산출했습니다.

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

   곰플레이어 내장 코덱
 CyberLink
Video Decoder
(SW 가속)
 CyberLink
Video Decoder
(DXVA)
BluRay Rip 영화
 (1920 x 800, 24fps)
47 %
44 %
3 %
HD 쇼프로
(1280 x 720, 60fps)
재생불량
59 % 4 %

CyberLink Video Decoder에서 DXVA를 사용하면 놀라울 정도로 CPU 점유율이 줄어든 것을 알 수 있습니다.
그리고 CyberLink Video Decoder의 소프트웨어 가속이 곰플레이어 내장 코덱보다 CPU 점유율이 낮게 나왔는데, 사실 이 비교는 약간 불공평합니다. 곰플레이어의 내장 코덱에는 영상 처리 필터 기능까지 포함되어 있기 때문이죠. 그러니 참고만 하세요.
Posted by 커피.
,