Vidéos et Sons

Cette série de fonctions sont des exemples d’utilisation du module moviepy. Celui-ci permet de faire du montage vidéo en programmant avec Python. C’est sans doute moins puissant qu’un vrai logiciel de montage tel que ShotCut ou OpenShot. La progrommation a néanmoins deux avantages. Elle permet de répéter un traitement facilement pour construire une vidéo. Elle peut opérer la même opération sur chaque image d’un image comme l’extraction des personnages du film (voir Quelques images de Mary Poppins). Il est parfois plus simple de programmer plutôt que d’apprendre à se servir d’un logiciel qui propose une interface utilisateur pas toujours intuitive (lire aussi Montage vidéo avec Python.

Les fonctions sur les vidéos commencent quasiment toutes par le même paramètre video_or_file. Celui-ci peut soit être un nom de fichier, soit un objet de type VideoClip. Un exemple :

from code_beatrix.art.video import video_concatenate, video_save

new_video = video_concatenate(["video1.mp4", "video2.avi"])
video_save(new_video, "new_video.mp4")

Un autre exemple où la première vidéo est un extrait d’une vidéo :

from code_beatrix.art.video import video_concatenate, video_save

v1 = video_extract_video("video1.mp4", '00:00:01.45', '00:00:010.51')
new_video = video_concatenate([v1, "video2.avi"])
video_save(new_video, "new_video.mp4")

La même logique s’applique aux sons. Les fonctions qui suivent couvrent un petit sous-ensemble de ce qu’il est possible de faire avec le module moviepy. Pour aller plus loin, il peut être utile de s’inspirer du code de celles-ci et de regarder les exemples de la documentation. Le notebook video_notebook montre comment insérer un texte qui défile et comment le voir facilement dans un notebook. Il faut voir ces fonctions comme des outils pour agir sur une pellicule, des ciseaux, de la colle…

Audio

../_images/music.png ../_images/comp.png

audio_compose (audio_or_file1, audio_or_file2, t1 = 0, t2 = None)

Concatenates or superposes two sounds. Ajoute ou superpose deux sons.
../_images/music.png ../_images/glue.png

audio_concatenate (audio_or_files, kwargs)

Concatenates sounds. Met bout à bout des sons.
../_images/music.png ../_images/ciseau.png

audio_extract_audio (audio_or_file, ta = 0, tb = None)

Extracts a part of an audio. Extrait une partie du son. Uses subclip.
../_images/music.png ../_images/work.png

audio_modification (audio, loop_duration = None, volumex = 1.0, fadein = False, fadeout = False, t_start = 0, t_end = None, speed = 1.0, keep_duration = False, wav = False)

Modifies a sound. Modifie un son.
../_images/music.png ../_images/up.png

audio_save (audio_or_file, filename, verbose = False, kwargs)

Saves as a sound. Enregistre un son dans un fichier. Uses write_audiofile.

Video

../_images/pellicule.png ../_images/comp.png

La fonction video_compose assemble plusieurs vidéo en même temps. Le paramètre place permet de choisir une configuration déjà implémentée comme la juxtaposition de deux vidéos côte à côte horizontalement ou verticalement.

video_compose (video_or_file1, video_or_file2 = None, t1 = 0, t2 = 0, place = None, kwargs)

Concatenates or superposes two videos. Ajoute ou superpose deux vidéos.
../_images/pellicule.png ../_images/glue.png

video_concatenate (video_or_files, kwargs)

Concatenates videos. Met bout à bout des vidéos.
../_images/pellicule.png

video_enumerate_frames (video_or_file, folder = None, fps = 10, pattern = “images_%04d.jpg”, clean = False, kwargs)

Enumerates frames from a video. Itère sur des images depuis une vidéo.
../_images/pellicule.png ../_images/music.png ../_images/ciseau.png

video_extract_audio (video_or_file)

Returns the audio of a video. Retourne le son d’une vidéo.
../_images/pellicule.png ../_images/ciseau.png

video_extract_video (video_or_file, ta = 0, tb = None)

Extracts a part of a video. Extrait une partie de la vidéo. Uses subclip.
../_images/pellicule.png

video_frame (fct_frame, kwargs)

Creates a video from drawing or images. fct_frame can either be a function which draws a picture at time t or a list of picture names or a folder. Créé une vidéo à partir de dessins ou d’images. fct_frame est soit une fonction qui dessine chaque image à chaque instant t, une liste de noms d’images ou un répertoire.
../_images/pellicule.png ../_images/camera.png

video_image (image_or_file, duration = None, zoom = None, opacity = None, kwargs)

Creates a ImageClip. Créé une vidéo à partir d’une image.
../_images/pellicule.png ../_images/work.png

video_modification (video_or_file, volumex = 1.0, resize = 1.0, speed = 1.0, mirrorx = False, mirrory = False)

Modifies a video. Modifie une vidéo.
../_images/pellicule.png ../_images/arrow.png

video_position (video_or_file, pos, relative = False)

Modifies the position of a position. Modifie la position d’une video. Relies on function set_position.
../_images/pellicule.png ../_images/musicno.png

video_remove_audio (video_or_file)

Returns the same video without audio. Retourne la même vidéo sans le son.
../_images/pellicule.png ../_images/music.png

video_replace_audio (video_or_file, new_sound, loop = True)

Replaces the sound of a video. Remplace la bande-son d’une vidéo.
../_images/pellicule.png ../_images/up.png

video_save (video_or_file, filename, verbose = False, duration = None, kwargs)

Saves as a video or as a gif. Enregistre une vidéo dans un fichier. Uses write_videofile.
../_images/pellicule.png ../_images/text.png

video_text (text, font = None, fontsize = 32, size = None, color = None, background = None, opacity = None, kwargs)

Creates an image with text (ImageClip). Créé une image à partir de texte.

YouTube

../_images/pellicule.png ../_images/yt.png

download_youtube_video (tag, output_path = None, res = “720p”, mime_type = “video/mp4”, kwargs)

Downloads a video from youtube with pytube. Télécharge une vidéo depuis youtube avec pytube.