Hi,<br><br>as usual, late reply, but hopefully it still helps..<br><br><div class="gmail_quote">On Mon, Oct 18, 2010 at 2:40 PM, Greg Wunder <span dir="ltr">&lt;<a href="mailto:gwunder@eoir.com" target="_blank">gwunder@eoir.com</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>


<p><font size="2">Tracing the pipeline debug messages (noted below) showed that during the first fixate_caps() call, the input/output video sizes have been fixated already.<br>
Before that in the transform_caps() calls, the video sizes range [1, 32767], until the output video size is fixated into the input video size 320x240 &amp; then fixate_caps() is called.<br>
I couldn&#39;t know the input video size, before the output video size has been set by the pipeline application.<br>
<br>
Using GstBaseTransform, the two functions called before setcap() are:<br>
<br>
1) trans_class-&gt;transform_caps = GST_DEBUG_FUNCPTR (gst_mosaick_transform_caps);<br>
2) trans_class-&gt;fixate_caps = GST_DEBUG_FUNCPTR (gst_mosaick_fixate_caps);<br>
<br></font></p></div></blockquote>If I understand well, here you need a caps renegotiation once the proper output size is known by the transformation element. More info here:<br><br><a href="http://www.gstreamer.net/data/doc/gstreamer/head/pwg/html/section-nego-upstream.html" target="_blank">http://www.gstreamer.net/data/doc/gstreamer/head/pwg/html/section-nego-upstream.html</a><br>

<br>This doc appears also to be quite handy:<br><br><a href="http://cgit.freedesktop.org/gstreamer/gstreamer/tree/docs/pwg/advanced-negotiation.xml">http://cgit.freedesktop.org/gstreamer/gstreamer/tree/docs/pwg/advanced-negotiation.xml</a><br>
<br>But I&#39;d suggest, if you cloned the gstreamer core, to build the corresponding manual and read it instead of this xml file.<br><br>Regards<br></div>