Skip to content

Conversation

@GauravOP-03
Copy link
Collaborator

📝 Description

Implemented the Automated Subtitle Generation, Translation, and Burn-in Subtitle Video Download feature to enhance accessibility, localization, and overall user experience on ScriptAI.
This PR now enables users to generate subtitles automatically, translate them into multiple languages, preview and edit them, and finally download videos with burned-in subtitles.

✨ Key Features

  • Added video upload support (limit: 10 minutes / 200MB)
  • Integrated Gemini 2.5 Flash API for transcription with timestamps
  • Implemented subtitle translation into 19 languages
  • Added burn-in video export with embedded subtitles via FFmpeg
  • Designed UI for subtitle preview, editing, and video playback
  • Enabled export in .SRT, .VTT, and burn-in video (.MP4) formats
  • Stored videos, subtitles, and transcripts securely in Supabase Storage
  • Recorded video metadata (user ID, video ID, language) in Supabase Database
  • Enhanced overall UI/UX for accessibility, performance, and clarity

🎯 Type of Change

  • ✨ New feature (non-breaking change which adds functionality)
  • ⚡ Performance improvements
  • ♻️ Refactoring (no functional changes, code improvements)
  • 🎨 Style/UI changes (formatting and layout improvements)

🔗 Related Issue

Closes #77


🧪 Testing

  • Tested video uploads (different formats and lengths)
  • Verified subtitle generation accuracy and timestamps
  • Checked translation quality across 19 languages
  • Tested burn-in video export for correct subtitle rendering
  • Validated export formats (.SRT, .VTT, .MP4)
  • Ensured responsiveness and smooth playback in UI

📋 Checklist

  • Code follows project style guidelines
  • Self-review performed and changes tested locally
  • Comments added for complex logic
  • No new console warnings or errors
  • Tested across Chrome, Edge, and Firefox
  • Verified secure storage and database writes

📸 Screenshots (if applicable)

*image

image

🔧 Technical Details

  • FFmpeg used for:
    • Audio extraction and normalization
    • Burn-in subtitle video generation
  • Gemini 2.5 Flash API for accurate multilingual transcription
  • Supabase Storage for all file assets (video, subtitles, transcripts)
  • Supabase Database for user/video metadata
  • Modularized API routes for better scalability and maintainability

🚀 Deployment Notes

  • FFmpeg must be installed on the deployment environment

📚 Documentation Updates

  • Updated README.md with feature overview and usage guide
  • Added API documentation for subtitle endpoints (optional)

🔍 Review Notes

Focus areas:

  • FFmpeg burn-in process reliability
  • Translation and transcription accuracy
  • Video size and performance optimizations
  • Error handling during export

📊 Performance Impact

  • Performance improvement — optimized audio and video processing
  • Efficient streaming and file handling

🔒 Security Considerations

  • File size and type validation for uploads
  • Proper access control for Supabase resources
  • Sanitized API inputs to prevent injection or misuse

🎉 Additional Notes

This feature completes the subtitle system end-to-end — from video upload, transcription, and translation to editable subtitles and burned-in video exports, improving accessibility and professional output for content creators worldwide.


@vercel
Copy link
Contributor

vercel bot commented Oct 25, 2025

@GauravOP-03 is attempting to deploy a commit to the afrin127329's projects Team on Vercel.

A member of the Team first needs to authorize it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

FEATURE: Generate subtitle feature for multilingual videos

1 participant