<div dir="ltr">Hi Nicola,<div><br></div><div>Thanks for the response.</div><div>1) Yes, yes I actually signal the pushing thread to stop and then the pushing thread sends an eos after it gets to a key frame.</div><div><br>
</div><div>2) I wait for a keyframe, then I stop. I also tried to duplicate the key frame and push it to both recordings - still no luck.</div><div>3) I will check the timestamps, but just to make sure I also made the following test:</div>
<div>I tee'd both recordings to a udpsink, and had an external pipeline that records from that udpsink to ex.mkv. Afterwards I saw that 1.mkv and 2.mkv are not perfect (second 32.8 on the clock -> 36.2), but the ex.mkv file is (goes seamlessly from 32 to 36).</div>
<div>4) I considered using multifdsink, but that will give me the same problem when I want to connect everything into one movie unless I save all the history + recordings.</div><div><br></div><div>Thanks,</div><div> Tomer</div>
<div><br><br><div class="gmail_quote">On Mon, Dec 5, 2011 at 12:33 PM, Mailing List SVR <span dir="ltr"><<a href="mailto:lists@svrinformatica.it">lists@svrinformatica.it</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div bgcolor="#FFFFFF" text="#000000">
Il 05/12/2011 10:55, Nezer Zaidenberg ha scritto:
<div class="im"><blockquote type="cite">
<div dir="ltr">
<div class="gmail_quote">Hi,<br>
<div dir="ltr">
<div><br>
</div>
<div>I have an mpeg4 stream which I am trying to cut into
parts.</div>
<div>My pipeline is </div>
<div>rtspsrc ! rtpmp4vdepay ! ffdec_mpeg4 ! mpeg4videoparse
! appsink -> appsrc ! matroskamux ! filesink
location=...</div>
<div><br>
</div>
<div>Every 10 seconds I close the appsrc pipeline (with eos)
and start a new one.</div>
</div>
</div>
</div>
</blockquote>
<blockquote type="cite">
<div dir="ltr">
<div class="gmail_quote">
<div dir="ltr">
<div>I have a software queue between appsink and appsrc to
make sure that no packets are lost, and I make sure that
when flushing I wait for the next frame to be a keyframe
so that there is no data loss.</div>
</div>
</div>
</div>
</blockquote>
<br></div>
do you stop to push frames to appsrc and then send the eos?<div class="im"><br>
<br>
<blockquote type="cite">
<div dir="ltr">
<div class="gmail_quote">
<div dir="ltr">
<div><br>
</div>
<div>I am still seeing cuts between the videos (~2 second
cuts)...</div>
</div>
</div>
</div>
</blockquote>
<br></div>
do you keep the keyframe in your software queue and push it to the
appsrc pipe started after the first one receive eos?<br>
<br>
try to print the frame timestamps pushed and the ones really present
in the produced files<div class="im"><br>
<br>
<blockquote type="cite">
<div dir="ltr">
<div class="gmail_quote">
<div dir="ltr">
<div><br>
</div>
<div>Is it possible to cut the stream in another way? </div>
</div>
</div>
</div>
</blockquote>
<br></div>
you could try multifdsink too, but the flow you described should
work<br>
<br>
Nicola<br>
<br>
<blockquote type="cite"><div class="im">
<div dir="ltr">
<div class="gmail_quote">
<div dir="ltr">
<div>Is there a way to fix my pipeline?</div>
<div><br>
</div>
<div>Thanks,</div>
<div> Tomer</div>
</div>
</div>
<br>
</div>
<br>
<fieldset></fieldset>
<br>
</div><pre>_______________________________________________
gstreamer-devel mailing list
<a href="mailto:gstreamer-devel@lists.freedesktop.org" target="_blank">gstreamer-devel@lists.freedesktop.org</a>
<a href="http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" target="_blank">http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a>
</pre>
</blockquote>
<br>
</div>
<br>_______________________________________________<br>
gstreamer-devel mailing list<br>
<a href="mailto:gstreamer-devel@lists.freedesktop.org">gstreamer-devel@lists.freedesktop.org</a><br>
<a href="http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" target="_blank">http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a><br>
<br></blockquote></div><br></div></div>