【发布时间】:2012-01-22 10:47:42
【问题描述】:
我正在编写一个 Android 应用程序,在该应用程序中,我必须使用手机中的图片逐帧创建视频。环顾了一段时间,我没有遇到任何适合我需要的库。我的要求是它应该用 Java 或 C 编写,并且它是开源的,因为我很确定需要对内存占用空间进行修改。在此先感谢大家,乔治。
【问题讨论】:
我正在编写一个 Android 应用程序,在该应用程序中,我必须使用手机中的图片逐帧创建视频。环顾了一段时间,我没有遇到任何适合我需要的库。我的要求是它应该用 Java 或 C 编写,并且它是开源的,因为我很确定需要对内存占用空间进行修改。在此先感谢大家,乔治。
【问题讨论】:
你应该试试 OpenCV 库,Reading and Writing Images and Video。
CreateVideoWriter
CreateVideoWriter(filename,fourcc,fps,frame_size,is_color) → CvVideoWriter 创建视频文件编写器。
参数: filename (str) -- 输出视频文件的名称。 Fourcc (int) – 用于压缩帧的编解码器的 4 字符代码。例如,CV_FOURCC('P','I','M,'1') 是 MPEG-1 编解码器,CV_FOURCC('M','J','P','G') 是motion-jpeg编解码器等。在 Win32 下,可以传递 -1 以从对话框中选择压缩方法和附加压缩参数。在 Win32 下,如果在使用 avi 文件名时传递 0,它将创建一个创建未压缩 avi 文件的视频编写器。 fps (float) – 创建的视频流的帧率。 frame_size (CvSize) – 视频帧的大小。 is_color (int) - 如果它不为零,编码器将期望并编码彩色帧,否则它将与灰度帧一起使用(该标志目前仅在 Windows 上受支持)。 函数 cvCreateVideoWriter 创建视频写入器结构。
WriteFrame
WriteFrame(writer, image) → int 将帧写入视频文件。
参数: writer (CvVideoWriter) - 视频编写器结构 图像 (IplImage) – 写入的帧 函数 cvWriteFrame 将一帧写入/附加到视频文件中。
这是另一个link。
【讨论】: