|
import gradio as gr |
|
import moviepy.editor as mp |
|
import tempfile |
|
import os |
|
|
|
def extraer_audio(video_file): |
|
""" |
|
Funci贸n que recibe la ruta de un archivo de video, extrae el audio |
|
y lo guarda en un archivo temporal .mp3. |
|
""" |
|
|
|
with tempfile.NamedTemporaryFile(delete=False, suffix=".mp3") as temp_audio: |
|
temp_audio_path = temp_audio.name |
|
|
|
try: |
|
|
|
clip = mp.VideoFileClip(video_file) |
|
|
|
|
|
clip.audio.write_audiofile(temp_audio_path, logger=None) |
|
clip.close() |
|
|
|
|
|
return temp_audio_path |
|
except Exception as e: |
|
|
|
if os.path.exists(temp_audio_path): |
|
os.remove(temp_audio_path) |
|
return f"Error al procesar el video: {str(e)}" |
|
Crear la interfaz de Gradio |
|
iface = gr.Interface( |
|
fn=extraer_audio, |
|
inputs=gr.File(label="Sube tu archivo de video (.mp4, .avi, .mkv, etc.)"), |
|
outputs=gr.File(label="Descarga el audio en formato MP3"), |
|
title="Extracci贸n de audio de Video a MP3", |
|
description="Esta aplicaci贸n extrae el audio de un video y lo convierte a un archivo .mp3" |
|
) |
|
|
|
if name == "main": iface.launch() |