C++ opencv重写压缩视频文件

C++ opencv重写压缩视频文件,c++,opencv,computer-vision,video-processing,video-encoding,C++,Opencv,Computer Vision,Video Processing,Video Encoding,海洛 我有一个大约500MB大小的视频文件(未知压缩)。我正在试用OpenCv,尝试丢弃一些帧并重新保存该文件 当运行程序约3分钟(原始文件持续约1小时)时,我已经有700MB的文件:( 如何保持原始文件的大小,并丢弃一些帧 谢谢 ps:我正在尝试使用以下代码获取原始编解码器: int ex = static_cast<int>(inputVideo.get(CV_CAP_PROP_FOURCC)); intex=static_cast(inputVideo.get(CV_CAP_

海洛

我有一个大约500MB大小的视频文件(未知压缩)。我正在试用OpenCv,尝试丢弃一些帧并重新保存该文件

当运行程序约3分钟(原始文件持续约1小时)时,我已经有700MB的文件:(

如何保持原始文件的大小,并丢弃一些帧

谢谢

ps:我正在尝试使用以下代码获取原始编解码器:

int ex = static_cast<int>(inputVideo.get(CV_CAP_PROP_FOURCC));
intex=static_cast(inputVideo.get(CV_CAP_PROP_FOURCC));

但是显然ex=0???

OpenCV不支持所有类型的容器/编解码器,例如,不支持MKV。有一个关于这个主题的有趣信息


并共享当前支持的一些FourCC代码。

您肯定必须找出原始编解码器是什么,才能以该格式生成输出。注意:现代编解码器在使用跳过帧的输入时可能无法很好地比较连续帧。如果成功回答了此问题,请通过点击它旁边的复选框来选择官方答案。如果没有,请考虑添加自己的答案。