leonett commited on
Commit
54175c5
verified
1 Parent(s): 4c2f9ec

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +5 -6
app.py CHANGED
@@ -150,18 +150,18 @@ with gr.Blocks(title="Extracci贸n de Fotogramas Forenses") as demo:
150
  def on_video_change(video):
151
  # Verificar que se haya cargado algo y que contenga informaci贸n
152
  if not video:
153
- return gr.Button.update(interactive=False), gr.Button.update(interactive=False)
154
  if isinstance(video, dict) and video.get("name"):
155
  original_name = video["name"]
156
  elif isinstance(video, str) and video:
157
  original_name = os.path.basename(video)
158
  else:
159
- return gr.Button.update(interactive=False), gr.Button.update(interactive=False)
160
  allowed_extensions = ('.mp4', '.avi', '.mov', '.mkv')
161
  if not original_name.lower().endswith(allowed_extensions):
162
  raise gr.Error("Solo se permiten archivos de video (mp4, avi, mov, mkv)")
163
  # Al tener un video v谩lido, activa "Procesar Fotogramas" y desactiva "DESCARGAR FOTOGRAMAS"
164
- return gr.Button.update(interactive=True), gr.Button.update(interactive=False)
165
 
166
  video_input.change(
167
  fn=on_video_change,
@@ -173,12 +173,11 @@ with gr.Blocks(title="Extracci贸n de Fotogramas Forenses") as demo:
173
  # Al pulsar "Procesar Fotogramas": se procesa el video, se genera el collage y el ZIP, se desactiva el bot贸n de procesar
174
  # y se activa el bot贸n de descarga.
175
  def procesar_y_mostrar(video):
176
- # Desactivar el bot贸n de procesamiento para evitar reprocesos
177
- btn_proc_update = gr.Button.update(interactive=False)
178
  if temp_dir_state.value:
179
  limpiar_cache(temp_dir_state.value)
180
  collage_path, zip_path, temp_dir = procesar_video(video)
181
- btn_download_update = gr.Button.update(interactive=True)
182
  return collage_path, zip_path, temp_dir, zip_path, btn_download_update, btn_proc_update
183
 
184
  procesar_btn.click(
 
150
  def on_video_change(video):
151
  # Verificar que se haya cargado algo y que contenga informaci贸n
152
  if not video:
153
+ return gr.update(interactive=False), gr.update(interactive=False)
154
  if isinstance(video, dict) and video.get("name"):
155
  original_name = video["name"]
156
  elif isinstance(video, str) and video:
157
  original_name = os.path.basename(video)
158
  else:
159
+ return gr.update(interactive=False), gr.update(interactive=False)
160
  allowed_extensions = ('.mp4', '.avi', '.mov', '.mkv')
161
  if not original_name.lower().endswith(allowed_extensions):
162
  raise gr.Error("Solo se permiten archivos de video (mp4, avi, mov, mkv)")
163
  # Al tener un video v谩lido, activa "Procesar Fotogramas" y desactiva "DESCARGAR FOTOGRAMAS"
164
+ return gr.update(interactive=True), gr.update(interactive=False)
165
 
166
  video_input.change(
167
  fn=on_video_change,
 
173
  # Al pulsar "Procesar Fotogramas": se procesa el video, se genera el collage y el ZIP, se desactiva el bot贸n de procesar
174
  # y se activa el bot贸n de descarga.
175
  def procesar_y_mostrar(video):
176
+ btn_proc_update = gr.update(interactive=False)
 
177
  if temp_dir_state.value:
178
  limpiar_cache(temp_dir_state.value)
179
  collage_path, zip_path, temp_dir = procesar_video(video)
180
+ btn_download_update = gr.update(interactive=True)
181
  return collage_path, zip_path, temp_dir, zip_path, btn_download_update, btn_proc_update
182
 
183
  procesar_btn.click(