hmmmmmmmmm. I think I didn't understand this ("v4l2 on 2.6.x kernels
kernel 2.6.x already has everything included. Just enable the config
options you need (i2c, video4linux and the actual driver), compile
your kernel and you are done".So, let's go to the point. How can I get v4l layer on my debian etch, 2.6.24? as I said before I have no v4l2_convert.so... So, the LD_PRELOAD hack cannot be done now... I downloaded the source of v4l-0.5.6 and tryid to compile it but got an error: make -C libv4lconvert V4L2_LIB_VERSION=0.5.6 all make[1]: Entrando no diretório `/home/kihoma/webcam/libv4l-0.5.6/ libv4lconvert' cc -c -MMD -I../include -I../../../../linux/include - fvisibility=hidden -fPIC -g -O1 -Wall -Wno-unused -Wpointer-arith - Wstrict-prototypes -Wmissing-prototypes -o libv4lconvert.o libv4lconvert.c In file included from libv4lconvert.c:24: ../include/libv4lconvert.h:77: warning: ‘struct v4l2_frmsizeenum’ declared inside parameter list ../include/libv4lconvert.h:77: warning: its scope is only this definition or declaration, which is probably not what you want ../include/libv4lconvert.h:82: warning: ‘struct v4l2_frmivalenum’ declared inside parameter list In file included from libv4lconvert.c:25: libv4lconvert-priv.h:88: error: array type has incomplete element type libv4lconvert.c: In function ‘v4lconvert_get_framesizes’: libv4lconvert.c:839: error: variable ‘frmsize’ has initializer but incomplete type libv4lconvert.c:839: error: unknown field ‘pixel_format’ specified in initializer libv4lconvert.c:839: warning: excess elements in struct initializer libv4lconvert.c:839: warning: (near initialization for ‘frmsize’) libv4lconvert.c:839: error: storage size of ‘frmsize’ isn’t known libv4lconvert.c:843: error: ‘VIDIOC_ENUM_FRAMESIZES’ undeclared (first use in this function) libv4lconvert.c:843: error: (Each undeclared identifier is reported only once libv4lconvert.c:843: error: for each function it appears in.) libv4lconvert.c:853: error: ‘V4L2_FRMSIZE_TYPE_DISCRETE’ undeclared (first use in this function) libv4lconvert.c:858: error: ‘V4L2_FRMSIZE_TYPE_CONTINUOUS’ undeclared (first use in this function) libv4lconvert.c:859: error: ‘V4L2_FRMSIZE_TYPE_STEPWISE’ undeclared (first use in this function) libv4lconvert.c: At top level: libv4lconvert.c:897: error: conflicting types for ‘v4lconvert_enum_framesizes’ ../include/libv4lconvert.h:77: error: previous declaration of ‘v4lconvert_enum_framesizes’ was here libv4lconvert.c: In function ‘v4lconvert_enum_framesizes’: libv4lconvert.c:898: error: dereferencing pointer to incomplete type libv4lconvert.c:899: error: ‘VIDIOC_ENUM_FRAMESIZES’ undeclared (first use in this function) libv4lconvert.c:901: error: dereferencing pointer to incomplete type libv4lconvert.c:906: error: dereferencing pointer to incomplete type libv4lconvert.c:906: error: dereferencing pointer to incomplete type libv4lconvert.c:907: error: dereferencing pointer to incomplete type libv4lconvert.c:908: error: ‘V4L2_FRMSIZE_TYPE_DISCRETE’ undeclared (first use in this function) libv4lconvert.c:909: error: dereferencing pointer to incomplete type libv4lconvert.c:909: error: dereferencing pointer to incomplete type libv4lconvert.c:911: error: ‘V4L2_FRMSIZE_TYPE_CONTINUOUS’ undeclared (first use in this function) libv4lconvert.c:912: error: ‘V4L2_FRMSIZE_TYPE_STEPWISE’ undeclared (first use in this function) libv4lconvert.c:913: error: dereferencing pointer to incomplete type libv4lconvert.c:913: error: dereferencing pointer to incomplete type libv4lconvert.c: At top level: libv4lconvert.c:921: warning: ‘struct v4l2_frmivalenum’ declared inside parameter list libv4lconvert.c:922: error: conflicting types for ‘v4lconvert_enum_frameintervals’ ../include/libv4lconvert.h:82: error: previous declaration of ‘v4lconvert_enum_frameintervals’ was here libv4lconvert.c: In function ‘v4lconvert_enum_frameintervals’: libv4lconvert.c:926: error: dereferencing pointer to incomplete type libv4lconvert.c:927: error: ‘VIDIOC_ENUM_FRAMEINTERVALS’ undeclared (first use in this function) libv4lconvert.c:932: error: dereferencing pointer to incomplete type libv4lconvert.c:933: error: dereferencing pointer to incomplete type libv4lconvert.c:934: error: dereferencing pointer to incomplete type libv4lconvert.c:939: error: dereferencing pointer to incomplete type libv4lconvert.c:940: error: dereferencing pointer to incomplete type libv4lconvert.c:941: error: dereferencing pointer to incomplete type libv4lconvert.c:947: error: dereferencing pointer to incomplete type libv4lconvert.c:948: error: dereferencing pointer to incomplete type libv4lconvert.c:949: error: dereferencing pointer to incomplete type libv4lconvert.c:953: error: dereferencing pointer to incomplete type libv4lconvert.c:954: error: dereferencing pointer to incomplete type libv4lconvert.c:955: error: dereferencing pointer to incomplete type make[1]: ** [libv4lconvert.o] Erro 1 make[1]: Saindo do diretório `/home/kihoma/webcam/libv4l-0.5.6/ libv4lconvert' make: ** [all] Erro 2 What else can I do? On Jan 10, 5:37 pm, GWater <[email protected]> wrote: > I'm sorry but you are mixing a lot of things up here: > > 1. V4L and V4L2 are basically just specifications for video transport > between kernel and userspace. Not driver or programs. > > 2. Our driver (sn9c20x.ko) is V4L2 compliant. However it only offers > unusually formatted image streams (JPEG and Bayer). > > 3. Even V4L2 compliant applications like mplayer can't decode all the > exotic image streams offered by various video drivers. Converting image > data in kernel space is very unpopular with Linus Torvalds. > > 4. Therefore libv4l was created as a userspace layer between driver and > application. It contains a bunch of algorithm capable of cobnverting > exotic image streams into very common ones (i420 and rgb24). > > 5. bttv is another video driver (like sn9c20x) which is completely > unrelated to your problem or this discussion. > > GWater > > signature.asc > < 1KViewDownload --~--~---------~--~----~------------~-------~--~----~ Lets make microdia webcams plug'n play, (currently plug'n pray) To post to this group, send email to [email protected] Visit us online https://groups.google.com/group/microdia -~----------~----~----~----~------~----~------~--~---
