FFDShow 코덱 DXVA 간단 테스트
2010.01.10 19:27
탐정사무소 개설이래 단 한명의 손님도 받지 못한 고담시의 명탐정입니다. 오늘도 파리 날리다가(날씨가 추워 파리는 없지만) 몇자 끄적여 봅니다.?
?
ffdshow는 원래 DivX, Xvid 로 인코딩된 영상물을 디코딩하기 위하여 만들어진 코덱입니다. 처음에는 MPlayer라는 유명한 재생기 에 통합되어 개발되었으나 FFMpeg 개발자들이 가세하게 되고,?그 뒤에 많은?포맷들을 추가로?지원하게 됨으로써 오늘에 이르렀고, 현재는 ffdshow-tryout 라는 실험적 이름으로 계속 개발이 진행 중 입니다.
GPL(General Public License)에 따른 공개소스인 이?코덱의 장점은 다양한 필터의 적용이 가능하다는 것이겠는데요, CPU 성능만 넉넉하다면 이 녀석만으로도 양질의 영상과 음향을 충분히 즐기실 수 있습니다만 최근에 DXVA를 지원하는 방향으로 개발이 이뤄지는 모양입니다.
최신 버전에서 DXVA1 가속이 가능하게 되었다고 하기 때문에 한가지만 테스트해 보겠습니다.
?
가장 최신의 ffdshow-tryout 은 다음 사이트에서 구할 수 있습니다.
https://xvidvideo.ru/ffdshow-tryouts-project-x86-x64/? (이 이름있는 사이트는 즐겨찾기에 하나 넣어 두세요. ^^;)
이 사이트의 다운로드 페이지에는 그림과 같이 x86, x64용이 각각 있습니다. 그런데 보시다시피 x86용은 2가지가 있는데요, 뒤에 sse icl11 이라는 문자가 붙은 녀석은 Intel C++ Compiler(버전 11)로 컴파일한 버전이고 SSE 명령어 셋을 지원하도록 만들어진 것입니다. 사용자의 CPU가 인텔 제품이고 SSE 명령어 셋을 지원한다면 일응 이 녀석이 좋아 보이나 소문에 의하면 그렇지도 않다고 하네요. 그냥 GCC 컴파일러로 컴파일한 바로 아래 녀석을 써보기로 합니다.
?
파일을 실행하면 이렇게 설치가 진행됩니다. 아쉽게도 한글은 지원하지 않습니다.
?
별 의미없는 설치과정이 흐르다가 다음과 같이 컴포넌트 설치 선택화면이 나옵니다.
저 위에 나열된 것들을 제가 알게 뭡니까... 잘 모르므로 그냥 디폴트로 넘어 갑니다.
?
?
잘 읽어 보면 뭘 하라는 말인지 어렴풋이 이해는 됩니다만 어련히 알아서 옵션 체크돼 있을까요.. 그냥 넘어가 봅니다.
?
?
?
자, Finish가 나왔습니다. 마지막 장면인데 우리의 관심사는 DXVA에 있으므로 세번째 네모칸인 Run DXVA video decoder configuration을 체크합니다.
그리곤 Finish.
?
그럼 위와같이 ffdshow 설정창이 뜹니다. 왼쪽 패널에서 Hardware acceleration 선택.
?
오른쪽에 DXVA codecs enabled 라는 체크 항목이 있습니다. H264와?VC1이 가속 가능한 모양이네요.
?
자, 일단 설치는 완료되었습니다.?
가속이 잘 될까요? 오늘은 Media Player Classic - Homecinema (x86용)를 사용하여 테스트하겠습니다.
?
고리타분한 모습 그대로 입니다.
먼저 새로 설치한 ffdshow를 재생기에 등록시켜 줘야겠죠?
?
Options의 왼편 패널에서 External Filters를 선택합니다. 오른쪽에서는 Add Filter를 눌러 줍니다.
?
뜨는 창에서 ffdshow decoder 3가지를 차례로 등록시켜 줍니다.
?
보기좋게 3종의 ffdshow 필터가 등록이 되었네요.
여기서 잠시 ffdshow DXVA Video Decoder를 더블클릭해 봅니다.
?
아까 ffdshow 설치과정의 마지막에 설정해주었던 바와 같은 화면이 뜨죠? H264와 VC1에 체크가 되어 있는 것 확인합니다.
?
우리는 ffdshow DXVA Video Decoder에 우선순위를 주어야 합니다. 왜냐하면 H264나 VC1은 CyberLink PowerDVD 코덱이라든가, MPC Video Decoder라든가, m$ DTV/DVD Decoder라든가, CoreAVC Codec라든가 하는 여러가지 코덱이 가속하여 재생이 가능하기 때문에 작동되길 원하는 필터에 우선권을 주지 않으면 다른 코덱이 먼저 가로채어 영상물을 재생할 수 있기 때문입니다.
ffdshow에 우선권을 주기기 위하여는 오른쪽 우선순위 지정하는 곳에 Prefer를 선택합니다.?어떤 코덱이 재생 가능한 영상물이 플레이될 경우?(Prefer로 설정된) 해당 코덱을 가장 먼저 활용하겠다는 뜻이겠습니다.
디폴트로는 Set merit 가 선택되어 있을 터인데 Set merit 아래의 16진수 숫자가 바로 우선순위를 정하는 순번입니다. 같은 기능의 코덱이라도 이 수치가 높을 수록 우선 선택되어 먹히는 것이죠.
가끔 이 기능이 잘 동작하지 않는 경우가 있는데 이때는 Internal Filters에서 조정하거나, 건방지게 튀어나오는 코덱의 내부 환경설정을 통해 우선순위를 바꾸어 주는 방법이 있습니다.
?
샘플 동영상으로는 예전에 선보인 바 있는 영화 1080P "300"으로 했습니다. x264(H264의 클론) 인코딩이고 .mkv 콘테이너에 담겨 있습니다.
?
잘 재생이 되고 있습니다. 우리의 대장님 오늘도 불만을 가득 안고 열심히 산을 오르고 있습니다.
?
화면 중앙에 우클릭하여 'Filters' => 'Enhanced Video Render' 부분을 확인해 봅니다.
일단 비디오 필터로서 ffdshow DXVA Video Decoder가 먹이고 있는 것은 확인되고 있습니다.
?
EVR(Enhanced Video Render) 부분을 선택하면 위와 같은 창이 뜹니다. 24프레임의 영상물이네요.
Pin Info 탭을 클릭합니다.
?
영상정보가 나옵니다. EVR 필터에 DXVA로 출력되고 있음을 알 수 있습니다.
언제나 그렇듯이 작업관리자를 열어봐야겠죠?
?
네.. CPU 사용량이 1%에 불과하군요. 가속이 잘 되고 있습니다.
?
더 테스트해보고 싶지만 이쯤에서 중간 결론을 내볼까 합니다.
저는 ffdshow 가 DXVA를 지원하려 노력하고 있다는 사실 자체를 대단히 고맙고 즐겁게 생각합니다. 짧은 미래에 DXVA나 CUDA가속을 원할하게 지원하게 된다면 ffdshow는 최강의 코덱으로 대접 받으리라 믿어 의심치 않습니다. 그러나 아직은 실험단계인지라 적지않은 문제가 있으리라 보여지네요.
?
제가 ffdshow를 쓰면서 알게된 몇가지 단점을 보고드리겠습니다.
1.?환경설정 인터페이스가 너무 어렵습니다.
초보자는 감히 흉내내거나 열어보기 조차 꺼려질 정도로 어리둥절한 설정값들이 많습니다. 이 점이 오히려 강력한 요소이기도 합니다만(KMPlayer의 환경설정이 역시 어렵지만 그만큼 훌륭한 플레이어로 자릴 잡았었어요) 아무튼 언뜻 접하기 힘든 부분임에는 틀림이 없습니다.
?
2. 탐색기(explorer.exe)와 가끔 충돌을 일으킵니다.
예전에 통합코덱을 설치하셨던 분들 중에 미디어 파일을 넣어둔 폴더만 열면 explorer.exe가 종료되었다는 에러메세지를 접하신 경험이 한두번 있으실 겁니다. 지금도 폴더내 미디어 파일의 썸네일 미리보기를 해놓으면 폴더가 열리다가 에러가 생기는 경우가 있지요. 그 대부분의 이유가 바로 이 ffdshow에 있습니다. (있다고 저는 의심하고 있습니다)
?
3. 알 수 없는 잔잔한 에러가 꽤 있습니다. 제 경우 특히 Potplayer에서는 재생이 끝나고 종료시에 AppCrash가 발생하더군요. 프레임을 건너 뛰면 화면이 깍두기가 생기면서 깨졌다가 돌아온다든가.. 뭐든 처음부터 완벽할 순 없겠죠. 오픈소스이고 열정적인 개발자분들이 달려들고 있는 만큼 빠른 시일내 우리 앞에 훌륭한 모습으로 우뜩 다가서리라 믿어 봅니다.
?
오늘은, 천하의 ffdshow가 바야흐로 DXVA 지원을 시작했다는, 그것만으로써 너무 반가운, 소식을 전하는 것에 만족하면서?이만 마무리하고자 합니다.
감사합니다.
?
?
?
댓글 [11]
-
아누 2010.01.10 19:35 -
고달픈명탐정 2010.01.10 20:27
넵, k-lite codec pack의 경우는 설치단계에서 아예 ffdshow의 tray-icon을 보이지 않게 하는 메뉴가 있더군요.ㅎㅎ
역시 트레이아이콘이 무한 실행되거나 하는 문제가 있기는 한데.. 안보이도록 설정해도 가끔 explorer가 죽습니다.
-
80당카오스 2010.01.10 20:50 어제 1월8일버전 설치하였는데 없던데..1월10일 버전에는 포함되었나보군요 !.x64비트도 해당되겠죠?
-
고달픈명탐정 2010.01.10 20:54
넵!! ^_^
-
80당카오스 2010.01.10 21:03 방금 설치해보았는데 잘적용이 되는군요 ㅎㅎ 근데 종료시에 오류가 나내요..
-
고달픈명탐정 2010.01.10 21:08
팟플레이어신가요? 저도 오류납니다. MPC는 이상없고..
-
80당카오스 2010.01.10 21:27 내 pot입니다~~ mpc나 그냥 FFd 코덱의 경우엔 오류가 없는데 Dxva 적용된 FFd 코덱 사용후 종료시에만 오류가 생기내요
-
더블헤더 2010.01.10 23:04
64bit 도 잘됩니다
점점 기대됩니다 ffdshow ㅎㅎㅎ
가속잘되네요
-
유산균 2010.01.11 15:01
정성스런 사용기 잘 보고 갑니다 ^^
-
드라이빙필 2010.01.11 18:03
오~ ffdshow도 DXVA를 지원하기 시작했군요. 반가운 뉴스입니다. ^^
-
... 2010.01.13 12:49 ffdshow프로젝트페이지는 소스포지쪽이 아닌가요? https://sourceforge.net/projects/ffdshow-tryout/ 그리고 포럼은 https://www.doom9.org/ 이쪽으로 알고있습니다.
충돌문제는 트레이아이콘 안나오게 설정해보세요.