This feature and documentation are contributed by GitHub phoenixlyq
Whisper.NET Setup Guide
What is This?
Whisper.NET is a speech recognition engine that enables your AMD GPU to accelerate speech recognition via Vulkan (no NVIDIA CUDA required).
Who is This For?
Ideal for Windows + AMD GPU users.
Background: While using Whisper.cpp, I found that the latest version no longer supports AMD GPUs on Windows, forcing Windows + AMD GPU users to rely on CPU for speech recognition, which is very slow. After consulting and experimenting with AI, I chose the Whisper.NET technical path and implemented it with AI programming assistance.
Tested Environment: Currently tested only on Windows 11 23H2 + RX 6650 XT. Other environments may require user testing. Feedback is welcome.
Step 1: Download DLL Files
Files to Download
1. Managed DLLs (place in the deps/ folder):
| File | Version | Download Link |
|---|---|---|
| Whisper.net.dll | 1.9.0 | Click to download |
| Microsoft.Extensions.AI.Abstractions.dll | 10.0.0 | Click to download |
| Microsoft.Bcl.AsyncInterfaces.dll | 10.0.0 | Click to download |
| System.Memory.dll | 4.6.3 | Click to download |
| System.Buffers.dll | 4.6.1 | Click to download |
| System.Runtime.CompilerServices.Unsafe.dll | 6.1.2 | Click to download |
| System.Numerics.Vectors.dll | 4.6.1 | Click to download |
2. Native DLLs (place in the deps/native/ folder):
Open the Whisper.net.Runtime.Vulkan 1.9.0 page, find and click the Download package (27.98 MB) link on the right. After downloading, rename the file extension from .nupkg to .zip, then extract. Copy all DLL files from the extracted build/win-x64/ folder to deps/native/.
The NuGet package includes these files (all required; for alias files, copy and rename):
| File | Size | Purpose |
|---|---|---|
| whisper.dll | 473KB | Speech recognition core |
| libwhisper.dll | 473KB | Copy whisper.dll and rename to libwhisper.dll (alias required) |
| ggml-whisper.dll | 66KB | Compute library |
| libggml-whisper.dll | 66KB | Copy ggml-whisper.dll and rename to libggml-whisper.dll (alias required) |
| ggml-base-whisper.dll | 528KB | Base library (required dependency) |
| libggml-base-whisper.dll | 528KB | Copy ggml-base-whisper.dll and rename to libggml-base-whisper.dll (alias required) |
| ggml-cpu-whisper.dll | 590KB | CPU fallback |
| libggml-cpu-whisper.dll | 590KB | Copy ggml-cpu-whisper.dll and rename to libggml-cpu-whisper.dll (alias required) |
| ggml-vulkan-whisper.dll | 45MB | GPU acceleration (Vulkan) |
| libggml-vulkan-whisper.dll | 45MB | Copy ggml-vulkan-whisper.dll and rename to libggml-vulkan-whisper.dll (alias required) |
Step 2: Download the Speech Model
Download .bin format model files from ggerganov/whisper.cpp models and place them in the models/ folder.
For example, download: ggml-large-v3-turbo.bin (good quality, fast speed).
Step 3: Verify File Structure
Make sure your directory structure looks like this:
pyvideotrans/
├─ models/
│ └─ ggml-large-v3-turbo.bin ← Speech model
└─ deps/
├─ Whisper.net.dll ← The following 7 are managed DLLs
├─ Microsoft.Extensions.AI.Abstractions.dll
├─ Microsoft.Bcl.AsyncInterfaces.dll
├─ System.Memory.dll
├─ System.Buffers.dll
├─ System.Runtime.CompilerServices.Unsafe.dll
├─ System.Numerics.Vectors.dll
└─ native/ ← Copy all DLLs from NuGet's build/win-x64/ folder here
├─ whisper.dll
├─ libwhisper.dll
├─ ggml-whisper.dll
├─ libggml-whisper.dll
├─ ggml-base-whisper.dll
├─ libggml-base-whisper.dll
├─ ggml-cpu-whisper.dll
├─ libggml-cpu-whisper.dll
├─ ggml-vulkan-whisper.dll
└─ libggml-vulkan-whisper.dllStep 4: Start Using
Currently only supported in the source code deployment. Make sure you deploy the software via source code.
- Deploy this project via source code, run
uv sync --all-extras. If already installed, runuv sync --extra dotnetseparately to install thepythonnetmodule. - Run
uv run sp.pyto open the software. - Select "Whisper.NET" from the speech recognition dropdown.
- Choose your downloaded model file.
- Click Start.
Troubleshooting?
Getting "Native Library not found" or error code 0x8007007E
- Check if the
deps/native/folder contains all 10 DLL files. - Verify that file names are correct.
GPU acceleration not working
- Update your graphics driver.
- AMD GPUs need Vulkan support (RX 400 series and above).
- NVIDIA GPUs need GTX 600 series and above.
Getting a pythonnet initialization failure
- Install the .NET Runtime (choose the latest .NET 8 or .NET 9).
Check if your GPU supports Vulkan
Open the command line and type:
vulkaninfoIf it shows your GPU information, it supports Vulkan.
