Spaces:
Running
Running
| title: LinguaStream | |
| sdk: gradio | |
| emoji: π | |
| colorFrom: yellow | |
| colorTo: purple | |
| pinned: true | |
| short_description: 'A Multilingual Audio and Video dubbing tool. ' | |
| sdk_version: 5.25.2 | |
| # Video Translator π | |
| A complete video translation system that converts videos into multiple languages by translating both subtitles and audio. | |
| ## Features | |
| - π¬ Video to text transcription using AssemblyAI | |
| - π€ Translation of transcripts to multiple languages | |
| - π Text-to-speech generation in target languages | |
| - π Subtitle generation and embedding | |
| - ποΈ Final video with translated audio and subtitles | |
| ## Supported Languages | |
| - English | |
| - Spanish | |
| - French | |
| - German | |
| - Japanese | |
| - Hindi | |
| - And more... | |
| ## Installation | |
| 1. Clone this repository: | |
| ```bash | |
| git clone https://github.com/Maaz1/LinguaStream.git | |
| cd LinguaStream | |
| ``` | |
| 2. Install dependencies: | |
| ```bash | |
| pip install -r requirements.txt | |
| ``` | |
| 3. Install FFmpeg: | |
| - On Ubuntu/Debian: `sudo apt-get install ffmpeg` | |
| - On macOS (with Homebrew): `brew install ffmpeg` | |
| - On Windows: Download from [FFmpeg website](https://ffmpeg.org/download.html) | |
| 4. Set up your API key: | |
| - Copy `.env.example` to `.env` | |
| - Add your AssemblyAI API key to the `.env` file (to get audio text) | |
| ## Usage | |
| 1. Run the app: | |
| ```bash | |
| python app.py | |
| ``` | |
| 2. Open the provided URL in your browser | |
| 3. Upload a video file | |
| 4. Select source and target languages | |
| 5. Click "Translate" and wait for processing | |
| ## Deployment on Hugging Face Spaces | |
| This project is configured for easy deployment to [Hugging Face Spaces](https://huggingface.co/spaces). To deploy: | |
| 1. Fork this repository | |
| 2. Create a new Space on Hugging Face | |
| 3. Connect your GitHub repository | |
| 4. Set the required environment variables (ASSEMBLYAI_API_KEY) | |
| 5. Deploy! | |
| ## Project Structure | |
| ``` | |
| video-translator/ | |
| βββ app.py # Main Gradio app entry point | |
| βββ config.py # Configuration and constants | |
| βββ src/ # Source code | |
| β βββ audio/ # Audio processing | |
| β βββ video/ # Video processing | |
| β βββ subtitles/ # Subtitle handling | |
| β βββ utils/ # Utilities and helpers | |
| βββ outputs/ # Output directory | |
| ``` | |
| ## Environment Variables | |
| - `ASSEMBLYAI_API_KEY`: API key for AssemblyAI (required) | |
| - `DEBUG`: Set to "True" for debug logging (optional) | |
| - `OUTPUT_DIR`: Custom output directory path (optional) | |
| ## License | |
| MIT License |