react-native-sherpa-onnx 0.3.5 → 0.3.7

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.
Files changed (232) hide show
  1. package/LICENSE +1 -0
  2. package/README.md +90 -21
  3. package/SherpaOnnx.podspec +3 -0
  4. package/THIRD_PARTY_LICENSES/README.md +62 -0
  5. package/THIRD_PARTY_LICENSES/ffmpeg.txt +502 -0
  6. package/THIRD_PARTY_LICENSES/libarchive.txt +65 -0
  7. package/THIRD_PARTY_LICENSES/nvidia_omla.txt +181 -0
  8. package/THIRD_PARTY_LICENSES/onnxruntime.txt +21 -0
  9. package/THIRD_PARTY_LICENSES/opus.txt +44 -0
  10. package/THIRD_PARTY_LICENSES/sherpa-onnx.txt +201 -0
  11. package/THIRD_PARTY_LICENSES/shine.txt +482 -0
  12. package/THIRD_PARTY_LICENSES/zstd.txt +30 -0
  13. package/android/build.gradle +7 -3
  14. package/android/prebuilt-download.gradle +345 -153
  15. package/android/prebuilt-versions.gradle +2 -2
  16. package/android/src/main/assets/model_licenses/asr-models-license-status.csv +409 -0
  17. package/android/src/main/assets/model_licenses/qnn-asr-models-license-status.csv +695 -0
  18. package/android/src/main/assets/model_licenses/tts-models-license-status.csv +596 -0
  19. package/android/src/main/cpp/CMakeLists.txt +28 -10
  20. package/android/src/main/cpp/jni/archive/sherpa-onnx-archive-helper.cpp +306 -6
  21. package/android/src/main/cpp/jni/archive/sherpa-onnx-archive-helper.h +33 -4
  22. package/android/src/main/cpp/jni/archive/sherpa-onnx-archive-jni.cpp +266 -7
  23. package/android/src/main/cpp/jni/audio/sherpa-onnx-audio-convert-jni.cpp +268 -2
  24. package/android/src/main/cpp/jni/model_detect/sherpa-onnx-model-detect-tts.cpp +6 -2
  25. package/android/src/main/cpp/jni/model_detect/sherpa-onnx-validate-tts.cpp +4 -2
  26. package/android/src/main/java/com/sherpaonnx/SherpaOnnxArchiveHelper.kt +137 -7
  27. package/android/src/main/java/com/sherpaonnx/SherpaOnnxAssetHelper.kt +51 -6
  28. package/android/src/main/java/com/sherpaonnx/SherpaOnnxModule.kt +159 -0
  29. package/android/src/main/java/com/sherpaonnx/SherpaOnnxOnlineSttHelper.kt +4 -1
  30. package/android/src/main/java/com/sherpaonnx/SherpaOnnxTtsHelper.kt +112 -97
  31. package/ios/Resources/model_licenses/asr-models-license-status.csv +409 -0
  32. package/ios/Resources/model_licenses/qnn-asr-models-license-status.csv +695 -0
  33. package/ios/Resources/model_licenses/tts-models-license-status.csv +596 -0
  34. package/ios/SherpaOnnx+OnlineSTT.mm +2 -0
  35. package/ios/SherpaOnnx+PcmLiveStream.mm +2 -29
  36. package/ios/SherpaOnnx+TTS.mm +178 -20
  37. package/ios/SherpaOnnx.mm +108 -1
  38. package/ios/SherpaOnnxAudioConvert.h +10 -0
  39. package/ios/SherpaOnnxAudioConvert.mm +257 -1
  40. package/ios/archive/sherpa-onnx-archive-helper.h +10 -0
  41. package/ios/archive/sherpa-onnx-archive-helper.mm +56 -5
  42. package/ios/model_detect/sherpa-onnx-model-detect-tts.mm +13 -2
  43. package/ios/model_detect/sherpa-onnx-validate-tts.mm +4 -2
  44. package/ios/online_stt/sherpa-onnx-online-stt-wrapper.h +1 -0
  45. package/ios/online_stt/sherpa-onnx-online-stt-wrapper.mm +4 -0
  46. package/ios/tts/sherpa-onnx-tts-wrapper.h +37 -0
  47. package/ios/tts/sherpa-onnx-tts-wrapper.mm +149 -3
  48. package/lib/module/NativeSherpaOnnx.js.map +1 -1
  49. package/lib/module/audio/index.js +8 -0
  50. package/lib/module/audio/index.js.map +1 -1
  51. package/lib/module/download/ModelDownloadManager.js +10 -929
  52. package/lib/module/download/ModelDownloadManager.js.map +1 -1
  53. package/lib/module/download/activeModelOperations.js +26 -0
  54. package/lib/module/download/activeModelOperations.js.map +1 -0
  55. package/lib/module/download/background-downloader.d.js +2 -0
  56. package/lib/module/download/background-downloader.d.js.map +1 -0
  57. package/lib/module/download/bulkPurge.js +72 -0
  58. package/lib/module/download/bulkPurge.js.map +1 -0
  59. package/lib/module/download/checksumPrompt.js +19 -0
  60. package/lib/module/download/checksumPrompt.js.map +1 -0
  61. package/lib/module/download/constants.js +7 -0
  62. package/lib/module/download/constants.js.map +1 -0
  63. package/lib/module/download/downloadEvents.js +35 -0
  64. package/lib/module/download/downloadEvents.js.map +1 -0
  65. package/lib/module/download/downloadTask.js +385 -0
  66. package/lib/module/download/downloadTask.js.map +1 -0
  67. package/lib/module/download/ensureModel.js +89 -0
  68. package/lib/module/download/ensureModel.js.map +1 -0
  69. package/lib/module/download/index.js +4 -3
  70. package/lib/module/download/index.js.map +1 -1
  71. package/lib/module/download/localModels.js +151 -0
  72. package/lib/module/download/localModels.js.map +1 -0
  73. package/lib/module/download/modelExtraction.js +174 -0
  74. package/lib/module/download/modelExtraction.js.map +1 -0
  75. package/lib/module/download/paths.js +98 -0
  76. package/lib/module/download/paths.js.map +1 -0
  77. package/lib/module/download/postDownloadProcessing.js +206 -0
  78. package/lib/module/download/postDownloadProcessing.js.map +1 -0
  79. package/lib/module/download/protectedModelKeys.js +31 -0
  80. package/lib/module/download/protectedModelKeys.js.map +1 -0
  81. package/lib/module/download/registry.js +267 -0
  82. package/lib/module/download/registry.js.map +1 -0
  83. package/lib/module/download/retry.js +59 -0
  84. package/lib/module/download/retry.js.map +1 -0
  85. package/lib/module/download/types.js +17 -0
  86. package/lib/module/download/types.js.map +1 -0
  87. package/lib/module/download/validation.js +101 -5
  88. package/lib/module/download/validation.js.map +1 -1
  89. package/lib/module/{download → extraction}/extractTarBz2.js +3 -1
  90. package/lib/module/extraction/extractTarBz2.js.map +1 -0
  91. package/lib/module/extraction/extractTarZst.js +54 -0
  92. package/lib/module/extraction/extractTarZst.js.map +1 -0
  93. package/lib/module/extraction/index.js +190 -0
  94. package/lib/module/extraction/index.js.map +1 -0
  95. package/lib/module/extraction/types.js +2 -0
  96. package/lib/module/extraction/types.js.map +1 -0
  97. package/lib/module/index.js +2 -1
  98. package/lib/module/index.js.map +1 -1
  99. package/lib/module/licenses.js +63 -0
  100. package/lib/module/licenses.js.map +1 -0
  101. package/lib/module/stt/index.js +16 -2
  102. package/lib/module/stt/index.js.map +1 -1
  103. package/lib/module/stt/streaming.js +2 -0
  104. package/lib/module/stt/streaming.js.map +1 -1
  105. package/lib/module/stt/streamingTypes.js.map +1 -1
  106. package/lib/module/stt/types.js.map +1 -1
  107. package/lib/module/tts/index.js +20 -2
  108. package/lib/module/tts/index.js.map +1 -1
  109. package/lib/module/tts/streaming.js +4 -0
  110. package/lib/module/tts/streaming.js.map +1 -1
  111. package/lib/module/tts/types.js.map +1 -1
  112. package/lib/module/utils.js +16 -1
  113. package/lib/module/utils.js.map +1 -1
  114. package/lib/typescript/src/NativeSherpaOnnx.d.ts +72 -5
  115. package/lib/typescript/src/NativeSherpaOnnx.d.ts.map +1 -1
  116. package/lib/typescript/src/audio/index.d.ts +10 -0
  117. package/lib/typescript/src/audio/index.d.ts.map +1 -1
  118. package/lib/typescript/src/download/ModelDownloadManager.d.ts +10 -108
  119. package/lib/typescript/src/download/ModelDownloadManager.d.ts.map +1 -1
  120. package/lib/typescript/src/download/activeModelOperations.d.ts +6 -0
  121. package/lib/typescript/src/download/activeModelOperations.d.ts.map +1 -0
  122. package/lib/typescript/src/download/bulkPurge.d.ts +14 -0
  123. package/lib/typescript/src/download/bulkPurge.d.ts.map +1 -0
  124. package/lib/typescript/src/download/checksumPrompt.d.ts +3 -0
  125. package/lib/typescript/src/download/checksumPrompt.d.ts.map +1 -0
  126. package/lib/typescript/src/download/constants.d.ts +5 -0
  127. package/lib/typescript/src/download/constants.d.ts.map +1 -0
  128. package/lib/typescript/src/download/downloadEvents.d.ts +6 -0
  129. package/lib/typescript/src/download/downloadEvents.d.ts.map +1 -0
  130. package/lib/typescript/src/download/downloadTask.d.ts +20 -0
  131. package/lib/typescript/src/download/downloadTask.d.ts.map +1 -0
  132. package/lib/typescript/src/download/ensureModel.d.ts +26 -0
  133. package/lib/typescript/src/download/ensureModel.d.ts.map +1 -0
  134. package/lib/typescript/src/download/index.d.ts +7 -5
  135. package/lib/typescript/src/download/index.d.ts.map +1 -1
  136. package/lib/typescript/src/download/localModels.d.ts +15 -0
  137. package/lib/typescript/src/download/localModels.d.ts.map +1 -0
  138. package/lib/typescript/src/download/modelExtraction.d.ts +36 -0
  139. package/lib/typescript/src/download/modelExtraction.d.ts.map +1 -0
  140. package/lib/typescript/src/download/paths.d.ts +28 -0
  141. package/lib/typescript/src/download/paths.d.ts.map +1 -0
  142. package/lib/typescript/src/download/postDownloadProcessing.d.ts +19 -0
  143. package/lib/typescript/src/download/postDownloadProcessing.d.ts.map +1 -0
  144. package/lib/typescript/src/download/protectedModelKeys.d.ts +6 -0
  145. package/lib/typescript/src/download/protectedModelKeys.d.ts.map +1 -0
  146. package/lib/typescript/src/download/registry.d.ts +14 -0
  147. package/lib/typescript/src/download/registry.d.ts.map +1 -0
  148. package/lib/typescript/src/download/retry.d.ts +15 -0
  149. package/lib/typescript/src/download/retry.d.ts.map +1 -0
  150. package/lib/typescript/src/download/types.d.ts +96 -0
  151. package/lib/typescript/src/download/types.d.ts.map +1 -0
  152. package/lib/typescript/src/download/validation.d.ts +19 -0
  153. package/lib/typescript/src/download/validation.d.ts.map +1 -1
  154. package/lib/typescript/src/extraction/extractTarBz2.d.ts.map +1 -0
  155. package/lib/typescript/src/extraction/extractTarZst.d.ts +14 -0
  156. package/lib/typescript/src/extraction/extractTarZst.d.ts.map +1 -0
  157. package/lib/typescript/src/extraction/index.d.ts +50 -0
  158. package/lib/typescript/src/extraction/index.d.ts.map +1 -0
  159. package/lib/typescript/src/extraction/types.d.ts +60 -0
  160. package/lib/typescript/src/extraction/types.d.ts.map +1 -0
  161. package/lib/typescript/src/index.d.ts +1 -0
  162. package/lib/typescript/src/index.d.ts.map +1 -1
  163. package/lib/typescript/src/licenses.d.ts +10 -0
  164. package/lib/typescript/src/licenses.d.ts.map +1 -0
  165. package/lib/typescript/src/stt/index.d.ts +4 -1
  166. package/lib/typescript/src/stt/index.d.ts.map +1 -1
  167. package/lib/typescript/src/stt/streaming.d.ts.map +1 -1
  168. package/lib/typescript/src/stt/streamingTypes.d.ts +5 -0
  169. package/lib/typescript/src/stt/streamingTypes.d.ts.map +1 -1
  170. package/lib/typescript/src/stt/types.d.ts +3 -1
  171. package/lib/typescript/src/stt/types.d.ts.map +1 -1
  172. package/lib/typescript/src/tts/index.d.ts +3 -1
  173. package/lib/typescript/src/tts/index.d.ts.map +1 -1
  174. package/lib/typescript/src/tts/streaming.d.ts.map +1 -1
  175. package/lib/typescript/src/tts/types.d.ts +6 -5
  176. package/lib/typescript/src/tts/types.d.ts.map +1 -1
  177. package/lib/typescript/src/utils.d.ts +5 -0
  178. package/lib/typescript/src/utils.d.ts.map +1 -1
  179. package/package.json +11 -1
  180. package/scripts/{check-model-csvs.sh → ci/check-model-csvs.sh} +9 -2
  181. package/scripts/ci/collect_all_sherpa_model_streams.sh +101 -0
  182. package/scripts/ci/collect_one_sherpa_release_stream.sh +189 -0
  183. package/scripts/ci/sherpa_asr_model_release_streams.json +21 -0
  184. package/scripts/ci/sherpa_tts_model_release_streams.json +13 -0
  185. package/scripts/ci/update_model_license_csv.sh +765 -0
  186. package/scripts/setup-ios-framework.sh +14 -11
  187. package/scripts/update_commercial_use.js +73 -0
  188. package/src/NativeSherpaOnnx.ts +92 -5
  189. package/src/audio/index.ts +20 -0
  190. package/src/download/ModelDownloadManager.ts +55 -1343
  191. package/src/download/activeModelOperations.ts +38 -0
  192. package/src/download/background-downloader.d.ts +43 -0
  193. package/src/download/bulkPurge.ts +102 -0
  194. package/src/download/checksumPrompt.ts +25 -0
  195. package/src/download/constants.ts +5 -0
  196. package/src/download/downloadEvents.ts +55 -0
  197. package/src/download/downloadTask.ts +497 -0
  198. package/src/download/ensureModel.ts +124 -0
  199. package/src/download/index.ts +19 -2
  200. package/src/download/localModels.ts +234 -0
  201. package/src/download/modelExtraction.ts +244 -0
  202. package/src/download/paths.ts +134 -0
  203. package/src/download/postDownloadProcessing.ts +292 -0
  204. package/src/download/protectedModelKeys.ts +30 -0
  205. package/src/download/registry.ts +404 -0
  206. package/src/download/retry.ts +76 -0
  207. package/src/download/types.ts +120 -0
  208. package/src/download/validation.ts +114 -8
  209. package/src/{download → extraction}/extractTarBz2.ts +3 -1
  210. package/src/extraction/extractTarZst.ts +79 -0
  211. package/src/extraction/index.ts +269 -0
  212. package/src/extraction/types.ts +63 -0
  213. package/src/index.tsx +2 -0
  214. package/src/licenses.ts +100 -0
  215. package/src/stt/index.ts +20 -2
  216. package/src/stt/streaming.ts +3 -0
  217. package/src/stt/streamingTypes.ts +5 -0
  218. package/src/stt/types.ts +3 -1
  219. package/src/tts/index.ts +30 -2
  220. package/src/tts/streaming.ts +10 -0
  221. package/src/tts/types.ts +6 -5
  222. package/src/utils.ts +22 -1
  223. package/third_party/libarchive_prebuilt/ANDROID_RELEASE_TAG +1 -1
  224. package/third_party/libarchive_prebuilt/IOS_RELEASE_TAG +1 -1
  225. package/third_party/sherpa-onnx-prebuilt/ANDROID_RELEASE_TAG +1 -1
  226. package/third_party/sherpa-onnx-prebuilt/IOS_RELEASE_TAG +1 -1
  227. package/android/src/main/cpp/jni/tts/sherpa-onnx-tts-zipvoice-jni.cpp +0 -301
  228. package/android/src/main/java/com/sherpaonnx/ZipvoiceTtsWrapper.kt +0 -187
  229. package/lib/module/download/extractTarBz2.js.map +0 -1
  230. package/lib/typescript/src/download/extractTarBz2.d.ts.map +0 -1
  231. package/scripts/check-qnn-support.sh +0 -78
  232. /package/lib/typescript/src/{download → extraction}/extractTarBz2.d.ts +0 -0
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+
3
+ import { DeviceEventEmitter } from 'react-native';
4
+ import SherpaOnnx from "../NativeSherpaOnnx.js";
5
+ export async function extractTarZst(sourcePath, targetPath, force = true, onProgress, signal) {
6
+ let subscription = null;
7
+ let removeAbortListener = null;
8
+ if (signal?.aborted) {
9
+ const abortError = new Error('Extraction aborted');
10
+ abortError.name = 'AbortError';
11
+ throw abortError;
12
+ }
13
+ if (onProgress) {
14
+ subscription = DeviceEventEmitter.addListener('extractTarZstProgress', event => {
15
+ if (event.sourcePath != null && event.sourcePath !== sourcePath) {
16
+ return;
17
+ }
18
+ const safePercent = Math.max(0, Math.min(100, event.percent));
19
+ onProgress({
20
+ ...event,
21
+ percent: safePercent
22
+ });
23
+ });
24
+ }
25
+ if (signal) {
26
+ const onAbort = () => {
27
+ try {
28
+ // Use per-path cancel so aborting this extraction doesn't affect
29
+ // other extractions that may be running in parallel.
30
+ SherpaOnnx.cancelExtractBySourcePath(sourcePath);
31
+ } catch {
32
+ // Ignore cancel errors to avoid crashing on abort.
33
+ }
34
+ };
35
+ signal.addEventListener('abort', onAbort);
36
+ removeAbortListener = () => signal.removeEventListener('abort', onAbort);
37
+ }
38
+ try {
39
+ const result = await SherpaOnnx.extractTarZst(sourcePath, targetPath, force);
40
+ if (!result.success) {
41
+ const message = result.reason || 'Extraction failed';
42
+ const error = new Error(message);
43
+ if (signal?.aborted || /cancel/i.test(message)) {
44
+ error.name = 'AbortError';
45
+ }
46
+ throw error;
47
+ }
48
+ return result;
49
+ } finally {
50
+ subscription?.remove();
51
+ removeAbortListener?.();
52
+ }
53
+ }
54
+ //# sourceMappingURL=extractTarZst.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["DeviceEventEmitter","SherpaOnnx","extractTarZst","sourcePath","targetPath","force","onProgress","signal","subscription","removeAbortListener","aborted","abortError","Error","name","addListener","event","safePercent","Math","max","min","percent","onAbort","cancelExtractBySourcePath","addEventListener","removeEventListener","result","success","message","reason","error","test","remove"],"sourceRoot":"../../../src","sources":["extraction/extractTarZst.ts"],"mappings":";;AAAA,SAASA,kBAAkB,QAAQ,cAAc;AACjD,OAAOC,UAAU,MAAM,wBAAqB;AAe5C,OAAO,eAAeC,aAAaA,CACjCC,UAAkB,EAClBC,UAAkB,EAClBC,KAAK,GAAG,IAAI,EACZC,UAAkD,EAClDC,MAAoB,EACI;EACxB,IAAIC,YAA2C,GAAG,IAAI;EACtD,IAAIC,mBAAwC,GAAG,IAAI;EAEnD,IAAIF,MAAM,EAAEG,OAAO,EAAE;IACnB,MAAMC,UAAU,GAAG,IAAIC,KAAK,CAAC,oBAAoB,CAAC;IAClDD,UAAU,CAACE,IAAI,GAAG,YAAY;IAC9B,MAAMF,UAAU;EAClB;EAEA,IAAIL,UAAU,EAAE;IACdE,YAAY,GAAGR,kBAAkB,CAACc,WAAW,CAC3C,uBAAuB,EACtBC,KAAqD,IAAK;MACzD,IAAIA,KAAK,CAACZ,UAAU,IAAI,IAAI,IAAIY,KAAK,CAACZ,UAAU,KAAKA,UAAU,EAAE;QAC/D;MACF;MACA,MAAMa,WAAW,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC,EAAED,IAAI,CAACE,GAAG,CAAC,GAAG,EAAEJ,KAAK,CAACK,OAAO,CAAC,CAAC;MAC7Dd,UAAU,CAAC;QAAE,GAAGS,KAAK;QAAEK,OAAO,EAAEJ;MAAY,CAAC,CAAC;IAChD,CACF,CAAC;EACH;EAEA,IAAIT,MAAM,EAAE;IACV,MAAMc,OAAO,GAAGA,CAAA,KAAM;MACpB,IAAI;QACF;QACA;QACApB,UAAU,CAACqB,yBAAyB,CAACnB,UAAU,CAAC;MAClD,CAAC,CAAC,MAAM;QACN;MAAA;IAEJ,CAAC;IACDI,MAAM,CAACgB,gBAAgB,CAAC,OAAO,EAAEF,OAAO,CAAC;IACzCZ,mBAAmB,GAAGA,CAAA,KAAMF,MAAM,CAACiB,mBAAmB,CAAC,OAAO,EAAEH,OAAO,CAAC;EAC1E;EAEA,IAAI;IACF,MAAMI,MAAM,GAAG,MAAMxB,UAAU,CAACC,aAAa,CAC3CC,UAAU,EACVC,UAAU,EACVC,KACF,CAAC;IACD,IAAI,CAACoB,MAAM,CAACC,OAAO,EAAE;MACnB,MAAMC,OAAO,GAAGF,MAAM,CAACG,MAAM,IAAI,mBAAmB;MACpD,MAAMC,KAAK,GAAG,IAAIjB,KAAK,CAACe,OAAO,CAAC;MAChC,IAAIpB,MAAM,EAAEG,OAAO,IAAI,SAAS,CAACoB,IAAI,CAACH,OAAO,CAAC,EAAE;QAC9CE,KAAK,CAAChB,IAAI,GAAG,YAAY;MAC3B;MACA,MAAMgB,KAAK;IACb;IACA,OAAOJ,MAAM;EACf,CAAC,SAAS;IACRjB,YAAY,EAAEuB,MAAM,CAAC,CAAC;IACtBtB,mBAAmB,GAAG,CAAC;EACzB;AACF","ignoreList":[]}
@@ -0,0 +1,190 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * Extraction subpath: list and extract compressed model archives (.tar.zst / .tar.bz2).
5
+ *
6
+ * Three entry points:
7
+ * - getBundledArchives(packName) – Android PAD packs (STORAGE_FILES or APK_ASSETS)
8
+ * - listBundledArchives(dirPath) – any filesystem directory (cross-platform)
9
+ * - extractArchive(archive, target) – unified extraction (auto-selects path or asset-stream)
10
+ *
11
+ * After extraction, use listModelsAtPath / autoModelPath from the main package.
12
+ */
13
+
14
+ import { DeviceEventEmitter, Platform } from 'react-native';
15
+ import { readDir, stat, exists } from '@dr.pogodin/react-native-fs';
16
+ import SherpaOnnx from "../NativeSherpaOnnx.js";
17
+ import { extractTarZst } from "./extractTarZst.js";
18
+ import { extractTarBz2 } from "./extractTarBz2.js";
19
+ // ── Constants & helpers ───────────────────────────────────────────
20
+
21
+ const TAR_ZST = '.tar.zst';
22
+ const TAR_BZ2 = '.tar.bz2';
23
+ function formatFromFilename(name) {
24
+ if (name.endsWith(TAR_ZST)) return 'tar.zst';
25
+ if (name.endsWith(TAR_BZ2)) return 'tar.bz2';
26
+ return null;
27
+ }
28
+ function modelIdFromFilename(filename) {
29
+ if (filename.endsWith(TAR_ZST)) return filename.slice(0, -TAR_ZST.length);
30
+ if (filename.endsWith(TAR_BZ2)) return filename.slice(0, -TAR_BZ2.length);
31
+ return filename;
32
+ }
33
+
34
+ /**
35
+ * Scan a filesystem directory for .tar.zst / .tar.bz2 entries.
36
+ * Shared by getBundledArchives (STORAGE_FILES) and listBundledArchives.
37
+ */
38
+ async function scanDirectoryForArchives(directoryPath) {
39
+ const dirExists = await exists(directoryPath);
40
+ if (!dirExists) return [];
41
+ const entries = await readDir(directoryPath);
42
+ const archives = [];
43
+ for (const entry of entries) {
44
+ const format = formatFromFilename(entry.name);
45
+ if (!format || !entry.isFile()) continue;
46
+ let fileSize = 0;
47
+ try {
48
+ const s = await stat(entry.path);
49
+ fileSize = s.size ?? 0;
50
+ } catch {
51
+ // stat may fail on some filesystems; fileSize stays 0
52
+ }
53
+ archives.push({
54
+ modelId: modelIdFromFilename(entry.name),
55
+ archivePath: entry.path,
56
+ format,
57
+ fileSize
58
+ });
59
+ }
60
+ return archives;
61
+ }
62
+
63
+ // ── Public API ────────────────────────────────────────────────────
64
+
65
+ /**
66
+ * List compressed archives delivered via a **Play Asset Delivery** pack.
67
+ *
68
+ * - **STORAGE_FILES** packs: scans the pack directory on the filesystem.
69
+ * - **APK_ASSETS** packs: queries the Android AssetManager for embedded archive paths.
70
+ * Archives returned with `fromAsset: true` are extracted by streaming from the APK
71
+ * (no temp copy needed).
72
+ * - **iOS / unavailable pack**: returns `null`.
73
+ *
74
+ * @param packName Name of the PAD asset pack (e.g. `"sherpa_models"`)
75
+ */
76
+ export async function getBundledArchives(packName) {
77
+ if (Platform.OS !== 'android') {
78
+ return null;
79
+ }
80
+ const packPath = await SherpaOnnx.getAssetPackPath(packName);
81
+ if (packPath != null && packPath.length > 0) {
82
+ const archives = await scanDirectoryForArchives(packPath);
83
+ return archives.length > 0 ? archives : null;
84
+ }
85
+ const assetPaths = await SherpaOnnx.listBundledArchiveAssetPaths(packName);
86
+ if (assetPaths.length === 0) return null;
87
+ return assetPaths.map(archivePath => {
88
+ const filename = archivePath.split('/').pop() ?? archivePath;
89
+ const format = formatFromFilename(filename) ?? 'tar.zst';
90
+ return {
91
+ modelId: modelIdFromFilename(filename),
92
+ archivePath,
93
+ format,
94
+ fromAsset: true
95
+ };
96
+ });
97
+ }
98
+
99
+ /**
100
+ * List `.tar.zst` and `.tar.bz2` archives in a filesystem directory.
101
+ *
102
+ * Works on **all platforms** — use for:
103
+ * - iOS main-bundle archives (`MainBundlePath + '/models'`)
104
+ * - Archives downloaded to the documents directory
105
+ * - Any other folder containing compressed model archives
106
+ *
107
+ * @param directoryPath Absolute path to the directory to scan
108
+ */
109
+ export async function listBundledArchives(directoryPath) {
110
+ return scanDirectoryForArchives(directoryPath);
111
+ }
112
+
113
+ /**
114
+ * Extract a single archive to the target directory.
115
+ *
116
+ * Handles both source types transparently:
117
+ * - **Filesystem archives** (from `listBundledArchives` or PAD STORAGE_FILES) —
118
+ * uses the regular path-based extraction.
119
+ * - **APK asset archives** (`fromAsset: true`, from PAD APK_ASSETS) —
120
+ * streams directly from the APK without copying the archive to disk first.
121
+ *
122
+ * @param archive Descriptor returned by `getBundledArchives` or `listBundledArchives`
123
+ * @param targetPath Directory to extract into (e.g. `DocumentDirectoryPath + '/models'`)
124
+ * @param options `force` (default `true`), `onProgress`, `signal` (AbortSignal)
125
+ */
126
+ export async function extractArchive(archive, targetPath, options) {
127
+ const force = options?.force !== false;
128
+ const onProgress = options?.onProgress;
129
+ const signal = options?.signal;
130
+ if (signal?.aborted) {
131
+ const err = new Error('Extraction aborted');
132
+ err.name = 'AbortError';
133
+ throw err;
134
+ }
135
+ const useAssetStream = Platform.OS === 'android' && (archive.fromAsset === true || archive.archivePath.startsWith('asset_packs/'));
136
+ if (useAssetStream) {
137
+ return extractFromAsset(archive, targetPath, force, onProgress, signal);
138
+ }
139
+ if (archive.format === 'tar.zst') {
140
+ return extractTarZst(archive.archivePath, targetPath, force, onProgress, signal);
141
+ }
142
+ return extractTarBz2(archive.archivePath, targetPath, force, onProgress, signal);
143
+ }
144
+
145
+ // ── Internal: asset-stream extraction (Android APK_ASSETS) ───────
146
+
147
+ async function extractFromAsset(archive, targetPath, force, onProgress, signal) {
148
+ const eventName = archive.format === 'tar.zst' ? 'extractTarZstProgress' : 'extractTarBz2Progress';
149
+ let subscription = null;
150
+ let removeAbortListener = null;
151
+ if (onProgress) {
152
+ subscription = DeviceEventEmitter.addListener(eventName, event => {
153
+ if (event.sourcePath != null && event.sourcePath !== archive.archivePath) {
154
+ return;
155
+ }
156
+ const safePercent = Math.max(0, Math.min(100, event.percent));
157
+ onProgress({
158
+ ...event,
159
+ percent: safePercent
160
+ });
161
+ });
162
+ }
163
+ if (signal) {
164
+ const onAbort = () => {
165
+ try {
166
+ SherpaOnnx.cancelExtractBySourcePath(archive.archivePath);
167
+ } catch {
168
+ // ignore
169
+ }
170
+ };
171
+ signal.addEventListener('abort', onAbort);
172
+ removeAbortListener = () => signal.removeEventListener('abort', onAbort);
173
+ }
174
+ try {
175
+ const result = archive.format === 'tar.zst' ? await SherpaOnnx.extractTarZstFromAsset(archive.archivePath, targetPath, force) : await SherpaOnnx.extractTarBz2FromAsset(archive.archivePath, targetPath, force);
176
+ if (!result.success) {
177
+ const message = result.reason ?? 'Extraction failed';
178
+ const error = new Error(message);
179
+ if (signal?.aborted || /cancel/i.test(message)) {
180
+ error.name = 'AbortError';
181
+ }
182
+ throw error;
183
+ }
184
+ return result;
185
+ } finally {
186
+ subscription?.remove();
187
+ removeAbortListener?.();
188
+ }
189
+ }
190
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["DeviceEventEmitter","Platform","readDir","stat","exists","SherpaOnnx","extractTarZst","extractTarBz2","TAR_ZST","TAR_BZ2","formatFromFilename","name","endsWith","modelIdFromFilename","filename","slice","length","scanDirectoryForArchives","directoryPath","dirExists","entries","archives","entry","format","isFile","fileSize","s","path","size","push","modelId","archivePath","getBundledArchives","packName","OS","packPath","getAssetPackPath","assetPaths","listBundledArchiveAssetPaths","map","split","pop","fromAsset","listBundledArchives","extractArchive","archive","targetPath","options","force","onProgress","signal","aborted","err","Error","useAssetStream","startsWith","extractFromAsset","eventName","subscription","removeAbortListener","addListener","event","sourcePath","safePercent","Math","max","min","percent","onAbort","cancelExtractBySourcePath","addEventListener","removeEventListener","result","extractTarZstFromAsset","extractTarBz2FromAsset","success","message","reason","error","test","remove"],"sourceRoot":"../../../src","sources":["extraction/index.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../src","sources":["extraction/types.ts"],"mappings":"","ignoreList":[]}
@@ -6,11 +6,12 @@ import SherpaOnnx from "./NativeSherpaOnnx.js";
6
6
 
7
7
  export { assetModelPath, autoModelPath, fileModelPath, getAssetPackPath, getDefaultModelPath, getPlayAssetDeliveryModelsPath, listAssetModels, listModelsAtPath, resolveModelPath } from "./utils.js";
8
8
  export { copyFileToContentUri } from "./tts/index.js";
9
-
9
+ export { getModelLicenses } from "./licenses.js";
10
10
  // Note: Feature-specific exports are available via subpath imports:
11
11
  // - import { createSTT, createStreamingSTT, ... } from 'react-native-sherpa-onnx/stt'
12
12
  // - import { createTTS, ... } from 'react-native-sherpa-onnx/tts'
13
13
  // - import { ... } from 'react-native-sherpa-onnx/download'
14
+ // - import { getBundledArchives, listBundledArchives, extractArchive } from 'react-native-sherpa-onnx/extraction'
14
15
  // - import { ... } from 'react-native-sherpa-onnx/vad' (planned)
15
16
  // - import { ... } from 'react-native-sherpa-onnx/diarization' (planned)
16
17
  // - import { ... } from 'react-native-sherpa-onnx/enhancement' (planned)
@@ -1 +1 @@
1
- {"version":3,"names":["SherpaOnnx","assetModelPath","autoModelPath","fileModelPath","getAssetPackPath","getDefaultModelPath","getPlayAssetDeliveryModelsPath","listAssetModels","listModelsAtPath","resolveModelPath","copyFileToContentUri","testSherpaInit","getQnnSupport","modelBase64","getDeviceQnnSoc","getAvailableProviders","getNnapiSupport","getXnnpackSupport","getCoreMlSupport"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,OAAOA,UAAU,MAAM,uBAAoB;;AAG3C;;AAGA,SACEC,cAAc,EACdC,aAAa,EACbC,aAAa,EACbC,gBAAgB,EAChBC,mBAAmB,EACnBC,8BAA8B,EAC9BC,eAAe,EACfC,gBAAgB,EAChBC,gBAAgB,QACX,YAAS;AAEhB,SAASC,oBAAoB,QAAQ,gBAAO;;AAE5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO,SAASC,cAAcA,CAAA,EAAoB;EAChD,OAAOX,UAAU,CAACW,cAAc,CAAC,CAAC;AACpC;;AAEA;AACA;AACA;AACA,OAAO,SAASC,aAAaA,CAC3BC,WAAoB,EACU;EAC9B,OAAOb,UAAU,CAACY,aAAa,CAACC,WAAW,CAAC;AAC9C;;AAEA;AACA;AACA;AACA;;AAMA,OAAO,SAASC,eAAeA,CAAA,EAAgC;EAC7D,OAAOd,UAAU,CAACc,eAAe,CAAC,CAAC;AACrC;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,qBAAqBA,CAAA,EAAsB;EACzD,OAAOf,UAAU,CAACe,qBAAqB,CAAC,CAAC;AAC3C;;AAEA;AACA;AACA;AACA,OAAO,SAASC,eAAeA,CAC7BH,WAAoB,EACU;EAC9B,OAAOb,UAAU,CAACgB,eAAe,CAACH,WAAW,CAAC;AAChD;;AAEA;AACA;AACA;AACA,OAAO,SAASI,iBAAiBA,CAC/BJ,WAAoB,EACU;EAC9B,OAAOb,UAAU,CAACiB,iBAAiB,CAACJ,WAAW,CAAC;AAClD;;AAEA;AACA;AACA;AACA,OAAO,SAASK,gBAAgBA,CAC9BL,WAAoB,EACU;EAC9B,OAAOb,UAAU,CAACkB,gBAAgB,CAACL,WAAW,CAAC;AACjD","ignoreList":[]}
1
+ {"version":3,"names":["SherpaOnnx","assetModelPath","autoModelPath","fileModelPath","getAssetPackPath","getDefaultModelPath","getPlayAssetDeliveryModelsPath","listAssetModels","listModelsAtPath","resolveModelPath","copyFileToContentUri","getModelLicenses","testSherpaInit","getQnnSupport","modelBase64","getDeviceQnnSoc","getAvailableProviders","getNnapiSupport","getXnnpackSupport","getCoreMlSupport"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,OAAOA,UAAU,MAAM,uBAAoB;;AAG3C;;AAGA,SACEC,cAAc,EACdC,aAAa,EACbC,aAAa,EACbC,gBAAgB,EAChBC,mBAAmB,EACnBC,8BAA8B,EAC9BC,eAAe,EACfC,gBAAgB,EAChBC,gBAAgB,QACX,YAAS;AAEhB,SAASC,oBAAoB,QAAQ,gBAAO;AAE5C,SAASC,gBAAgB,QAA2B,eAAY;AAChE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO,SAASC,cAAcA,CAAA,EAAoB;EAChD,OAAOZ,UAAU,CAACY,cAAc,CAAC,CAAC;AACpC;;AAEA;AACA;AACA;AACA,OAAO,SAASC,aAAaA,CAC3BC,WAAoB,EACU;EAC9B,OAAOd,UAAU,CAACa,aAAa,CAACC,WAAW,CAAC;AAC9C;;AAEA;AACA;AACA;AACA;;AAMA,OAAO,SAASC,eAAeA,CAAA,EAAgC;EAC7D,OAAOf,UAAU,CAACe,eAAe,CAAC,CAAC;AACrC;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,qBAAqBA,CAAA,EAAsB;EACzD,OAAOhB,UAAU,CAACgB,qBAAqB,CAAC,CAAC;AAC3C;;AAEA;AACA;AACA;AACA,OAAO,SAASC,eAAeA,CAC7BH,WAAoB,EACU;EAC9B,OAAOd,UAAU,CAACiB,eAAe,CAACH,WAAW,CAAC;AAChD;;AAEA;AACA;AACA;AACA,OAAO,SAASI,iBAAiBA,CAC/BJ,WAAoB,EACU;EAC9B,OAAOd,UAAU,CAACkB,iBAAiB,CAACJ,WAAW,CAAC;AAClD;;AAEA;AACA;AACA;AACA,OAAO,SAASK,gBAAgBA,CAC9BL,WAAoB,EACU;EAC9B,OAAOd,UAAU,CAACmB,gBAAgB,CAACL,WAAW,CAAC;AACjD","ignoreList":[]}
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+
3
+ import SherpaOnnx from "./NativeSherpaOnnx.js";
4
+ export async function getModelLicenses() {
5
+ const asrPath = 'model_licenses/asr-models-license-status.csv';
6
+ const qnnPath = 'model_licenses/qnn-asr-models-license-status.csv';
7
+ const ttsPath = 'model_licenses/tts-models-license-status.csv';
8
+ const results = await Promise.allSettled([SherpaOnnx.readAssetFileAsUtf8(asrPath), SherpaOnnx.readAssetFileAsUtf8(qnnPath), SherpaOnnx.readAssetFileAsUtf8(ttsPath)]);
9
+ const [asrResult, qnnResult, ttsResult] = results;
10
+ const licenses = [];
11
+ if (asrResult.status === 'fulfilled') {
12
+ licenses.push(...parseCsv(asrResult.value));
13
+ } else {
14
+ console.warn(`[SherpaOnnx] Failed to load ASR model licenses: ${asrResult.reason}`);
15
+ }
16
+ if (qnnResult.status === 'fulfilled') {
17
+ licenses.push(...parseCsv(qnnResult.value));
18
+ } else {
19
+ console.warn(`[SherpaOnnx] Failed to load QNN model licenses: ${qnnResult.reason}`);
20
+ }
21
+ if (ttsResult.status === 'fulfilled') {
22
+ licenses.push(...parseCsv(ttsResult.value));
23
+ } else {
24
+ console.warn(`[SherpaOnnx] Failed to load TTS model licenses: ${ttsResult.reason}`);
25
+ }
26
+ return licenses;
27
+ }
28
+ function parseCsv(csvString) {
29
+ const lines = csvString.split(/\r?\n/);
30
+ if (lines.length === 0) {
31
+ return [];
32
+ }
33
+
34
+ // The first line is the header
35
+ const headerLine = lines[0];
36
+ if (!headerLine) return [];
37
+ const headers = headerLine.split(',').map(h => h.trim());
38
+ const results = [];
39
+ for (let i = 1; i < lines.length; i++) {
40
+ const line = lines[i];
41
+ if (!line || line.trim() === '') continue;
42
+
43
+ // The CSV has 6 columns: asset_name, license_type, commercial_use,
44
+ // confidence, detection_source, license_file. The last column
45
+ // (license_file) may itself contain commas (e.g. URLs with query strings),
46
+ // so split into at most 6 parts and join any excess back into the last field.
47
+ const COLUMN_COUNT = 6;
48
+ const rawParts = line.split(',');
49
+ const parts = rawParts.length <= COLUMN_COUNT ? rawParts : [...rawParts.slice(0, COLUMN_COUNT - 1), rawParts.slice(COLUMN_COUNT - 1).join(',')];
50
+ const entry = {};
51
+ for (let j = 0; j < headers.length; j++) {
52
+ const header = headers[j];
53
+ if (header) {
54
+ entry[header] = (parts[j] ?? '').trim();
55
+ }
56
+ }
57
+ if (entry['asset_name']) {
58
+ results.push(entry);
59
+ }
60
+ }
61
+ return results;
62
+ }
63
+ //# sourceMappingURL=licenses.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["SherpaOnnx","getModelLicenses","asrPath","qnnPath","ttsPath","results","Promise","allSettled","readAssetFileAsUtf8","asrResult","qnnResult","ttsResult","licenses","status","push","parseCsv","value","console","warn","reason","csvString","lines","split","length","headerLine","headers","map","h","trim","i","line","COLUMN_COUNT","rawParts","parts","slice","join","entry","j","header"],"sourceRoot":"../../src","sources":["licenses.ts"],"mappings":"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","ignoreList":[]}
@@ -21,7 +21,7 @@ function normalizeSttResult(raw) {
21
21
  *
22
22
  * @param modelPath - Model path configuration (asset, file, or auto)
23
23
  * @param options - Optional preferInt8 and modelType (default: auto)
24
- * @returns Object with success, detectedModels (array of { type, modelDir }), and modelType (primary detected type)
24
+ * @returns Object with success, detectedModels (array of { type, modelDir }), modelType (primary detected type), optional error when success is false, and optionally isHardwareSpecificUnsupported
25
25
  * @example
26
26
  * ```typescript
27
27
  * const path = { type: 'asset' as const, path: 'models/sherpa-onnx-whisper-tiny-en' };
@@ -33,7 +33,21 @@ function normalizeSttResult(raw) {
33
33
  */
34
34
  export async function detectSttModel(modelPath, options) {
35
35
  const resolvedPath = await resolveModelPath(modelPath);
36
- return SherpaOnnx.detectSttModel(resolvedPath, options?.preferInt8, options?.modelType);
36
+ const raw = await SherpaOnnx.detectSttModel(resolvedPath, options?.preferInt8, options?.modelType);
37
+ const err = typeof raw.error === 'string' ? String(raw.error).trim() : '';
38
+ return {
39
+ success: raw.success,
40
+ ...(err.length > 0 ? {
41
+ error: err
42
+ } : {}),
43
+ ...(raw.isHardwareSpecificUnsupported === true ? {
44
+ isHardwareSpecificUnsupported: true
45
+ } : {}),
46
+ detectedModels: raw.detectedModels ?? [],
47
+ ...(raw.modelType != null && raw.modelType !== '' ? {
48
+ modelType: raw.modelType
49
+ } : {})
50
+ };
37
51
  }
38
52
 
39
53
  /**
@@ -1 +1 @@
1
- {"version":3,"names":["SherpaOnnx","resolveModelPath","sttInstanceCounter","normalizeSttResult","raw","text","tokens","Array","isArray","timestamps","lang","emotion","event","durations","detectSttModel","modelPath","options","resolvedPath","preferInt8","modelType","createSTT","instanceId","hotwordsFile","hotwordsScore","numThreads","provider","ruleFsts","ruleFars","dither","modelOptions","modelingUnit","bpeVocab","undefined","debug","result","initializeStt","success","Error","JSON","stringify","detectedModels","destroyed","guard","engine","transcribeFile","filePath","transcribeSamples","samples","sampleRate","setConfig","config","map","decodingMethod","maxActivePaths","blankPenalty","setSttConfig","destroy","unloadStt","createStreamingSTT","mapDetectedToOnlineType","getOnlineTypeOrNull","ONLINE_STT_MODEL_TYPES","STT_MODEL_TYPES","STT_HOTWORDS_MODEL_TYPES","sttSupportsHotwords","getWhisperLanguages","WHISPER_LANGUAGES","getSenseVoiceLanguages","SENSEVOICE_LANGUAGES","getCanaryLanguages","CANARY_LANGUAGES","getFunasrNanoLanguages","FUNASR_NANO_LANGUAGES","getFunasrMltNanoLanguages","FUNASR_MLT_NANO_LANGUAGES"],"sourceRoot":"../../../src","sources":["stt/index.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["SherpaOnnx","resolveModelPath","sttInstanceCounter","normalizeSttResult","raw","text","tokens","Array","isArray","timestamps","lang","emotion","event","durations","detectSttModel","modelPath","options","resolvedPath","preferInt8","modelType","err","error","String","trim","success","length","isHardwareSpecificUnsupported","detectedModels","createSTT","instanceId","hotwordsFile","hotwordsScore","numThreads","provider","ruleFsts","ruleFars","dither","modelOptions","modelingUnit","bpeVocab","undefined","debug","result","initializeStt","Error","JSON","stringify","destroyed","guard","engine","transcribeFile","filePath","transcribeSamples","samples","sampleRate","setConfig","config","map","decodingMethod","maxActivePaths","blankPenalty","setSttConfig","destroy","unloadStt","createStreamingSTT","mapDetectedToOnlineType","getOnlineTypeOrNull","ONLINE_STT_MODEL_TYPES","STT_MODEL_TYPES","STT_HOTWORDS_MODEL_TYPES","sttSupportsHotwords","getWhisperLanguages","WHISPER_LANGUAGES","getSenseVoiceLanguages","SENSEVOICE_LANGUAGES","getCanaryLanguages","CANARY_LANGUAGES","getFunasrNanoLanguages","FUNASR_NANO_LANGUAGES","getFunasrMltNanoLanguages","FUNASR_MLT_NANO_LANGUAGES"],"sourceRoot":"../../../src","sources":["stt/index.ts"],"mappings":"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","ignoreList":[]}
@@ -66,6 +66,7 @@ function flattenInitOptionsForNative(options) {
66
66
  provider: options.provider,
67
67
  ruleFsts: options.ruleFsts,
68
68
  ruleFars: options.ruleFars,
69
+ dither: options.dither,
69
70
  blankPenalty: options.blankPenalty,
70
71
  debug: options.debug,
71
72
  rule1MustContainNonSilence: ep?.rule1?.mustContainNonSilence,
@@ -144,6 +145,7 @@ export async function createStreamingSTT(options) {
144
145
  if (flat.provider !== undefined) nativeOptions.provider = flat.provider;
145
146
  if (flat.ruleFsts !== undefined) nativeOptions.ruleFsts = flat.ruleFsts;
146
147
  if (flat.ruleFars !== undefined) nativeOptions.ruleFars = flat.ruleFars;
148
+ if (flat.dither !== undefined) nativeOptions.dither = flat.dither;
147
149
  if (flat.blankPenalty !== undefined) nativeOptions.blankPenalty = flat.blankPenalty;
148
150
  if (flat.debug !== undefined) nativeOptions.debug = flat.debug;
149
151
  if (flat.rule1MustContainNonSilence !== undefined) nativeOptions.rule1MustContainNonSilence = flat.rule1MustContainNonSilence;
@@ -1 +1 @@
1
- {"version":3,"names":["SherpaOnnx","resolveModelPath","streamingSttInstanceCounter","mapDetectedToOnlineType","detectedType","t","Error","getOnlineTypeOrNull","sttStreamCounter","normalizeStreamingResult","raw","text","tokens","Array","isArray","timestamps","flattenInitOptionsForNative","options","ep","endpointConfig","modelDir","modelType","enableEndpoint","decodingMethod","maxActivePaths","hotwordsFile","hotwordsScore","numThreads","provider","ruleFsts","ruleFars","blankPenalty","debug","rule1MustContainNonSilence","rule1","mustContainNonSilence","rule1MinTrailingSilence","minTrailingSilence","rule1MinUtteranceLength","minUtteranceLength","rule2MustContainNonSilence","rule2","rule2MinTrailingSilence","rule2MinUtteranceLength","rule3MustContainNonSilence","rule3","rule3MinTrailingSilence","rule3MinUtteranceLength","createStreamingSTT","instanceId","resolvedPath","modelPath","effectiveModelType","undefined","detectResult","detectSttModel","success","errMsg","error","optionsWithResolvedType","flat","nativeOptions","result","initializeOnlineSttWithOptions","enableInputNormalization","destroyed","guard","engine","createStream","hotwords","streamId","createSttStream","released","streamGuard","stream","acceptWaveform","samples","sampleRate","acceptSttWaveform","inputFinished","sttStreamInputFinished","decode","decodeSttStream","isReady","isSttStreamReady","getResult","getSttStreamResult","isEndpoint","isSttStreamEndpoint","reset","resetSttStream","release","releaseSttStream","processAudioChunk","toSend","length","maxAbs","i","abs","Math","scale","min","normalized","Float32Array","v","samplesArray","from","processSttAudioChunk","Boolean","destroy","unloadOnlineStt"],"sourceRoot":"../../../src","sources":["stt/streaming.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["SherpaOnnx","resolveModelPath","streamingSttInstanceCounter","mapDetectedToOnlineType","detectedType","t","Error","getOnlineTypeOrNull","sttStreamCounter","normalizeStreamingResult","raw","text","tokens","Array","isArray","timestamps","flattenInitOptionsForNative","options","ep","endpointConfig","modelDir","modelType","enableEndpoint","decodingMethod","maxActivePaths","hotwordsFile","hotwordsScore","numThreads","provider","ruleFsts","ruleFars","dither","blankPenalty","debug","rule1MustContainNonSilence","rule1","mustContainNonSilence","rule1MinTrailingSilence","minTrailingSilence","rule1MinUtteranceLength","minUtteranceLength","rule2MustContainNonSilence","rule2","rule2MinTrailingSilence","rule2MinUtteranceLength","rule3MustContainNonSilence","rule3","rule3MinTrailingSilence","rule3MinUtteranceLength","createStreamingSTT","instanceId","resolvedPath","modelPath","effectiveModelType","undefined","detectResult","detectSttModel","success","errMsg","error","optionsWithResolvedType","flat","nativeOptions","result","initializeOnlineSttWithOptions","enableInputNormalization","destroyed","guard","engine","createStream","hotwords","streamId","createSttStream","released","streamGuard","stream","acceptWaveform","samples","sampleRate","acceptSttWaveform","inputFinished","sttStreamInputFinished","decode","decodeSttStream","isReady","isSttStreamReady","getResult","getSttStreamResult","isEndpoint","isSttStreamEndpoint","reset","resetSttStream","release","releaseSttStream","processAudioChunk","toSend","length","maxAbs","i","abs","Math","scale","min","normalized","Float32Array","v","samplesArray","from","processSttAudioChunk","Boolean","destroy","unloadOnlineStt"],"sourceRoot":"../../../src","sources":["stt/streaming.ts"],"mappings":";;AAAA,OAAOA,UAAU,MAAM,wBAAqB;AAC5C,SAASC,gBAAgB,QAAQ,aAAU;AAS3C,IAAIC,2BAA2B,GAAG,CAAC;;AAEnC;AACA;AACA;AACA;AACA,OAAO,SAASC,uBAAuBA,CACrCC,YAAgC,EACZ;EACpB,MAAMC,CAAC,GAAGD,YAAY,IAAI,EAAE;EAC5B,QAAQC,CAAC;IACP,KAAK,YAAY;MACf,OAAO,YAAY;IACrB,KAAK,YAAY;MACf,OAAO,YAAY;IACrB,KAAK,UAAU;MACb,OAAO,UAAU;IACnB,KAAK,eAAe;IACpB,KAAK,KAAK;MACR,OAAO,gBAAgB;IACzB,KAAK,UAAU;MACb,OAAO,UAAU;IACnB;MACE,MAAM,IAAIC,KAAK,CACb,eAAeD,CAAC,2KAClB,CAAC;EACL;AACF;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASE,mBAAmBA,CACjCH,YAAgC,EACL;EAC3B,IAAI;IACF,OAAOD,uBAAuB,CAACC,YAAY,CAAC;EAC9C,CAAC,CAAC,MAAM;IACN,OAAO,IAAI;EACb;AACF;AACA,IAAII,gBAAgB,GAAG,CAAC;AAExB,SAASC,wBAAwBA,CAACC,GAIjC,EAAsB;EACrB,OAAO;IACLC,IAAI,EAAE,OAAOD,GAAG,CAACC,IAAI,KAAK,QAAQ,GAAGD,GAAG,CAACC,IAAI,GAAG,EAAE;IAClDC,MAAM,EAAEC,KAAK,CAACC,OAAO,CAACJ,GAAG,CAACE,MAAM,CAAC,GAAIF,GAAG,CAACE,MAAM,GAAgB,EAAE;IACjEG,UAAU,EAAEF,KAAK,CAACC,OAAO,CAACJ,GAAG,CAACK,UAAU,CAAC,GACpCL,GAAG,CAACK,UAAU,GACf;EACN,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA,SAASC,2BAA2BA,CAACC,OAAgC,EAwBnE;EACA,MAAMC,EAAE,GAAGD,OAAO,CAACE,cAAc;EACjC,OAAO;IACLC,QAAQ,EAAE,EAAE;IAAE;IACdC,SAAS,EAAEJ,OAAO,CAACI,SAAS;IAC5BC,cAAc,EAAEL,OAAO,CAACK,cAAc,IAAI,IAAI;IAC9CC,cAAc,EAAEN,OAAO,CAACM,cAAc,IAAI,eAAe;IACzDC,cAAc,EAAEP,OAAO,CAACO,cAAc,IAAI,CAAC;IAC3CC,YAAY,EAAER,OAAO,CAACQ,YAAY;IAClCC,aAAa,EAAET,OAAO,CAACS,aAAa;IACpCC,UAAU,EAAEV,OAAO,CAACU,UAAU;IAC9BC,QAAQ,EAAEX,OAAO,CAACW,QAAQ;IAC1BC,QAAQ,EAAEZ,OAAO,CAACY,QAAQ;IAC1BC,QAAQ,EAAEb,OAAO,CAACa,QAAQ;IAC1BC,MAAM,EAAEd,OAAO,CAACc,MAAM;IACtBC,YAAY,EAAEf,OAAO,CAACe,YAAY;IAClCC,KAAK,EAAEhB,OAAO,CAACgB,KAAK;IACpBC,0BAA0B,EAAEhB,EAAE,EAAEiB,KAAK,EAAEC,qBAAqB;IAC5DC,uBAAuB,EAAEnB,EAAE,EAAEiB,KAAK,EAAEG,kBAAkB;IACtDC,uBAAuB,EAAErB,EAAE,EAAEiB,KAAK,EAAEK,kBAAkB;IACtDC,0BAA0B,EAAEvB,EAAE,EAAEwB,KAAK,EAAEN,qBAAqB;IAC5DO,uBAAuB,EAAEzB,EAAE,EAAEwB,KAAK,EAAEJ,kBAAkB;IACtDM,uBAAuB,EAAE1B,EAAE,EAAEwB,KAAK,EAAEF,kBAAkB;IACtDK,0BAA0B,EAAE3B,EAAE,EAAE4B,KAAK,EAAEV,qBAAqB;IAC5DW,uBAAuB,EAAE7B,EAAE,EAAE4B,KAAK,EAAER,kBAAkB;IACtDU,uBAAuB,EAAE9B,EAAE,EAAE4B,KAAK,EAAEN;EACtC,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeS,kBAAkBA,CACtChC,OAAgC,EACH;EAC7B,MAAMiC,UAAU,GAAG,iBAAiB,EAAEhD,2BAA2B,EAAE;EACnE,MAAMiD,YAAY,GAAG,MAAMlD,gBAAgB,CAACgB,OAAO,CAACmC,SAAS,CAAC;EAE9D,IAAIC,kBAAsC;EAC1C,IAAIpC,OAAO,CAACI,SAAS,KAAK,MAAM,IAAIJ,OAAO,CAACI,SAAS,KAAKiC,SAAS,EAAE;IACnE,MAAMC,YAAY,GAAG,MAAMvD,UAAU,CAACwD,cAAc,CAClDL,YAAY,EACZG,SAAS,EACTA,SACF,CAAC;IACD,IAAI,CAACC,YAAY,CAACE,OAAO,EAAE;MACzB,MAAMC,MAAM,GACV,OAAO,IAAIH,YAAY,IACvB,OAAQA,YAAY,CAAwBI,KAAK,KAAK,QAAQ,GACzDJ,YAAY,CAAuBI,KAAK,GACzC,eAAe;MACrB,MAAM,IAAIrD,KAAK,CACb,2CAA2C6C,YAAY,KAAKO,MAAM,EACpE,CAAC;IACH;IACAL,kBAAkB,GAAGlD,uBAAuB,CAACoD,YAAY,CAAClC,SAAS,CAAC;EACtE,CAAC,MAAM;IACLgC,kBAAkB,GAAGpC,OAAO,CAACI,SAAS;EACxC;EAEA,MAAMuC,uBAAuB,GAAG;IAAE,GAAG3C,OAAO;IAAEI,SAAS,EAAEgC;EAAmB,CAAC;EAC7E,MAAMQ,IAAI,GAAG7C,2BAA2B,CAAC4C,uBAAuB,CAAC;EACjEC,IAAI,CAACzC,QAAQ,GAAG+B,YAAY;;EAE5B;EACA,MAAMW,aAEF,GAAG;IACL1C,QAAQ,EAAEyC,IAAI,CAACzC,QAAQ;IACvBC,SAAS,EAAEwC,IAAI,CAACxC,SAAS;IACzBC,cAAc,EAAEuC,IAAI,CAACvC,cAAc;IACnCC,cAAc,EAAEsC,IAAI,CAACtC,cAAc;IACnCC,cAAc,EAAEqC,IAAI,CAACrC;EACvB,CAAC;EACD,IAAIqC,IAAI,CAACpC,YAAY,KAAK6B,SAAS,EACjCQ,aAAa,CAACrC,YAAY,GAAGoC,IAAI,CAACpC,YAAY;EAChD,IAAIoC,IAAI,CAACnC,aAAa,KAAK4B,SAAS,EAClCQ,aAAa,CAACpC,aAAa,GAAGmC,IAAI,CAACnC,aAAa;EAClD,IAAImC,IAAI,CAAClC,UAAU,KAAK2B,SAAS,EAAEQ,aAAa,CAACnC,UAAU,GAAGkC,IAAI,CAAClC,UAAU;EAC7E,IAAIkC,IAAI,CAACjC,QAAQ,KAAK0B,SAAS,EAAEQ,aAAa,CAAClC,QAAQ,GAAGiC,IAAI,CAACjC,QAAQ;EACvE,IAAIiC,IAAI,CAAChC,QAAQ,KAAKyB,SAAS,EAAEQ,aAAa,CAACjC,QAAQ,GAAGgC,IAAI,CAAChC,QAAQ;EACvE,IAAIgC,IAAI,CAAC/B,QAAQ,KAAKwB,SAAS,EAAEQ,aAAa,CAAChC,QAAQ,GAAG+B,IAAI,CAAC/B,QAAQ;EACvE,IAAI+B,IAAI,CAAC9B,MAAM,KAAKuB,SAAS,EAAEQ,aAAa,CAAC/B,MAAM,GAAG8B,IAAI,CAAC9B,MAAM;EACjE,IAAI8B,IAAI,CAAC7B,YAAY,KAAKsB,SAAS,EACjCQ,aAAa,CAAC9B,YAAY,GAAG6B,IAAI,CAAC7B,YAAY;EAChD,IAAI6B,IAAI,CAAC5B,KAAK,KAAKqB,SAAS,EAAEQ,aAAa,CAAC7B,KAAK,GAAG4B,IAAI,CAAC5B,KAAK;EAC9D,IAAI4B,IAAI,CAAC3B,0BAA0B,KAAKoB,SAAS,EAC/CQ,aAAa,CAAC5B,0BAA0B,GAAG2B,IAAI,CAAC3B,0BAA0B;EAC5E,IAAI2B,IAAI,CAACxB,uBAAuB,KAAKiB,SAAS,EAC5CQ,aAAa,CAACzB,uBAAuB,GAAGwB,IAAI,CAACxB,uBAAuB;EACtE,IAAIwB,IAAI,CAACtB,uBAAuB,KAAKe,SAAS,EAC5CQ,aAAa,CAACvB,uBAAuB,GAAGsB,IAAI,CAACtB,uBAAuB;EACtE,IAAIsB,IAAI,CAACpB,0BAA0B,KAAKa,SAAS,EAC/CQ,aAAa,CAACrB,0BAA0B,GAAGoB,IAAI,CAACpB,0BAA0B;EAC5E,IAAIoB,IAAI,CAAClB,uBAAuB,KAAKW,SAAS,EAC5CQ,aAAa,CAACnB,uBAAuB,GAAGkB,IAAI,CAAClB,uBAAuB;EACtE,IAAIkB,IAAI,CAACjB,uBAAuB,KAAKU,SAAS,EAC5CQ,aAAa,CAAClB,uBAAuB,GAAGiB,IAAI,CAACjB,uBAAuB;EACtE,IAAIiB,IAAI,CAAChB,0BAA0B,KAAKS,SAAS,EAC/CQ,aAAa,CAACjB,0BAA0B,GAAGgB,IAAI,CAAChB,0BAA0B;EAC5E,IAAIgB,IAAI,CAACd,uBAAuB,KAAKO,SAAS,EAC5CQ,aAAa,CAACf,uBAAuB,GAAGc,IAAI,CAACd,uBAAuB;EACtE,IAAIc,IAAI,CAACb,uBAAuB,KAAKM,SAAS,EAC5CQ,aAAa,CAACd,uBAAuB,GAAGa,IAAI,CAACb,uBAAuB;EAEtE,MAAMe,MAAM,GAAG,MAAM/D,UAAU,CAACgE,8BAA8B,CAC5Dd,UAAU,EACVY,aACF,CAAC;EAED,IAAI,CAACC,MAAM,CAACN,OAAO,EAAE;IACnB,MAAM,IAAInD,KAAK,CAAC,2CAA2C4C,UAAU,EAAE,CAAC;EAC1E;EAEA,MAAMe,wBAAwB,GAAGhD,OAAO,CAACgD,wBAAwB,KAAK,KAAK;EAC3E,IAAIC,SAAS,GAAG,KAAK;EAErB,MAAMC,KAAK,GAAGA,CAAA,KAAM;IAClB,IAAID,SAAS,EAAE;MACb,MAAM,IAAI5D,KAAK,CACb,wBAAwB4C,UAAU,iDACpC,CAAC;IACH;EACF,CAAC;EAED,MAAMkB,MAA0B,GAAG;IACjC,IAAIlB,UAAUA,CAAA,EAAG;MACf,OAAOA,UAAU;IACnB,CAAC;IAED,MAAMmB,YAAYA,CAACC,QAAiB,EAAsB;MACxDH,KAAK,CAAC,CAAC;MACP,MAAMI,QAAQ,GAAG,cAAc,EAAE/D,gBAAgB,EAAE;MACnD,MAAMR,UAAU,CAACwE,eAAe,CAACtB,UAAU,EAAEqB,QAAQ,EAAED,QAAQ,CAAC;MAEhE,IAAIG,QAAQ,GAAG,KAAK;MACpB,MAAMC,WAAW,GAAGA,CAAA,KAAM;QACxB,IAAIR,SAAS,EAAE;UACb,MAAM,IAAI5D,KAAK,CACb,wBAAwB4C,UAAU,sBACpC,CAAC;QACH;QACA,IAAIuB,QAAQ,EAAE;UACZ,MAAM,IAAInE,KAAK,CACb,UAAUiE,QAAQ,gDACpB,CAAC;QACH;MACF,CAAC;MAED,MAAMI,MAAiB,GAAG;QACxB,IAAIJ,QAAQA,CAAA,EAAG;UACb,OAAOA,QAAQ;QACjB,CAAC;QAED,MAAMK,cAAcA,CAClBC,OAAiB,EACjBC,UAAkB,EACH;UACfJ,WAAW,CAAC,CAAC;UACb,MAAM1E,UAAU,CAAC+E,iBAAiB,CAACR,QAAQ,EAAEM,OAAO,EAAEC,UAAU,CAAC;QACnE,CAAC;QAED,MAAME,aAAaA,CAAA,EAAkB;UACnCN,WAAW,CAAC,CAAC;UACb,MAAM1E,UAAU,CAACiF,sBAAsB,CAACV,QAAQ,CAAC;QACnD,CAAC;QAED,MAAMW,MAAMA,CAAA,EAAkB;UAC5BR,WAAW,CAAC,CAAC;UACb,MAAM1E,UAAU,CAACmF,eAAe,CAACZ,QAAQ,CAAC;QAC5C,CAAC;QAED,MAAMa,OAAOA,CAAA,EAAqB;UAChCV,WAAW,CAAC,CAAC;UACb,OAAO1E,UAAU,CAACqF,gBAAgB,CAACd,QAAQ,CAAC;QAC9C,CAAC;QAED,MAAMe,SAASA,CAAA,EAAgC;UAC7CZ,WAAW,CAAC,CAAC;UACb,MAAMhE,GAAG,GAAG,MAAMV,UAAU,CAACuF,kBAAkB,CAAChB,QAAQ,CAAC;UACzD,OAAO9D,wBAAwB,CAACC,GAAG,CAAC;QACtC,CAAC;QAED,MAAM8E,UAAUA,CAAA,EAAqB;UACnCd,WAAW,CAAC,CAAC;UACb,OAAO1E,UAAU,CAACyF,mBAAmB,CAAClB,QAAQ,CAAC;QACjD,CAAC;QAED,MAAMmB,KAAKA,CAAA,EAAkB;UAC3BhB,WAAW,CAAC,CAAC;UACb,MAAM1E,UAAU,CAAC2F,cAAc,CAACpB,QAAQ,CAAC;QAC3C,CAAC;QAED,MAAMqB,OAAOA,CAAA,EAAkB;UAC7B,IAAInB,QAAQ,EAAE;UACdA,QAAQ,GAAG,IAAI;UACf,MAAMzE,UAAU,CAAC6F,gBAAgB,CAACtB,QAAQ,CAAC;QAC7C,CAAC;QAED,MAAMuB,iBAAiBA,CACrBjB,OAAgC,EAChCC,UAAkB,EAC4C;UAC9DJ,WAAW,CAAC,CAAC;UACb,IAAIqB,MAA+B,GAAGlB,OAAO;UAC7C,IAAIZ,wBAAwB,IAAIY,OAAO,CAACmB,MAAM,GAAG,CAAC,EAAE;YAClD,IAAIC,MAAM,GAAG,KAAK;YAClB,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGrB,OAAO,CAACmB,MAAM,EAAEE,CAAC,EAAE,EAAE;cACvC,MAAMC,GAAG,GAAGC,IAAI,CAACD,GAAG,CAACtB,OAAO,CAACqB,CAAC,CAAE,CAAC;cACjC,IAAIC,GAAG,GAAGF,MAAM,EAAEA,MAAM,GAAGE,GAAG;YAChC;YACA,MAAME,KAAK,GAAGJ,MAAM,GAAG,IAAI,GAAG,EAAE,GAAGG,IAAI,CAACE,GAAG,CAAC,EAAE,EAAE,GAAG,GAAGL,MAAM,CAAC;YAC7D,MAAMM,UAAU,GAAG,IAAIC,YAAY,CAAC3B,OAAO,CAACmB,MAAM,CAAC;YACnD,KAAK,IAAIE,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGrB,OAAO,CAACmB,MAAM,EAAEE,CAAC,EAAE,EAAE;cACvC,MAAMO,CAAC,GAAG5B,OAAO,CAACqB,CAAC,CAAC,GAAIG,KAAK;cAC7BE,UAAU,CAACL,CAAC,CAAC,GAAGO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAGA,CAAC,GAAG,CAAC,GAAG,CAAC,GAAGA,CAAC;YAC7C;YACAV,MAAM,GAAGQ,UAAU;UACrB;UACA;UACA,MAAMG,YAAY,GAAG7F,KAAK,CAACC,OAAO,CAACiF,MAAM,CAAC,GACtCA,MAAM,GACNlF,KAAK,CAAC8F,IAAI,CAACZ,MAAM,CAAC;UACtB,MAAMrF,GAAG,GAAG,MAAMV,UAAU,CAAC4G,oBAAoB,CAC/CrC,QAAQ,EACRmC,YAAY,EACZ5B,UACF,CAAC;UACD,OAAO;YACLf,MAAM,EAAEtD,wBAAwB,CAACC,GAAG,CAAC;YACrC8E,UAAU,EAAEqB,OAAO,CAACnG,GAAG,CAAC8E,UAAU;UACpC,CAAC;QACH;MACF,CAAC;MAED,OAAOb,MAAM;IACf,CAAC;IAED,MAAMmC,OAAOA,CAAA,EAAkB;MAC7B,IAAI5C,SAAS,EAAE;MACfA,SAAS,GAAG,IAAI;MAChB,MAAMlE,UAAU,CAAC+G,eAAe,CAAC7D,UAAU,CAAC;IAC9C;EACF,CAAC;EAED,OAAOkB,MAAM;AACf","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["ONLINE_STT_MODEL_TYPES"],"sourceRoot":"../../../src","sources":["stt/streamingTypes.ts"],"mappings":";;AAEA;AACA;AACA;AACA;AACA;;AAQA;AACA,OAAO,MAAMA,sBAAqD,GAAG,CACnE,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,UAAU,EACV,UAAU,CACF;;AAEV;AACA;AACA;AACA;;AAUA;AACA;AACA;AACA;;AAUA;AACA;AACA;;AAsCA;AACA;AACA;;AAOA;AACA;AACA;AACA;;AAsCA;AACA;AACA","ignoreList":[]}
1
+ {"version":3,"names":["ONLINE_STT_MODEL_TYPES"],"sourceRoot":"../../../src","sources":["stt/streamingTypes.ts"],"mappings":";;AAEA;AACA;AACA;AACA;AACA;;AAQA;AACA,OAAO,MAAMA,sBAAqD,GAAG,CACnE,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,UAAU,EACV,UAAU,CACF;;AAEV;AACA;AACA;AACA;;AAUA;AACA;AACA;AACA;;AAUA;AACA;AACA;;AA2CA;AACA;AACA;;AAOA;AACA;AACA;AACA;;AAsCA;AACA;AACA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["STT_HOTWORDS_MODEL_TYPES","sttSupportsHotwords","modelType","STT_MODEL_TYPES"],"sourceRoot":"../../../src","sources":["stt/types.ts"],"mappings":";;AAEA;AACA;AACA;AACA;;AAqBA;AACA,OAAO,MAAMA,wBAAiD,GAAG,CAC/D,YAAY,EACZ,iBAAiB,CACT;;AAEV;AACA;AACA;AACA;AACA,OAAO,SAASC,mBAAmBA,CAACC,SAAgC,EAAW;EAC7E,OAAOA,SAAS,KAAK,YAAY,IAAIA,SAAS,KAAK,iBAAiB;AACtE;;AAEA;AACA,OAAO,MAAMC,eAAwC,GAAG,CACtD,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,UAAU,EACV,WAAW,EACX,aAAa,EACb,eAAe,EACf,KAAK,EACL,SAAS,EACT,aAAa,EACb,cAAc,EACd,WAAW,EACX,SAAS,EACT,QAAQ,EACR,aAAa,EACb,QAAQ,EACR,gBAAgB,EAChB,MAAM,CACE;;AAEV;;AAQA;;AAEA;;AAcA;;AAQA;;AAUA;;AAsBA;AACA;AACA;AACA;;AAQA;AACA;AACA;;AAsGA;AACA;AACA;;AAkBA;AACA;AACA;AACA;;AAYA;AACA;AACA;AACA","ignoreList":[]}
1
+ {"version":3,"names":["STT_HOTWORDS_MODEL_TYPES","sttSupportsHotwords","modelType","STT_MODEL_TYPES"],"sourceRoot":"../../../src","sources":["stt/types.ts"],"mappings":";;AAEA;AACA;AACA;AACA;;AAqBA;AACA,OAAO,MAAMA,wBAAiD,GAAG,CAC/D,YAAY,EACZ,iBAAiB,CACT;;AAEV;AACA;AACA;AACA;AACA,OAAO,SAASC,mBAAmBA,CAACC,SAAgC,EAAW;EAC7E,OAAOA,SAAS,KAAK,YAAY,IAAIA,SAAS,KAAK,iBAAiB;AACtE;;AAEA;AACA,OAAO,MAAMC,eAAwC,GAAG,CACtD,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,UAAU,EACV,WAAW,EACX,aAAa,EACb,eAAe,EACf,KAAK,EACL,SAAS,EACT,aAAa,EACb,cAAc,EACd,WAAW,EACX,SAAS,EACT,QAAQ,EACR,aAAa,EACb,QAAQ,EACR,gBAAgB,EAChB,MAAM,CACE;;AAEV;;AAQA;;AAEA;;AAcA;;AAQA;;AAUA;;AAsBA;AACA;AACA;AACA;;AAQA;AACA;AACA;;AAwGA;AACA;AACA;;AAkBA;AACA;AACA;AACA;;AAYA;AACA;AACA;AACA","ignoreList":[]}
@@ -40,7 +40,7 @@ function flattenTtsModelOptionsForNative(modelType, modelOptions) {
40
40
  *
41
41
  * @param modelPath - Model path configuration (asset, file, or auto)
42
42
  * @param options - Optional modelType (default: 'auto')
43
- * @returns Object with success, detectedModels (array of { type, modelDir }), modelType (primary detected type), and optionally lexiconLanguageCandidates (language ids for multi-lang Kokoro/Kitten)
43
+ * @returns Object with success, detectedModels (array of { type, modelDir }), modelType (primary detected type), optional error when success is false, and optionally lexiconLanguageCandidates (language ids for multi-lang Kokoro/Kitten)
44
44
  * @example
45
45
  * ```typescript
46
46
  * const result = await detectTtsModel({ type: 'asset', path: 'models/vits-piper-en' });
@@ -52,7 +52,21 @@ function flattenTtsModelOptionsForNative(modelType, modelOptions) {
52
52
  */
53
53
  export async function detectTtsModel(modelPath, options) {
54
54
  const resolvedPath = await resolveModelPath(modelPath);
55
- return SherpaOnnx.detectTtsModel(resolvedPath, options?.modelType);
55
+ const raw = await SherpaOnnx.detectTtsModel(resolvedPath, options?.modelType);
56
+ const err = typeof raw.error === 'string' ? String(raw.error).trim() : '';
57
+ return {
58
+ success: raw.success,
59
+ ...(err.length > 0 ? {
60
+ error: err
61
+ } : {}),
62
+ detectedModels: raw.detectedModels ?? [],
63
+ ...(raw.modelType != null && raw.modelType !== '' ? {
64
+ modelType: raw.modelType
65
+ } : {}),
66
+ ...(raw.lexiconLanguageCandidates != null && raw.lexiconLanguageCandidates.length > 0 ? {
67
+ lexiconLanguageCandidates: raw.lexiconLanguageCandidates
68
+ } : {})
69
+ };
56
70
  }
57
71
 
58
72
  /**
@@ -66,6 +80,10 @@ function toNativeTtsOptions(options) {
66
80
  if (options.speed !== undefined) out.speed = options.speed;
67
81
  if (options.silenceScale !== undefined) out.silenceScale = options.silenceScale;
68
82
  if (options.referenceAudio != null) {
83
+ const sr = options.referenceAudio.sampleRate;
84
+ if (typeof __DEV__ !== 'undefined' && __DEV__ && (!Number.isFinite(sr) || sr <= 0)) {
85
+ console.warn('[react-native-sherpa-onnx] TTS referenceAudio.sampleRate must be > 0 for voice cloning (Zipvoice/Pocket).');
86
+ }
69
87
  out.referenceAudio = options.referenceAudio.samples;
70
88
  out.referenceSampleRate = options.referenceAudio.sampleRate;
71
89
  }