firewire device (dv cam or twinpact)
dvsource-dvgrab - collects parameters from command line and config files, connects stdout to dvswitch, shells out to dvgrab which sends dv stream to stdout, thus dvswitch.
The use running dvsource-dvgrab will need read/write permission on the /dev/raw1394 node. This can be done by putting both in the video group:
# /etc/udev/rules.d/91-permissions.rules
# ieee1394 devices
KERNEL=="raw1394", GROUP="video"
$ sudo adduser juser video
file
dvsource-file - connects to dvswitch, reads from a file, sends to dvswitch.
v4l2 device (like a webcam):
modprobe vivi (virtual v4l driver, everyone has it, kinda good for testing.)
ffmpeg -f video4linux2 -s vga -r 25 -i /dev/video0 -f s16le -ar 48000 -ac 2 -i /dev/zero -target pal-dv - | dvsource-file /dev/stdin
(replace 'pal-dv' by 'ntsc-dv' if wanted. Note that -r25 is wrong for ntsc, has to be something like -r30 or some such)
the bits between '-f s16le' and '/dev/zero' (inclusive) are only necessary to produce an empty audio track, which the dvswitch development branch requires ATM. You don't really need it for the stable branch.
grabbing X11 screen:
ffmpeg -f x11grab -s 1024x768 -r 29 -i :0.0 -target ntsc-dv -y - | dvsource-file /dev/stdin
vnc
Run a vnc server on the presenters laptop. disable mouse and keybord - just need to view the screen, not control the box.
Run a vnc client on another box. client outputs a video stream that gets converted to dv and sent to dvswitch. The parts exist, someone needs to assemble them.
audio over Ethernet
(not really DVswitch, but close enough)
arecord -t raw -f S16_LE -r 48000 -B 10000 -c 2 | nc ...
nc -l -p ... | aplay -t raw -f S16_LE -r 48000 -B 10000
This does not work well enough - too many buffer under/over runs. netjack seems to be the way to go.