Película en Python

Película en Python
En Python, hay un módulo para todo, y también hay uno para la edición de video. MoviPy es una biblioteca de Python que se usa para corte de video, concatenaciones, inserciones de títulos, composición de video, procesamiento de video y agregar algunos efectos. MoviePy se puede usar junto con los formatos de audio y video más comunes. Sin embargo, Moviepy no se puede usar con cámaras web o con videos en vivo. Además, es compatible con Windows, MacOS y Linux. En este tutorial, estaremos aprendiendo sobre el módulo de películas en Python.

Cinebal

Para instalar Picmentpy:

PIP install Picmiepy

Recorte de video

En primera instancia, aprendamos a cortar un video. Primero, tome el video usando VideoFileClip () (como argumento, dale el nombre del video). Luego use subclip () para especificar el marco de tiempo que desea cortar. Entonces queremos guardar el archivo que acabamos de cortar; Para eso, usamos write_videofile () y le damos el nombre que queremos que lo guarde como.

Por ejemplo:

principal.Py de PelicEpy.editor importar videofileClip
# use subclip () para especificar el marco de tiempo que desea
Cut_video_1 = VideoFileClip ("Video.mp4 ").subclip (20,30)
Cut_video_2 = VideoFileClip ("Video.Mp4 ").subclip (40,50)
Cut_video_3 = VideoFileClip ("Video.Mp4 ").subclip (60,70)
# use write_videofile () para guardar el archivo
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 ")

Este último creará tres videos del archivo de video principal llamado "Video.mp4 ". Tomará "Video.mp4 ”y córtelo y luego guárdelo como CUT_VIDEO_1.M4, CUT_VIDEO_2.MP4 y CUT_VIDEO_3.mp4.

Fusión de video

Ahora, fusionemos los tres trozos que creamos en la sección anterior. Aquí, una vez más, elija tres segmentos que le gustaría fusionarse con Subclip (). Luego use concatenate_videOclips () para fusionar los archivos; Aquí, tenga en cuenta que los archivos deben colocarse en una lista! Para guardar el archivo fusionado, una vez más, usaremos write_videofile (); Sin embargo, aquí, debes tener cuidado. Si no desea obtener un error de valor, debe especificar los códecs.

Los códecs son los siguientes:

Extensión Codec
mp4 libx264
OGV Libheora
webm libvpx
ogg libvorbis
mp3 PCM_S16LE
wav libvorbis
m4a libfdk_aac

Tenga en cuenta que al nombrar el archivo fusionado, también debe ingresar una extensión (por ejemplo, en mi caso, fue fusionado_video.MP4).

principal.Py de PelicEpy.Editor Importar VideoFileClip, Concatenate_VidEoclips
Cut_video_1 = VideoFileClip ("Video.Mp4 ").subclip (20,30)
Cut_video_2 = VideoFileClip ("Video.Mp4 ").subclip (40,50)
Cut_video_3 = VideoFileClip ("Video.Mp4 ").subclip (70,80)
fusionado = concataNate_videOclips ([CUT_VIDEO_1, CUT_VIDEO_2, CUT_VIDEO_3])
fusionado.write_videofile ("fused_video.mp4 ", fps = 30, hilos = 1, codec =" libx264 ")

Si desea usar los archivos existentes y no usar los subclips (), entonces:

principal.Py de PelicEpy.Editor Importar VideoFileClip, Concatenate_VidEoclips
# Lea los archivos de video
Cut_video_1 = VideOfileClip ("CUT_VIDEO_1.mp4 ")
Cut_video_2 = VideOfileClip ("CUT_VIDEO_2.mp4 ")
Cut_video_3 = VideOfileClip ("CUT_VIDEO_3.mp4 ")
# Concatene los archivos
fusionado = concataNate_videOclips ([CUT_VIDEO_1, CUT_VIDEO_2, CUT_VIDEO_3])
# Guardar el archivo fusionado
fusionado.write_videofile ("fused_video_2.mp4 ", fps = 30, hilos = 1, codec =" libx264 ")

Inserciones de títulos

A continuación, elijamos un clip y le agregemos un título. Aquí, para lograr esto, necesitará que ImageMagick esté instalado:

sudo apt-get install imageMagick

Para que esto funcione, debe hacer algunos cambios:

sudo nano/etc/imagemagick-6/política.xml

Comenta la línea que lee de la siguiente manera:

Al cambiar este último a lo siguiente:

