可后台滴滴小英熊学长欧~
①需要安装ffmpeg
pip install imageio
pip install opencv-python
pip install ffmpeg-python
②Python源码
# coding=utf-8
import cv2
import os
from tqdm import tqdm
import imageio.v2 as iio
# 创建输出目录
img_dir = r'cache'
if not os.path.exists(img_dir):
os.makedirs(img_dir)
# 读取视频文件
video_path = '1.mp4' # 替换为你的视频文件路径
output_file = 'output.mp4'
cap = cv2.VideoCapture(video_path)
frame_count = 0
while True:
# 逐帧读取视频
ret, frame = cap.read()
# 检查是否成功读取帧
if not ret:
break
# 保存帧到文件
frame_filename = os.path.join(img_dir, f'frame_{frame_count:04d}.jpg')
cv2.imwrite(frame_filename, frame)
frame_count += 1
# 释放视频捕获对象
cap.release()
print(f'总共保存了 {frame_count} 帧')
files = [os.path.join(img_dir, f) for f in os.listdir(img_dir)]
out = iio.get_writer(output_file, format='ffmpeg', mode='I', fps=25, codec='libx264', pixelformat='yuv420p')
for file in tqdm(files):
frame = iio.imread(file) # RGB format array
out.append_data(frame)
out.close()