Hi,<br><br>I am trying to build an application more or less like Cheese (<a href="http://projects.gnome.org/cheese/">http://projects.gnome.org/cheese/</a>). However I would like to switch from just showing the webcam to a recording state &quot;smoothly&quot; when the user press the record button.<br>
<br>So far I have tried the following approaches without succes:<br><ol><li>Changing location property of filesink while playing (from /dev/null to a real path). This is not possible (filesink tells me so).<br></li><li>Open 2 different pipelines both of them pointing to the same v4l2src (no success since only one pipeline can access the webcam at once).</li>
</ol>Since these approaches were not working I tried to set the pipeline to STATE_NULL, change the location of the filesink, and then set the pipeline to STATE_PLAYING again. However, when setting the pipeline to STATE_NULL, no STATE_CHANGE event is thrown. Is this the expected behavior ?<br>
<br>Any ideas ? Can the smooth &quot;play-to-record&quot; be accomplished with GStreamer ?<br><br>Thank you<br>PD. For the record: I am programming in Python and the pipeline I am trying to manage is the following:<br><br>
gst-launch-0.10 v4l2src ! tee name=videoout ! queue ! videorate ! video/x-raw-yuv,fps=15 ! queue ! theoraenc quality=60 ! queue ! muxout. pulsesrc ! audio/x-raw-int,rate=22000,channels=1,width=16 ! queue ! audioconvert ! vorbisenc ! queue ! muxout. oggmux name=muxout ! filesink location=test.ogg videoout. ! queue ! ffmpegcolorspace ! ximagesink<br>
<br>-- <br>Marc S.<br>