AVLD - Another Video Loopback Device
AVLD is a video loopback device for GNU-Linux, written by Pierre Parent and licensed under GPL.
With AVLD you can use Elphel cameras for image acquisition in v4l compatible applications, video conferencing, etc
Video is playing smoothly on a 2.4Ghz dual core notebook at 25fps in 1440x896,
and CPU usage is 'only' 20-25% per core
I could not test beyond the screen and the specific camera/sensor capabilities :)
avld-0.13 VIDIOCGWIN null framesize patch
Opencv v4l capture initialization method was receiving a framesize of 0x0 when it was run before watching once the stream with mplayer which is using an alternative initialization method.
--- video_device.c.orig 2008-09-14 21:28:41.000000000 +0200 +++ video_device.c 2008-09-14 22:00:35.000000000 +0200 @@ -212,7 +212,10 @@ #ifdef DEBUG printk (KERNEL_PREFIX "VIDIOCGWIN\n"); #endif - + + capture_win.width=width; + capture_win.height=height; + if(copy_to_user((void*)arg, &capture_win, sizeof(capture_win))) return -EFAULT; return 0;
Accessing Elphel camera streams through a v4l device (eg: /dev/video0)
After loading the AVLD module:
modprobe avld width=1440 height=896 fps=0
You just have to feed the video device:
mencoder rtsp://192.168.0.9 -nosound -ovc raw -vf format=bgr24 -of rawvideo -o /dev/video0
(or /dev/video1 if you had already another video device driver loaded before)
And you can play the stream for testing:
mplayer tv:// -tv driver=v4l:device=/dev/video0:outfmt=rgb24 -cache 8192 -vo xv
You can change the device parameters when module is already loaded with:
echo "width=800 height=600 fps=0" > /dev/video0
AVLD homepage: http://allonlinux.free.fr/Projets/AVLD/