我希望编写一个简单的基于QT的Web浏览器,其中包含gstreamer后端作为更复杂程序的概念验证。我们的想法是让QWebView渲染到gstreamer缓冲区,gstreamer将根据提供的参数显示或流式传输。
但是,我对QT很新,我不清楚如何让QWebView渲染到我选择的后端。任何提示都将不胜感激。
答案 0 :(得分:1)
原来并不难。给出buf中的GstBuffer *来填写:
QApplication app;
QWebView web;
web.load(QUrl("www.google.ca"));
web.resize(1024,768);
GstMapInfo inf;
if( !gst_buffer_map(buf,&inf,GST_MAP_WRITE) )
GST_ERROR("Couldn't map output buffer for writing!");
else
{ QImage img
( inf.data
, 1024, 768
, 1024*sizeof(uint32)
, QImage::Format_xRGB
);
web.render(&img); // render our webpage to our image buffer;
app.processEvents();
gst_buffer_unmap(buf,&inf);
return buf;
}