Moviepy in Python

Moviepy in Python
In Python gibt es ein Modul für alles, und es gibt auch eines für die Videobearbeitung. Moviepy ist eine Python -Bibliothek, die zum Schneiden von Videoen, Verkettungen, Titelinsertionen, Videokompositionen, Videoverarbeitung und Hinzufügen einiger Effekte verwendet wird. Moviepy kann in Verbindung mit den häufigsten Audio- und Videoformaten verwendet werden. Moviepy kann jedoch nicht mit Webcams oder Live -Videos verwendet werden. Außerdem wird es von Windows, MacOS und Linux unterstützt. In diesem Tutorial lernen wir das moviepy Modul in Python kennen.

Beweglich

Um moviepy zu installieren:

PIP Installieren Sie Moviepy

Video Schneiden

Lassen Sie uns in erster Linie lernen, ein Video zu schneiden. Greifen Sie zunächst das Video mit VideoofileClip () (als Argument geben Sie ihm den Namen des Videos an). Verwenden Sie dann Subclip (), um den Zeitrahmen anzugeben, den Sie ausgeschnitten werden möchten. Dann möchten wir die Datei speichern, die wir gerade ausgeschnitten haben. Dafür verwenden wir Write_VideoFile () und geben ihm den Namen, den wir möchten, als es gespeichert wird.

Zum Beispiel:

hauptsächlich.py von moviepy.Editor importieren Videoofileclip
# Verwenden Sie Subclip (), um den gewünschten Zeitrahmen anzugeben
cut_video_1 = videofileclip ("Video.MP4 ").Unterklamm (20,30)
cut_video_2 = videofileclip ("Video.MP4 ").Unterklamm (40,50)
cut_video_3 = videofileclip ("Video.MP4 ").Unterklamm (60,70)
# Verwenden Sie write_videofile (), um die Datei zu speichern
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 ")

Letzteres erstellt drei Videos aus der Hauptvideo -Datei mit dem Namen „Video.MP4 ”. Es wird ein Video benötigen.mp4 ”und schneiden Sie es auf und speichern Sie es dann als cut_video_1.M4, cut_video_2.mp4 und cut_video_3.MP4.

Videouerierung

Lassen Sie uns nun die drei Brocken verschmelzen, die wir im vorherigen Abschnitt erstellt haben. Wählen Sie hier noch einmal drei Segmente aus, die Sie mit Subclip () verschmelzen möchten. Verwenden Sie dann concatenate_videoclips (), um die Dateien zusammenzuführen. Beachten Sie hier, dass die Dateien in einer Liste platziert werden müssen! Um die fusionierte Datei zu speichern, verwenden wir erneut write_videoFile (). Hier müssen Sie jedoch vorsichtig sein. Wenn Sie keinen Wertfehler erhalten möchten, müssen Sie die Codecs angeben.

Die Codecs sind wie folgt:

Verlängerung Codec
MP4 libx264
OGV libheora
Webm libvpx
Ogg libvorbis
MP3 PCM_S16LE
Wave libvorbis
M4a libfdk_aac

Bitte beachten Sie, dass Sie bei der Benennung der fusionierten Datei auch eine Erweiterung eingeben müssen (zum Beispiel in meinem Fall wurde sie merged_video.MP4).

hauptsächlich.py von moviepy.Editor VideoofileClip importieren, concatenate_videoclips
cut_video_1 = videofileclip ("Video.MP4 ").Unterklamm (20,30)
cut_video_2 = videofileclip ("Video.MP4 ").Unterklamm (40,50)
cut_video_3 = videofileclip ("Video.MP4 ").Unterklamm (70,80)
merged = concatenate_videoclips ([cut_video_1, cut_video_2, cut_video_3])
zusammengeführt.write_videoFile ("merged_video.mp4 ", fps = 30, threads = 1, codec =" libx264 ")

Wenn Sie die vorhandenen Dateien verwenden möchten und nicht die Subclips () verwenden möchten, dann:

hauptsächlich.py von moviepy.Editor VideoofileClip importieren, concatenate_videoclips
# Lesen Sie die Videodateien
cut_video_1 = videofileclip ("cut_video_1.MP4 ")
cut_video_2 = videofileclip ("cut_video_2.MP4 ")
cut_video_3 = videofileclip ("cut_video_3.MP4 ")
# Verkettieren Sie die Dateien
merged = concatenate_videoclips ([cut_video_1, cut_video_2, cut_video_3])
# Speichern Sie die fusionierte Datei
zusammengeführt.write_videoFile ("merged_video_2.mp4 ", fps = 30, threads = 1, codec =" libx264 ")

Titelinsertionen

Als nächstes wählen wir einen Clip und fügen Sie ihm einen Titel hinzu. Um dies zu erreichen, müssen Sie Imagemagick installieren lassen:

sudo apt-Get Installieren Sie Imagemagick

Damit dies funktioniert, müssen Sie einige Änderungen vornehmen:

sudo nano/etc/Imagemagick-6/Politik.xml

Kommentieren Sie die Zeile, die wie folgt liest:

Durch Ändern des letzteren in Folgendes:

