I was having a real hard time trying to view video off a DC60 from a PC running Ubuntu 9.04 Desktop, and the post by Busman was extremely useful. Busman gives 2 patches that should be applied. My problem was that i applied only the patch at http://www.ivor.org/stk0408-1.patch
and not the patch at http://www.bentrask.com/NTSC.diff
After applying both patches i could view NTSC video at 25 and 30 fps without any problem with mplayer. really smooth!! Thanks, Busman.
Environment used was as follows:
- the latest stk driver v2.2 obtained from
-r 82 svn co https: / / syntekdriver.svn.sourceforge.net / svnroot / syntekdriver / trunk / driver syntekdriver
with the above two patches applied.
- The video source used was a DVD player (NTSC format) - Composite video output.
- mplayer was invoked with following syntax:
mplayer tv:// -tv driver=v4l2:width=320:height=240:fps=25:outfmt=rgb 24:device=/dev/video0
Only 640*480 resolution worked despite the resolution specified in the syntax. Also, when i tried to quit mplayer, the application got frozen. You can issue a "Ctrl-Z" followed by "exit" to exit the shell and re-launch mplayer.
I tried xawtv as well. It displays garbled screen with default invoke. Some websites mention that the xawtv output is de-interlaced with DC60. However, the application closes smoothly on user's command.
The audio capturing for DC 60, however, didnt seem to work under Windows XP or Ubuntu. There seems to be no audio support in the stk driver.
url00, it seems the NTSC patch should be applied to the file "stk11xx-dev-0408.c".
Overall, great quality for a cheap capture device!!
i'd like to get my EasyCap working but i need a little more help.
https://syntekdriver.svn.sourceforge...r/trunk/driver already has the patchs, i just need to add the ntsc stuff?
and thus to install just :-
make -f Makefile.standalone clean
make -f Makefile.standalone
modprobe videodev
sudo insmod stk11xx.ko or sudo insmod kernelextension.ko??
all as sudo?? (this doesn't work for me)
thank you...
Last edited by bgiannes; September 29th, 2009 at 12:35 AM.
Hi romeshj
I followed your instructions to compile but received the following errors: my kernel is 2.6.28-15. any help is appreciated. thanks.
make -f Makefile.standalone
make -C /lib/modules/2.6.28-15-generic/build SUBDIRS=/home/lchan/easycap/syntekdriver modules
make[1]: Entering directory `/usr/src/linux-headers-2.6.28-15-generic'
CC [M] /home/lchan/easycap/syntekdriver/stk11xx-usb.o
CC [M] /home/lchan/easycap/syntekdriver/stk11xx-v4l.o
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c: In function ‘v4l_stk11xx_ioctl’:
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c:1744: warning: passing argument 1 of ‘video_usercopy’ from incompatible pointer type
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c:1744: warning: passing argument 2 of ‘video_usercopy’ makes pointer from integer without a cast
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c:1744: warning: passing argument 4 of ‘video_usercopy’ makes integer from pointer without a cast
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c:1744: error: too few arguments to function ‘video_usercopy’
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c: In function ‘v4l_stk11xx_register_video_device’:
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c:1768: warning: assignment from incompatible pointer type
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c: At top level:
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c:1810: error: variable ‘v4l_stk11xx_fops’ has initializer but incomplete type
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c:1811: error: unknown field ‘owner’ specified in initializer
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c:1811: warning: excess elements in struct initializer
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c:1811: warning: (near initialization for ‘v4l_stk11xx_fops’)
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c:1812: error: unknown field ‘open’ specified in initializer
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c:1812: warning: excess elements in struct initializer
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c:1812: warning: (near initialization for ‘v4l_stk11xx_fops’)
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c:1813: error: unknown field ‘release’ specified in initializer
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c:1813: warning: excess elements in struct initializer
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c:1813: warning: (near initialization for ‘v4l_stk11xx_fops’)
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c:1814: error: unknown field ‘read’ specified in initializer
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c:1814: warning: excess elements in struct initializer
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c:1814: warning: (near initialization for ‘v4l_stk11xx_fops’)
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c:1815: error: unknown field ‘poll’ specified in initializer
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c:1815: warning: excess elements in struct initializer
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c:1815: warning: (near initialization for ‘v4l_stk11xx_fops’)
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c:1816: error: unknown field ‘mmap’ specified in initializer
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c:1816: warning: excess elements in struct initializer
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c:1816: warning: (near initialization for ‘v4l_stk11xx_fops’)
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c:1817: error: unknown field ‘ioctl’ specified in initializer
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c:1817: warning: excess elements in struct initializer
/home/lchan/easycap/syntekdriver/stk11xx-v4l.c:1817: warning: (near initialization for ‘v4l_stk11xx_fops’)
make[2]: *** [/home/lchan/easycap/syntekdriver/stk11xx-v4l.o] Error 1
make[1]: *** [_module_/home/lchan/easycap/syntekdriver] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.28-15-generic'
i just upgrade to 9.10 and the system see the easycap correctly i havn't tryed recording anything, but it looks good.
EDIT: well it see's it as a device but it don't work.
Last edited by bgiannes; December 7th, 2009 at 06:52 AM.
Followed all instructions, it seems it compiles right but when I do the "sudo insmod stk11xx.ko I get the following error:
insmod: error inserting 'stk11xx.ko': -1 Unknown symbol in module
That happens with all versions of the driver, the dmesg relevant output is:
[ 4452.772560] stk11xx: disagrees about version of symbol video_devdata
[ 4452.772574] stk11xx: Unknown symbol video_devdata
[ 4452.774593] stk11xx: disagrees about version of symbol video_unregister_device
[ 4452.774602] stk11xx: Unknown symbol video_unregister_device
[ 4452.775278] stk11xx: disagrees about version of symbol video_device_alloc
[ 4452.775286] stk11xx: Unknown symbol video_device_alloc
[ 4452.775675] stk11xx: disagrees about version of symbol video_register_device
[ 4452.775683] stk11xx: Unknown symbol video_register_device
[ 4452.780282] stk11xx: disagrees about version of symbol video_device_release
[ 4452.780286] stk11xx: Unknown symbol video_device_release
Any ideas?
I am using karmic by the way!
SuperMau,
If you have installed v4l-dvb from mercurial sources, a problem is in bad Modules.symvers in kernel headers - it was described here:
http://lists.berlios.de/pipermail/li...ry/003112.html
Simply copy Module.symvers from compiled v4l-dvb to patched syntekdriver directory:
and thenCode:cp <path-to-v4l-dvb-sources>/v4l/Module.symvers .
thenCode:make make install
you can force PAL tv standard adding norm=1 option (without it I can't get color image on PAL camera) and correct coloursCode:install -m 644 -c stk11xx.ko /lib/modules/`uname -r`/kernel/drivers/media/video/ /sbin/depmod -a
and reboot.Code:echo 'options stk11xx norm=1 colour=24000' > /etc/modprobe.d/syntek.conf
If v4l-dvb compilation is required for each new kernel, you have to make distclean before v4l-dvb compilation.
I'm also getting the same compilation error as esurfer11:
using gcc 4.3.3 on ubuntu 9.04 (kernel 2.6.28-16-generic)Code:root@barabas:/usr/local/src/syntekdriver/trunk/driver# make -f Makefile.standalone make -C /lib/modules/2.6.28-16-generic/build SUBDIRS=/usr/local/src/syntekdriver/trunk/driver modules make[1]: Map '/usr/src/linux-headers-2.6.28-16-generic' wordt binnengegaan CC [M] /usr/local/src/syntekdriver/trunk/driver/stk11xx-usb.o CC [M] /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.o /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c: In functie ‘v4l_stk11xx_ioctl’: /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c:1744: let op: passing argument 1 of ‘video_usercopy’ from incompatible pointer type /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c:1744: let op: passing argument 2 of ‘video_usercopy’ makes pointer from integer without a cast /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c:1744: let op: passing argument 4 of ‘video_usercopy’ makes integer from pointer without a cast /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c:1744: fout: te weinig argumenten voor functie ‘video_usercopy’ /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c: In functie ‘v4l_stk11xx_register_video_device’: /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c:1768: let op: assignment from incompatible pointer type /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c: Op bovenste niveau: /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c:1810: fout: variabele ‘v4l_stk11xx_fops’ heeft beginwaarde, maar een onvolledig type /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c:1811: fout: unknown field ‘owner’ specified in initializer /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c:1811: let op: overtollige elementen in beginwaarde van struct /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c:1811: let op: (near initialization for ‘v4l_stk11xx_fops’) /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c:1812: fout: unknown field ‘open’ specified in initializer /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c:1812: let op: overtollige elementen in beginwaarde van struct /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c:1812: let op: (near initialization for ‘v4l_stk11xx_fops’) /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c:1813: fout: unknown field ‘release’ specified in initializer /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c:1813: let op: overtollige elementen in beginwaarde van struct /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c:1813: let op: (near initialization for ‘v4l_stk11xx_fops’) /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c:1814: fout: unknown field ‘read’ specified in initializer /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c:1814: let op: overtollige elementen in beginwaarde van struct /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c:1814: let op: (near initialization for ‘v4l_stk11xx_fops’) /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c:1815: fout: unknown field ‘poll’ specified in initializer /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c:1815: let op: overtollige elementen in beginwaarde van struct /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c:1815: let op: (near initialization for ‘v4l_stk11xx_fops’) /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c:1816: fout: unknown field ‘mmap’ specified in initializer /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c:1816: let op: overtollige elementen in beginwaarde van struct /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c:1816: let op: (near initialization for ‘v4l_stk11xx_fops’) /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c:1817: fout: unknown field ‘ioctl’ specified in initializer /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c:1817: let op: overtollige elementen in beginwaarde van struct /usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.c:1817: let op: (near initialization for ‘v4l_stk11xx_fops’) make[2]: *** [/usr/local/src/syntekdriver/trunk/driver/stk11xx-v4l.o] Fout 1 make[1]: *** [_module_/usr/local/src/syntekdriver/trunk/driver] Fout 2 make[1]: Map '/usr/src/linux-headers-2.6.28-16-generic' wordt verlaten make: *** [driver] Fout 2
Double post
Hello,
I install ubuntu 9.10 and did just this:
# svn co https://syntekdriver.svn.sourceforge...r/trunk/driver syntekdriver
# cd syntekdriver
# make -f Makefile.standalone clean
# make -f Makefile.standalone
# modprobe videodev
# insmod stk11xx.ko
All this above works fine, without error. The /dev/video0 was created with sucess after insmod stk11xx.ko. Well, after I used xawtv to see image, image is show but image are wrong (wrong norm) because I'm using a NTSC camera. And xawtv option don't show NTSC norm option. Just only show for me norm "webcam". I try mplayer too but not works too because NTSC is not recognized.
How is possible to do for works in analogue NTSC camera?
Thank you!
Bookmarks