AMD VGA에서 interlaced 비디오 재생

일의 시작은 Doom9's Forum 에서 아래의 글을 읽으면서 시작되었다.

요약하면 AMD VGA 에서는 출력 컬러 스페이스가 NV12 만을 제대로 지원한다는 이야기인듯 싶어서 바로 테스트를 해보았는데 일단 글에 나와있는대로 DXVA Checker 로 내 VGA (Radeon 5850) 의 상태를 보자.

NV12, YUY2, UYVY 이렇게 세개의 항목들만 나타나고 있다. 그리고 NV12 상태에서만 가장 많은 기능들이 지원된다고 한다. 일반적인 상태에서 동영상 재생 코덱의 출력 컬러 스페이스는 YV12 가 가장 많이 쓰이는데 YV12 로 출력되는 상태에서는 위의 기능들이 전혀 작동을 하지 않는다고 봐야 한다.


그럼 내가 사용하는 ffdshow 에서 NV12 출력이 가능하도록 바꿔보자.

ffdshow Video decoder configuration 에서 Output 항목을 선택한 뒤 YV12 항목을 선택 해제하면 된다. 간단하다.


나는 이전까지는 interlaced 동영상을 재생하기 위해서 DXVA로 mpeg2, h264 에 대해서만 VGA의 deinterlacing 기능을 사용했는데 NV12 로 출력을 하게되면 xvid 동영상도 VGA의 deinterlacing 기능을 이용할 수 있게 된다. 굳이 특정 코덱에서만 DXVA 가 되네 마네 씨름을 할 필요가 없어진 것이다. 더불어 60 프레임으로 프레임 더블링을 하면서 동영상 인코딩을 할 필요도 사라졌고 말이다.


참고로 xvid interlaced 동영상(nvidia_7.avi)을 올려본다. 아래는 테스트 결과이다.


덧글

  • 2012/05/14 23:16 # 답글 비공개

    비공개 덧글입니다.
댓글 입력 영역