defaultServiceProvider :: requestService():找不到 - " org.qt-project.qt.camera"

时间:2016-06-06 06:24:48

标签: qt ubuntu qt5.6

我试图在Ubuntu,Qt 5.6上执行QCamera示例。 "缺少相机服务"消息观察。

defaultServiceProvider::requestService(): no service found for - "org.qt-project.qt.camera"

2 个答案:

答案 0 :(得分:2)

检查是否已安装所有依赖项。他们是:

  

qtmultimedia5-dev

_

  

libqt5multimedia5-插件

例如:

ServiceFabricNodeBootstrapAgent

答案 1 :(得分:0)

检查示例code,示例似乎尝试使用默认摄像头构建摄像机对象。显然,使用相机信息调用方法setCamera无效。

    setCamera(QCameraInfo::defaultCamera());

您可以通过将其更改为

来验证
QCameraInfo info = QCameraInfo::defaultCamera();
if (!info.isNull())
{
    setCamera(info);
}
else
{
    qError() << "Default camera not found!";
}

显然希望从/dev/video0找到相机。你可以检查它是否存在。如果您的相机类似于video1或video2,您可以将其重命名为video0并重试。

您还可以在Camera类构造函数中向for循环添加调试消息,以查看可用摄像头的设备名称(并修改代码以选择默认摄像头以外的其他代码)。

foreach (const QCameraInfo &cameraInfo, QCameraInfo::availableCameras()) {
{
    qDebug() << cameraInfo.deviceName();
}