Aquí, lee el archivo de video usando VideoFileClip (). Luego inserta el texto que desea usar TextClip (). Aquí, inserté la palabra "Linuxhint" con un tamaño de fuente de 75 y un color blanco. Luego puede elegir el lugar donde se inserta el texto; En mi caso, lo inserté en el centro. Por último, puede establecer la duración usando set_duration (). Luego fusione el video y el texto usando compositeVideOclip (), y guárdelo usando write_videofile ().

principal.Py de PelicEpy.importación del editor *
video = VideoFileClip ("CUT_VIDEO_1.mp4 ")
text = textClip ("Linuxhint", fontSize = 75, color = 'blanco')
texto2 = texto.set_pos ('centro').set_duration (3)
video2 = compositeVideOclip ([Video, Text2])
Video2.write_videofile (“Texted.mp4 ")

Volumen de cambio

También puedes cambiar el volumen del video. Primero, lea el archivo de video usando VideoFileClip () y luego cambie el volumen usando VolumEx (). Un solo argumento, la cantidad para aumentar o reducir, se pasa a Volumex (). En mi caso, he decidido aumentar el volumen por un factor de 1.8.

principal.Py de PelicEpy.editor importar videofileClip
# Lea un archivo de video
video_1 = videofileClip ("Video.Mp4 ")
# Cambiar el volumen
video_2 = video_1.Volumex (1.8)
# ahorrar
Video_2.write_videofile ("volume_boost.mp4 ")

Cambiar tamaño de video

Para cambiar el tamaño del video, primero debe leerlo usando VideoFileClip () y luego usar fx (). Fx () toma dos argumentos; El segundo argumento es el ancho del video (que puedes definir).

principal.Py de PelicEpy.importación del editor *
# Lea un archivo de video
video_1 = videofileClip ("Video.Mp4 ")
# cambiar el tamaño
video_2 = video_1.FX (VFX.cambiar el tamaño, ancho = 880)
# ahorrar
Video_2.write_videofile ("WidthenLarged.mp4 ")

Sin embargo, puedes hacer mucho, mucho más!

Por ejemplo, si desea convertir el video en blanco y negro (sí, aquí, las cosas son sensibles a los casos):

principal.Py de PelicEpy.importación del editor *
importar películas
# Lea un archivo de video
video_1 = videofileClip ("Video.Mp4 ")
# modificar
Video_2 = Moviepy.video.FX.todo.Blackwhite (video_1, rgb = none, preserve_luminosity = true)
# ahorrar
Video_2.write_videofile ("negro.mp4 ")

Se pueden encontrar muchas más opciones en https: // zulko.github.IO/Moviepy/Ref/VideOfx.html.

A gif

También puedes crear gifs. En este caso, haces lo que quieres hacer en el video (ex: corte, blanco y negro, redimensional, etc.) y luego usas write_gif () para crear un gif.

principal.Py de PelicEpy.importación del editor *
importar películas
# Lea un archivo de video
video_1 = videoFileClip ("CUT_VIDEO_1.mp4 ")
# modificar
Video_2 = Moviepy.video.FX.todo.Blackwhite (video_1, rgb = none, preserve_luminosity = true)
# ahorrar
Video_2.write_gif ("gif.gif ")

Sin audio

Otra característica interesante es eliminar el audio del video. Para eliminar el audio, pase el video a sin_audio ().

principal.Py de PelicEpy.importación del editor *
importar películas
# Lea un archivo de video
video_1 = videoFileClip ("CUT_VIDEO_1.mp4 ")
# modificar
video_2 = video_1.Sin audio()
# ahorrar
Video_2.write_videofile ("woaudio.mp4 ")

Audio

Audio Wise, MoviePy ofrece audio_fadein (), audio_fadeout (), audio_loop (), audio_normaly () y volumex (). Se puede encontrar más sobre esto en https: // zulko.github.IO/Moviepy/Ref/Audiofx.html.

Puede encontrar más información sobre cómo usar este módulo en https: // zulko.github.io/película/ref/ref/Ref.html.

Moviepy es una biblioteca de Python que fue diseñada para editar videos. Moviepy se basa en ffmpeg e imagemagick. Y lo que es más, usa ffmpeg y imagemagick y, por lo tanto, es muy, muy poderoso! Esto también significa que ambos deben instalarse y trabajar. Moviepy hace un trabajo fantástico al editar videos! Había tantas cosas que uno podía hacer al video que estaba asombrado! Moviepy puede cortar videos, fusionar videos, agregar títulos, etc. es un paquete bastante pequeño!

Codificación feliz!