Moviepy in Python

Moviepy in Python
W Python jest moduł na wszystko, a także jeden do edycji wideo. MoviePy to biblioteka Python, która jest używana do cięcia wideo, konatenacji, wstawienia tytułu, kompozycji wideo, przetwarzania wideo i dodawania kilku efektów. MoviePy może być używany w połączeniu z najczęstszymi formatami audio i wideo. Jednak MoviePy nie można używać z kamerami internetowymi ani z filmami na żywo. Ponadto jest obsługiwany przez Windows, MacOS i Linux. W tym samouczku dowiemy się o module filmowym w Pythonie.

Moviepy

Aby zainstalować MoviePy:

PIP instaluj filmowy

Cięcie wideo

Po pierwsze, nauczmy się wycinać wideo. Najpierw weź wideo za pomocą VideOFileClip () (jako argument, podaj nazwę filmu). Następnie użyj SubClip (), aby określić ramy czasowe, które chcesz wyciąć. Następnie chcemy zapisać plik, który właśnie wycięliśmy; W tym celu używamy zapisu_videofile () i podajemy mu nazwę, którą chcemy zapisać jako.

Na przykład:

główny.Py z Moviepy.Redaktor importuj videOfileClip
# Użyj subclip (), aby określić żądany ramkę czasową
CUT_VIDEO_1 = videoFileClip („Wideo.MP4 ").Podklin (20,30)
CUT_VIDEO_2 = videoFileClip („Wideo.MP4 ").Podklin (40,50)
CUT_VIDEO_3 = videoFileClip („Wideo.MP4 ").Podklonka (60,70)
# Użyj zapisu_videOfile (), aby zapisać plik
CUT_VIDEO_1.write_videofile („cut_video_1.MP4 ")
CUT_VIDEO_2.write_videofile („cut_video_2.MP4 ")
CUT_VIDEO_3.write_videofile („cut_video_3.MP4 ")

Ten ostatni utworzy trzy filmy z głównego pliku wideo o nazwie „Wideo.MP4 ”. To zajmie „wideo.MP4 ”i pokrój go, a następnie zapisz jako CUT_VIDEO_1.M4, CUT_VIDEO_2.MP4 i CUT_VIDEO_3.MP4.

Łączenie wideo

Teraz połączmy trzy fragmenty, które utworzyliśmy w poprzedniej sekcji. Tutaj jeszcze raz wybierz trzy segmenty, które chcesz scalić z Subclip (). Następnie użyj Conatenate_Videoclips (), aby połączyć pliki razem; Tutaj pamiętaj, że pliki muszą być umieszczone na liście! Aby zapisać scalony plik, po raz kolejny będziemy używać write_videOfile (); Jednak tutaj musisz być ostrożny. Jeśli nie chcesz uzyskać błędu wartości, musisz określić kodeki.

Kodec są następujące:

Rozszerzenie Kodek
MP4 Libx264
OGV Libtheora
Webm libvpx
Ogg Libvorbis
MP3 PCM_S16LE
WAV Libvorbis
M4A libfdk_aac

Należy pamiętać, że podczas nazywania scalonego pliku musisz również wprowadzić rozszerzenie (na przykład w moim przypadku było połączone_video.MP4).

główny.Py z Moviepy.Edytor importuj videoFileClip, Conatenate_Videoclips
CUT_VIDEO_1 = videoFileClip („Wideo.MP4 ").Podklin (20,30)
CUT_VIDEO_2 = videoFileClip („Wideo.MP4 ").Podklin (40,50)
CUT_VIDEO_3 = videoFileClip („Wideo.MP4 ").Podklonka (70,80)
scalged = conatenate_videoclips ([cut_video_1, cut_video_2, cut_video_3]))
scalone.write_videofile („Merged_video.mp4 ", fps = 30, wątek = 1, codec =" libx264 ")

Jeśli chcesz używać istniejących plików i nie używać subclips (), to:

główny.Py z Moviepy.Edytor importuj videoFileClip, Conatenate_Videoclips
# Przeczytaj pliki wideo
CUT_VIDEO_1 = videOFileClip ("cut_video_1.MP4 ")
CUT_VIDEO_2 = videoFileClip („CUT_VIDEO_2.MP4 ")
CUT_VIDEO_3 = videOFileClip ("CUT_VIDEO_3.MP4 ")
# połącz pliki
scalged = conatenate_videoclips ([cut_video_1, cut_video_2, cut_video_3]))
# Zapisz połączony plik
scalone.write_videofile („Merged_video_2.mp4 ", fps = 30, wątek = 1, codec =" libx264 ")

Wstawki tytułu

Następnie wybierzmy klip i dodajmy do niego tytuł. Tutaj, aby to osiągnąć, musisz zainstalować ImageMagick:

sudo apt-get instal instal ImageMagick

Aby to zadziałało, musisz wprowadzić kilka zmian:

sudo nano/etc/imagemagick-6/polityka.XML

Komentuj wiersz, który brzmi następująco:

Zmieniając to ostatnie na następujące:

Tutaj czytasz plik wideo za pomocą videOFileClip (). Następnie wstawiasz tekst, który chcesz za pomocą TextClip (). Tutaj wstawiłem słowo „Linuxhint” z rozmiarem czcionki 75 i kolorem białego. Następnie możesz wybrać miejsce, w którym tekst jest wstawiany; W moim przypadku wstawiłem go w centrum. Na koniec możesz ustawić czas trwania za pomocą set_duration (). Następnie scal wideo i tekst za pomocą compositevideoclip () i zapisz go za pomocą write_videofile ().

główny.Py z Moviepy.Edytor import *
video = videofileClip („CUT_VIDEO_1.MP4 ”)
Text = TextClip („Linuxhint”, Fontsize = 75, color = „White”)
text2 = tekst.set_pos („Center”).set_duration (3)
video2 = compositevideoclip ([video, text2])
wideo2.write_videofile („SMS -y.MP4 ”)

Zmień objętość

Możesz także zmienić objętość filmu. Najpierw przeczytaj plik wideo za pomocą videOfileClip (), a następnie zmień wolumin za pomocą volumex (). Pojedynczy argument - kwota do zwiększenia lub zmniejszenia - jest przekazywana do Volumex (). W moim przypadku postanowiłem zwiększyć objętość 1 o 1.8.

główny.Py z Moviepy.Redaktor importuj videOfileClip
# Przeczytaj plik wideo
video_1 = videoFileClip ("video.MP4 ")
# Zmień głośność
video_2 = video_1.Volumex (1.8)
# ratować
video_2.write_videoFile („volum_boost.MP4 ")

Zmień rozmiar wideo

Aby zmienić rozmiar filmu, najpierw musisz go przeczytać za pomocą VideOFileClip (), a następnie użyj FX (). FX () bierze dwa argumenty; Drugim argumentem jest szerokość filmu (którą możesz zdefiniować).

główny.Py z Moviepy.Edytor import *
# Przeczytaj plik wideo
video_1 = videoFileClip ("video.MP4 ")
# Zmień rozmiar
video_2 = video_1.FX (VFX.rozmiar, szerokość = 880)
# ratować
video_2.write_videofile („szerokie.MP4 ")

Jednak możesz zrobić wiele, znacznie więcej!

Na przykład, jeśli chcesz przekształcić wideo w czarno -biały (pamiętaj o tym, tutaj rzeczy są wrażliwe na literę):

główny.Py z Moviepy.Edytor import *
Import Moviepy
# Przeczytaj plik wideo
video_1 = videoFileClip ("video.MP4 ")
# zmodyfikuj
video_2 = MoviePy.wideo.fx.Wszystko.BlackWhite (video_1, rgb = brak, reseve_luminosity = true)
# ratować
video_2.write_videofile („czarny.MP4 ")

O wiele więcej opcji można znaleźć w https: // zulko.github.IO/MoviePy/Ref/Videofx.html.

Do gif

Możesz także tworzyć gify. W tym przypadku robisz to, co chcesz zrobić z wideo (np.: Cut, czarno -biały, rozmiar itp.

główny.Py z Moviepy.Edytor import *
Import Moviepy
# Przeczytaj plik wideo
video_1 = videoFileClip ("CUT_VIDEO_1.MP4 ")
# zmodyfikuj
video_2 = MoviePy.wideo.fx.Wszystko.BlackWhite (video_1, rgb = brak, reseve_luminosity = true)
# ratować
video_2.write_gif ("GIF.gif ”)

Bez dźwięku

Kolejną interesującą funkcją jest usunięcie dźwięku z filmu. Aby usunąć dźwięk, przekaż wideo do bez_audio ().

główny.Py z Moviepy.Edytor import *
Import Moviepy
# Przeczytaj plik wideo
video_1 = videoFileClip ("CUT_VIDEO_1.MP4 ")
# zmodyfikuj
video_2 = video_1.bez dźwięku()
# ratować
video_2.write_videofile („Woaudio.MP4 ")

Audio

Audio Wise, MoviePy oferuje audio_fadein (), audio_fadeout (), audio_loop (), audio_normalize () i volumex (). Więcej o tym można znaleźć na stronie https: // zulko.github.IO/MoviePy/Ref/AudioFX.html.

Więcej informacji o tym, jak korzystać z tego modułu https: // zulko.github.IO/Moviepy/Ref/Ref.html.

MoviePy to biblioteka Python, która została zaprojektowana do edytowania filmów. MoviePy opiera się na FFMPEG i ImageMagick. A co więcej, używa FFMPEG i ImageMagick, więc jest bardzo, bardzo potężny! Oznacza to również, że oba należy zainstalować, jak i pracować. Moviepy wykonuje fantastyczną robotę edytowania filmów! Było tak wiele rzeczy, które można zrobić z wideo, że byłem pod wrażeniem! MoviePy może wycinać filmy, scalaj filmy, dodawać tytuły itp!

Szczęśliwe kodowanie!