react-native-sherpa-onnx 0.3.8 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +20 -5
- package/SherpaOnnx.podspec +5 -1
- package/android/prebuilt-download.gradle +89 -49
- package/android/prebuilt-versions.gradle +1 -1
- package/android/src/main/assets/model_licenses/asr-models-license-status.csv +1 -0
- package/android/src/main/assets/model_licenses/speech-enhancement-models-license-status.csv +7 -0
- package/android/src/main/cpp/CMakeLists.txt +3 -0
- package/android/src/main/cpp/jni/model_detect/sherpa-onnx-enhancement-wrapper.cpp +68 -0
- package/android/src/main/cpp/jni/model_detect/sherpa-onnx-enhancement-wrapper.h +17 -0
- package/android/src/main/cpp/jni/model_detect/sherpa-onnx-model-detect-enhancement.cpp +119 -0
- package/android/src/main/cpp/jni/model_detect/sherpa-onnx-model-detect-helper.cpp +23 -0
- package/android/src/main/cpp/jni/model_detect/sherpa-onnx-model-detect-helper.h +9 -0
- package/android/src/main/cpp/jni/model_detect/sherpa-onnx-model-detect-stt.cpp +51 -8
- package/android/src/main/cpp/jni/model_detect/sherpa-onnx-model-detect.h +41 -0
- package/android/src/main/cpp/jni/model_detect/sherpa-onnx-stt-wrapper.cpp +5 -0
- package/android/src/main/cpp/jni/model_detect/sherpa-onnx-validate-enhancement.cpp +68 -0
- package/android/src/main/cpp/jni/model_detect/sherpa-onnx-validate-enhancement.h +30 -0
- package/android/src/main/cpp/jni/model_detect/sherpa-onnx-validate-stt.cpp +11 -0
- package/android/src/main/cpp/jni/module/sherpa-onnx-module-jni.cpp +21 -0
- package/android/src/main/java/com/sherpaonnx/SherpaOnnxArchiveHelper.kt +110 -35
- package/android/src/main/java/com/sherpaonnx/SherpaOnnxAssetHelper.kt +6 -0
- package/android/src/main/java/com/sherpaonnx/SherpaOnnxEnhancementHelper.kt +377 -0
- package/android/src/main/java/com/sherpaonnx/SherpaOnnxExtractionNotificationHelper.kt +102 -0
- package/android/src/main/java/com/sherpaonnx/SherpaOnnxModule.kt +198 -18
- package/android/src/main/java/com/sherpaonnx/SherpaOnnxSttHelper.kt +22 -0
- package/ios/Resources/model_licenses/asr-models-license-status.csv +1 -0
- package/ios/Resources/model_licenses/speech-enhancement-models-license-status.csv +7 -0
- package/ios/SherpaOnnx+Assets.mm +5 -0
- package/ios/SherpaOnnx+Enhancement.mm +435 -0
- package/ios/SherpaOnnx+STT.mm +13 -1
- package/ios/SherpaOnnx.mm +87 -17
- package/ios/enhancement/sherpa-onnx-enhancement-wrapper.h +85 -0
- package/ios/enhancement/sherpa-onnx-enhancement-wrapper.mm +218 -0
- package/ios/model_detect/sherpa-onnx-model-detect-enhancement.mm +92 -0
- package/ios/model_detect/sherpa-onnx-model-detect-helper.h +5 -0
- package/ios/model_detect/sherpa-onnx-model-detect-helper.mm +23 -0
- package/ios/model_detect/sherpa-onnx-model-detect-stt.mm +51 -7
- package/ios/model_detect/sherpa-onnx-model-detect.h +33 -0
- package/ios/model_detect/sherpa-onnx-validate-enhancement.h +30 -0
- package/ios/model_detect/sherpa-onnx-validate-enhancement.mm +69 -0
- package/ios/model_detect/sherpa-onnx-validate-stt.mm +11 -0
- package/ios/stt/sherpa-onnx-stt-wrapper.h +11 -1
- package/ios/stt/sherpa-onnx-stt-wrapper.mm +30 -2
- package/ios/tts/sherpa-onnx-tts-wrapper.mm +16 -0
- package/lib/module/NativeSherpaOnnx.js.map +1 -1
- package/lib/module/download/localModels.js +2 -3
- package/lib/module/download/localModels.js.map +1 -1
- package/lib/module/download/paths.js +2 -1
- package/lib/module/download/paths.js.map +1 -1
- package/lib/module/download/postDownloadProcessing.js +17 -4
- package/lib/module/download/postDownloadProcessing.js.map +1 -1
- package/lib/module/enhancement/index.js +63 -48
- package/lib/module/enhancement/index.js.map +1 -1
- package/lib/module/enhancement/streaming.js +60 -0
- package/lib/module/enhancement/streaming.js.map +1 -0
- package/lib/module/enhancement/streamingTypes.js +4 -0
- package/lib/module/enhancement/streamingTypes.js.map +1 -0
- package/lib/module/enhancement/types.js +4 -0
- package/lib/module/enhancement/types.js.map +1 -0
- package/lib/module/extraction/extractTarBz2.js +2 -2
- package/lib/module/extraction/extractTarBz2.js.map +1 -1
- package/lib/module/extraction/extractTarZst.js +2 -2
- package/lib/module/extraction/extractTarZst.js.map +1 -1
- package/lib/module/extraction/index.js +10 -5
- package/lib/module/extraction/index.js.map +1 -1
- package/lib/module/licenses.js +9 -3
- package/lib/module/licenses.js.map +1 -1
- package/lib/module/stt/index.js +4 -2
- package/lib/module/stt/index.js.map +1 -1
- package/lib/module/stt/streaming.js +2 -1
- package/lib/module/stt/streaming.js.map +1 -1
- package/lib/module/stt/types.js +3 -1
- package/lib/module/stt/types.js.map +1 -1
- package/lib/module/tts/index.js +4 -2
- package/lib/module/tts/index.js.map +1 -1
- package/lib/module/tts/streaming.js +3 -1
- package/lib/module/tts/streaming.js.map +1 -1
- package/lib/typescript/src/NativeSherpaOnnx.d.ts +70 -9
- package/lib/typescript/src/NativeSherpaOnnx.d.ts.map +1 -1
- package/lib/typescript/src/download/localModels.d.ts.map +1 -1
- package/lib/typescript/src/download/paths.d.ts +2 -1
- package/lib/typescript/src/download/paths.d.ts.map +1 -1
- package/lib/typescript/src/download/postDownloadProcessing.d.ts +9 -0
- package/lib/typescript/src/download/postDownloadProcessing.d.ts.map +1 -1
- package/lib/typescript/src/enhancement/index.d.ts +9 -46
- package/lib/typescript/src/enhancement/index.d.ts.map +1 -1
- package/lib/typescript/src/enhancement/streaming.d.ts +6 -0
- package/lib/typescript/src/enhancement/streaming.d.ts.map +1 -0
- package/lib/typescript/src/enhancement/streamingTypes.d.ts +12 -0
- package/lib/typescript/src/enhancement/streamingTypes.d.ts.map +1 -0
- package/lib/typescript/src/enhancement/types.d.ts +31 -0
- package/lib/typescript/src/enhancement/types.d.ts.map +1 -0
- package/lib/typescript/src/extraction/extractTarBz2.d.ts +2 -1
- package/lib/typescript/src/extraction/extractTarBz2.d.ts.map +1 -1
- package/lib/typescript/src/extraction/extractTarZst.d.ts +2 -1
- package/lib/typescript/src/extraction/extractTarZst.d.ts.map +1 -1
- package/lib/typescript/src/extraction/index.d.ts +1 -1
- package/lib/typescript/src/extraction/index.d.ts.map +1 -1
- package/lib/typescript/src/extraction/types.d.ts +12 -0
- package/lib/typescript/src/extraction/types.d.ts.map +1 -1
- package/lib/typescript/src/licenses.d.ts.map +1 -1
- package/lib/typescript/src/stt/index.d.ts +1 -1
- package/lib/typescript/src/stt/index.d.ts.map +1 -1
- package/lib/typescript/src/stt/streaming.d.ts.map +1 -1
- package/lib/typescript/src/stt/types.d.ts +16 -1
- package/lib/typescript/src/stt/types.d.ts.map +1 -1
- package/lib/typescript/src/tts/index.d.ts.map +1 -1
- package/lib/typescript/src/tts/streaming.d.ts.map +1 -1
- package/package.json +1 -1
- package/scripts/ci/check-model-csvs.sh +27 -2
- package/scripts/ci/collect_all_sherpa_model_streams.sh +3 -1
- package/scripts/ci/collect_one_sherpa_release_stream.sh +3 -1
- package/scripts/ci/sherpa_speech_enhancement_model_release_streams.json +13 -0
- package/scripts/ci/update_model_license_csv.sh +17 -17
- package/src/NativeSherpaOnnx.ts +108 -10
- package/src/download/localModels.ts +1 -3
- package/src/download/paths.ts +2 -1
- package/src/download/postDownloadProcessing.ts +24 -1
- package/src/enhancement/index.ts +120 -58
- package/src/enhancement/streaming.ts +105 -0
- package/src/enhancement/streamingTypes.ts +14 -0
- package/src/enhancement/types.ts +36 -0
- package/src/extraction/extractTarBz2.ts +7 -2
- package/src/extraction/extractTarZst.ts +7 -2
- package/src/extraction/index.ts +29 -6
- package/src/extraction/types.ts +16 -0
- package/src/licenses.ts +13 -2
- package/src/stt/index.ts +8 -7
- package/src/stt/streaming.ts +7 -1
- package/src/stt/types.ts +18 -0
- package/src/tts/index.ts +7 -7
- package/src/tts/streaming.ts +6 -3
- package/third_party/sherpa-onnx-prebuilt/ANDROID_RELEASE_TAG +1 -1
- package/third_party/sherpa-onnx-prebuilt/IOS_RELEASE_TAG +1 -1
package/src/stt/types.ts
CHANGED
|
@@ -15,6 +15,7 @@ export type STTModelType =
|
|
|
15
15
|
| 'ctc'
|
|
16
16
|
| 'whisper'
|
|
17
17
|
| 'funasr_nano'
|
|
18
|
+
| 'qwen3_asr'
|
|
18
19
|
| 'fire_red_asr'
|
|
19
20
|
| 'moonshine'
|
|
20
21
|
| 'dolphin'
|
|
@@ -50,6 +51,7 @@ export const STT_MODEL_TYPES: readonly STTModelType[] = [
|
|
|
50
51
|
'ctc',
|
|
51
52
|
'whisper',
|
|
52
53
|
'funasr_nano',
|
|
54
|
+
'qwen3_asr',
|
|
53
55
|
'fire_red_asr',
|
|
54
56
|
'moonshine',
|
|
55
57
|
'dolphin',
|
|
@@ -124,6 +126,20 @@ export interface SttFunAsrNanoModelOptions {
|
|
|
124
126
|
hotwords?: string;
|
|
125
127
|
}
|
|
126
128
|
|
|
129
|
+
/** Options for Qwen3 ASR models. Applied only when modelType is 'qwen3_asr'. */
|
|
130
|
+
export interface SttQwen3AsrModelOptions {
|
|
131
|
+
/** Max total sequence length. Default: 512. */
|
|
132
|
+
maxTotalLen?: number;
|
|
133
|
+
/** Max new tokens to generate. Default: 128. */
|
|
134
|
+
maxNewTokens?: number;
|
|
135
|
+
/** Sampling temperature. Default: 1e-6. */
|
|
136
|
+
temperature?: number;
|
|
137
|
+
/** Top-p sampling. Default: 0.8. */
|
|
138
|
+
topP?: number;
|
|
139
|
+
/** Random seed. Default: 42. */
|
|
140
|
+
seed?: number;
|
|
141
|
+
}
|
|
142
|
+
|
|
127
143
|
/**
|
|
128
144
|
* Model-specific STT options. Only the block for the actually loaded model type is applied;
|
|
129
145
|
* others are ignored (e.g. whisper options have no effect when a paraformer model is loaded).
|
|
@@ -133,6 +149,7 @@ export interface SttModelOptions {
|
|
|
133
149
|
senseVoice?: SttSenseVoiceModelOptions;
|
|
134
150
|
canary?: SttCanaryModelOptions;
|
|
135
151
|
funasrNano?: SttFunAsrNanoModelOptions;
|
|
152
|
+
qwen3Asr?: SttQwen3AsrModelOptions;
|
|
136
153
|
}
|
|
137
154
|
|
|
138
155
|
/**
|
|
@@ -162,6 +179,7 @@ export interface STTInitializeOptions {
|
|
|
162
179
|
* - 'wenet_ctc': Force detection as WeNet CTC model
|
|
163
180
|
* - 'sense_voice': Force detection as SenseVoice model
|
|
164
181
|
* - 'funasr_nano': Force detection as FunASR Nano model
|
|
182
|
+
* - 'qwen3_asr': Force detection as Qwen3 ASR
|
|
165
183
|
* - 'fire_red_asr': FireRed ASR (encoder/decoder)
|
|
166
184
|
* - 'moonshine': Moonshine (preprocess, encode, uncached_decode, cached_decode)
|
|
167
185
|
* - 'dolphin': Dolphin (single model)
|
package/src/tts/index.ts
CHANGED
|
@@ -112,10 +112,7 @@ export async function detectTtsModel(
|
|
|
112
112
|
}> {
|
|
113
113
|
const resolvedPath = await resolveModelPath(modelPath);
|
|
114
114
|
const raw = await SherpaOnnx.detectTtsModel(resolvedPath, options?.modelType);
|
|
115
|
-
const err =
|
|
116
|
-
typeof (raw as { error?: unknown }).error === 'string'
|
|
117
|
-
? String((raw as { error: string }).error).trim()
|
|
118
|
-
: '';
|
|
115
|
+
const err = typeof raw.error === 'string' ? raw.error.trim() : '';
|
|
119
116
|
return {
|
|
120
117
|
success: raw.success,
|
|
121
118
|
...(err.length > 0 ? { error: err } : {}),
|
|
@@ -243,10 +240,13 @@ export async function createTTS(
|
|
|
243
240
|
);
|
|
244
241
|
|
|
245
242
|
if (!result.success) {
|
|
243
|
+
const nativeError =
|
|
244
|
+
typeof result.error === 'string' ? result.error.trim() : '';
|
|
245
|
+
const detected = JSON.stringify(result.detectedModels ?? []);
|
|
246
246
|
throw new Error(
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
247
|
+
nativeError.length > 0
|
|
248
|
+
? `TTS initialization failed: ${nativeError}`
|
|
249
|
+
: `TTS initialization failed: ${detected}`
|
|
250
250
|
);
|
|
251
251
|
}
|
|
252
252
|
|
package/src/tts/streaming.ts
CHANGED
|
@@ -192,10 +192,13 @@ export async function createStreamingTTS(
|
|
|
192
192
|
);
|
|
193
193
|
|
|
194
194
|
if (!result.success) {
|
|
195
|
+
const nativeError =
|
|
196
|
+
typeof result.error === 'string' ? result.error.trim() : '';
|
|
197
|
+
const detected = JSON.stringify(result.detectedModels ?? []);
|
|
195
198
|
throw new Error(
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
+
nativeError.length > 0
|
|
200
|
+
? `Streaming TTS initialization failed: ${nativeError}`
|
|
201
|
+
: `Streaming TTS initialization failed: ${detected}`
|
|
199
202
|
);
|
|
200
203
|
}
|
|
201
204
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
sherpa-onnx-android-v1.12.
|
|
1
|
+
sherpa-onnx-android-v1.12.34-2
|
|
@@ -1 +1 @@
|
|
|
1
|
-
sherpa-onnx-ios-v1.12.
|
|
1
|
+
sherpa-onnx-ios-v1.12.34-1
|