从QMediaPlayer视频中提取图像

时间:2016-02-09 13:56:17

标签: c++ qt image-processing video-processing

我正在使用Qt Creator实现一个读取视频的应用程序,点击一个按钮我会保存正在显示的帧。然后我将使用Opencv处理该帧。

使用QmediaPlayer显示视频,如何从视频中提取帧?然后我应该能够在Matlab中将该帧转换为Mat图像。

由于

1 个答案:

答案 0 :(得分:0)

QMediaPlayer *player = new QMediaPlayer();
QVideoProbe *probe = new QVideoProbe;

connect(probe, SIGNAL(videoFrameProbed(QVideoFrame)), this, SLOT(processFrame(QVideoFrame)));

probe->setSource(player); // Returns true, hopefully.

processFrame slot:

void processFrame(QVideoFrame const&) {
  if (isButtonClicked == false) return;
  isButtonClicked = false;

  ...
  process frame
  ...

}

QVideoProbe reference

QVideoFrame reference

您可以使用QVideoFrame :: bits()来处理OpenCV

的图像