从QML更改相机像素格式

时间:2018-06-21 16:43:07

标签: qt camera qml qtmultimedia qcamera

看看Qt5的documentation,似乎可以更改相机的像素格式。我需要创建一个QCameraViewfinderSettings设置新的像素格式并将新设置设置为相机...就像本示例中一样

QCameraViewfinderSettings viewfinderSettings;
viewfinderSettings.setPixelFormat(QVideoFrame::Format_RGB32);
camera->setViewfinderSettings(viewfinderSettings);

但是我在QML中找不到任何类似的东西...有什么方法可以在QML中完成某些工作吗?我想要类似的东西:

Camera {
    id: camera
    viewfinder.pixelFormat = VideoFrame.Format_RGB32
}

如果QML不允​​许我设置像素格式,我有什么选择?

1 个答案:

答案 0 :(得分:2)

不,您不能在QML per the maintainer of that component中更改像素格式,但是可以将QML对象传递给C ++并从per bug report 42909那里进行。

正如Yoann Lopes在该错误的注释中所写,您可以使用以下命令访问QML对象的QCamera:

QCamera *cam = qvariant_cast<QCamera*>(obj->property("mediaObject"))