1. Kompozycja wideo: łączymy wszystkie poznane techniki
Dzisiaj stworzymy coś wyjątkowego — kompleksowe wideo z napisami, podkładem muzycznym i efektami animacji, używając biblioteki MoviePy. Ale zanim zanurzymy się w proces twórczy, pozwól, że zgadnę: próbowaliście już dodać tekst na wideo i zsynchronizować go z ścieżką audio? Jeśli nie, to najwyższa pora opanować te umiejętności i poczuć całą moc automatyzacji w świecie produkcji wideo!
Zanim zaczniemy, przypomnijmy sobie, czego nauczyliśmy się na poprzednich wykładach. Nauczyliśmy się wyodrębniać i przetwarzać klipy wideo i audio, dodawać tekst i grafikę, a także pracować z animacją i efektami. Czas połączyć to wszystko w całość i stworzyć nasz arcydzieło.
Główne etapy tworzenia kompleksowego montażu wideo
- Dodanie napisów: Początkowe i końcowe napisy pomagają oznaczyć początek i koniec projektu wideo.
- Podkład muzyczny: Muzyka w tle dodaje emocjonalną atmosferę wideo.
- Efekty animacji: Poruszające się teksty i obrazy ożywiają treść i czynią ją ciekawszą.
2. Tworzenie złożonego wideo
Zaczynamy od głównego zadania — stworzenia projektu wideo, który będzie zawierał wszystkie wcześniej poznane elementy. Oto jak to będzie wyglądać:
from moviepy.editor import VideoFileClip, TextClip, CompositeVideoClip, concatenate_videoclips
from moviepy.audio.AudioClip import CompositeAudioClip, AudioFileClip
# Ładujemy główny klip wideo
main_clip = VideoFileClip("clips/scene1.mp4")
# Ładujemy plik muzyczny
background_music = AudioFileClip("audio/background.mp3")
# Tworzymy napisy (na przykład na początek wideo)
title_text = "Witamy w naszym kinowym arcydziele!"
title_clip = TextClip(title_text, fontsize=70, color='white', bg_color='black', size=main_clip.size)
title_clip = title_clip.set_duration(5)
# Tworzymy kompozytowe wideo, dodając napisy na głównym wideo
final_clip = CompositeVideoClip([main_clip, title_clip.set_start(0)])
Zaczęliśmy od stworzenia prostego wideo z kompozycją, dodając napisy. W naszym przypadku napisy zajmują pierwsze
5 sekund wideo. Sekret tkwi w użyciu CompositeVideoClip
, który pozwala łączyć kilka
klipów wideo i nakładać je na siebie.
Warstwowanie i animacja elementów
Aby wideo stało się bardziej żywe i dynamiczne, dodamy trochę animacji i grafiki. Załóżmy, że chcemy dodać ruchomy tekst, który płynnie pojawia się w kadrze.
from moviepy.editor import TextClip
# Tworzymy animowany tekst
animated_text = TextClip("Oglądaj i inspiruj się!", fontsize=50, color='yellow', bg_color='black')
animated_text = animated_text.set_duration(3).set_position(lambda t: ('center', 200*(1 - t/3)))
# Dodajemy tekst na wideo, zaczynając od 5. sekundy
final_clip = CompositeVideoClip([main_clip, title_clip.set_start(0), animated_text.set_start(5)])
Funkcja set_position
pozwala nam animować tekst, zmieniając jego pozycję w zależności od czasu
t
. W tym przypadku tekst płynnie zjeżdża z góry w dół przez 3 sekundy.
Dodanie logo z efektem powiększenia
Jeśli bardzo chcesz, możesz dodać swoje logo (ale to nie jest konieczne).
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'))
Tutaj:
resize(lambda t: 1 + 0.2 * t)
powiększa rozmiar logo o 20% każdą sekundę, tworząc efekt powiększania.
3. Praca z podkładem muzycznym
Teraz dodamy podkład muzyczny, aby uczynić wideo bardziej ekscytującym. W świecie wideo, muzyka to emocje. Nadaje ona ton całemu dziełu.
Ładowanie wideo i dodawanie ścieżki dźwiękowej
from moviepy.editor import VideoFileClip, AudioFileClip
# Ładowanie głównego wideo i pliku audio
video = VideoFileClip("main_video.mp4")
audio = AudioFileClip("background_music.mp3").subclip(0, video.duration)
# Dodanie ścieżki dźwiękowej do wideo
video_with_audio = video.set_audio(audio)
Tutaj:
AudioFileClip("background_music.mp3").subclip(0, video.duration)
dostosowuje ścieżkę dźwiękową do długości wideo.set_audio(audio)
dodaje muzykę w tle do wideo.
Lub można nałożyć muzykę drugą ścieżką
# Ustawiamy dźwięk na finalnym klipie wideo
final_audio = CompositeAudioClip([main_clip.audio, background_music.set_duration(main_clip.duration).volumex(0.5)])
final_clip = final_clip.set_audio(final_audio)
Używamy CompositeAudioClip
, aby połączyć ścieżkę dźwiękową głównego klipu wideo z muzyką w tle.
Tutaj funkcja volumex
pomaga regulować głośność muzyki, aby nie zagłuszała komentarzy głosowych (jeśli takie występują).
Synchronizacja audio z obrazem
Ważny moment przy pracy z audio: upewnij się, że ścieżka muzyczna odpowiada długości wideo. Można to zrobić za pomocą metody set_duration
, jak pokazano powyżej.
4. Eksportowanie i optymalizacja wideo
Gdy nasz projekt wideo jest gotowy, czas podwinąć rękawy i wyeksportować go w wygodnym dla nas formacie.
Eksport wideo
# Eksport wideo do pliku końcowego
final_clip.write_videofile("final_video.mp4", codec='libx264', bitrate='800k')
Tutaj korzystamy z metody write_videofile
, aby zapisać nasz projekt wideo w formacie MP4. Ważne jest wybranie
odpowiedniego kodeka, na przykład libx264
, który zapewnia dobrą jakość i kompatybilność z
większością urządzeń.
Więcej o eksporcie wideo dowiesz się na przyszłych wykładach.
Optymalizacja dla sieci i mediów społecznościowych
Tworząc wideo dla sieci lub mediów społecznościowych, ważne jest zmniejszenie jego rozmiaru bez utraty jakości. Można to zrobić, regulując taki parametr jak bitrate
. Wybierz odpowiednio do platformy, na którą planujesz przesłać wideo.
I tak, Twoje wideo jest gotowe! Gratulacje, stworzyłeś swoje pierwsze arcydzieło kinowe za pomocą MoviePy. Teraz nie zapomnij podzielić się wynikami w mediach społecznościowych i zobacz, jakie wrażenie zrobi Twoje dzieło na znajomych i kolegach. Życzę powodzenia w przyszłych przygodach w świecie wideo!
GO TO FULL VERSION