我想要做的是在某个时间(例如20秒)获取视频帧。 我知道我可以做这样的事情 - 倒带视频并暂停它:
QMediaPlayer* player = new QMediaPlayer;
...
player->play();
player->setPosition(20000);
player->pause();
但是有一些更优雅的解决方案(这对我来说似乎是一种黑客攻击,因为我不需要整个视频但在某个时间只有一帧)?
答案 0 :(得分:4)
以下步骤可帮助您从视频文件中捕获帧。
项目级别
代码级别
上面的示例应用程序可以找到here
(应用程序屏幕截图)
打开视频文件:浏览并选择视频文件
滑块:选择您想要的位置
捕获:捕获图像并在QLabel中查看
保存:保存捕获的图像