使用python将视频创建到缓冲区

时间:2015-02-27 07:47:18

标签: python opencv video

我有一些视频拍摄的图像。现在,我想将图像转换为视频。但是我不想将这个视频保存在我的磁盘上,我只想将它保存到缓冲区(例如:StringIO,BytesIO等)。

我尝试用PyAV写一个视频。

output = av.open('test.mp4', 'w')
stream = output.add_stream('mpeg4', 30)
for image in images:
    frame = av.VideoFrame.from_ndarray(image, format='rgb24')
    packet = stream.encode(frame)
    output.mux(packet)
output.close()

以前的代码可以生成test.mp4文件。但是如何将其写入缓冲区而不是文件?使用openCV?

感谢。

1 个答案:

答案 0 :(得分:1)

PyAV Documentation指定那个,你需要从数据包调用解码,甚至来获取编码数据

分组() Stream中的一组编码数据。

这可能包含或可能不包含流中的完整对象。 必须调用decode()来提取编码数据。