windows版本下需要先安裝ffmpeg工具:
1:先下載指定(https://ffmpeg.zeranoe.com/builds/) 有Static,Shared,Dev三個版本,
可以下載了static版本(是個zip壓縮包),解壓到指定目錄,去配置環境變量,比如d:\ffmpeg\bin,這樣bin下面的ffmpeg.exe就可以在命令行中使用了,可以用ffmpeg -version測試一下:

2:安裝ffmpeg的python擴展,該擴展可以讓你直接在python腳本中直接調用,而不需要單獨運行命令: pip install ffmpeg-python
3:需要注意一點的是,有的情況調用該庫會報錯('ffmpeg' 不是內部或外部命令,也不是可運行的程序 或批處理文件。),這時需要將python安裝目錄下Lib文件夾的subprocess.py文件中大概656行中的shell參數改為True


4:假如提示ffmpeg為外部命令錯誤時,將ffmpeg的路徑帶上:
代碼如下:
def getImage(video_path):
base_path = os.path.join(os.path.join(os.getcwd(), "mp4"), video_path)
img_count = 1
crop_time = 0.0
try:
while crop_time <= 22.0: #轉化22s的視頻
os.system('D:\\ffmpeg-20191210-e73688e-win64-static\\bin\\ffmpeg -i %s -y -f image2 -ss %s %s.jpg'% (base_path, str(crop_time), str(img_count)))
img_count += 1
crop_time += 0.01 #每0.01秒截取一張照片
print('視頻轉化完成!!!')
except Exception as e:
print(e)
def save():
dir_s = os.path.join(os.getcwd(), "image")
if os.path.exists(dir_s):
shutil.rmtree(dir_s)
os.mkdir(dir_s)
for root, dirs, tmps in os.walk(os.getcwd()):
for file in tmps:
if file.endswith("jpg") and os.path.exists(os.path.join(dir_s, file)) is False:
shutil.move(file, dir_s)
video_path = "of2.mp4"
getImage(video_path)
save()