これを実行すると、ファイルのカムスナップショットが取得されます。
gst-launch-0.10 v4l2src num-buffers = 1!jpegenc!filesink location = pic.jpg
私はそれをPythonに入れようとしましたが、picの代わりに空のファイルを取得しました。誰かが間違いがどこにあるかわかりますか?これは非常に単純なコードであり、非常に単純なタスクを実行する必要があります。また、gst.parse_launch()を使用したくないので、Pythonでのパイプラインの構築を理解する必要があります。
import sys, os
import pygtk, gtk, gobject
import pygst
pygst.require("0.10")
import gst
class GTK_Main:
def __init__(self):
self.player = gst.Pipeline("player")
source = gst.element_factory_make("v4l2src", "video-source")
source.set_property("num-buffers", 1)
conv = gst.element_factory_make("jpegenc", "jpeg-converter")
sink = gst.element_factory_make("filesink", None)
sink.set_property("location", "pic.jpg")
self.player.add(source, conv, sink)
gst.element_link_many(source, conv, sink)
self.player.set_state(gst.STATE_PLAYING)
GTK_Main()
gtk.gdk.threads_init()