无法在OpenCV中打开视频文件

时间:2017-10-31 14:53:07

标签: c++ opencv video ffmpeg

我有一个用h264编码的视频文件,并以mkv格式保存(* .mkv)。 我可以在VLC中输入文件并播放它,但我想在OpenCV中打开它并提取视频的每一帧。

我有这段代码:

std::string fileName = "D:/Temp/video.mkv";

cv::VideoCapture capture(fileName);
capture.set(CV_CAP_PROP_FOURCC, CV_FOURCC('H', '2', '6', '4'));
if (!capture.isOpened())
{
    //error!
    std::cout << "Can not load video";
}
else
{
    double prevtimestamp = 0;
    cv::Mat frame;

    while (1)
    {
        capture.grab();
        double timestamp = capture.get(CV_CAP_PROP_POS_MSEC);

    }
}

当我运行此代码时,我收到的消息是该文件无法打开。

我的问题:

  1. 这段代码有什么问题吗?
  2. 我是否需要路径上的FFMPEG,以便OpenCV可以打开h264视频?
  3. 如何获取有关OpenCV无法打开文件的更多信息?

0 个答案:

没有答案