如何将拼接截图为视频的FFmpeg Linux命令转为ffmpeg-python代码?
使用ffmpeg-python实现截图拼接为视频
当然可以将这条FFmpeg命令转换成ffmpeg-python代码,以下是对应实现:
import ffmpeg def images_to_video(input_glob, output_path): # 构建输入流,对应原命令的 -framerate 1 -pattern_type glob -i "$1" input_stream = ffmpeg.input( input_glob, framerate=1, pattern_type='glob' ) # 构建输出流,对应原命令的 -c:v libx264 -pix_fmt yuv420p $2 output_stream = ffmpeg.output( input_stream, output_path, vcodec='libx264', pix_fmt='yuv420p' ) # 设置日志参数,对应原命令的 -hide_banner -loglevel error ffmpeg.run(output_stream, hide_banner=True, loglevel='error') # 使用示例:比如把当前目录下所有png截图拼成视频 # images_to_video('./screenshots/*.png', 'output.mp4')
参数说明:
input_glob:对应原命令的$1,传入匹配截图的通配符路径(比如./images/*.jpg)output_path:对应原命令的$2,输出视频的路径framerate=1:设置每秒播放1帧,和原命令一致pattern_type='glob':启用通配符模式匹配输入文件vcodec='libx264':指定H.264视频编码器pix_fmt='yuv420p':设置兼容大多数播放器的像素格式hide_banner=True和loglevel='error':关闭FFmpeg启动横幅,仅输出错误日志
调用时只需传入符合glob规则的输入路径和目标输出路径即可。
内容的提问来源于stack exchange,提问作者user11419808
相关产品推荐
相关产品推荐

