Spaces:
Runtime error
Runtime error
from huggingface_hub import snapshot_download | |
import gradio as gr | |
import subprocess | |
import os | |
import uuid | |
# Download SadTalker model from Hugging Face (one-time setup) | |
def setup_models(): | |
if not os.path.exists("checkpoints"): | |
snapshot_download(repo_id="OpenTalker/SadTalker", local_dir="checkpoints") | |
setup_models() | |
# Main function to generate video | |
def generate(text, image): | |
session = str(uuid.uuid4())[:8] | |
os.makedirs(f"results/{session}", exist_ok=True) | |
# Save uploaded image | |
image_path = f"results/{session}/avatar.jpg" | |
image.save(image_path) | |
# Generate audio using Coqui TTS | |
audio_path = f"results/{session}/audio.wav" | |
tts_cmd = f'tts --text "{text}" --out_path {audio_path}' | |
subprocess.run(tts_cmd, shell=True) | |
# Run SadTalker | |
video_cmd = f'python inference.py --driven_audio {audio_path} --source_image {image_path} --result_dir results/{session}' | |
subprocess.run(video_cmd, shell=True) | |
return f"results/{session}/video.mp4" | |
# Gradio interface | |
gr.Interface( | |
fn=generate, | |
inputs=[ | |
gr.Textbox(label="π Script", placeholder="Enter your script here..."), | |
gr.Image(label="πΌοΈ Avatar Image", type="pil") | |
], | |
outputs=gr.Video(label="π¬ Generated Video"), | |
title="π Faceless Video Generator", | |
description="Upload a face photo + script, and get a talking avatar video powered by SadTalker + Coqui TTS." | |
).launch() | |