C++采用opencv读取.mp4格式文件
1、下载安装opencv,这里选择较新版本的opencv-4.11
a)到opencv官网去下载
b)通过网盘分享的文件下载:opencv-4.11.0-windows.exe
链接: https://pan.baidu.com/s/10mMQOaWxo55wQ_23UW-Gkw
提取码: 1357(长期有效)

2、配置属性->VC++目录,设置头文件包含目录,可参考下图

3、配置属性->VC++目录,设置库目录,可参考下图

4、配置属性->链接器->输入 附加依赖项添加opencv_world4110d.lib;可参考下图

5、参考代码如下:
#include <iostream>
#include <opencv2/opencv.hpp>
using namespace std;
using namespace cv;
int main()
{
// 打开视频文件
VideoCapture cap("E:/LouTiSVN/1.mp4");
// 检查是否成功打开文件
if (!cap.isOpened())
{
cout << "文件打开失败!" << endl;
return -1;
}
// 获取视频的帧率
double fps = cap.get(CAP_PROP_FPS);
cout << "帧率 = " << fps << endl;
// 循环读取并显示每一帧
Mat frame;
while (true)
{
// 从视频中读取一帧
cap >> frame;
// 如果没有读取到帧,则退出循环
if (frame.empty())
{
break;
}
// 显示这一帧
namedWindow("Video", WINDOW_NORMAL);
imshow("Video", frame);
// 按键退出
if (waitKey(1000 / fps) >= 0)
{
break;
}
}
// 释放资源
cap.release();
// 销毁所有窗口
destroyAllWindows();
return 0;
}

6、发布目录增加2个文件:opencv_world4110.dll、opencv_videoio_ffmpeg4110_64.dll。如下图:

7、执行测试,能成功获取mp4每一帧图像
