2015-08-20 32 views
1

我使用Debian杰西和dmesg | grep video回报:Qt的摄像机例如没有找到笔记本电脑的网络摄像头

[ 22.280407] Linux video capture interface: v2.00 
[ 22.790704] uvcvideo: Found UVC 1.00 device Lenovo EasyCamera (13d3:5170) 
[ 22.796546] usbcore: registered new interface driver uvcvideo 

的例子编译罚款,但一经推出,我得到一个对话框,告诉我相机的服务缺失。我正在使用Qt 5.5.0。 This问题指向一个类似的问题,但它是用于Windows。另外我已经使用其网站上提供的安装程序安装了Qt。我已使用Cheese应用程序测试了我的摄像头并且它可以正常工作,但是QCameraInfo::availableCameras()不会返回任何内容。

回答

0

我不知道这是否是一个明确的答案,但根据我的经验,可怕的“摄像头服务丢失”归结为消息所说的内容;出于某种原因,Qt用来从摄像头获取视频输入的媒体后端被破坏或以某种方式错过了配置。在我来说,我在下列情况下,这个问题:

1.构建Qt从源

Qt的构建系统默默地禁用特性如果没有所有,它需要包括的依赖关系他们在构建。请务必仔细阅读this official article。我失去了时间的计数这对毁了我<插入的时间,例如天/周/年这里>,而不是只为多媒体模块喜爱时期......

2.缺少一些的GStreamer包我的Ubuntu

我为Linux开发& Debian主要是在这些平台上,Qt依赖于gstreamer后端。 gstreamer基本上是核心中的插件体系结构,每个功能都以插件形式添加,并通过配置文件进行无限可能的人工干预。看看这是怎么回事?线索:确保你有所有你想要安装和配置的插件。这里是一些你可以使用的gstreamer tools的链接。其他平台上的其他后端也可能相同。

而在最后PRO提示:由于这两种Qt5.5gstreamer0.1(旧)和gstreamer1.0(新)的支持作为后端,由于Qt5.6新的一个是默认的。这会给你一些实验空间,例如如果旧的不行,你可以尝试新的等。

希望这是有用的!

相关问题