2011-10-08 3 views
1

DirectShow.NET을 사용하여 C#의 웹캠과 인터페이스했으며 지금까지 모든 것이 부드럽게 진행되었습니다. 그러나 지금은 이미지를 "잘라내어"(웹캠 미리보기로 표시되는 동안) 이미지를 만드는 방법을 설정하려고합니다.DirectShow.NET을 사용하여 C#의 IVideoWindow를 통해 반투명 이미지 객체 표시

기본적으로 IVideoWindow 개체 위에 대체로 투명한 이미지를 표시하려고합니다. 그러나 C#의 투명도 처리는 떡갈 나무에서 훨씬 벗어났습니다.

그래서 Image 개체를 IVideoWindow 위에 레이어하는 방법은 무엇입니까? 감사!

+0

기술적으로, 당신은 할 수 없습니다. DirectShow는 다른 개체와 같은 방식으로 디스플레이와 상호 작용하지 않기 때문에. 그러나 DirectShow를 사용하여 원하는 것을 얻을 수있는 방법이 있습니다. 이미지를 오버레이하여 DirectShow 창을 컨버팅 할 수는 없습니다. 아래 Roman의 대답을보십시오. –

답변

2

이를 달성하는 방법 두 가지 방법이 있습니다

  • 비디오 변환 필터를 사용하고 (즉 그림 + 오버레이입니다) 렌더러에
  • 을 혼합 비디오를 제공하거나, VMR의 'mixerbitmap를 사용하는이

    ,174 : '기능은 프레젠테이션 타임

DirectShow.NET에 오버레이하여 상술 한 제의 샘플을 가지고

Samples \ VMR9 \ BitMapMixer BitmapMixer는 VMR9를 사용하여 비디오 위에 물건을 그리는 방법의 예입니다. 이

또 다른 샘플 : DxText 데이터 스트림에 텍스트 문자열을 중첩하는 방법을 보여주는 샘플 응용 프로그램 \ 플레이어 \

샘플. 스트림은 avi 파일에서 읽습니다.

또한 MSDN Forums에서 여러 번 논의됩니다.