在openCV中编写可变帧速率视频

时间:2013-06-24 09:23:17

标签: c++ opencv video frame-rate

我在openCV中编写视频文件的步骤如下:

CvVideoWriter *writer =cvCreateVideoWriter(fileName, Codec ID, frameRate, frameSize); // Create Video Writer

cvWriteFrame(writer, frame); // Write frame

cvReleaseVideoWriter(&writer); // Release video writer

上面的代码段以固定的帧速率写入。我需要写出可变帧率视频。我之前使用libx264的方法涉及将每个时间戳写入每个帧。

所以,问题是如何在openCV中为时间戳写一个帧 - 具体的API是什么?更一般地说,如何创建可变帧速率视频?

1 个答案:

答案 0 :(得分:1)

我不认为可以直接使用OpenCV执行此操作,而无需修改代码以提供访问权限。您需要使用不同的库(如libvlc)才能使用imem将OpenCV中的原始RGB帧放入文件中。 This link提供了一个使用imem和从OpenCV加载的原始图像的示例。您只需要更改:sout选项,使用首选编解码器保存到您想要的文件。