I just came across the vivi driver:
"VIVI is a Virtual Video Driver that is a V4L2 linux video driver module that
acts as a real device driver but with no physical hardware.
Right now it just play color bars with a Frame Counter and some TV snow in one
corner."
http://v4l.videotechnology.com/vivi.html
This might be handy for adjusting /import/v4l/import_v4l2.c so that it does not
report anything as strange, given the vivi driver should not be considered
strange.
This way if something is reported as strange when using another driver (like the
vga2usb) we can be more confidant that it is indeed the driver's problem.
I have a feeling the vivi driver is not as perfect as it claims to be, so this
is going to be annoying. here is my concern:
[EMAIL PROTECTED]:~/vga2usb/tc$ v4l-info >/dev/null
ioctl VIDIOCGTUNER: Invalid argument
ioctl VIDIOCGAUDIO: Invalid argument
ioctl VIDIOCGFBUF: Invalid argument
v4l-info is about as simple as you can get, so I would think a perfect driver
should not error. I would not be surprised if the tc errors were not a similar
problem.
[EMAIL PROTECTED]:~/vga2usb/tc$ transcode -i /dev/video0 -x v4l2,null -V yuv422p
transcode v1.1.0-alpha7 (C) 2001-2003 Thomas Oestreich, 2003-2008 Transcode Team
[transcode] V: auto-probing | /dev/video0 (OK)
[transcode] V: import format | (null) in (module=v4l2)
[transcode] A: auto-probing | /dev/video0 (OK)
[transcode] A: import format | PCM in (module=null)
[transcode] V: AV demux/sync | (1) sync AV at initial MPEG sequence
[transcode] V: import frame | 352x288 1.22:1 encoded @ 4:3
[transcode] V: bits/pixel | 0.592
[transcode] V: decoding fps,frc | 29.970,4
[transcode] V: video format | YUV422 (4:2:2)
[transcode] A: import format | 0x1 PCM [44100,16,2]
[transcode] A: export | disabled
[transcode] V: encoding fps,frc | 29.970,4
[transcode] A: bytes per frame | 5884 (5885.880000)
[transcode] A: adjustment | [EMAIL PROTECTED]
[transcode] V: IA32/AMD64 accel | sse2 sse mmx cmove asm
[transcode] warning: no option -o found, encoded frames send to "/dev/null"
[transcode] warning: no option -y found, option -o ignored, writing to
"/dev/null"
[transcode] V: video buffer | 10 @ 352x288 [0x100]
[transcode] A: audio buffer | 10 @ 44100x2x16
[import_null.so] v0.2.0 (2002-01-19) (video) null | (audio) null
[import_v4l2.so] v1.4.1 (2007-11-18) (video) v4l2 | (audio) pcm
[export_null.so] v0.1.2 (2001-08-17) (video) null | (audio) null
[import_v4l2.so] v4l2 video grabbing
[import_v4l2.so] resync disabled
[import_v4l2.so] video grabbing, driver = vivi, card = vivi
[import_v4l2.so] critical: VIDIOC_S_FMT: : Invalid argument
[import_v4l2.so] critical: Pixel format conversion: YUV422 [planar] -> YUV422
[planar] (no conversion)
[import_v4l2.so] critical: VIDIOC_S_FMT: : Invalid argument
[import_v4l2.so] critical: Pixel format conversion: UYVY [packed] -> YUV422
[planar] (no conversion)
[import_v4l2.so] Pixel format conversion: YUY2 [packed] -> YUV422 [planar]
[import_v4l2.so] warning: driver does not support setting parameters
(ioctl(VIDIOC_S_PARM) returns "Invalid argument")
[import_v4l2.so] checking colour & framerate standards:
[import_v4l2.so] [NTSC-M]
[import_v4l2.so] receiving 30 frames / sec
[import_v4l2.so] warning: driver does not support cropping
(ioctl(VIDIOC_CROPCAP) returns "Invalid argument"), disabled
[import_v4l2.so] 32 buffers available
[import_v4l2.so] critical: VIDIOC_S_CTRL: Invalid argument
[transcode] (sighandler) SIGINT received 0:00:01, ( 9| 0|11)
[import_v4l2.so] critical: VIDIOC_S_CTRL: Invalid argument
if I encode to an avi, the result is playable. I am just trying to figure out
what code needs to be modified to eliminate the error messages.
Carl K