2011-05-16 5 views
2

다음 링크에 정확히 같은 질문이 있습니다. Using DirectShow filters outside DirectShow? 저는 직접적인 쇼를 보러 왔으며 그 스택에있는 두 가지 대답은 저에게 분명하지 않습니다. 저자와 연락하여 문제를 해결할 수 있는지 묻는 방법을 찾을 수 없습니다. 이것을 할 수있는 방법이 있습니까?"DirectShow 외부에서 DirectShow 필터 사용"정보

또는이 두 답변에 대해 더 자세히 설명해 줄 수 있습니까? "손으로" "다양한 필터를 호출하는 것"이란 의미는 무엇이며 "전체 필터 그래프를 래핑하는"것은 무엇을 의미합니까?

+1

왜 DirectShow 외부에서 DirectShow 필터를 사용 하시겠습니까? 아마도 여러분의 상황에서 directshow를 사용하는 것이 더 쉬울 것입니다. 예를 들어 samplegrabber 필터를 사용하여 DirectShow 그래프에서 응용 프로그램으로 데이터를 보낼 수 있습니다. – wimh

+0

왜 이렇게하고 싶은지 설명 할 수 있습니까? 연결된 질문의 묻는 사람은 Media Foundation에서 DirectShow 디코더를 사용하려고했습니다. 그게 당신이하려는 일입니까? 그렇지 않다면 목표를 달성하는 더 쉬운 방법이있을 것입니다. – Alan

+0

관심을 가져 주셔서 감사합니다. 예, 저는 Media Foundation에서 DShow 디코더를 사용하기 위해 너무 노력 중이며 DShow에서 프로그래밍의 복잡성을 추가하지 않으면 더 좋습니다. – milton

답변

2

"by-hand"방법 (나쁜 생각, IMO)에 대해서는 언급 할 수 없지만 DirectShow를 사용하는 한 가지 옵션은 Media Foundation 개체에 전체 필터 그래프를 래핑하는 것입니다. 그래서 예, Media Foundation 객체 안에는 관심있는 필터와 함께 완전한 DirectShow 그래프가 있습니다.

이것은 물론 평범한 그래프가 아닙니다. DirectShow 그래프의 경우, 일부 입력 필터가 필요하고 그래프를 얻기 위해 샘플 그래버 필터가 필요하다. 귀하의 그래프는 같은 보일 것이다 : -> 일부 DMO 디코더 -> 샘플 그래버 -

소스 필터> 널 렌더러

을 ... 샘플 그래버 콜백에게 샘플을 통과 할 때마다 부를 것이다.

디코더 필터가 DMO 인 경우 훨씬 쉽게됩니다. DMO 필터를 사용하지 않습니까?

관련 문제