GenAI.API is a .NET 8-based solution designed to handle file uploads, extract audio from video files, transcribe audio using Whisper, and generate formatted content using OpenAI services. The solution leverages modern .NET technologies and integrates with third-party libraries such as Xabe.FFmpeg for media processing.
- Upload and process files via HTTP endpoints
- Extract audio from video files (e.g., MP4 to MP3)
- Transcribe audio files (MP3, WAV) using Whisper
- Generate formatted content using OpenAI
- Supports large file uploads (up to 100 MB)
- .NET 8 SDK
- FFmpeg installed and available in your system PATH
- Whisper and OpenAI API credentials/configuration (as required by your implementation)
-
Clone the repository:
-
Restore dependencies:
-
Update configuration:
- Set up your API keys and service endpoints in
appsettings.json
or user secrets as required.
- Set up your API keys and service endpoints in
-
Run the application:
- Use the
/upload
endpoint to upload files (.txt
,.mp3
,.wav
,.mp4
). - The API will process the file, transcribe audio if needed, and return generated content.
GenAI.API
– Main Web API project containing controllers and servicesServices
– Business logic for video/audio processing and integration with external APIs
- Xabe.FFmpeg – Media processing
- System.Text.Json – JSON serialization
- Whisper and OpenAI .NET SDKs (as applicable)
- Ensure
System.Text.Json
version 9.0.0 or compatible is referenced in your project. - Make sure FFmpeg is installed and accessible from the command line.
- Check your API keys and configuration for external services.
This project is licensed under the MIT License. See the LICENSE file for details.