GAS17 commited on
Commit
9f09306
verified
1 Parent(s): b19c50b

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +39 -0
app.py ADDED
@@ -0,0 +1,39 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ import moviepy.editor as mp
3
+ import tempfile
4
+ import os
5
+
6
+ def extraer_audio(video_file):
7
+ """
8
+ Funci贸n que recibe la ruta de un archivo de video, extrae el audio y lo guarda en un archivo temporal .mp3.
9
+ """
10
+ # Crear un archivo temporal para el audio extra铆do
11
+ with tempfile.NamedTemporaryFile(delete=False, suffix=".mp3") as temp_audio:
12
+ temp_audio_path = temp_audio.name
13
+
14
+ try:
15
+ # Cargar el video con MoviePy (soporta diferentes formatos)
16
+ clip = mp.VideoFileClip(video_file)
17
+
18
+ # Extraer el audio y guardarlo en el archivo temporal en formato .mp3
19
+ clip.audio.write_audiofile(temp_audio_path, logger=None) # logger=None evita mucha salida en la consola
20
+ clip.close()
21
+
22
+ # Retornar la ruta del archivo de audio para que Gradio lo ofrezca como descarga
23
+ return temp_audio_path
24
+ except Exception as e:
25
+ # En caso de error, eliminar el archivo temporal y retornar el error
26
+ if os.path.exists(temp_audio_path):
27
+ os.remove(temp_audio_path)
28
+ return f"Error al procesar el video: {str(e)}"
29
+ Crear la interfaz de Gradio
30
+ iface = gr.Interface(
31
+ fn=extraer_audio,
32
+ inputs=gr.File(label="Sube tu archivo de video (.mp4, .avi, .mkv, etc.)"),
33
+ outputs=gr.File(label="Descarga el audio en formato MP3"),
34
+ title="Extracci贸n de audio de Video a MP3",
35
+ description="Esta aplicaci贸n extrae el audio de un video y lo convierte a un archivo .mp3"
36
+ )
37
+
38
+ if name == "main":
39
+ iface.launch()