Hier lesen Sie die Videodatei mit VideoofileClip (). Dann fügen Sie den von Ihnen gewünschten Text ein, den Sie mit Textclip () möchten. Hier habe ich das Wort „LinuxHint“ mit einer Schriftgröße von 75 und einer Farbe von Weiß eingefügt. Dann können Sie den Ort auswählen, an dem der Text eingefügt wird. In meinem Fall habe ich es in die Mitte eingefügt. Zuletzt können Sie die Dauer mit set_duration () einstellen. Führen Sie dann das Video und den Text mit CompositeVideoclip () zusammen und speichern Sie es mit write_videoFile ().

hauptsächlich.py von moviepy.Herausgeber Import *
Video = VideoOfleClip (“cut_video_1.mp4 ”)
text = textclip ("LinuxHint", fontsize = 75, color = 'White')
text2 = text.set_pos ('center').set_duration (3)
Video2 = CompositeVideoclip ([Video, Text2])
Video2.write_videoFile (“SMSED.mp4 ”)

Lautstärke ändern

Sie können auch das Volumen des Videos ändern. Lesen Sie zunächst die Videodatei mit VideoofileClip () und ändern Sie dann das Volumen mit volumex (). Ein einzelnes Argument - der Betrag, der ansteigert oder reduziert wird - wird an volumex übergeben (). In meinem Fall habe ich beschlossen, das Volumen um den Faktor 1 zu steigern.8.

hauptsächlich.py von moviepy.Editor importieren Videoofileclip
# Lesen Sie eine Videodatei
Video_1 = VideoOfileClip ("Video.MP4 ")
# Ändern Sie das Volumen
Video_2 = Video_1.Volumex (1.8)
# speichern
Video_2.write_videoFile ("Volume_boost.MP4 ")

Video skalieren

Um das Video zu ändern, müssen Sie es zunächst mit VideoofileClip () lesen und dann FX () verwenden. FX () nimmt zwei Argumente; Das zweite Argument ist die Breite des Videos (das Sie definieren können).

hauptsächlich.py von moviepy.Herausgeber Import *
# Lesen Sie eine Videodatei
Video_1 = VideoOfileClip ("Video.MP4 ")
# Größe der Größe
Video_2 = Video_1.FX (VFX.Größen Sie die Größe, Breite = 880)
# speichern
Video_2.write_videofile ("widthenlarged.MP4 ")

Sie können jedoch viel, viel mehr tun!

Wenn Sie beispielsweise das Video in Schwarzweiß verwandeln möchten (wohlgemerkt, hier sind die Dinge fallsempfindlich):

hauptsächlich.py von moviepy.Herausgeber Import *
Moviepy importieren
# Lesen Sie eine Videodatei
Video_1 = VideoOfileClip ("Video.MP4 ")
# ändern
Video_2 = moviepy.Video.fx.alle.Blackwhite (Video_1, rgb = keine, Preserve_luminosität = true)
# speichern
Video_2.write_videofile ("schwarz.MP4 ")

Viele weitere Optionen finden Sie bei https: // Zulko.Github.IO/MOVIEPY/REF/VIDEOFX.html.

Nach Gif

Sie können auch GIFs erstellen. In diesem Fall tun Sie das, was Sie mit dem Video tun möchten (z.

hauptsächlich.py von moviepy.Herausgeber Import *
Moviepy importieren
# Lesen Sie eine Videodatei
Video_1 = VideofileClip ("cut_video_1.MP4 ")
# ändern
Video_2 = moviepy.Video.fx.alle.Blackwhite (Video_1, rgb = keine, Preserve_luminosität = true)
# speichern
Video_2.write_gif ("gif.GIF ")

Ohne Ton

Eine weitere interessante Funktion besteht darin, das Audio aus dem Video zu entfernen. Um das Audio zu entfernen, übergeben Sie das Video an ohne_audio ().

hauptsächlich.py von moviepy.Herausgeber Import *
Moviepy importieren
# Lesen Sie eine Videodatei
Video_1 = VideofileClip ("cut_video_1.MP4 ")
# ändern
Video_2 = Video_1.ohne Ton()
# speichern
Video_2.write_videoFile ("woaudio.MP4 ")

Audio

Audio Wise, Moviepy bietet Audio_Fadein (), audio_fadeout (), audio_loop (), audio_normalize () und volumex () an. Mehr dazu finden Sie unter https: // Zulko.Github.io/moviepy/ref/audiofx.html.

Weitere Informationen zur Verwendung dieses Moduls finden Sie unter https: // Zulko.Github.io/moviepy/ref/ref.html.

Moviepy ist eine Python -Bibliothek, die zum Bearbeiten von Videos entwickelt wurde. Moviepy basiert auf FFMPEG und Imagemagick. Und darüber hinaus verwendet es FFMPEG und Imagemagick und ist daher sehr, sehr mächtig! Dies bedeutet auch, dass sowohl installiert als auch funktionieren müssen. Moviepy leistet fantastische Arbeit, Videos zu bearbeiten! Es gab so viele Dinge, die man mit dem Video machen konnte, dass ich gerade Ehrfurcht hatte! Moviepy kann Videos schneiden, Videos verschmelzen, Titel hinzufügen usw. Es ist ein bisschen ein kleines Paket!

Glückliche Codierung!