ffmpeg分解视频成图片序列
ffmpeg 命令
ffmpeg -i /data/video_1.mp4 -f image2 -vf fps=fps=1/60 -qscale:v 2 /data/mp4-%05d.jpg
视频集批量操作
import subprocess
import os
#ffmpeg -i /data/video_1.mp4 -f image2 -vf fps=fps=1/60 -qscale:v 2 /data/mp4-%05d.jpg
#该函数实现将视频集视频进行分解成图像序列,并放在一个文件夹里面
def videoFileName(videoDir,framesDir,ffmpegCmd):
videoFiles=os.listdir(videoDir)
for video in videoFiles:
sinVideoDir=os.path.join(videoDir,video)
if (sinVideoDir.endswith(".avi")):
videoName=os.path.basename(sinVideoDir)
videoBaseName=videoName.rsplit('.')
curVideoFrameOut=framesDir+videoBaseName[0]+"_%04d.jpg"
video2framesCmd = ffmpegCmd + " -i " + sinVideoDir + " -f image2 -vf fps=fps=30 -qscale:v 2 " +curVideoFrameOut
subprocess.call(video2framesCmd, shell=True)
if __name__ == "__main__":
ffmpegCmd = "D://ffmpeg//ffmpeg-4.2.1-win64-static//bin//ffmpeg.exe" #ffmpeg 路径
frameDir = "E://ImageTest//videoTest//" #存放图像序列路径
videoDir="E://downloads//drumsVideos//" #存放视频路径
videoFileName(videoDir,frameDir,ffmpegCmd)