<div dir="ltr"><div><div>I use fanout device in Linux to send video to many consumers.<br><br><a href="http://linuxgazette.net/122/smith.html">http://linuxgazette.net/122/smith.html</a><br><br>First pipeline grabs video from web camera and writes it to the fanout device.<br><br>gst-launch-1.0 -qe v4l2src device=/dev/video0 do-timestamp=true ! video/x-raw,width=640,height=480,framerate=30/1 ! videoconvert ! video/x-raw,format=I420 ! fdsink > /dev/fanout<br><br></div>Second pipeline reads video from the fanout device and encodes it.<span id="gmail-result_box" class="gmail-short_text" lang="en"><span class="gmail-"><br><br>cat /dev/fanout | gst-launch-1.0 -qe fdsrc do-timestamp=true ! videoparse format=i420 width=640 height=480 ! videoconvert ! jpegenc quality=50 ! multipartmux boundary=boundary ! fdsink > video.multipart<br></span></span><span id="gmail-result_box" class="gmail-short_text" lang="en"><span class="gmail-"><br>It works good if I start second pipeline before first pipeline. But I should read from the fanout device at any arbitrary time. Does gstreamer have parser, or muxer and demuxer for raw video that can do it? For example, h264parse can parse h264 byte stream from any position of the stream. Probably, are there any workarounds?</span></span><br><span id="gmail-result_box" class="gmail-short_text" lang="en"><span class="gmail-"></span></span></div></div>