我在Linux Gnome(Ubuntu 9.04)上使用Qt 4.5(2009.03),并希望在我的Qt应用程序的Phonon :: VideoWidget中显示我的网络摄像头捕获的视频。
我有第一个使用v4l2 API的实现,我在其中进行YUV2到RGB的转换并填充我自己的QImage。它运作良好,但效率不高。一位同事使用gStreamer做同样的事情,而且速度要快得多。
从那时起,我发现了声子并希望使用它。除了绑定到网络摄像头设备作为源之外,所有内容都已配置和设置。
我应该创建一个MediaSource对象,但我不知道如何配置它。任何帮助都会非常有价值。
编辑:Phonon overview解释说它尚不支持。但我需要一个解决方案。
答案 0 :(得分:5)
我知道这个问题有点晚了。但我一直在寻找相同的东西,找不到纯粹的qt解决方案。 我发现http://qt-apps.org/content/show.php/Qt+Opencv+webcam+viewer?content=89995这取决于我不知道的opencv,我不想学习。
这是我的解决方案http://qt-apps.org/content/show.php/V4lCapture?content=126541
有一件事需要对它的线程进行更多抛光,但无论如何它都可以工作。
答案 1 :(得分:4)
如果您的目标是在屏幕上显示YUV图像,则可以使用OpenGL模块。将转换实现为片段着色器。如果你想做其他事情,比如将转换后的图像保存到文件中,那么这不是一个好主意。
一些链接:
答案 2 :(得分:2)
也许你可以按照kapture的实施方式来看一看。