1. Composition vidéo : combiner toutes les techniques apprises
Aujourd'hui, on va créer quelque chose de spécial — une vidéo complexe avec des titres, un fond musical et des effets animés, en utilisant la bibliothèque MoviePy. Mais avant de se plonger dans le processus créatif, devine quoi : as-tu déjà essayé d'ajouter du texte sur une vidéo et de le synchroniser avec une piste audio ? Si ce n'est pas encore le cas, il est temps d'apprendre ces compétences et de ressentir toute la puissance de l'automatisation dans le monde de la production vidéo !
Avant de commencer, rappelons-nous ce que nous avons déjà appris dans les cours précédents. On a appris à extraire et traiter des clips vidéo et audio, à ajouter du texte et des graphismes, et à travailler avec l'animation et les effets. Maintenant, le moment est venu de tout réunir et de créer notre chef-d'œuvre.
Les étapes principales pour créer une composition vidéo complexe
- Ajouter des titres : Les titres de début et de fin marquent le début et la fin du projet vidéo.
- Musique de fond : Une musique de fond ajoute une ambiance émotionnelle à la vidéo.
- Effets animés : Les textes et images animés rendent le contenu plus vivant et intéressant.
2. Création d'une vidéo complexe
Commençons par la tâche principale — créer un projet vidéo qui inclut tous les éléments appris auparavant. Voici à quoi ça ressemble :
from moviepy.editor import VideoFileClip, TextClip, CompositeVideoClip, concatenate_videoclips
from moviepy.audio.AudioClip import CompositeAudioClip, AudioFileClip
# Charger le clip vidéo principal
main_clip = VideoFileClip("clips/scene1.mp4")
# Charger le fichier audio
background_music = AudioFileClip("audio/background.mp3")
# Créer des titres (par exemple, pour le début de la vidéo)
title_text = "Bienvenue dans notre chef-d'œuvre cinématographique !"
title_clip = TextClip(title_text, fontsize=70, color='white', bg_color='black', size=main_clip.size)
title_clip = title_clip.set_duration(5)
# Créer une vidéo composite en ajoutant les titres au-dessus de la vidéo principale
final_clip = CompositeVideoClip([main_clip, title_clip.set_start(0)])
On a commencé par créer une vidéo composite simple, en ajoutant des titres. Dans notre cas, les titres
occupent les 5 premières secondes de la vidéo. Le secret réside dans l'utilisation de
CompositeVideoClip
, qui permet de combiner plusieurs clips vidéo et de les superposer.
Superposition des calques et animation des éléments
Pour rendre la vidéo plus vivante et dynamique, ajoutons quelques animations et graphismes. Supposons que l'on veuille ajouter un texte animé qui apparaît doucement dans le cadre.
from moviepy.editor import TextClip
# Créer un texte animé
animated_text = TextClip("Regardez et soyez inspirés !", fontsize=50, color='yellow', bg_color='black')
animated_text = animated_text.set_duration(3).set_position(lambda t: ('center', 200*(1 - t/3)))
# Ajouter le texte sur la vidéo, à partir de la 5ème seconde
final_clip = CompositeVideoClip([main_clip, title_clip.set_start(0), animated_text.set_start(5)])
La fonction set_position
nous permet d'animer le texte en modifiant sa position
en fonction du temps t
. Dans ce cas, le texte descend doucement de haut en bas en 3 secondes.
Ajout d'un logo avec un effet de zoom
Si tu veux, tu peux ajouter ton propre logo (mais ce n'est pas obligatoire).
from moviepy.editor import ImageClip
logo = ImageClip("logo.png").set_duration(5)
logo = logo.resize(lambda t: 1 + 0.2 * t).set_position(('right', 'bottom'))
Voici ce qui se produit :
resize(lambda t: 1 + 0.2 * t)
agrandit le logo de 20% chaque seconde, créant un effet de zoom.
3. Travail avec la musique de fond
Ajoutons maintenant une musique de fond pour rendre la vidéo plus captivante. Dans le monde de la vidéo, la musique représente les émotions. Elle fixe le ton de toute l'œuvre.
Charger la vidéo et ajouter une piste audio
from moviepy.editor import VideoFileClip, AudioFileClip
# Charger la vidéo principale et le fichier audio
video = VideoFileClip("main_video.mp4")
audio = AudioFileClip("background_music.mp3").subclip(0, video.duration)
# Ajouter la piste audio à la vidéo
video_with_audio = video.set_audio(audio)
Voici ce qui se passe :
AudioFileClip("background_music.mp3").subclip(0, video.duration)
ajuste la piste audio à la durée de la vidéo.set_audio(audio)
ajoute la musique de fond à la vidéo.
Ou ajouter la musique comme seconde piste
# Ajouter l'audio au clip vidéo final
final_audio = CompositeAudioClip([main_clip.audio, background_music.set_duration(main_clip.duration).volumex(0.5)])
final_clip = final_clip.set_audio(final_audio)
On utilise CompositeAudioClip
pour combiner la piste audio principale du clip vidéo avec la piste
de musique de fond. Ici, la fonction volumex
permet d'ajuster le volume de la musique,
pour qu'elle ne couvre pas les commentaires vocaux (s'il y en a).
Synchronisation de l'audio avec la vidéo
Un point important avec l'audio : assure-toi que la piste musicale correspond à la durée de la vidéo.
Tu peux le faire avec la méthode set_duration
, comme montré plus haut.
4. Exportation et optimisation de la vidéo
Maintenant que notre projet vidéo est terminé, il est temps de retrousser les manches et de l'exporter dans un format pratique.
Exporter la vidéo
# Exporter la vidéo dans un fichier final
final_clip.write_videofile("final_video.mp4", codec='libx264', bitrate='800k')
Ici, on utilise la méthode write_videofile
pour sauvegarder notre projet vidéo
au format MP4. Il est important de choisir un codec approprié, comme libx264
, qui garantit
une bonne qualité et une compatibilité avec la plupart des appareils.
Tu en apprendras davantage sur l'exportation vidéo dans les cours suivants.
Optimisation pour le web et les réseaux sociaux
Lorsqu'on crée une vidéo pour le web ou les réseaux sociaux, il est important de réduire sa taille sans perdre
en qualité. Cela peut être fait en ajustant un paramètre tel que bitrate
.
Choisis-le en fonction de la plateforme où tu comptes télécharger la vidéo.
Et voilà, ta vidéo est prête ! Félicitations, tu as créé ton premier chef-d'œuvre cinématographique avec MoviePy. N'oublie pas de partager tes résultats sur les réseaux sociaux et de voir l'impression qu'ils font sur tes amis et collègues. Bonne chance dans tes futures aventures dans le monde de la vidéo !
GO TO FULL VERSION