c++ 获取支持的相机分辨率和帧速率 OSX

Posted

技术标签:

【中文标题】c++ 获取支持的相机分辨率和帧速率 OSX【英文标题】:c++ get supported camera resolutions and frame rate OSX 【发布时间】:2016-02-11 17:55:20 【问题描述】:

我正在使用 ffmpeg 从连接的摄像头录制视频。我希望能够检索支持的相机分辨率和帧率。不幸的是,目前 OSX 上的 ffmpeg 不支持此功能。还有其他解决方案吗?我搜索了 google 和 ***,但我能找到的最好的方法是使用 dshow 的 windows 解决方案。

我想这可以通过 avfoundation 实现,但我没有任何经验。我也在使用 qt(不是 quicktime,qt 框架),所以它必须与它兼容。 :)

感谢您的宝贵时间。

【问题讨论】:

【参考方案1】:

在 Qt(从 5.3 版本开始)你有 QCamera

foreach (const QCameraInfo &cameraInfo, QCameraInfo::availableCameras()) 
    QCamera *camera= new QCamera(cameraInfo);
    QMediaRecorder *recorder = new QMediaRecorder(camera);
    // DO queries on QMediaRecorder

您可以在此处查看QMediaRecorder 文档

另外here是介绍。

【讨论】:

不应该查询摄像头而不查询录像机吗?在文档中,“suportedResolutions”功能与编码有关,而不是与相机本身有关。无论如何,不​​幸的是,Windows 和 Mac 仍然缺少 QMultimedia,您可以在这里看到 -> wiki.qt.io/Qt_5.5.0_Multimedia_Backends 当我尝试查询 QCamera 以获取支持的分辨率和帧率时,我总是得到一个空列表(即使在加载相机之后)。

以上是关于c++ 获取支持的相机分辨率和帧速率 OSX的主要内容,如果未能解决你的问题,请参考以下文章

请帮忙计算,分辨率为640 x 480 ,帧数30fps, VGA 格式的视频,一个小时长度大概是多大呢?

webrtc分辨率和比特率--问题集锦

webrtc分辨率和比特率--问题集锦

OpenCV 3.1 Set Camera Resolution 设置相机的分辨率

如果我的相机分辨率没有改变,如何捕捉?

视频帧速率影响清晰度吗