VMR9 인스턴스로 구성된 FilterGraph를 사용하여 비디오 파일을 렌더링하고 있습니다. FilterGraph는 GraphBuilder-> RenderFile()을 사용하여 자동으로 생성됩니다. 기본적으로 내 설정은 여기에 설명되어 있습니다 : http://www.codeproject.com/Articles/9206/Using-the-DirectShow-Video-Mixing-Renderer-filteVideo Mixing Renderer 9 (VMR9) : 입력 핀의 AM_MEDIA_TYPE에서 FPS 가져 오기
문제 : FPS, 재생 시간 등의 비디오 내부를 감지하고 싶습니다. RenderFile() 호출 후 MediaControl-> StopWhenReady() 및 Run() 및 Pause()로 재생됩니다. 내가 VMR9의 입력 핀에서 AM_MEDIA_TYPE 구조체 오려 프레임 속도를 검출하기 :
필터 그래프 RenderFile (호출 올바르게 작성한다) 때문에,이 핀이 연결되어야 내 의견VRM->FindPin("VMR Input0", pin); // S_OK
pin->ConnectionMediaType(&mt); // VFW_E_NOT_CONNECTED
내 입력 스트림 왜 그렇지 않은가? 그리고이 문제를 어떻게 처리 할 것인가?
Microsoft는 그래프를 탐색하고 AM_MEDIA_TYPE에 대한 액세스를 허용하는 IID_IAMStreamConfig와 같은 특정 인터페이스를 찾기 위해 일부 기능 (http://msdn.microsoft.com/en-us/library/windows/desktop/dd375791%28v=vs.85%29.aspx)을 제공합니다. 그러나 이러한 옵션은 구현에 실패합니다. 내가 접근 할 수있는 유일한 핀은 위에서 언급 한 것입니다.
미리 감사드립니다.
고마워요! 실제로 그래프는 내가 예상했던 것처럼 보이지 않습니다. 이 솔루션 http://msdn.microsoft.com/en-us/library/windows/desktop/dd377551%28v=vs.85%29.aspx 나를 위해 일했습니다. – japedo