Spaces:
Sleeping
Sleeping
File size: 2,228 Bytes
cc9ddff |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
--- title: Accent Classifier emoji: 🎙️ colorFrom: indigo colorTo: cyan sdk: gradio sdk_version: "3.38.1" app_file: app.py pinned: false --- # Accent Classifier 🎙️ This Gradio app downloads a public YouTube or Vimeo video, extracts its audio, and classifies the speaker (as a proxy for accent) using a Hugging Face model. It’s perfect for demonstrating how to hook up **yt-dlp**, **ffmpeg**, and a **wav2vec2** pipeline in one slick interface—no rocket science required (just a little AI eavesdropping). --- ## 🛠️ How It Works 1. **Input**: You paste a *public* YouTube or Vimeo video URL into the Gradio textbox. 2. **Download**: Under the hood, `yt-dlp` fetches the video’s best audio stream and saves it as `downloaded_video.mp4`. 3. **Extract Audio**: `ffmpeg` converts that MP4 into a WAV file (`extracted_audio.wav`) at 16 kHz, mono—exactly what speech models crave. 4. **Classify**: A Hugging Face `pipeline("audio-classification", model="superb/wav2vec2-base-superb-sid")` processes the WAV file and returns a speaker ID (used here as an accent proxy) plus confidence. 5. **Cleanup**: Temporary files are removed automatically so you don’t end up with a cluttered folder. 6. **Output**: The app displays the predicted speaker ID and confidence percentage. --- ## 📦 Requirements - **Python 3.8+** - **yt-dlp** (installed automatically by the script if missing) - **ffmpeg** (must be installed on your system and accessible via your command line) - **gradio** (for the web interface) - **transformers** (Hugging Face library) > ❗ **Note**: If `yt-dlp` is not already installed, the code will install it at runtime. However, you must have `ffmpeg` installed manually. On macOS you can use Homebrew (`brew install ffmpeg`); on Ubuntu/Debian, `sudo apt-get install ffmpeg`; on Windows, download from [ffmpeg.org](https://ffmpeg.org/) and add it to your PATH. --- ## 🚀 Installation 1. **Clone or Download** this repository (the one containing `app.py` and this `README.md`). 2. **(Optional)** Create and activate a virtual environment: ```bash python3 -m venv venv source venv/bin/activate # macOS/Linux venv\Scripts\activate.bat # Windows |