gnosticdev commited on
Commit
d476eea
verified
1 Parent(s): 218a114

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +10 -2
app.py CHANGED
@@ -1,14 +1,19 @@
1
  import gradio as gr
2
  from tts_module import get_voices, text_to_speech
3
  from pexels_api import search_pexels
4
- from moviepy.editor import AudioFileClip, VideoFileClip, CompositeAudioClip
 
 
 
 
 
5
  import asyncio
6
  import os
7
  import requests
8
  import tempfile
9
 
 
10
  def adjust_background_music(video_duration, music_file):
11
- from moviepy.editor import AudioFileClip, concatenate_audioclips
12
  music = AudioFileClip(music_file)
13
  if music.duration < video_duration:
14
  repetitions = int(video_duration / music.duration) + 1
@@ -19,6 +24,7 @@ def adjust_background_music(video_duration, music_file):
19
  music = music.volumex(0.2)
20
  return music
21
 
 
22
  def combine_audio_video(audio_file, video_clip, music_clip=None):
23
  audio_clip = AudioFileClip(audio_file)
24
  final_clip = video_clip.set_audio(audio_clip)
@@ -28,6 +34,7 @@ def combine_audio_video(audio_file, video_clip, music_clip=None):
28
  final_clip.write_videofile(output_path, codec="libx264", audio_codec="aac")
29
  return output_path
30
 
 
31
  def process_input(text, txt_file, mp3_file, prompt, selected_voice):
32
  try:
33
  if text.strip():
@@ -71,6 +78,7 @@ def process_input(text, txt_file, mp3_file, prompt, selected_voice):
71
  except Exception as e:
72
  return f"Error durante el procesamiento: {e}", None
73
 
 
74
  with gr.Blocks() as demo:
75
  gr.Markdown("# Text-to-Video Generator")
76
  with gr.Row():
 
1
  import gradio as gr
2
  from tts_module import get_voices, text_to_speech
3
  from pexels_api import search_pexels
4
+ try:
5
+ from moviepy.editor import AudioFileClip, VideoFileClip, CompositeAudioClip
6
+ print("MoviePy est谩 instalado correctamente.")
7
+ except ImportError:
8
+ raise ImportError("Error: MoviePy no est谩 instalado. Aseg煤rate de que est谩 en requirements.txt.")
9
+
10
  import asyncio
11
  import os
12
  import requests
13
  import tempfile
14
 
15
+ # Ajustar m煤sica de fondo
16
  def adjust_background_music(video_duration, music_file):
 
17
  music = AudioFileClip(music_file)
18
  if music.duration < video_duration:
19
  repetitions = int(video_duration / music.duration) + 1
 
24
  music = music.volumex(0.2)
25
  return music
26
 
27
+ # Combinar audio, video y m煤sica
28
  def combine_audio_video(audio_file, video_clip, music_clip=None):
29
  audio_clip = AudioFileClip(audio_file)
30
  final_clip = video_clip.set_audio(audio_clip)
 
34
  final_clip.write_videofile(output_path, codec="libx264", audio_codec="aac")
35
  return output_path
36
 
37
+ # Funci贸n principal
38
  def process_input(text, txt_file, mp3_file, prompt, selected_voice):
39
  try:
40
  if text.strip():
 
78
  except Exception as e:
79
  return f"Error durante el procesamiento: {e}", None
80
 
81
+ # Interfaz Gradio
82
  with gr.Blocks() as demo:
83
  gr.Markdown("# Text-to-Video Generator")
84
  with gr.Row():