2013-05-14 7 views
0

카메라 드라이버 위에 응용 프로그램을 쓰고 있습니다. IMFSourceReader를 동기화 방식으로 사용하여 드라이버에서 IMFSamples를 추출합니다. 각 스트림의 SourceReader 미디어 유형을 구성하고 내 카메라 드라이버가 지원하는 2 개의 비디오 형식 인 샘플을 생성 할 수 있습니다 (NV12 및 YUY2). 내가 원했던 것은 RGB와 같이 쉽게 표시 할 수있는 비디오 형식 이었기 때문에 이러한 미디어 유형을 변환 할 수있는 MFT를 찾고 있었지만 Media Foundation 설명서에서 알 수 있듯이 SourceReader에 연결할 수 있는지 확신 할 수 없습니다. IMFSourceReader는 디코더를로드 할 수 있지만 디코더는 변환기가 아닙니다. ...IMFSourceReader를 사용하는 동안 스트림 미디어 유형을 변환합니다.

비디오 원본 출력 미디어 유형을 RGB와 같은 다른 미디어 유형으로 변환하는 가장 좋은 방법은 무엇입니까?), 여전히 IMFSourceReader를 사용하고 있습니까?

답변

0

Windows 8에서 GPU 가속 YUV에서 RGB로 변환하기 위해 MF_SOURCE_READER_ENABLE_ADVANCED_VIDEO_PROCESSING 속성을 설정할 수 있습니다.

이전 버전의 Windows에서는 DXVA2를 D3D9와 함께 사용할 수 있으며 IDirect3DDevice9 :: StretchRect()를 사용하여 YUV 서페이스를 RGB 서페이스로 복사 할 수 있습니다. 그래픽 드라이버가이를 지원하면 복사 중에 변환을 수행합니다. ID3D9 :: CheckDeviceFormatConversion()을 호출하여 드라이버가이 작업에 의존하기 전에 수행중인 색상 변환을 지원하는지 확인해야합니다.

관련 문제