如何在使用OpenCV的ffmpeg后端时更改libx264配置文件

时间:2015-03-16 13:00:51

标签: opencv ffmpeg libx264

我正在使用OpenCV 3.0.0 beta编写视频     VideoWriter vw("out.avi",VideoWriter::fourcc('h','2','6','4'),24,frame.size());

调用ffmpeg后端(avcodec版本56.26.100),后者调用libx264(build 142)。但是,显然无法从OpenCV指定libx264配置文件,并且我的应用程序的默认比特率太低。

在哪里可以更改ffmpeg或libx264的默认行为,以获得从OpenCV写入的更高质量的视频?

1 个答案:

答案 0 :(得分:2)

与此同时,我自己找到了答案。在modules / videoio / src / cap_ffmpeg_impl.hpp的第1232行(在OpenCV 3.0.0 beta上),默认CRF定义为23:

av_opt_set(c->priv_data,"crf","23", 0);

将数字更改为您喜欢的值。这需要重新编译OpenCV,它是一个全局设置,直到videoio模块正确实现编解码器选项。