Skip to main content
Whisper is OpenAI’s general-purpose automatic speech recognition (ASR) model. You can use it for audio transcription, translation, and language identification. You can run Whisper on the NPU of your Dragonwing development board using Qualcomm’s VoiceAI ASR, or on the CPU using whisper.cpp.
Whisper model support on NPU is in progress via AIHUB and will be updated soon.

Running Whisper on the NPU with VoiceAI ASR

1. Installing SDKs

1

Set up the base requirements

Open a terminal on your development board, and set up the base requirements for this example:
2

Install VoiceAI ASR - Community Edition

Install VoiceAI ASR - Community Edition:

2. Download models from AI Hub

With the SDKs installed, you can download precompiled Whisper models from AI Hub. When downloading a model, select the following device: After downloading, rename the encoder model to encoder_model_htp.bin and the decoder model to decoder_model_htp.bin. To download the Whisper-Small-Quantized model directly on your development board:

3. Compiling and running examples

1

Build the npu_rpc_linux_sample/voice-ai-ref example

2

Transcribe .WAV files

You can now transcribe .WAV files:
3

Or even do live transcription

1

Connect a microphone to your development board

Connect a microphone to your development board.
2

Find the name of your microphone

3

Run live transcription

Live transcription errors out immediately after the VAD determines that there is no speech, hopefully this will be fixed in a future update.
🚀 You now have fully offline transcription of audio on your development board! VoiceAI ASR does not have bindings to higher level languages (like Python), so if you want to use Whisper in your application it’s easiest to just spawn the voice-ai-ref binary, and read data from stdout.

Running Whisper on the CPU with whisper.cpp

Alternatively you can run Whisper on the CPU (with less performance) using whisper.cpp (or any of the other popular Whisper libraries). Here’s instructions for whisper.cpp. Open the terminal on your development board, or an ssh session to your development board, and run:
1

Install build dependencies

2

Build whisper.cpp

3

Add the whisper.cpp paths to your PATH

4

Transcribe some audio using whisper.cpp

5

Live transcribe audio

1

Connect a microphone to your development board

Connect a microphone to your development board.
2

Find your microphone ID

3

Start live transcribing

Running on the GPU with OpenCL

You can also build binaries that run on the GPU:
1

Install the OpenCL headers and ICD loader library

First follow the steps in llama.cpp under “Install the OpenCL headers and ICD loader library”.
2

Build a binary with OpenCL