将pyqtgraph导出到视频

乔斯特

我想将pyqtgraph导出到视频。有没有简单的方法可以做到这一点?该图与该示例没有太大不同,除了它包含大约10000帧:

from pyqtgraph.Qt import QtGui, QtCore
import numpy as np
import pyqtgraph as pg

app = QtGui.QApplication([])

win = pg.GraphicsWindow(title="Basic plotting examples")
win.resize(1000,600)
pg.setConfigOptions(antialias=True)
p6 = win.addPlot(title="0")
curve = p6.plot(pen='y')
data = np.random.normal(size=(10,1000))
ptr = 0
def update():
    global curve, data, ptr, p6
    data_ptr = ptr%10
    p6.setTitle("%d" % data_ptr)
    curve.setData(data[data_ptr])
    if ptr == 0:
        p6.enableAutoRange('xy', False)
    ptr += 1
timer = QtCore.QTimer()
timer.timeout.connect(update)
timer.start(50)
兰亭

每帧只是一个图像。因此,您可以使用imageexporter为每个框架生成一个图像。toBytes导出函数参数将*.png在内存中返回文件,尽管您也可以对其编号并保存在临时目录中。

然后,您可以使用ffmpeg将它们排序在一起。

如果使用了“导出到单独的文件”选项,则可以使用ffmpeg命令行,如下所示:如何使用FFmpeg从图像创建视频?

但是,如果您将所有帧都存储在内存中,则可以使用ffmpeg python绑定,尽管我没有任何示例。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章