Spaces:
Runtime error
Runtime error
| from moviepy.editor import TextClip, AudioFileClip, CompositeVideoClip | |
| import torch | |
| import torchaudio | |
| from TTS.api import TTS | |
| # Initialize AI Text-to-Speech (Coqui TTS) | |
| tts_model = TTS("tts_models/en/ljspeech/glow-tts").to("cpu") | |
| vocoder = "vocoders/en/ljspeech/hifigan_v2" | |
| def generate_speech(text): | |
| """Convert text to AI-generated speech using Coqui TTS.""" | |
| audio_path = "output_audio.wav" | |
| tts_model.tts_to_file(text=text, file_path=audio_path, speaker_wav=None, vocoder_path=vocoder) | |
| return audio_path | |
| def create_video(text, audio_path): | |
| """Generate a video with text overlay and AI-generated speech.""" | |
| audio = AudioFileClip(audio_path) | |
| duration = audio.duration | |
| # Create text overlay | |
| txt_clip = TextClip(text, fontsize=40, color="white", size=(1280, 720)) | |
| txt_clip = txt_clip.set_position("center").set_duration(duration) | |
| # Combine text with audio | |
| video = CompositeVideoClip([txt_clip.set_audio(audio)], size=(1280, 720)) | |
| output_video = "output_video.mp4" | |
| video.write_videofile(output_video, fps=24, codec="libx264") | |
| return output_video | |