Alex Elkman Alex Elkman - 1 year ago 135
Linux Question

Beaglebone Black Video Capture: Error "select timeout"

Hey I'm following Derek Molloy's tutorial:

Using a Logitech c310 webcam, that is supported by the Linux UVC drivers.

root@beaglebone:/boneCV# v4l2-ctl --all
Driver Info (not using libv4l2):
Driver name : uvcvideo
Card type : UVC Camera (046d:081b)
Bus info :
Driver version: 3.8.13
Capabilities : 0x84000001
Video Capture
Format Video Capture:
Width/Height : 640/480
Pixel Format : 'YUYV'
Field : None
Bytes per Line: 1280
Size Image : 614400
Colorspace : SRGB
Crop Capability Video Capture:
Bounds : Left 0, Top 0, Width 640, Height 480
Default : Left 0, Top 0, Width 640, Height 480
Pixel Aspect: 1/1
Video input : 0 (Camera 1: ok)
Streaming Parameters Video Capture:
Capabilities : timeperframe
Frames per second: 30.000 (30/1)
Read buffers : 0
Priority: 2

So we can see it is read by the Beagleboard no problem.
When I try to capture the video, I simply get this error:

root@beaglebone:/boneCV# ./capture -f -c 600 -o > output.raw
Force Format 1
select timeout

Looking at other threads, people don't seem to know how to answer this question, can anyone with experience on this project help me out?


Well I can say the issue is resolved. After rebooting and trying the camera again after several hours, it magically seems to work.

The only thing I changed is the capture call to be simpler it is now:

./capture -o > output.raw

I haven't converted the raw file to mpeg4 yet, since I'm installing ffmpeg as I type this, however I can confirm that grabbing still images is working. The filesize of the output.raw is confirmation that it is indeed capturing video as well. If anyone finds this and is stuck, I will be glad to give assistance as much as I can.

Strangely, it only seems to capture video after using the picture grabber program first. So there must be something the grabber is initializing that isn't happening in the capture.

UPDATE: Ok it turns out that the YUYV video mode is not working but the mjpeg does, putting it into grabber mode initialized mjpeg mode and that's why it worked. Not sure why YUYV doesn't work yet.