<meta http-equiv=Content-Type content="text/html; charset=utf-8">
<meta name=Generator content="Microsoft Word 12 (filtered medium)">
<!--[if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]-->

<!--[if gte mso 9]><xml>
 <o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
 <o:shapelayout v:ext="edit">
  <o:idmap v:ext="edit" data="1" />
 </o:shapelayout></xml><![endif]-->




<div class=WordSection1>

<p class=MsoNormal><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D">Stefan:<o:p></o:p></span></p>

<p class=MsoNormal><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D"><o:p>&nbsp;</o:p></span></p>

<p class=MsoNormal><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D"> Thanks for the response.  I took a look at output-selector and
input-selector.  I haven’t tried using them yet, but they did point me in some
directions I hadn’t considered before.  For example, I’m now being much more
careful to ensure that only the elements (especially sinks) that I want to see
EOS signals get to see them.  After making several changes, I’ve gotten video
streaming, video capturing (with muxed audio), and image capturing all working
simultaneously and successively.<o:p></o:p></span></p>

<p class=MsoNormal><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D"><o:p>&nbsp;</o:p></span></p>

<p class=MsoNormal><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D"> The next few steps are to get audio streaming and audio
capturing working alongside the above.  However, since I’m using an H.264
encoder for the video stuff, I found that I need to make sure that I store the
first SPS/PPS frame so that I can apply it to future IDR frames when doing
streaming after video capturing has already begun.  This isn’t a GStreamer
problem, although I will be solving it with GStreamer by modifying a plugin to
do the frame modification work for me.<o:p></o:p></span></p>

<p class=MsoNormal><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D"><o:p>&nbsp;</o:p></span></p>

<p class=MsoNormal><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D">Thanks,<o:p></o:p></span></p>

<p class=MsoNormal><b><span style="font-size:10.0pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;
color:#1F497D">Bill Bock</span></b><span style="font-size:10.0pt;font-family:
&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D"><br>
Software Engineer<br>
</span><span style="font-size:11.0pt;font-family:&quot;Impact&quot;,&quot;sans-serif&quot;;
color:#1F497D">Digital Force Technologies</span><span style="font-size:10.0pt;
font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D"><br>
9455 Waples Street, Suite #100<br>
San Diego, CA 92121<br>
Phone: (858) 546-1244<br>
Fax: (858) 597-1750<br>
</span><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D"><a href="/user/SendEmail.jtp?type=node&node=2715527&i=0" target="_top" rel="nofollow">[hidden email]</a></span><span style="font-size:10.0pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:navy"><br>
</span><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D"><a href="http://www.digitalforcetech.com/"
title="http://www.digitalforcetech.com/" target="_top" rel="nofollow" link="external"><span style="font-size:10.0pt;
font-family:&quot;Arial&quot;,&quot;sans-serif&quot;">www.digitalforcetech.com</span></a></span><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p></o:p></span></p>

<p class=MsoNormal><span style="font-size:10.0pt;color:navy">******************************************************<br>
</span><span style="font-size:7.5pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;
color:navy">CONFIDENTIALITY NOTICE: This E-Mail is intended only for the use of
the individual or entity to whom it is addressed and may contain information
that is privileged, confidential, and exempt from disclosure under applicable
law. If you have received this communication in error, please do not
distribute, and delete the original message. Please notify the sender by E-Mail
at the address shown. Thank you for your compliance.</span><span style="color:#1F497D"><o:p></o:p></span></p>

<p class=MsoNormal><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D"><o:p>&nbsp;</o:p></span></p>

<p class=MsoNormal><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D"><o:p>&nbsp;</o:p></span></p>

<p class=MsoNormal><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D"><o:p>&nbsp;</o:p></span></p>

<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">

<p class=MsoNormal><b><span style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;"> Stefan Kost [via
GStreamer-devel] [mailto:<a href="/user/SendEmail.jtp?type=node&node=2715527&i=1" target="_top" rel="nofollow">[hidden email]</a>] <br>
<b>Sent:</b> Wednesday, September 22, 2010 11:35 AM<br>
<b>To:</b> Bill Bock<br>
<b>Subject:</b> Re: Stopping and restarting complicated pipeline with muxing<o:p></o:p></span></p>

</div>

<p class=MsoNormal><o:p>&nbsp;</o:p></p>

<p class=MsoNormal>Am 21.09.2010 01:23, schrieb BillBock: <o:p></o:p></p>

<div>

