|
0
|
1 vloopback is a video4linux driver providing video pipes.
|
|
|
2 With the driver you can use the output of a user program to feed a program that
|
|
|
3 would normally communicate with a video4linux device.
|
|
|
4 To achieve this a video pipe consists out of two video4linux devices:
|
|
|
5 one for the generating program to write its data to and one for a normal
|
|
|
6 video4linux program to read from.
|
|
|
7
|
|
|
8 At the moment there are only few programs that can feed the input of the pipe:
|
|
|
9 invert and resize, the example programs with the driver and
|
|
|
10 motion, my motion detection program.
|
|
|
11
|
|
|
12 Just type 'make' and then 'insmod vloopback'.
|
|
|
13 If you want more pipes use 'insmod vloopback pipes=N' with N between 1 and 16.
|
|
|
14 If you want to create spare pipes use 'spares=N'.
|
|
|
15
|
|
|
16 Type 'dmesg' to see which video devices have been created as input and output.
|
|
|
17 For example: if you have a camera on /dev/video0 the input pipe will most likely
|
|
|
18 be /dev/video1 and the output on /dev/video2.
|
|
|
19 e.g. if you want to watch an inverted image of the camera you would start invert
|
|
|
20 with /dev/video0 as its input and /dev/video1 as its output.
|
|
|
21 Then start a viewing app (such as camstream or xawtv) with as input /dev/video2
|
|
|
22 and you can see yourself inverted.
|
|
|
23
|
|
|
24 This is a very experimental device driver!
|
|
|
25 SMP should work from 0.2 on..... but is untested!
|
|
|
26 If it troubles you fix it or tell me how to fix it :)
|
|
|
27
|
|
|
28 Using vloopback with xawtv:
|
|
|
29 As of 0.83 xawtv will work with vloopback outputs, but you will have to specify
|
|
|
30 the size to use. For example: 'xawtv -c /dev/video2 -geometry 320x240'
|
|
|
31
|
|
|
32 Jeroen Vreeken, pe1rxq@amsat.org
|
|
|
33
|
|
|
34 -------------------------------------------------------------------------------
|
|
|
35
|
|
|
36 Module has experimental support for kernel 2.6.x .
|
|
|
37 The current version 1.0 has been tested with kernel 2.6.x ( not with >= 2.6.16 ).
|
|
|
38
|
|
|
39 To compile and install :
|
|
|
40
|
|
|
41 make ; su - ; make install
|
|
|
42 /sbin/modprobe videodev
|
|
|
43 /sbin/modprobe vloopback
|
|
|
44
|
|
|
45 To uninstall :
|
|
|
46
|
|
|
47 make uninstall ( as root ).
|
|
|
48
|
|
|
49 - Problems :
|
|
|
50
|
|
|
51 * If you got this message after 'insmod ./vloopback.ko' :
|
|
|
52
|
|
|
53 "insmod: error inserting './vloopback.ko': -1 Unknown symbol in module"
|
|
|
54
|
|
|
55 Solution : You must load videodev module :
|
|
|
56
|
|
|
57 'insmod videodev ; insmod ./vloopback.ko'
|
|
|
58
|
|
|
59 * If you got this message after 'modprobe vloopback [options]' :
|
|
|
60
|
|
|
61 "FATAL: Error inserting vloopback (/lib/modules/2.6.8-1-k7/kernel/drivers/misc/vloopback.ko): Too many open files in system"
|
|
|
62
|
|
|
63 You probably used dev_offset= as a option , but the video device that vloopback was trying to register was already in use, maybe the value used for dev_offeset was too high.
|
|
|
64
|
|
|
65 Solution : Try to use a lower value for dev_offset= or even better don't use it .
|
|
|
66
|
|
|
67 Angel Carpintero, ack@telefonica.net
|
|
|
68 Kenneth Lavrsen, kenneth@lavrsen.dk
|