Qwen-V3847-Any-To-Any / train_and_serve.py
AiCoderv2's picture
Create train_and_serve.py
0ee4110 verified
from fastvideo import VideoGenerator
from fastvideo.v1.configs.sample.base import SamplingParam
from gtts import gTTS
import os
import torch
MODEL_PATH = "FastVideo/FastHunyuan-diffusers"
OUTPUT_DIR = "outputs"
generator = VideoGenerator.from_pretrained(model_path=MODEL_PATH, num_gpus=0)
default_params = SamplingParam.from_pretrained(MODEL_PATH)
def generate_video_with_audio(prompt, song_text=None, seed=None):
params = default_params.copy()
params.prompt = prompt
params.num_frames = 30
params.height = 512
params.width = 512
params.num_inference_steps = 25
if seed is not None:
params.seed = seed
generator.generate_video(prompt=prompt, sampling_param=params)
video_path = os.path.join(OUTPUT_DIR, f"{prompt[:30]}_{params.seed}.mp4")
if song_text:
tts = gTTS(song_text, lang="en")
audio_path = os.path.join(OUTPUT_DIR, f"{prompt[:30]}_song.mp3")
tts.save(audio_path)
return video_path, audio_path
return video_path, None