pypi / sherpa-onnx-core
sherpa-onnx-core
What changed in sherpa-onnx-core 1 to 2, from its official release notes, upgrade guides and advisories. Also covers sherpa-onnx. Sources checked 2026-10-27.
2 breaking1 security18 new APIs and options2 behavior and defaults1 tooling23 fixes and other
See which of these apply to your code, ranked, in your agent:
npx @unstale/cli initsherpa-onnx-core 231 changes
Breaking changes 2
Removes espeak-ng and piper-phonemize from sherpa-onnx.
Raises ValueError when create_stream() cannot encode keywords.
Security 1
Fixes a heap overflow for short text at speed greater than 1.
New APIs and options 10
Adds an asynchronous creation API to the Dart OfflineRecognizer.
Adds target-speaker voice isolation support and APIs for Python, C/C++, JavaScript, Java, Kotlin, C#, Swift, Go, Dart, Rust, and Pascal.
Supports prompt options per stream for FunASR Nano.
Adds HLG decoding support for offline CTC models across the C, CXX, JNI/Kotlin/Java, and WASM APIs.
Adds the --input-sample-rate option to online-websocket-server.
Supports hotwords with modified_beam_search for streaming NeMo transducer models.
Adds OfflineDiacritization to the Kotlin API.
Adds a Node.js addon for Windows arm64.
Adds GetEmbedding to SpeakerEmbeddingManager.
Ships arm64 libraries in the sherpa_onnx_windows Flutter package.
Behavior and default changes 2
Uses librosa-style fbank for streaming NeMo CTC models.
Derives lang2id from the model vocabulary and warns instead of silently falling back to English.
Fixes and other changes 16
Fixes decoder positions for generated tokens.
Keeps Kokoro STFT convolutions in float32 when quantizing to int8.
Fixes character loss for byte-level-BPE tokens in whisper and cohere recognizers.
Forwards provider config keys to the CUDA execution provider.
Converts C++ exceptions in recognizer and punctuation constructors to Java exceptions.
Fixes JSON escaping in online and offline recognition results.
Fixes word boundaries, OOV words, and Unicode handling in lexicon TTS.
Feeds the decoder encoder_attention_mask at raw audio length.
Allows the na language tag for Supertonic.
Uses NeMo's additive log-zero guard for NeMo mel features.
Fixes timestamps after filtering special tokens.
Prevents omnilingual ASR from aborting on input shorter than 400 samples.
C API creation functions catch C++ exceptions and return NULL.
Python methods check embedding size and validate speaker embedding dimensions before releasing the GIL.
Python examples pad 1 second of silence at the endpoint to mirror C++ behavior.
Widens VAD sample positions to int64_t to fix long-stream SIGSEGV.
sherpa-onnx-core 116 changes
New APIs and options 8
Adds the em_santa voice for Kokoro v1.0.
Adds Go API support for Windows arm64.
Adds Go bindings for speaker diarization confidence computation.
Adds Intel NPU support through OpenVINO.
Adds conversion scripts for running Nabra-82M Arabic TTS with the Kokoro runtime.
Adds per-segment confidence computation for OfflineSpeakerDiarization.
Supports using sherpa-onnx with Python in Termux on Android.
Adds confidence computation support for speaker diarization to JNI.
Tooling 1
Supports building within a Termux terminal on Android devices.
Fixes and other changes 7
Fixes empty transcripts when the first decoded token is eos.
Fixes hallucinated sentences on silent audio.
Fixes hallucinated text on silent audio.
Fixes hallucinated text on silent audio.
Uploads an int8 model for Nabra-82M Arabic TTS.
Fixes wrapper.py raising NameError because feat_dim is undefined.
Fixes a data race on the shared PRNG in FunASR-Nano and Qwen3-ASR offline recognizers.