2017-10-26 1 views
1

Aforge (directShow)를 사용하여 usb 장치에서 이미지를 가져 오려고합니다. 장치 (USB3HDCAP)에는 3 가지 입력 (HDMI, DVI 및 S-Video)이 있습니다. 위 코드를 사용하면 기본 입력 이미지에 액세스하여 가져올 수 있습니다 (HDMI에서만 가능). 그러나 장치의 실제 입력을 HDMI에서 DIV로 변경하면 이미지가 검은 색이됩니다. 다른 입력 (DVI 또는 S- 비디오)에서 비디오를 가져 오려면 어떻게해야합니까?DirectShow를 사용하여 usb 장치에서 다른 소스 선택

LocalWebCamsCollection = new FilterInfoCollection(FilterCategory.VideoInputDevice); 
    LocalWebCam = new VideoCaptureDevice(LocalWebCamsCollection[0].MonikerString); 
    LocalWebCam.NewFrame += new NewFrameEventHandler(Cam_NewFrame); 
    LocalWebCam.Start(); 

답변

1

코드 스 니펫은 비디오를 캡처하는 것입니다. 비디오 캡처 하드웨어에서 입력을 전환하려면 크로스바를 사용하여 장치를 다시 구성해야합니다. 일반 DirectShow의

은이 같은 그의입니다 : AForge.NET 당신이 유사한 방법, 예를 들어 가입을 찾고해야와

참조 :

이 ... VideoCaptureDivece.AvailableCrossbarVideoInputs가 가능한 비디오 입력의 배열을 제공합니다. VideoCaptureDivece.CrossbarVideoInput은 무엇을 허용합니까? - 예 비디오 입력. 따라서이 둘을 함께 결합하십시오 :

VideoKaynagi.CrossbarVideoInput = CrossbarVideoInput.AvailableCrossbarVideoInputs[0]; 

물론 S- 비디오 입력 색인을 사용하여 0을 변경해야합니다.

+0

두 번째 것, 이미 시도했기 때문에 나는 결과를 얻지 못할 것이다 - AvailableCrossbarVideoInputs - 배열이 비어 있기 때문에 첫 번째 시도 (DirectShow)를 시도 할 것이다. –

관련 문제