-
Notifications
You must be signed in to change notification settings - Fork 0
Troubleshooting
LucQuebec edited this page Jul 5, 2026
·
3 revisions
The path you passed doesn't exist. Check:
- You actually pushed/downloaded the model to that exact path.
- For
getExternalFilesDir("models"), the full path is/sdcard/Android/data/<your.app.id>/files/models/. - Use
File(path).exists()to confirm before callingloadModel.
The file exists but whisper.cpp rejected it. Usually:
- The download is corrupted or incomplete — re-download and compare sizes.
- It's not a ggml model (e.g. you downloaded an HTML error page). Ggml files
start with the magic bytes
ggml. - Wrong file for the API version — use models from ggerganov/whisper.cpp on Hugging Face.
The file couldn't be decoded. The library accepts WAV, MP3 and FLAC (any sample rate — it resamples to 16 kHz mono internally). Check that:
- The file path exists and points to a real audio file.
- The container is one of WAV/MP3/FLAC (not AAC/M4A/OGG — convert those first).
- The file isn't truncated or corrupted.
The native library couldn't load. Causes:
-
Unsupported ABI — the Free tier is
arm64-v8aonly. It will not run on anx86_64emulator. Use an arm64 device/emulator, or the Pro build. - Check
Whisper.getSystemInfo()early — if the class initialises, the.soloaded.
- The audio may be silent, too quiet, or the wrong channel. Verify the WAV plays.
- Wrong language — set
WhisperConfig(language = "auto")to let Whisper detect it.
small and larger need substantial RAM. Drop to base or tiny, or test on a
device with more memory.
File-based transcription needs no permissions. If you record audio yourself,
request RECORD_AUDIO — that's your app's responsibility, not the library's.
Still stuck? Open an issue on the repo or contact contact@jokobee.com.