Welcome to the Speech-to-Text (STT) web application, a simple and efficient tool for converting spoken words into text using the Whisper model by OpenAI. This application leverages NVIDIA's CUDA for GPU acceleration to provide fast and accurate transcriptions.
- Real-time speech recognition using the Whisper model by OpenAI
- Utilizes NVIDIA's CUDA for fast processing
- Built on Flask, a lightweight web framework
- Offers a simple web interface for audio input
- Supports multiple audio input devices
Before running the app, ensure you have the following prerequisites configured:
- Docker
- NVIDIA Docker Toolkit for GPU support
- A CUDA-capable NVIDIA GPU
- Python 3.9
Follow these instructions to set up and run the application locally.
git clone https://github.com/frontez/stt.git
cd sttBuild the Docker image using the provided Dockerfile:
docker build -t stt-app .Run the Docker container with GPU support:
docker run --gpus all -p 5000:5000 stt-appThis command will start the application on port 5000.
Open a web browser and navigate to http://localhost:5000 to access the application.
-
Audio Input: Choose an audio input device and click "Start Recording." The app will record audio until you click "Stop Recording."
-
Transcription: The app sends the recorded audio to the backend, where it is processed using ffmpeg and transcribed using the Whisper model.
-
Output: The transcribed text is displayed on the web interface.
- app.py: The main Flask application handling audio processing and transcription requests.
- requirements.txt: Lists Python dependencies needed to run the app.
- Dockerfile: Specifies the environment setup to run the app in a container.
- static/index.html: The user interface for selecting audio sources and displaying transcription results.
- Ensure that you have Docker and NVIDIA Docker Toolkit correctly installed to use the GPU.
- Verify that your audio input devices are correctly configured and accessible by your browser.
- Check the Flask logs for any errors or warnings during processing.
Feel free to contribute to this project by forking the repository and submitting pull requests. Ensure to follow standard coding practices and include clear commit messages.
This project is licensed under the MIT License. See the LICENSE file for more details.
This ReadMe file provides a quick overview and step-by-step guide to help users set up and use the Speech-to-Text application seamlessly, powered by the Whisper model for enhanced transcription quality.