<p class=MsoNormal><br>
&gt; <br>
&gt; All: <br>
&gt; <br>
&gt; &nbsp;I’m hoping my issue is some kind of basic misunderstanding of
GStreamer <br>
&gt; design philosophy. &nbsp;I have an application with a fairly complicated <br>
&gt; pipeline. &nbsp;The pipeline has two sources, v4l2src and alsasrc.
&nbsp;It can do <br>
&gt; simultaneous video capture (without muxing audio), video streaming (using <br>
&gt; tcpsink), individual frame capture, audio capture, and audio streaming.
&nbsp;The <br>
&gt; various branches of the pipeline all end at fakesinks. <br>
&gt; <br>
&gt; &nbsp;If I want to capture video, I block the src pads of v4l2src and
alsasrc, <br>
&gt; unlink stuff, insert an encoder element, a muxer element, and a filesink <br>
&gt; element, link them to the pipeline, set them to playing, and unblock the
src <br>
&gt; pads. &nbsp;When I’m ready to stop capturing, I again block the src pads,
unlink <br>
&gt; and relink elements so that the encoder, muxer, and filesink are linked to
<br>
&gt; each other, but not to the rest of the elements in the pipeline, send an
EOS <br>
&gt; to the encoder, unlink and set the elements to null, remove them from the <br>
&gt; pipeline, link stuff back to a fakesink, and unblock the src pads. &nbsp;I
do <br>
&gt; similar things with the other functions. &nbsp;Everything works great <br>
&gt; (simultaneously and successively) without general stream errors or
internal <br>
&gt; data flow errors. <o:p></o:p></p>

</div>

<p class=MsoNormal><br>
I see nothing obviosly wrong. Just as a suggestion to avoid the pad-blocking
and <br>
relinking bussiness, would using output-selector work for you? <br>
<br>
Stefan <o:p></o:p></p>

<div>

<p class=MsoNormal><br>
&gt; <br>
&gt; &nbsp;It’s when I try to do muxing that I have issues. &nbsp;It will
usually work the <br>
&gt; first time, except that when unblocking the src pads after reconfiguring
the <br>
&gt; pipeline to end in fakesinks again when done with capture, no more buffers
<br>
&gt; pass through the video source. <br>
&gt; <br>
&gt; &nbsp;If I strip down the pileline to simplify it and only do muxing of
video and <br>
&gt; audio (so, no tee elements at all in the pipeline, for example) then <br>
&gt; successive capturing of muxed video and audio works. &nbsp;I’ve done up to
30 <br>
&gt; captures in a row. &nbsp;Whenever I stop capturing in this case, I have to
send <br>
&gt; the EOS events on the video and and audio encoders before blocking the
video <br>
&gt; and audio src pads (so I also don’t unlink/relink stuff so that section of
<br>
&gt; the pipeline is off by itself). &nbsp;I always get a couple general stream
errors <br>
&gt; in this case, but everything continues to work afterwards and I can start <br>
&gt; and stop again, over and over. <br>
&gt; <br>
&gt; &nbsp;I’m hoping for suggestions as to what I’m doing wrong. &nbsp;I’d be
happy to <br>
&gt; post code if that would help. <o:p></o:p></p>

</div>

<p class=MsoNormal style="margin-bottom:12.0pt"><br>
<br>
------------------------------------------------------------------------------ <br>
Start uncovering the many advantages of virtual appliances <br>
and start using them to simplify application deployment and <br>
accelerate your shift to cloud computing. <br>
<a href="http://p.sf.net/sfu/novell-sfdev2dev" target="_top" rel="nofollow" link="external">http://p.sf.net/sfu/novell-sfdev2dev</a><br>
_______________________________________________ <br>
gstreamer-devel mailing list <br>
<a href="/user/SendEmail.jtp?type=node&amp;node=2550857&amp;i=0&by-user=t" target="_top" rel="nofollow" link="external">[hidden
email]</a> <br>
<a href="https://lists.sourceforge.net/lists/listinfo/gstreamer-devel"
target="_top" rel="nofollow" link="external">https://lists.sourceforge.net/lists/listinfo/gstreamer-devel</a><br>
<br>
<o:p></o:p></p>

<div class=MsoNormal align=center style="text-align:center">

<hr size=1 width="100%" noshade style="color:#CCCCCC" align=center>

</div>

<div>

<p class=MsoNormal><span style="font-size:8.5pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;;
color:#666666">View message @ <a href="http://gstreamer-devel.966125.n4.nabble.com/Stopping-and-restarting-complicated-pipeline-with-muxing-tp2547757p2550857.html?by-user=t" target="_top" rel="nofollow" link="external">http://gstreamer-devel.966125.n4.nabble.com/Stopping-and-restarting-complicated-pipeline-with-muxing-tp2547757p2550857.html</a>
<br>
To unsubscribe from Stopping and restarting complicated pipeline with muxing, <a href="http://gstreamer-devel.966125.n4.nabble.com/template/TplServlet.jtp?tpl=unsubscribe_by_code&amp;node=2547757&amp;code=YmJvY2tAZGlnaXRhbGZvcmNldGVjaC5jb218MjU0Nzc1N3wxMjc0NDA1MzU=&by-user=t" target="_top" rel="nofollow" link="external">click
here</a>. <o:p></o:p></span></p>

</div>

<p class=MsoNormal><o:p>&nbsp;</o:p></p>

</div>





<br><hr align="left" width="300">
View this message in context: <a href="http://gstreamer-devel.966125.n4.nabble.com/Stopping-and-restarting-complicated-pipeline-with-muxing-tp2547757p2715527.html">RE: Stopping and restarting complicated pipeline with muxing</a><br>
Sent from the <a href="http://gstreamer-devel.966125.n4.nabble.com/">GStreamer-devel mailing list archive</a> at Nabble.com.<br>