Tutorial: Manipulación de Archivos MP4 con Python
Introducción
Los archivos MP4 son un formato de archivo multimedia ampliamente utilizado para almacenar vídeo y para transmisiones. Son un estándar internacional que funciona con una amplia gama de dispositivos. En este tutorial, aprenderemos cómo manipular archivos MP4 con Python.
Requisitos
Para seguir este tutorial, necesitarás tener Python instalado en tu computadora. También necesitarás tener instalado el módulo ffmpeg
. Puedes instalarlo con el siguiente comando:
pip install ffmpeg
Lectura de un archivo MP4
Para leer un archivo MP4 con Python, podemos usar la función open()
. El siguiente código abre un archivo MP4 y lo lee:
import ffmpeg
with ffmpeg.input("video.mp4") as input_file:
for frame in input_file.decode():
print(frame)
Este código imprime cada frame del archivo MP4. Cada frame es una imagen en formato de bytes.
Escritura de un archivo MP4
Para escribir un archivo MP4 con Python, podemos usar la función output()
. El siguiente código escribe un archivo MP4 a partir de una lista de frames:
import ffmpeg
frames = [
b"frame1",
b"frame2",
b"frame3",
]
with ffmpeg.output(frames, "video.mp4") as output_file:
output_file.run()
Este código crea un archivo MP4 con tres frames. Los frames son especificados como una lista de bytes.
Extracción de audio de un archivo MP4
Para extraer el audio de un archivo MP4, podemos usar la función extract_audio()
. El siguiente código extrae el audio de un archivo MP4 y lo guarda en un archivo WAV:
import ffmpeg
with ffmpeg.input("video.mp4") as input_file:
with ffmpeg.output(input_file.audio, "audio.wav") as output_file:
output_file.run()
Este código crea un archivo WAV con el audio del archivo MP4.
Conclusión
En este tutorial, aprendimos cómo manipular archivos MP4 con Python. Aprendimos a leer, escribir, extraer audio y realizar otras operaciones con archivos MP4.
Código adicional
El siguiente código muestra cómo realizar algunas operaciones más avanzadas con archivos MP4:
import ffmpeg
# Recortar un archivo MP4
with ffmpeg.input("video.mp4") as input_file:
with ffmpeg.output(input_file.filter("trim=0:10", "output.mp4") as output_file:
output_file.run()
# Convertir un archivo MP4 a otro formato
with ffmpeg.input("video.mp4") as input_file:
with ffmpeg.output(input_file.convert("avi", "output.avi") as output_file:
output_file.run()
# Agregar subtítulos a un archivo MP4
with ffmpeg.input("video.mp4") as input_file:
with ffmpeg.output(input_file.add_subtitles("subtitles.srt", "output.mp4") as output_file:
output_file.run()
Este código recorta un archivo MP4 a los primeros 10 segundos, convierte un archivo MP4 a formato AVI y agrega subtítulos a un archivo MP4.