import gradio as gr # بدلاً من: from moviepy.editor import VideoFileClip, TextClip, CompositeVideoClip from moviepy import VideoFileClip, TextClip, CompositeVideoClip import requests def process_video(video_url, audio_url, hook_text): # تحميل الفيديو والصوت with open("input.mp4", "wb") as f: f.write(requests.get(video_url).content) with open("audio.mp3", "wb") as f: f.write(requests.get(audio_url).content) # دمج النص والصوت video = VideoFileClip("input.mp4") txt_hook = TextClip(hook_text, fontsize=45, color='white', font='Arial-Bold').set_position(('center', 'center')).set_duration(video.duration) txt_caption = TextClip("اقرأ الكابتشن 👇", fontsize=30, color='yellow', font='Arial-Bold').set_position(('center', video.h - 120)).set_duration(video.duration) final = CompositeVideoClip([video, txt_hook, txt_caption]) final.write_videofile("output.mp4", codec="libx264", audio="audio.mp3") return "output.mp4" # واجهة Gradio للـ API demo = gr.Interface( fn=process_video, inputs=["text", "text", "text"], outputs="video" ) demo.launch()