<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div class=""><div class="">hi guys, I need help to implement a viewer IP camera from a Raspberry Pi, I'm working with Qt Creator and API Qt-GStreamer, the API works well when loading in the pipeline "scrvideotest", on the other hand directly from gstreamer using the following command line "sudo gst-launch-1.0 rtspsrc location=rtsp://<a href="http://admin:123456@192.168.10.123:554/" class="">admin:123456@192.168.10.123:554/</a> ! rtph264depay ! h264parse ! omxh264dec ! autovideosink" works perfect. When I try to create the pipeline based on the above instructions do not work in program debugging errors GET_ELEMET tells me that is not rtph264depay; h264parse; omxh264dec. And I can not generate the link between the components, if they could help me create the correct instructions to create the pipeline would greatly appreciate, I copy the code on which I work.</div><div class=""><br class=""></div><div class="">Thank you.</div></div><div class=""><br class=""></div><div class="">My code in Qt Creator ans Qt-Gstreamer API, run in Raspberry Pi</div><div class=""><br class="">#include <QGst/Init><br class="">#include <QGst/Pipeline><br class="">#include <QGst/ElementFactory><br class="">#include <QGst/Ui/GraphicsVideoSurface><br class="">#include <QGst/Ui/GraphicsVideoWidget><br class=""><br class="">#include <qapplication><br class="">#include <qglwidget><br class="">#include <qgraphicsview><br class="">#include <qdebug><br class=""><br class="">int main(int argc, char *argv[])<br class="">{<br class=""> <span class="Apple-tab-span" style="white-space: pre;">   </span>QApplication a(argc, argv);<br class=""> <span class="Apple-tab-span" style="white-space: pre;">    </span>QGst::init(&argc, &argv);<br class=""> <br class=""> <span class="Apple-tab-span" style="white-space: pre;">   </span>QGraphicsScene* scene =  new QGraphicsScene;<br class=""> <span class="Apple-tab-span" style="white-space: pre;">    </span>QGraphicsView* view = new QGraphicsView(scene);<br class=""> <span class="Apple-tab-span" style="white-space: pre;">      </span>view->setViewport(new QGLWidget);<br class=""> </div><div class=""><span class="Apple-tab-span" style="white-space: pre;">    </span>QGst::Ui::GraphicsVideoSurface* surface = new QGst::Ui::GraphicsVideoSurface(view);<br class=""> <span class="Apple-tab-span" style="white-space: pre;">  </span>QGst::Ui::GraphicsVideoWidget* widget = new QGst::Ui::GraphicsVideoWidget();<br class=""><span class="Apple-tab-span" style="white-space: pre;">       </span> widget->setSurface(surface);<br class=""><br class=""> <span class="Apple-tab-span" style="white-space: pre;">     </span>QGst::ElementPtr source = QGst::ElementFactory::make("rtspsrc”);</div><div class=""><span class="Apple-tab-span" style="white-space: pre;"> </span>QGst::ElementPtr demux = QGst::ElementFactory::make("rtph264depay”);</div><div class=""><span class="Apple-tab-span" style="white-space: pre;">     </span>QGst::ElementPtr parse = QGst::ElementFactory::make("h264parse”);</div><div class=""><span class="Apple-tab-span" style="white-space: pre;">        </span>QGst::ElementPtr decode = QGst::ElementFactory::make("omxh264dec");<br class=""> <span class="Apple-tab-span" style="white-space: pre;">  </span>QGst::ElementPtr sink = surface->videoSink();<br class=""> <span class="Apple-tab-span" style="white-space: pre;">       </span>QGst::PipelinePtr pipeline = QGst::Pipeline::create();</div><div class=""><span class="Apple-tab-span" style="white-space: pre;">  </span></div><div class=""><span class="Apple-tab-span" style="white-space: pre;">        </span>source->SetProperty(“location”, "<a href="rtsp://admin:123456@192.168.10.123:554/" class="">rtsp://admin:123456@192.168.10.123:554/</a>“);<br class=""> <span class="Apple-tab-span" style="white-space: pre;">       </span></div><div class=""><span class="Apple-tab-span" style="white-space: pre;">        </span>pipeline->add(source);</div><div class=""><span class="Apple-tab-span" style="white-space: pre;">       </span>pipeline->add(demux);</div><div class=""><span class="Apple-tab-span" style="white-space: pre;">        </span>pipeline->add(parse);</div><div class=""><span class="Apple-tab-span" style="white-space: pre;">        </span>pipeline->add(decode);<br class=""> <span class="Apple-tab-span" style="white-space: pre;">      </span>pipeline->add(sink);</div><div class=""><br class=""> <span class="Apple-tab-span" style="white-space: pre;">      </span>if(source->link(demux) == false)<br class="">  <span class="Apple-tab-span" style="white-space: pre;">         </span>qDebug(“Link demux failed”);</div><div class=""><span class="Apple-tab-span" style="white-space: pre;">        </span>if(demux->link(parse) == false)<br class="">  <span class="Apple-tab-span" style="white-space: pre;">          </span>qDebug("Link parse failed”);</div><div class=""><span class="Apple-tab-span" style="white-space: pre;">     </span>if(parse->link(decode) == false)<br class="">  <span class="Apple-tab-span" style="white-space: pre;">         </span>qDebug(“Link decode failed”);</div><div class=""><span class="Apple-tab-span" style="white-space: pre;">       </span>if(decode->link(sink) == false)<br class="">  <span class="Apple-tab-span" style="white-space: pre;">          </span>qDebug("Link sink failed");<br class=""><br class=""> <span class="Apple-tab-span" style="white-space: pre;">     </span>scene->addItem(widget);<br class=""> <span class="Apple-tab-span" style="white-space: pre;">     </span>pipeline->setState(QGst::StatePlaying);<br class=""> <span class="Apple-tab-span" style="white-space: pre;">     </span>view->show();<br class=""><br class=""> <span class="Apple-tab-span" style="white-space: pre;">  </span>return a.exec();<br class="">}</div><div class=""><br class=""></div><div class=""><br class=""></div><div class="">Example code in Qt Creator ans Qt-Gstreamer API, run in Raspberry Pi work fine!!</div><div class=""><br class=""></div><div class=""><div class="">#include <QGst/Init><br class="">#include <QGst/Pipeline><br class="">#include <QGst/ElementFactory><br class="">#include <QGst/Ui/GraphicsVideoSurface><br class="">#include <QGst/Ui/GraphicsVideoWidget><br class=""><br class="">#include <qapplication><br class="">#include <qglwidget><br class="">#include <qgraphicsview><br class="">#include <qdebug><br class=""><br class="">int main(int argc, char *argv[])<br class="">{<br class=""> <span class="Apple-tab-span" style="white-space: pre;">   </span>QApplication a(argc, argv);<br class=""> <span class="Apple-tab-span" style="white-space: pre;">    </span>QGst::init(&argc, &argv);<br class=""> <br class=""> <span class="Apple-tab-span" style="white-space: pre;">   </span>QGraphicsScene* scene =  new QGraphicsScene;<br class=""> <span class="Apple-tab-span" style="white-space: pre;">    </span>QGraphicsView* view = new QGraphicsView(scene);<br class=""> <span class="Apple-tab-span" style="white-space: pre;">      </span>view->setViewport(new QGLWidget);<br class=""> </div><div class=""><span class="Apple-tab-span" style="white-space: pre;">    </span>QGst::Ui::GraphicsVideoSurface* surface = new QGst::Ui::GraphicsVideoSurface(view);<br class=""> <span class="Apple-tab-span" style="white-space: pre;">  </span>QGst::Ui::GraphicsVideoWidget* widget = new QGst::Ui::GraphicsVideoWidget();<br class=""><span class="Apple-tab-span" style="white-space: pre;">       </span> widget->setSurface(surface);<br class=""><br class=""> <span class="Apple-tab-span" style="white-space: pre;">     </span>QGst::ElementPtr source = QGst::ElementFactory::make("videotestsrc");</div><div class=""> <span class="Apple-tab-span" style="white-space: pre;">   </span>QGst::ElementPtr sink = surface->videoSink();<br class=""> <span class="Apple-tab-span" style="white-space: pre;">       </span>QGst::PipelinePtr pipeline = QGst::Pipeline::create();</div><div class=""> <span class="Apple-tab-span" style="white-space: pre;">    </span></div><div class=""><span class="Apple-tab-span" style="white-space: pre;">        </span>pipeline->add(source);</div><div class=""> <span class="Apple-tab-span" style="white-space: pre;"> </span>pipeline->add(sink);</div><div class=""><br class=""> <span class="Apple-tab-span" style="white-space: pre;">      </span>if(source->link(sink) == false)<br class="">  <span class="Apple-tab-span" style="white-space: pre;">          </span>qDebug(“Link failed”);</div><div class=""><br class=""> <span class="Apple-tab-span" style="white-space: pre;">   </span>scene->addItem(widget);<br class=""> <span class="Apple-tab-span" style="white-space: pre;">     </span>pipeline->setState(QGst::StatePlaying);<br class=""> <span class="Apple-tab-span" style="white-space: pre;">     </span>view->show();<br class=""><br class=""> <span class="Apple-tab-span" style="white-space: pre;">  </span>return a.exec();<br class="">}</div></div></body></html>