import subprocess,os
import cv2
#获取样本的画布大小
video_path = "2\\1.mp4"
cap = cv2.VideoCapture(video_path)
frame_width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH))# 获取视频高度
frame_height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT))# 获取视频宽度
fps = cap.get(cv2.CAP_PROP_FPS) #视频平均帧率
h0=frame_height
w0=frame_width
file_list = os.listdir('3\\') #获取文件夹里的所有文件列表
for i in file_list:
#获取当前视频的
video_path = '3\\'+i
cap = cv2.VideoCapture(video_path)
frame_width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH))
# 获取视频高度、宽度
frame_height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT))
h=frame_height
w=frame_width
if h/w>h0/w0:
strn=f'ffmpeg -i %s -vf "scale=(%s*%s/%s):%s,pad=%s:%s:(%s-(%s*%s/%s))/2:0:black" %s'% (video_path,w,h0,h,h0, w0,h0,w0,w,h0,h,i)
else:
strn=f'ffmpeg -i %s -vf "scale=%s:%s*%s/%s,pad=%s:%s:0:((%s-(%s*%s/%s))/2):black" %s'% (video_path,w0,w0,h,w, w0,h0, h0,w0,h,w,i)
#本图缩放后=宽:高,位置=总宽:总高:水平方向放置的位置:垂直方向放置的位置
os.system(strn)