Tim13ekd commited on
Commit
2ef525c
·
verified ·
1 Parent(s): 8cff040

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +47 -0
app.py ADDED
@@ -0,0 +1,47 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import os
2
+ from moviepy.editor import ImageClip, AudioFileClip, concatenate_videoclips
3
+ import gradio as gr
4
+
5
+ # 1️⃣ FFmpeg installieren (einmal beim Start)
6
+ os.system("apt-get update && apt-get install -y ffmpeg")
7
+
8
+ # 2️⃣ Funktion zum Erstellen eines Videos
9
+ def generate_video():
10
+ # --- Beispiel: Bilder generieren / abrufen ---
11
+ # Hier ersetzt du das mit deinem AI-Bilder-Code
12
+ # Beispiel: lokale Dateien frame1.png, frame2.png, frame3.png
13
+ images = ["frame1.png", "frame2.png", "frame3.png"]
14
+
15
+ # Prüfe, ob Bilder existieren
16
+ for img in images:
17
+ if not os.path.exists(img):
18
+ return f"Bild {img} fehlt. Bitte generiere es zuerst."
19
+
20
+ # Clips erstellen (jede 2 Sekunden)
21
+ clips = [ImageClip(img).set_duration(2) for img in images]
22
+ video = concatenate_videoclips(clips, method="compose")
23
+
24
+ # --- Beispiel: Audio generieren / abrufen ---
25
+ audio_file = "audio.mp3" # Hier deine generierte TTS-Datei
26
+ if not os.path.exists(audio_file):
27
+ return "Audio-Datei fehlt. Bitte generiere sie zuerst."
28
+
29
+ audio = AudioFileClip(audio_file)
30
+ video = video.set_audio(audio)
31
+
32
+ # Video speichern
33
+ output_path = "output.mp4"
34
+ video.write_videofile(output_path, fps=24)
35
+
36
+ return output_path
37
+
38
+ # 3️⃣ Gradio Interface
39
+ iface = gr.Interface(
40
+ fn=generate_video,
41
+ inputs=[],
42
+ outputs=gr.File(label="Download Video"),
43
+ title="Faceless AI Video Generator",
44
+ description="Generiert ein Video aus AI-Bildern + TTS-Audio."
45
+ )
46
+
47
+ iface.launch()