[python + FFmpeg] Cambia la resolución del video, (con audio)

Recientemente compré un teléfono móvil Nokia E72i, y cuando importé el video, descubrí que solo había sonido pero no imagen. La razón fue que la resolución de la imagen original era demasiado alta para ser reconocida, por lo que tuve que convertirla a una resolución adecuada para la pantalla del teléfono móvil (320 * 240).

Referenciado en:

Resolución de conversión de video de Python (con código) | Herramientas de Python

Aquí está el código que modifiqué yo mismo:

#  开发人员:    根深蒂固~
#  功能作用:    未知
import cv2
import os
import tqdm
from moviepy.audio import AudioClip
from ffmpy import FFmpeg
import ffmpeg

'''
    设置 视频的路径 分辨率 + 采样率    
'''
file_path = './当不成勇者的我只好认真工作了'          ## 最后面不能加/
width = 320
height = 240
bit_rate = 256

video_name = os.listdir(file_path)
file_name = file_path.split('/')[-1]

if not os.path.exists(f'./video_out/{file_name}'):
    os.mkdir(f'video_out/{file_name}')

for name_id in tqdm.tqdm(range(len(video_name))):
    name = video_name[name_id]
    if name.strip().split('.')[-1] not in ['mp4']:
        raise Exception('格式错误,只能是--MP4--格式')
    video_path = os.path.join(file_path,name)
    video_path = video_path.replace('\\', '/')

    ff = FFmpeg(executable='D:\\App\\FFmpeg\\bin\\ffmpeg.exe',
                inputs={'{}'.format(video_path): None},
                outputs={f'video_out/{file_name}/{name}': '-s {}*{} -b {}k '.format(width, height, bit_rate)})
    ff.run()

print('------------------处理完毕-------------------------')

 

Supongo que te gusta

Origin blog.csdn.net/qq_42792802/article/details/127706541
Recomendado
Clasificación