# Luganda Speech-to-Text API with Audio Cleaning
Enhanced Luganda Speech-to-Text API featuring advanced audio cleaning, noise reduction, and voice enhancement for improved transcription accuracy.
## Features
### 🎙️ Core Features
- **Real-time Luganda Speech-to-Text Transcription** using Wav2Vec2 model
- **Professional Audio Cleaning Pipeline**:
- 🔇 **Noise Reduction** - Removes background noise while preserving speech
- 🔊 **Voice Enhancement** - High-pass filtering and dynamic compression
- 📊 **Audio Normalization** - Consistent loudness levels
- ✂️ **Silence Trimming** - Removes silence from beginning/end
- **Multiple API Endpoints** for different use cases
- **Comprehensive Audio Analysis** - Quality metrics and statistics
- **Customizable Cleaning Parameters** - Fine-tune audio processing
## What's New in This Version
✨ **Audio Preprocessing**: Automatic noise reduction and voice enhancement before transcription
✨ **Quality Metrics**: Detailed audio statistics (RMS, peak amplitude, SNR, frequency analysis)
✨ **Flexible Configuration**: Control noise reduction strength and cleaning options
✨ **Multiple Endpoints**: Transcription, audio analysis, translation preparation
✨ **Production Ready**: Error handling, timeout management, configurable parameters
## Prerequisites
- Python 3.7+
- pip package manager
- 2GB+ RAM for model loading
- Audio files in WAV, MP3, or FLAC format
## Installation
### 1. Clone the repository
```bash
git clone
github.com
cd git-clone-https-github.com-lucy-kevin-Luganda-Speech-To-Text-API.git-cd-Luganda-Speech-To-Text-API
```
### 2. Install dependencies
```bash
pip install -r requirements.txt
```
### 3. First Run
The first time you run the API, it will download the pre-trained Wav2Vec2 model (~1-2GB). This may take a few minutes.
## Running the API
### Start the Flask Server
```bash
cd myproject
python …