Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
|
@@ -344,7 +344,7 @@ def create_video(script_text: str, generate_script: bool, music_path: str | None
|
|
| 344 |
if not video_paths:
|
| 345 |
raise RuntimeError("No se pudieron descargar videos de Pexels")
|
| 346 |
|
| 347 |
-
# Paso 4: Procesar videos -
|
| 348 |
update_task_progress(task_id, f"Paso 4/7: Procesando {len(video_paths)} videos...")
|
| 349 |
video_clips = []
|
| 350 |
|
|
@@ -354,17 +354,32 @@ def create_video(script_text: str, generate_script: bool, music_path: str | None
|
|
| 354 |
# Cargar el video
|
| 355 |
clip = VideoFileClip(path)
|
| 356 |
if clip is None:
|
|
|
|
| 357 |
continue
|
| 358 |
|
| 359 |
# Tomar máximo 8 segundos de cada clip
|
| 360 |
-
|
| 361 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 362 |
|
| 363 |
# Normalizar el clip
|
| 364 |
-
|
| 365 |
-
|
| 366 |
-
|
| 367 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 368 |
|
| 369 |
except Exception as e:
|
| 370 |
logger.error(f"Error procesando video {path}: {e}")
|
|
|
|
| 344 |
if not video_paths:
|
| 345 |
raise RuntimeError("No se pudieron descargar videos de Pexels")
|
| 346 |
|
| 347 |
+
# Paso 4: Procesar videos - MANEJO CORRECTO DE ERRORES
|
| 348 |
update_task_progress(task_id, f"Paso 4/7: Procesando {len(video_paths)} videos...")
|
| 349 |
video_clips = []
|
| 350 |
|
|
|
|
| 354 |
# Cargar el video
|
| 355 |
clip = VideoFileClip(path)
|
| 356 |
if clip is None:
|
| 357 |
+
logger.error(f"No se pudo cargar el video: {path}")
|
| 358 |
continue
|
| 359 |
|
| 360 |
# Tomar máximo 8 segundos de cada clip
|
| 361 |
+
try:
|
| 362 |
+
duration = min(8, clip.duration)
|
| 363 |
+
processed_clip = clip.subclip(0, duration)
|
| 364 |
+
except Exception as e:
|
| 365 |
+
logger.error(f"Error al recortar video {path}: {e}")
|
| 366 |
+
clip.close()
|
| 367 |
+
continue
|
| 368 |
|
| 369 |
# Normalizar el clip
|
| 370 |
+
try:
|
| 371 |
+
processed_clip = normalize_clip(processed_clip)
|
| 372 |
+
if processed_clip is not None:
|
| 373 |
+
video_clips.append(processed_clip)
|
| 374 |
+
else:
|
| 375 |
+
processed_clip.close()
|
| 376 |
+
clip.close()
|
| 377 |
+
except Exception as e:
|
| 378 |
+
logger.error(f"Error al normalizar video {path}: {e}")
|
| 379 |
+
if 'processed_clip' in locals():
|
| 380 |
+
processed_clip.close()
|
| 381 |
+
clip.close()
|
| 382 |
+
continue
|
| 383 |
|
| 384 |
except Exception as e:
|
| 385 |
logger.error(f"Error procesando video {path}: {e}")
|