Spaces:
Running
Running
| from moviepy.editor import ImageClip, AudioFileClip | |
| def animate_scene(image_path, audio_path, idx): | |
| audio = AudioFileClip(audio_path) | |
| duration = audio.duration | |
| image_clip = ( | |
| ImageClip(image_path) | |
| .set_duration(duration) | |
| .set_audio(audio) | |
| .resize(height=720) | |
| .fx(lambda clip: clip.crossfadein(1).crossfadeout(1)) | |
| .zoom_in(1.05) | |
| ) | |
| out_path = f"assets/video/scene_{idx}.mp4" | |
| image_clip.write_videofile(out_path, fps=24, audio_codec="aac", verbose=False, logger=None) | |
| return out_path |