Hi, Can anybody help me with this:<br><br>/*!<br>    Initialize the the Gstreamer pipeline. Below is a diagram<br>    of the pipeline that will be created:<br><br>                                    |Screen|  |Screen|  |Screen|<br>
                                  -&gt;|queue |-&gt;|filter|-&gt;|sink  |-&gt; Display<br>    |Camera|  |Camera    |  |Tee|/<br>    |src   |-&gt;|CSP filter|-&gt;|   |\  |Image |  |Image |  |Image |<br>                                  -&gt;|queue |-&gt;|filter|-&gt;|sink  |-&gt; JPEG file<br>
*/<br>void initPipeline( GstElement * pipeline,<br>    GstElement * imageSink, GstCaps * caps )<br>{<br>    // Create pipeline and attach a callback to it&#39;s message bus.<br>    pipeline = gst_pipeline_new( &quot;camera&quot; );<br>
<br>    // Create elements.<br>    GstElement * cameraSrc = gst_element_factory_make(<br>        &quot;v4l2src&quot;, cameraSourceName.c_str() );<br><br>    GstElement * cspFilter = gst_element_factory_make(<br>        &quot;ffmpegcolorspace&quot;, &quot;cspFilter&quot; );<br>
<br>    GstElement * tee = gst_element_factory_make( &quot;tee&quot;, &quot;tee&quot; );<br><br>    GstElement * screenQueue = gst_element_factory_make(<br>        &quot;queue&quot;, &quot;screenQueue&quot; );<br><br>    GstElement * screenFilter = gst_element_factory_make(<br>
        &quot;ffmpegcolorspace&quot;, &quot;screenFilter&quot; );<br><br>    GstElement * screenSink = gst_element_factory_make(<br>        &quot;xvimagesink&quot;, screenSinkName.c_str() );<br><br>    GstElement * imageQueue = gst_element_factory_make(<br>
        &quot;queue&quot;, &quot;imageQueue&quot; );<br><br>    GstElement * imageFilter = gst_element_factory_make(<br>        &quot;ffmpegcolorspace&quot;, &quot;imageFilter&quot; );<br><br>    imageSink = gst_element_factory_make(<br>
        &quot;fakesink&quot;, imageSinkName.c_str() );<br><br>    // Check that elements are correctly initialized.<br>    if( !( pipeline &amp;&amp; cameraSrc &amp;&amp; cspFilter &amp;&amp; tee &amp;&amp;<br>        screenQueue &amp;&amp; screenFilter &amp;&amp; screenSink &amp;&amp; imageQueue &amp;&amp;<br>
        imageFilter &amp;&amp; imageSink ) )<br>    {<br>        throw std::runtime_error( &quot;Unable to initialize pipeline&#39;s elemets.&quot; );<br>    }<br><br>    // Add elements to the pipeline. This has to be done prior to linking them.<br>
    gst_bin_add_many( GST_BIN( pipeline ), cameraSrc, cspFilter,<br>        tee, screenQueue, screenFilter, screenSink, imageQueue,<br>        imageFilter, imageSink, NULL );<br><br>    if( !gst_element_link_many( cameraSrc, cspFilter, tee, NULL ) )<br>
        throw std::runtime_error( &quot;Unable to link camera source, &quot;<br>            &quot;colorspace filter and tee.&quot; );<br><br>    if( !gst_element_link_many( tee, imageQueue, imageFilter, NULL ) )<br>        throw std::runtime_error( &quot;Unable to link tee, image queue &quot;<br>
            &quot;and image filter.&quot; );<br><br>    // Capabilities for preview.<br>    caps = gst_caps_new_simple( &quot;video/x-raw-rgb&quot;,<br>        &quot;width&quot;, G_TYPE_INT, cameraMAXXResolution,<br>        &quot;height&quot;, G_TYPE_INT, cameraMAXYResolution,<br>
        &quot;bpp&quot;, G_TYPE_INT, cameraBitsPerPixel,<br>        &quot;depth&quot;, G_TYPE_INT, cameraColorDepth,<br>        &quot;framerate&quot;, GST_TYPE_FRACTION, cameraVideoFramerate, 1,<br>        NULL );<br><br>
    if( !gst_element_link_filtered( imageFilter, imageSink, caps ) )<br>    {<br>        gst_caps_unref( caps );<br><br>        throw std::runtime_error( &quot;Unable to link image filter and &quot;<br>            &quot;image sink.&quot; );<br>
    }<br><br>    gst_caps_unref( caps );<br><br>    if( !gst_element_link_many( tee, screenQueue, screenFilter, NULL ) )<br>        throw std::runtime_error( &quot;Unable to link tee, screen queue and &quot;<br>            &quot;screen filter.&quot; );<br>
<br>    // Capabilities for image capturing.<br>    caps = gst_caps_new_simple( &quot;video/x-raw-rgb&quot;,<br>        &quot;width&quot;, G_TYPE_INT, cameraPreviewXResolution,<br>        &quot;height&quot;, G_TYPE_INT, cameraPreviewYResolution,<br>
        NULL );<br><br>    if( !gst_element_link_filtered( screenFilter, screenSink, caps ) )<br>    {<br>        gst_caps_unref( caps );<br><br>        throw std::runtime_error( &quot;Unable to link screen filter and &quot;<br>
            &quot;screen sink.&quot; );<br>    }<br><br>    gst_element_set_state( pipeline, GST_STATE_READY );<br>} // initPipeline<br><br>Last gst_element_link_filtered failed and I can&#39;t understand why.<br clear="all">
<br>-- <br>Regards,<br>Igor Mironchick<br>