import gradio as gr import requests from googletrans import Translator import tempfile translator = Translator() # ⚠️ free public whisper API (demo) WHISPER_API = "https://api-inference.huggingface.co/models/openai/whisper-small" def format_time(i): start = i * 3 end = start + 3 return f"00:00:{start:02},000 --> 00:00:{end:02},000" def process(video): # Read video file with open(video, "rb") as f: data = f.read() # Call HF API response = requests.post(WHISPER_API, data=data) if response.status_code != 200: return "API Error", None result = response.json() text = result.get("text", "") # Translate burmese = translator.translate(text, dest="my").text # Simple SRT sentences = burmese.split("။") srt = "" for i, s in enumerate(sentences): if s.strip(): srt += f"{i+1}\n{format_time(i)}\n{s.strip()}။\n\n" # Save SRT tmp = tempfile.NamedTemporaryFile(delete=False, suffix=".srt") tmp.write(srt.encode("utf-8")) tmp.close() return burmese, tmp.name demo = gr.Interface( fn=process, inputs=gr.Video(label="Upload Video"), outputs=[ gr.Textbox(label="🇲🇲 Burmese Script"), gr.File(label="⬇️ Download SRT") ], title="🔥 Burmese Video AI (ULTRA SAFE BUILD)" ) demo.launch(server_name="0.0.0.0", server_port=7860)