This is python code for capturing streaming video from server. but I need to write a function to extract one frame from the flow. It will be a button. On click it will show current frame. I have no ideas. Can anyone help me with this???
self.player = gst.Pipeline("player") self.source = gst.element_factory_make("uridecodebin", "video-source") #self.source = gst.element_factory_make("playbin2", "video-source") sink = gst.element_factory_make("xvimagesink", "video-output") colorspace = gst.element_factory_make("ffmpegcolorspace") scale = gst.element_factory_make("videoscale") self.source.set_property("uri",\ "http://10.10.25.4:12345/webcam.flv") caps = gst.Caps("video/x-raw-yuv, width=640, height=480, framerate=20/1") myfilter = gst.element_factory_make("capsfilter", "myfilter") myfilter.set_property("caps", caps) # ################ clr_sink = colorspace.get_pad("sink") self.source.connect("pad-added", self.on_pad_added, clr_sink) self.player.add(self.source, colorspace, scale, myfilter, sink) gst.element_link_many(colorspace, scale, myfilter, sink) self.bus = self.player.get_bus() self.bus.add_signal_watch() self.bus.connect('message', self.__on_message) self.player.set_state(gst.STATE_PLAYING)