2014-06-05 6 views
0

이것은 지저분한 현실 세계 문제 중 하나입니다. 1920 x 1080 @ 30 FPS의 두 가지 비디오 스트림을 제공하는 장치가 있습니다. 나는 관리되지 않는 비디오 장치 용 설명서와 SDK를 자연스럽게 가지고 있습니다. 그것은 GPUDirect를 지원합니다. 우리는 기본적으로 DirectShow를 중심으로 SharpDX/SlimDX/DirectShow.Net 형식의 래퍼 인 SDK를 테스트했습니다. 라이센스 법적 문제로 인해이 SDK가 사용되지 않을 수 있습니다. 이 세상에 새로운 것이므로 나는 대안적인 해결책을 모으려고 노력하고있다.WPF 및 DirectShow의 비디오 디스플레이

질문은 내가 프레임 버퍼를 표면에 가져 와서 필터의 입력 핀에 적용한 것으로 보이는 샘플입니다. 그 후에는 수수께끼입니다. WPF 윈도우에서 비디오를 볼 수 있습니다. 텍스트를 오버레이 할 수 있습니다. DirectShow는 스트리밍 비디오를 표시하는 가장 직접적인 방법이며, DirectX와 Shaders를 사용하여 SharpDX를보다 쉽게 ​​사용할 수 있습니까?

나는 본질적으로 광범위하다는 점을 이해하지만이 무수한 도구들에 직면 해있는 많은 사람들이 있지만이 그래픽 세계에서 경험이 부족하여 이전에 떠난 사람들을 최고의 선택으로 바라 보지 못한다고 생각합니다. 우리를 바른 방향으로 움직이십시오.

답변

1

의견을 기반으로 질문은 기본적으로 오프 주제 간주됩니다, 그래서 나는 그 부분을 생략하고, 그 외에,

의 DirectShow 및 DirectX는 비디오 프리젠 테이션의 지점에서 함께 노력하고 있습니다. Video Mixing Renderer 9Enhanced Video Renderer 구성 요소는 Direct3D를 사용하여 비디오를 제공합니다. 즉, DirectX로 직접 작업하거나 Direct3D에 DirectShow의 "게이트"를 사용하는 것 중 가장 적합한 것을 선택해야합니다.

DirectShow 자체는 DirectShow 필터로 인터페이스 된 소스가 있거나 처리를 위해 다른 DirectShow 필터를 적용해야하거나 비디오 및 오디오를 동기화하려는 경우 일반적으로 사용합니다. 그렇지 않으면 좋은 이유가 있습니다. 사용 가능한 컴포넌트를 사용하는 관점에서 DirectShow의 기능을 사용한다. DirectShow 소스가 아닌 비디오 소스를 가지고 있다면 DirectShow가 아닌 ​​곳으로 비디오를 보내야합니다. 그런 다음 DirectShow를 사용하지 않는 것이 좋습니다. DirectShow 및 Media Foundation은 비디오 스트리밍을위한 기본 API이며 여러분이 언급 한 것은 래퍼 일뿐입니다.

+0

감사합니다. 이해한다면 DirectShow는 믹싱, 렌더링, 오디오 등을 제공합니다. 높은 수준의 기능을 원한다면. DirectX는 말하자면 저수준입니다. 달성해야 할 작업을 수행하기 위해 저수준 API 또는 상위 레벨 API를 사용할 수 있습니다. 실제로 나는 둘 다 사용할 수 있습니다. 상황에 따라 다르다. 내 특정 상황에서 그 대답은 둘 다 같아요. – AeroClassics