windows - OpenCV 视频编写器 H264 编解码器 (ffmpeg)

标签 windows opencv video ffmpeg

我想用无损压缩的 opencv 保存视频,这样我就不会丢失帧的任何细节。一切都适用于 xvid 编解码器,但当然这不是无损压缩,所以我发现 x264 编解码器是合适的。但是它不起作用,我尝试了以下示例代码,但在运行时出现以下错误:“找不到编解码器 ID 28 的编码器:找不到编码器。”

cv::VideoWriter makeVideo;
makeVideo.open("makevideo//newVideo.mp4", CV_FOURCC('X','2','6','4'), 30, cv::Size(1600,1200), true);
cv::Mat image = imread("makevideo//frames//111.png");

for(int i = 0; i < 200; i++)
    makeVideo << image;

makeVideo.release();

我发现要让它工作,我需要有 ffmpeg 支持。我目前正在使用 opencv2.4.6,在此讨论中(how can I use the openCV FFMPEG video I/O rather than the DirectShow one in Windows?)有人提到在 opencv2.4 中自动包含 ffmpeg。但是它不起作用....

在这里 ( How to compile OpenCV 2.3 with ffmpeg support with Visual Studio 2010 ) 我找到了如何在 Windows 上自己编译 opencv 和 ffmpeg。我成功地执行了所有步骤,但仍然遇到相同的错误....

最佳答案

我遇到了同样的问题,找不到解决方案。所以现在我总是使用 -1 作为 FOURCC 并手动选择 x264 编解码器。

关于windows - OpenCV 视频编写器 H264 编解码器 (ffmpeg),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19934437/

相关文章:

c++ - 运行来自 Learning Opencv 的练习 2-4 的问题,O'Reilly

python - 使用 Haarcascade 检测到的面部,如何在不同颜色的相同面部上绘制边界框

opencv - 0xC000001D : Illegal Instruction when running cvHaarDetectObjects opencv

video - 无需刷新的 YouTube 嵌入视频自动循环

c++ - 使用 OpenCV 逐帧读取视频文件

C++ 图形用户界面教程 : undefined reference to TextOut

c++ - 为什么只有当我在 Windows 控制台程序中按 Ctrl+Z 时,输入有时才会终止?

php - 视频持续时间 FFMpeg PHP

windows - 如何以递归方式列出 Windows .bat 文件中类型为 *.mp3 的所有文件?

.net - 下一个 Windows Server 会支持 .NET 2.0 吗?