Deepseeksrt / app.py
Dubberkuro's picture
Update app.py
31cee8d verified
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)