python - 如何在 Linux/Python/Opengl 中制作视频?
问题描述
如何在 python OpenGL 中保存视频?有没有现成的解决方案?不使用 3D 或视频编辑器
解决方案
对于视频的每一帧,渲染图片,最好是帧缓冲区对象(以避免因窗口像素所有权测试失败而导致图像损坏)。使用 读取图像glReadPixels
,提交给视频编码器。
视频编码器的选择范围很广。在 Linux 上, ffmpeg广泛可用,因此您可以使用它。最直接的方法是使用适当的命令行选项将ffmpeg生成为一个进程(参见 Python 模块“ subprocess
”),以从标准输入读取原始图像并写入您想要的任何目的地,然后将使用 OpenGL 渲染的图像写入 ffmpeg 进程'标准输入。