FFmpeg est un ensemble de puissants programmes de traitement audio et vidéo et la base de nombreux logiciels audio et vidéo. est devenu la norme de l'industrie pour le traitement audio et vidéo. Cependant, l'utilisation de FFmpeg à partir de la ligne de commande présente un certain coût d'apprentissage, et la bibliothèque ffmpeg-python résout très bien ce problème.
Vous pouvez utiliser ffmpeg dans le code python après une simple installation via pip.
pip3 install ffmpeg-python
path = 'main.mp4' probe = ffmpeg.probe(path) video_stream = next((stream for stream in probe['streams'] if stream['codec_type'] == 'video'), None) width = int(video_stream['width']) height = int(video_stream['height']) print(width, height)
Nous pouvons utiliser le flux pour obtenir des informations de base sur la vidéo, telles que la taille, la durée, la fréquence d'images, etc.
# 左右镜像 ffmpeg.input(path).hflip().output('output.mp4').run() # 上下镜像 ffmpeg.input(path).vflip().output('output.mp4').run()
peut être simplement compris comme l'abréviation des mots anglais horizontal (horizontal) et vertical (vertical).
main = ffmpeg.input(path) logo = ffmpeg.input('logo.png') ffmpeg.filter([main, logo], 'overlay', 0, 500).output('out.mp4').run()
Cette commande consiste à placer l'image du filigrane du logo au-dessus de la vidéo principale à la coordonnée de (0,500). Le coin supérieur gauche de la vidéo peut être compris comme la position de l'origine (0,0), et les axes x et y sont représentés respectivement à droite et vers le bas par rapport à l'origine.
Bien sûr, si vous faites le logo suffisamment grand, plus grand que la vidéo, puis changez les positions des deux parties, il deviendra la vidéo sur le logo, ce qui équivaut en fait à ajouter un Une image d’arrière-plan.
ffmpeg.filter([logo, main], 'overlay', 0, 500).output('out.mp4').run()
ffmpeg.input(path).trim(start_frame=10,end_frame=20).output('out3.mp4').run()
Cette commande semble facile à comprendre start_frame et end_frame représentent respectivement les images de début et de fin.
base = ffmpeg.input(path) ffmpeg.concat( base.trim(start_frame=10, end_frame=20), base.trim(start_frame=30, end_frame=40), base.trim(start_frame=50, end_frame=60) ).output('out3.mp4').run()
L'épissage vidéo peut être effectué à l'aide de la fonction concat.
Aujourd'hui, je partage avec vous une bonne bibliothèque pour traiter des vidéos en python. J'espère qu'elle pourra apporter des améliorations d'efficacité à votre travail/travail secondaire.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!