Hi! First, I re-did pipeline setup in python, it seems slightly less hacky then in shell. I tried to modify fcam-dev to work with the new interface, but was not successful so far. I can post patches if someone is interested (mplayer works for me, but that's not too suitable for taking photos). I tried to get gstreamer to work, with something like: class Camera: gst="/usr/bin/gst-launch" def __init__(m): pass def run(m): if 0 != subprocess.call( [m.gst, "-v", "--gst-debug-level=2", # "v4l2src", "device=/dev/video2", "num-buffers=3", "!", # "video/x-raw-yuv,width=864,height=656", "!", "v4l2src", "device=/dev/video6", "num-buffers=3", "!", "video/x-raw-yuv,width=800,height=600,format=(fourcc)UYVY", "!", # ,format=(fourcc)YU12 "ffmpegcolorspace", "!", "jpegenc", "!", "filesink", "location=delme.jpg" ]): But could not get it to work so far. Best regards, Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
#!/usr/bin/python3 import subprocess import os class Camera: mc="/my/v4l-utils/utils/media-ctl/media-ctl" def __init__(m): m.win_x, m.win_y = 800, 600 m.cap_x, m.cap_y = 864, 656 #m.cap_x, m.cap_y = 2592, 1968 def media_ctl(m, s): if 0 != subprocess.call(['sudo', m.mc] + s): print("Call ", s, " failed?") def media_l(m, s): m.media_ctl(['-l', s]) def media_v(m, s): m.media_ctl(['-V', s]) def back(m): m.media_ctl(['-r']) m.media_l('"et8ek8 3-003e":0 -> "video-bus-switch":1 [1]') m.media_l('"video-bus-switch":0 -> "OMAP3 ISP CCP2":0 [1]') m.media_l('"OMAP3 ISP CCP2":1 -> "OMAP3 ISP CCDC":0 [1]') m.media_l('"OMAP3 ISP CCDC":2 -> "OMAP3 ISP preview":0 [1]') m.media_l('"OMAP3 ISP preview":1 -> "OMAP3 ISP resizer":0 [1]') m.media_l('"OMAP3 ISP resizer":1 -> "OMAP3 ISP resizer output":0 [1]') size = "%dx%d" % (m.cap_x, m.cap_y) m.media_v('"et8ek8 3-003e":0 [SGRBG10 %s]' % size) m.media_v('"OMAP3 ISP CCP2":0 [SGRBG10 %s]' % size) m.media_v('"OMAP3 ISP CCP2":1 [SGRBG10 %s]' % size) m.media_v('"OMAP3 ISP CCDC":2 [SGRBG10 %s]' % size) m.media_v('"OMAP3 ISP preview":1 [UYVY %s]' % size) m.media_v('"OMAP3 ISP resizer":1 [UYVY %dx%d]' % (m.win_x, m.win_y)) def perms(m): os.system("sudo chmod 666 /dev/video? /dev/v4l-subdev*") def run(m): os.system("mplayer -tv driver=v4l2:width=%d:height=%d:outfmt=uyvy:device=/dev/video6 -vo x11 -vf screenshot tv://" % (m.win_x, m.win_y)) c = Camera() c.back() c.perms() c.run()