2012-07-09 3 views
8

opencv 용 스테레오 쌍을 얻으려고합니다. Logitech B910과 Logitech C910 웹캠을 USB에 연결합니다. 그러나이 오류가 있습니다. 나는 quirks 매개 변수로 재생하고 outfmt=mjpeg을 mplayer로 설정했지만이 오류가 다시 발생합니다.libv4l2 : 스트림 켜기 오류 : 장치에 남은 공간이 없습니다.

어디에서 uvcvideo 또는 usb 드라이버의 버그를 찾을 수 있습니까? 사용해야하는 모니터링 또는 디버깅 도구는 무엇입니까?

+0

첫 번째 단계는 출력 장치에 충분한 공간이 남아 있는지 확인 했습니까? –

+0

물론, 5Gb 이상. – victor1234

+0

약어는 5 기가 바이트를 의미합니다. GB 또는 GiB를 사용하는 것 같습니다. –

답변

8

이것은 잘못된 단어입니다. 원인에 컨트롤러의 USB 대역폭이 충분하지 않습니다.

짐작할 수 있듯이 카메라를 MJEPG로 사용하면 문제가 해결됩니다.

OpenCV는 FFMPEG를 사용하여 획득을 수행 할 수 있습니다 (리눅스 빌드는 일반적으로 FFMPEG를 지원합니다). OpenCV 문서는 FFMPEG가 사용되는 경우 획득 형식을 변경할 수 없다는 것을 인정합니다.

내 연구에서 발견 한 것은 FFMPEG 구성을 변경해야한다는 것입니다.

가능한 경우 카메라를 다른 USB 컨트롤러로 옮겨보십시오.

+0

카메라에서 MJEPG를 사용하려면 어떻게합니까? Opencv 또는 카메라 드라이버에서 어딘가에? – bakalolo

+0

[USB 어댑터 카드] (https://www.newegg.com/Product/ProductList.aspx?Submit=ENE&DEPA=0&Order=BESTMATCH&N=-1&isNodeId=1&Description=pci+usb+card)로 해결할 수 있습니까? 온보드 컨트롤러와 함께 제공됩니까? 또는 DMA가 실행되는 동안 호스트 메모리가 문제가됩니까? –

+0

예, 다른 컨트롤러를 추가하면 도움이 될 것입니다 –

0

공간이 부족한 USB 컨트롤러에 문제가 있습니다.

일반적으로 장치를 다른 USB 포트에 꽂아 고정 할 수 있습니다. 예를 들어 내 보드와 USB 2 포트 및 USB 3 포트에 eSATA 포트가 있습니다. 이전에 USB2 포트를 사용 중이었다면 USB3 포트를 사용해보십시오.

당신은 당신은 배포판에 따라 sudo를을 사용해야 할 수도 있습니다

cat /sys/kernel/debug/usb/devices | grep "B: " 

를 통해 우분투에서 명령 줄을 통해 비디오 카드의 할당을 볼 수 있습니다. 만약 당신이 창문, 또는 osx 미안 해요 그 시스템에 대한 해결책을 모르겠습니다.

내 결과는 다음과 같습니다.

B: Alloc= 0/800 us (0%), #Int= 0, #Iso= 0 
B: Alloc= 0/800 us (0%), #Int= 0, #Iso= 0 
B: Alloc= 0/800 us (0%), #Int= 0, #Iso= 0 
B: Alloc= 0/800 us (0%), #Int= 0, #Iso= 0 
B: Alloc=140/900 us (16%), #Int= 4, #Iso= 0 
B: Alloc= 0/900 us (0%), #Int= 0, #Iso= 0 
B: Alloc= 17/900 us (2%), #Int= 1, #Iso= 0 
B: Alloc= 0/900 us (0%), #Int= 0, #Iso= 0 
B: Alloc= 0/800 us (0%), #Int= 0, #Iso= 0 
B: Alloc= 0/800 us (0%), #Int= 1, #Iso= 0 
B: Alloc= 0/800 us (0%), #Int= 0, #Iso= 0 
2

이이 재부팅 할 때마다 초기화됩니다 나

sudo rmmod uvcvideo 

sudo modprobe uvcvideo quirks=128 

에 대한 매력으로 작동합니다. 이 작동하는 경우, 다음 파일을 생성 : 난 그냥이 문제로 실행하고 나는 내 웹캠 (로지텍 QuickCam을 줌)를 연결했습니다 밝혀 http://renoirsrants.blogspot.in/2011/07/multiple-webcams-on-zoneminder.html

+0

놀라운! 좋은 일 broski! – bakalolo

0

options uvcvideo quirks=128

확인이 링크 : sudo vi /etc/modprobe.d/uvcvideo.conf 라인을 포함 USB 3.0 포트 대신 USB 2.0 포트가 먼저 연결되었습니다.

관련 문제