GAS17 commited on
Commit
942a6c0
verified
1 Parent(s): 0d42319

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +16 -9
app.py CHANGED
@@ -1,5 +1,5 @@
1
  import gradio as gr
2
- import moviepy as mp
3
  import tempfile
4
  import os
5
 
@@ -7,8 +7,9 @@ def extraer_audio(video_file):
7
  """
8
  Funci贸n que recibe la ruta de un archivo de video,
9
  extrae el audio y lo guarda en un archivo temporal .mp3.
 
10
  """
11
- # Crear un archivo temporal para el audio extra铆do
12
  with tempfile.NamedTemporaryFile(delete=False, suffix=".mp3") as temp_audio:
13
  temp_audio_path = temp_audio.name
14
 
@@ -17,23 +18,29 @@ def extraer_audio(video_file):
17
  clip = mp.VideoFileClip(video_file)
18
 
19
  # Extraer el audio y guardarlo en el archivo temporal
 
20
  clip.audio.write_audiofile(temp_audio_path, logger=None)
21
  clip.close()
22
 
23
- # Retornar la ruta del archivo de audio para que Gradio lo ofrezca como descarga
24
- return temp_audio_path
25
-
26
  except Exception as e:
27
- # En caso de error, eliminar el archivo temporal y notificar
28
  if os.path.exists(temp_audio_path):
29
  os.remove(temp_audio_path)
30
- return f"Error al procesar el video: {str(e)}"
 
31
 
32
- # Crear la interfaz de Gradio
 
 
33
  iface = gr.Interface(
34
  fn=extraer_audio,
35
  inputs=gr.File(label="Sube tu archivo de video (.mp4, .avi, .mkv, etc.)"),
36
- outputs=gr.File(label="Descarga el audio en formato MP3"),
 
 
 
37
  title="Extracci贸n de audio de Video a MP3",
38
  description="Esta aplicaci贸n extrae el audio de un video y lo convierte a un archivo .mp3"
39
  )
 
1
  import gradio as gr
2
+ import moviepy.editor as mp
3
  import tempfile
4
  import os
5
 
 
7
  """
8
  Funci贸n que recibe la ruta de un archivo de video,
9
  extrae el audio y lo guarda en un archivo temporal .mp3.
10
+ Retorna una tupla: (ruta_del_mp3_o_None, mensaje).
11
  """
12
+ # Creamos un archivo temporal para el MP3, sin borrarlo autom谩ticamente
13
  with tempfile.NamedTemporaryFile(delete=False, suffix=".mp3") as temp_audio:
14
  temp_audio_path = temp_audio.name
15
 
 
18
  clip = mp.VideoFileClip(video_file)
19
 
20
  # Extraer el audio y guardarlo en el archivo temporal
21
+ # Al usar logger=None se evita mostrar demasiada salida en consola
22
  clip.audio.write_audiofile(temp_audio_path, logger=None)
23
  clip.close()
24
 
25
+ # Si todo sale bien, regresamos la ruta al MP3 y un mensaje de 茅xito
26
+ return temp_audio_path, "隆Audio extra铆do exitosamente!"
 
27
  except Exception as e:
28
+ # En caso de error, eliminamos el archivo temporal (si existe)
29
  if os.path.exists(temp_audio_path):
30
  os.remove(temp_audio_path)
31
+ # Retornamos None en la parte de archivo y un mensaje de error
32
+ return None, f"Error al procesar el video: {str(e)}"
33
 
34
+ # Creamos la interfaz de Gradio con DOS salidas:
35
+ # - El archivo de audio
36
+ # - Un textbox para mostrar mensajes (茅xito o error)
37
  iface = gr.Interface(
38
  fn=extraer_audio,
39
  inputs=gr.File(label="Sube tu archivo de video (.mp4, .avi, .mkv, etc.)"),
40
+ outputs=[
41
+ gr.File(label="Descarga el audio en formato MP3"),
42
+ gr.Textbox(label="Mensaje")
43
+ ],
44
  title="Extracci贸n de audio de Video a MP3",
45
  description="Esta aplicaci贸n extrae el audio de un video y lo convierte a un archivo .mp3"
46
  )