DirectShow 필터로 비디오를 재생하는 순간에 응용 프로그램을 만들고 있습니다. 응용 프로그램은 WPF로 작성되었으며 MediaElements를 사용하여 비디오를 재생합니다. DirectShow 필터가 등록되어 있으면 비디오가 재생됩니다. 지금은 재생하기 전에 필터를 등록하기 위해 regsvr32를 사용합니다.임베디드 DirectShow 필터 등록
응용 프로그램을 실행할 때 포함 된 리소스에서 필터를로드 할 수 있다면 궁금한 사항은 무엇입니까? 필터를 등록하려면 관리자 권한이 필요하지 않습니다.
편집 :
나는이 정보를 사용하고 해결책을 마련하기 위해 노력하고있어 좋아. DirectShow 영역에 대한 지식 부족에 대해 변명해야합니다. 필자는 필터를 작성하지 않았고, 단지 그것을 사용하는 솔루션을 제시하려고합니다. DirectShow 및 그 구성 요소를 좀 더 잘 이해할 수 있도록 조금 더 연구하려고합니다.
필터를로드하는 데 사용하는 편리한 ComHelper 클래스를 찾았습니다.
https://gist.github.com/jjeffery/1568627
나는 필터의 인스턴스를 만들려면 아래 코드를 사용하고 있습니다.
LibraryModule module = LibraryModule.LoadModule(@"filter.ax");
var comObject = ComHelper.CreateInstance(module, new Guid("c91aa7be-f627-46e3-b79f-2de55da46a8b"));
이 정보가 맞습니까? 나는 다음에 어디로 갈지 알아 내려고하고있다. 어떻게하면 필터 그래프를 만들 수 있을까요?
내가 이것을 사용하지만, 액세스 위반 예외가 될 때 응용 프로그램 종료를 발생
도 참조하십시오. 동일한 등록 된 필터를 사용하면 예외가 발생하지 않습니다. 이 문제를 해결하는 방법을 알고 있습니까? –