Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
|
@@ -859,9 +859,14 @@ def crear_video(prompt_type, input_text, selected_voice, musica_file=None):
|
|
| 859 |
except Exception as e:
|
| 860 |
logger.warning(f"Error ajustando duración del audio final: {str(e)}")
|
| 861 |
|
| 862 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 863 |
output_filename = f"video_{int(time.time())}.mp4" # Nombre único con timestamp
|
| 864 |
output_path = os.path.join(temp_dir_intermediate, output_filename)
|
|
|
|
| 865 |
|
| 866 |
# Escribir el video
|
| 867 |
video_final.write_videofile(
|
|
@@ -879,7 +884,6 @@ def crear_video(prompt_type, input_text, selected_voice, musica_file=None):
|
|
| 879 |
)
|
| 880 |
|
| 881 |
# Mover a ubicación permanente en /tmp
|
| 882 |
-
permanent_path = f"/tmp/{output_filename}"
|
| 883 |
try:
|
| 884 |
shutil.copy(output_path, permanent_path) # Usamos copy() en lugar de move()
|
| 885 |
logger.info(f"Video guardado permanentemente en: {permanent_path}")
|
|
@@ -1132,7 +1136,7 @@ with gr.Blocks(title="Generador de Videos con IA", theme=gr.themes.Soft(), css="
|
|
| 1132 |
gr.Markdown("""
|
| 1133 |
1. **Clave API de Pexels:** Asegúrate de haber configurado la variable de entorno `PEXELS_API_KEY` con tu clave.
|
| 1134 |
2. **Selecciona el tipo de entrada**: "Generar Guion con IA" o "Usar Mi Guion".
|
| 1135 |
-
3. **Sube música** (opcional): Selecciona un
|
| 1136 |
4. **Selecciona la voz** deseada del desplegable.
|
| 1137 |
5. **Haz clic en "✨ Generar Video"**.
|
| 1138 |
6. Espera a que se procese el video. Verás el estado.
|
|
|
|
| 859 |
except Exception as e:
|
| 860 |
logger.warning(f"Error ajustando duración del audio final: {str(e)}")
|
| 861 |
|
| 862 |
+
try:
|
| 863 |
+
# ... (todo el código previo de crear_video permanece igual)
|
| 864 |
+
|
| 865 |
+
# 7. Crear video final (INDENTACIÓN ORIGINAL)
|
| 866 |
+
# Definir variables aquí para que estén disponibles en finally
|
| 867 |
output_filename = f"video_{int(time.time())}.mp4" # Nombre único con timestamp
|
| 868 |
output_path = os.path.join(temp_dir_intermediate, output_filename)
|
| 869 |
+
permanent_path = f"/tmp/{output_filename}"
|
| 870 |
|
| 871 |
# Escribir el video
|
| 872 |
video_final.write_videofile(
|
|
|
|
| 884 |
)
|
| 885 |
|
| 886 |
# Mover a ubicación permanente en /tmp
|
|
|
|
| 887 |
try:
|
| 888 |
shutil.copy(output_path, permanent_path) # Usamos copy() en lugar de move()
|
| 889 |
logger.info(f"Video guardado permanentemente en: {permanent_path}")
|
|
|
|
| 1136 |
gr.Markdown("""
|
| 1137 |
1. **Clave API de Pexels:** Asegúrate de haber configurado la variable de entorno `PEXELS_API_KEY` con tu clave.
|
| 1138 |
2. **Selecciona el tipo de entrada**: "Generar Guion con IA" o "Usar Mi Guion".
|
| 1139 |
+
3. **Sube música** (opcional): Selecciona un archio de audio (MP3, WAV, etc.).
|
| 1140 |
4. **Selecciona la voz** deseada del desplegable.
|
| 1141 |
5. **Haz clic en "✨ Generar Video"**.
|
| 1142 |
6. Espera a que se procese el video. Verás el estado.
|