<br><br><div class="gmail_quote">---------- Forwarded message ----------<br>From: <b class="gmail_sendername">Timothy Braun</b> <span dir="ltr">&lt;<a href="mailto:braunsquared@gmail.com">braunsquared@gmail.com</a>&gt;</span><br>
Date: Tue, Jan 4, 2011 at 1:08 PM<br>Subject: Re: Video transitions using gnloperation<br>To: Lane Brooks &lt;<a href="mailto:lane@brooks.nu">lane@brooks.nu</a>&gt;<br><br><br>What do you get when you set GST_DEBUG=2?  The pipeline is most likely freezing because of a caps filter or a pad issue.  What is the pipeline connected to for output?<div>
<div></div><div class="h5"><br><br><div class="gmail_quote">On Tue, Jan 4, 2011 at 12:56 PM, Lane Brooks <span dir="ltr">&lt;<a href="mailto:lane@brooks.nu" target="_blank">lane@brooks.nu</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"><div>On 01/04/2011 10:33 AM, Timothy Braun wrote:<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
Make sure the gnl input sources have different priorities and set the gnloperations priority to 0.<br>
</blockquote>
<br></div>
Thanks for the idea. I tried setting the priority of the op to 0, src1 to 1, and src2 to 2. Now when I run it the stream hangs after 2 seconds, which is when the gnloperation and src2 are starting up. I did some testing and the hanging only occurs if I set the priority on src2 to anything other than 0. I can set the priorities on the op and src1 without hanging (it still doesn&#39;t work, however). Here is my code again with the updates:<div>

<br>
<br>
        comp = gst.element_factory_make(&quot;gnlcomposition&quot;)<br>
        src1 = gst.element_factory_make(&quot;gnlfilesource&quot;)<br>
        src2 = gst.element_factory_make(&quot;gnlfilesource&quot;)<br>
<br>
        comp.add(src1)<br>
        src1.set_property(&quot;location&quot;, &quot;/test1.mp4&quot;)<br>
        src1.set_property(&quot;start&quot;,          0 * gst.SECOND)<br>
        src1.set_property(&quot;duration&quot;,       5 * gst.SECOND)<br>
        src1.set_property(&quot;media-start&quot;,    0 * gst.SECOND)<br>
        src1.set_property(&quot;media-duration&quot;, 5 * gst.SECOND)<br></div>
        src1.set_property(&quot;priority&quot;,       1)<div><br>
<br>
        comp.add(src2)<br>
        src2.set_property(&quot;location&quot;, &quot;/test2.mp4&quot;)<br>
        src2.set_property(&quot;start&quot;,          2 * gst.SECOND)<br>
        src2.set_property(&quot;duration&quot;,       5 * gst.SECOND)<br>
        src2.set_property(&quot;media-start&quot;,    0 * gst.SECOND)<br>
        src2.set_property(&quot;media-duration&quot;, 5 * gst.SECOND)<br></div>
        src2.set_property(&quot;priority&quot;,       2)<div><br>
<br>
        op = gst.element_factory_make(&quot;gnloperation&quot;)<br>
        tran = gst.element_factory_make(&quot;smpte&quot;)<br>
        tran.set_property(&quot;type&quot;, 234)<br>
        tran.set_property(&quot;duration&quot;, 3 * gst.SECOND)<br>
        op.add(tran)<br></div><div>
        op.set_property(&quot;start&quot;,          2 * gst.SECOND)<br>
        op.set_property(&quot;duration&quot;,       3 * gst.SECOND)<br>
        op.set_property(&quot;media-start&quot;,    0 * gst.SECOND)<br>
        op.set_property(&quot;media-duration&quot;, 3 * gst.SECOND)<br></div>
        op.set_property(&quot;priority&quot;,       0)<br>
        comp.add(op)<br>
<br>
I can get the smpte transition to work correctly on these two streams when not using the gnonlin elements, but that is not very interesting as I have to run the two streams in parallel.<br>
<br>
Any other ideas?<br><font color="#888888">
<br>
Lane</font><div><div></div><div><br>
<br>
<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
On Jan 4, 2011, at 12:01 PM, Lane Brooks&lt;<a href="mailto:lane@brooks.nu" target="_blank">lane@brooks.nu</a>&gt;  wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
On 01/04/2011 05:39 AM, Edward Hervey wrote:<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
On Mon, 2011-01-03 at 23:23 -0700, Lane Brooks wrote:<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
I have a gnlcomposition containing two video sources. I would like to<br>
apply a smpte transition from one source to the next.<br>
<br>
I have tried overlapping the two gnlsources by 3 seconds. I then put a<br>
&#39;smpte&#39; element in a &#39;gnloperation&#39; and add the &#39;gnloperation&#39; to the<br>
&#39;gnlcompostion&#39;. The addition of the gnloperation doesn&#39;t seem to do<br>
anything. The resulting video is the same regardless of whether I add<br>
the gnloperation or not. The result is always that the second video<br>
takes over during the period of overlap. Here is code I have (in python):<br>
<br>
          comp = gst.element_factory_make(&quot;gnlcomposition&quot;)<br>
          src1 = gst.element_factory_make(&quot;gnlfilesource&quot;)<br>
          src2 = gst.element_factory_make(&quot;gnlfilesource&quot;)<br>
<br>
          comp.add(src1)<br>
          src1.set_property(&quot;location&quot;, &quot;/test1.mp4&quot;)<br>
          src1.set_property(&quot;start&quot;,          0 * gst.SECOND)<br>
          src1.set_property(&quot;duration&quot;,       5 * gst.SECOND)<br>
          src1.set_property(&quot;media-start&quot;,    0 * gst.SECOND)<br>
          src1.set_property(&quot;media-duration&quot;, 5 * gst.SECOND)<br>
<br>
          comp.add(src2)<br>
          src2.set_property(&quot;location&quot;, &quot;/test2.mp4&quot;)<br>
          src2.set_property(&quot;start&quot;,          2 * gst.SECOND)<br>
          src2.set_property(&quot;duration&quot;,       5 * gst.SECOND)<br>
          src2.set_property(&quot;media-start&quot;,    0 * gst.SECOND)<br>
          src2.set_property(&quot;media-duration&quot;, 5 * gst.SECOND)<br>
<br>
          op = gst.element_factory_make(&quot;gnloperation&quot;)<br>
          tran = gst.element_factory_make(&quot;smpte&quot;)<br>
          tran.set_property(&quot;type&quot;, 234)<br>
          tran.set_property(&quot;duration&quot;, 3 * gst.SECOND)<br>
          op.add(tran)<br>
</blockquote>
<br>
   Set the [media-]{start|duration} propertie son op also<br>
</blockquote>
<br>
I had already tried this as well.<br>
<br>
         op.set_property(&quot;start&quot;,          2 * gst.SECOND)<br>
         op.set_property(&quot;duration&quot;,       3 * gst.SECOND)<br>
         op.set_property(&quot;media-start&quot;,    0 * gst.SECOND)<br>
         op.set_property(&quot;media-duration&quot;, 3 * gst.SECOND)<br>
<br>
I am not sure what I should put the media-start at, but I have tried<br>
both 0 and 2 and neither works. Any other ideas?<br>
<br>
<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
          comp.add(op)<br>
<br>
Anyone know if using an smpte transition is possible, and if so, what I<br>
am doing wrong?<br>
<br>
Thanks,<br>
Lane<br>
</blockquote></blockquote></blockquote></blockquote>
<br>
</div></div></blockquote></div><br>
</div></div></div><br>