Armando117 commited on
Commit
2da5166
1 Parent(s): b246b77

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +20 -1
app.py CHANGED
@@ -3,6 +3,8 @@ from gtts import gTTS
3
  import gradio as gr
4
  import tempfile
5
  import os
 
 
6
 
7
  # Ruta del directorio que quieres asegurarte de que exista
8
  dir_path = '/tmp/gradio/'
@@ -15,6 +17,20 @@ if not os.path.exists(dir_path):
15
  except Exception as e:
16
  print(f"No se pudo crear el directorio {dir_path}: {e}")
17
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
18
  def convert_pdf_page_to_audio(pdf_file, page_number):
19
  try:
20
  # Crear archivo temporal para el PDF
@@ -39,10 +55,13 @@ def convert_pdf_page_to_audio(pdf_file, page_number):
39
  tts.save(temp_audio_file.name)
40
  audio_file_path = temp_audio_file.name
41
 
42
- # Leer y devolver los datos binarios del archivo de audio
43
  with open(audio_file_path, 'rb') as audio_file:
44
  audio_data = audio_file.read()
45
 
 
 
 
46
  # Eliminar archivos temporales
47
  os.remove(pdf_file_path)
48
  os.remove(audio_file_path)
 
3
  import gradio as gr
4
  import tempfile
5
  import os
6
+ import hashlib
7
+ from pathlib import Path # Importa Path desde pathlib
8
 
9
  # Ruta del directorio que quieres asegurarte de que exista
10
  dir_path = '/tmp/gradio/'
 
17
  except Exception as e:
18
  print(f"No se pudo crear el directorio {dir_path}: {e}")
19
 
20
+ # Definir la funci贸n save_audio_to_cache
21
+ def save_audio_to_cache(data, cache_dir):
22
+ # Calcular el hash de los datos de audio para generar un nombre de archivo 煤nico
23
+ hash_value = hashlib.sha256(data).hexdigest()
24
+ file_name = f"{hash_value}.mp3"
25
+ file_path = Path(cache_dir) / file_name
26
+
27
+ # Guardar los datos de audio en el archivo cache_dir/file_name
28
+ with open(file_path, "wb") as audio_file:
29
+ audio_file.write(data)
30
+
31
+ return file_path
32
+
33
+ # Definir la funci贸n convert_pdf_page_to_audio con la correcci贸n
34
  def convert_pdf_page_to_audio(pdf_file, page_number):
35
  try:
36
  # Crear archivo temporal para el PDF
 
55
  tts.save(temp_audio_file.name)
56
  audio_file_path = temp_audio_file.name
57
 
58
+ # Leer los datos binarios del archivo de audio
59
  with open(audio_file_path, 'rb') as audio_file:
60
  audio_data = audio_file.read()
61
 
62
+ # Llamar a la funci贸n save_audio_to_cache para guardar los datos en la cach茅
63
+ audio_file_path = save_audio_to_cache(audio_data, dir_path)
64
+
65
  # Eliminar archivos temporales
66
  os.remove(pdf_file_path)
67
  os.remove(audio_file_path)