kedar432's picture
first commit
465b605
import os
import streamlit as st
from huggingface_hub import login
from utils import process_video_url, explain_accent
hf_token = os.getenv("HF_HUB_TOKEN")
if hf_token:
login(hf_token)
# Configure Streamlit page settings
st.set_page_config(page_title="English Accent Detector", layout="centered")
st.title("🎤 English Accent Detector (SpeechBrain)")
# Input field for user to enter a video URL
video_url = st.text_input("Paste public video URL (MP4, Loom, etc.):")
if video_url:
try:
# Show spinner while processing the video and analyzing accent
with st.spinner("Processing video and analyzing accent..."):
accent, confidence = process_video_url(video_url)
# Display results with confidence scores and explanation
st.success("Analysis complete!")
st.markdown(f"### 🗣️ Detected Accent: **{accent}**")
st.markdown(f"### 📊 Confidence Score: **{float(confidence):.2f}%**")
st.markdown("---")
st.markdown("### ℹ️ Accent Explanation")
st.markdown(explain_accent(accent, confidence))
except RuntimeError as err:
# Handle known runtime errors gracefully in the UI
st.error(f"⚠️ {err}")
except Exception as err:
# Catch-all for unexpected errors with generic user message
st.error("⚠️ An unexpected error occurred. Please check the log file.")