我正在尝试使用python中的ffmpeg从视频流中获取图像,我需要原始字节来做更多事情。我试图将原始字节存储在图像文件中,所以如果我的文件打开,那么我可以确认我得到的原始字节是正确的。
import subprocess as sp
def getImages(self):
cmd = ['ffmpeg',
'-ss', 2,
'-i', url,
'-t', 2,
'-f', 'image2pipe',
'-s', '420x360',
'-pix_fmt', 'rgb24',
'-vcodec', 'rawvideo',
'-vf', 'fps=fps=1', '-']
pipe = sp.Popen(cmd, stdout = sp.PIPE, bufsize=10**8)
raw = pipe.stdout.read(420*360)
file = open('image.jpg','wb')
file.write(raw)
我看到一个文件image.jpg但我无法打开它。我在这里做错了吗?我正在调整图像大小为420 * 360字节,所以我假设前420 * 360字节属于第一帧。
提前致谢!