查看完整版本: [-- 如何在QGraphicsView中显示海康视频? --]

QTCN开发网 -> 《C++ GUI Qt 4编程》(第2版)专栏 -> 如何在QGraphicsView中显示海康视频? [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

piaoliushi 2013-10-08 12:07

如何在QGraphicsView中显示海康视频?

由于海康的播放sdk需要HWND,所以将一个QWidget添加到QGraphicsScene中,但图像显示不出来,声音可以正常播放.
不知道怎么回事?有没有哪位朋友做过,还望指点一下,谢谢!

goldensea0 2013-10-09 14:41
QWidget放到QGraphicsScene显示,会用到一个关键函数render,海康只在你提供的HWND的窗口上绘制,render是不会把海康的图像给输出的

piaoliushi 2013-10-10 08:48
引用第1楼goldensea0于2013-10-09 14:41发表的  :
QWidget放到QGraphicsScene显示,会用到一个关键函数render,海康只在你提供的HWND的窗口上绘制,render是不会把海康的图像给输出的

谢谢您的答复,scene接管了Widget的绘制工作,也就无法暴露widget的原生HWND了,我试着用海康的播放sdk直接获取yv12数据,然后转成rgb888用QImage接收后直接在item上绘制,但CPU占用率惊人,有没有更好的实现办法的?谢谢!

noidea 2014-01-27 12:34
我觉得QImage使用copy-on-write技术,可以使用QPixmap做一些图像处理,显示的时候就不会那么占用CPU了。

QImage的文档里有说明这一点。


查看完整版本: [-- 如何在QGraphicsView中显示海康视频? --] [-- top --]



Powered by phpwind v8.7 Code ©2003-2011 phpwind
Gzip disabled