react-native-sherpa-onnx 0.2.0 → 0.3.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 +232 -236
- package/SherpaOnnx.podspec +68 -64
- package/android/build.gradle +182 -192
- package/android/codegen.gradle +57 -0
- package/android/prebuilt-download.gradle +428 -0
- package/android/prebuilt-versions.gradle +43 -0
- package/android/proguard-rules.pro +10 -0
- package/android/src/main/assets/testModels/add_mul_add.onnx +28 -0
- package/android/src/main/assets/testModels/nnapi_internal_uint8_support.onnx +0 -0
- package/android/src/main/assets/testModels/qnn_multi_ctx_embed.onnx +0 -0
- package/android/src/main/cpp/CMakeLists.txt +166 -129
- package/android/src/main/cpp/CMakePresets.json +54 -0
- package/android/src/main/cpp/crypto/sha256.cpp +174 -0
- package/android/src/main/cpp/crypto/sha256.h +16 -0
- package/android/src/main/cpp/jni/archive/sherpa-onnx-archive-helper.cpp +404 -0
- package/android/src/main/cpp/jni/archive/sherpa-onnx-archive-helper.h +56 -0
- package/android/src/main/cpp/jni/archive/sherpa-onnx-archive-jni.cpp +181 -0
- package/android/src/main/cpp/jni/audio/sherpa-onnx-audio-convert-jni.cpp +888 -0
- package/{ios → android/src/main/cpp/jni/model_detect}/sherpa-onnx-common.h +18 -18
- package/android/src/main/cpp/jni/model_detect/sherpa-onnx-detect-jni-common.cpp +86 -0
- package/android/src/main/cpp/jni/model_detect/sherpa-onnx-detect-jni-common.h +20 -0
- package/android/src/main/cpp/jni/model_detect/sherpa-onnx-model-detect-helper.cpp +423 -0
- package/android/src/main/cpp/jni/model_detect/sherpa-onnx-model-detect-helper.h +55 -0
- package/android/src/main/cpp/jni/model_detect/sherpa-onnx-model-detect-stt.cpp +399 -0
- package/android/src/main/cpp/jni/model_detect/sherpa-onnx-model-detect-tts.cpp +238 -0
- package/{ios → android/src/main/cpp/jni/model_detect}/sherpa-onnx-model-detect.h +122 -89
- package/android/src/main/cpp/jni/model_detect/sherpa-onnx-stt-wrapper.cpp +99 -0
- package/android/src/main/cpp/jni/model_detect/sherpa-onnx-stt-wrapper.h +16 -0
- package/android/src/main/cpp/jni/model_detect/sherpa-onnx-tts-wrapper.cpp +78 -0
- package/android/src/main/cpp/jni/model_detect/sherpa-onnx-tts-wrapper.h +16 -0
- package/android/src/main/cpp/jni/module/sherpa-onnx-module-jni.cpp +190 -0
- package/android/src/main/cpp/jni/tts/sherpa-onnx-tts-zipvoice-jni.cpp +301 -0
- package/android/src/main/java/com/sherpaonnx/SherpaOnnxArchiveHelper.kt +94 -0
- package/android/src/main/java/com/sherpaonnx/{SherpaOnnxCoreHelper.kt → SherpaOnnxAssetHelper.kt} +350 -236
- package/android/src/main/java/com/sherpaonnx/SherpaOnnxModule.kt +791 -483
- package/android/src/main/java/com/sherpaonnx/SherpaOnnxSttHelper.kt +699 -109
- package/android/src/main/java/com/sherpaonnx/SherpaOnnxTtsHelper.kt +1123 -668
- package/android/src/main/java/com/sherpaonnx/ZipvoiceTtsWrapper.kt +187 -0
- package/ios/SherpaOnnx+Assets.h +11 -0
- package/ios/SherpaOnnx+Assets.mm +325 -0
- package/ios/SherpaOnnx+STT.mm +455 -118
- package/ios/SherpaOnnx+TTS.mm +1101 -712
- package/ios/SherpaOnnx.h +17 -6
- package/ios/SherpaOnnx.mm +206 -311
- package/ios/SherpaOnnx.xcconfig +19 -19
- package/ios/SherpaOnnxCoreMLHelper.swift +24 -0
- package/ios/archive/sherpa-onnx-archive-helper.h +21 -0
- package/ios/archive/sherpa-onnx-archive-helper.mm +296 -0
- package/ios/libarchive_darwin_config.h +153 -0
- package/{android/src/main/cpp/jni → ios/model_detect}/sherpa-onnx-common.h +18 -18
- package/ios/model_detect/sherpa-onnx-model-detect-helper.h +49 -0
- package/ios/model_detect/sherpa-onnx-model-detect-helper.mm +210 -0
- package/ios/model_detect/sherpa-onnx-model-detect-stt.mm +344 -0
- package/ios/model_detect/sherpa-onnx-model-detect-tts.mm +201 -0
- package/{android/src/main/cpp/jni → ios/model_detect}/sherpa-onnx-model-detect.h +117 -89
- package/ios/scripts/patch-libarchive-includes.sh +61 -0
- package/ios/scripts/setup-ios-libarchive.sh +98 -0
- package/ios/stt/sherpa-onnx-stt-wrapper.h +129 -0
- package/ios/stt/sherpa-onnx-stt-wrapper.mm +523 -0
- package/ios/{sherpa-onnx-tts-wrapper.h → tts/sherpa-onnx-tts-wrapper.h} +90 -85
- package/ios/{sherpa-onnx-tts-wrapper.mm → tts/sherpa-onnx-tts-wrapper.mm} +376 -345
- package/lib/module/NativeSherpaOnnx.js +3 -0
- package/lib/module/NativeSherpaOnnx.js.map +1 -1
- package/lib/module/audio/index.js +22 -0
- package/lib/module/audio/index.js.map +1 -0
- package/lib/module/diarization/index.js +1 -1
- package/lib/module/diarization/index.js.map +1 -1
- package/lib/module/download/ModelDownloadManager.js +918 -0
- package/lib/module/download/ModelDownloadManager.js.map +1 -0
- package/lib/module/download/extractTarBz2.js +53 -0
- package/lib/module/download/extractTarBz2.js.map +1 -0
- package/lib/module/download/index.js +6 -0
- package/lib/module/download/index.js.map +1 -0
- package/lib/module/download/validation.js +178 -0
- package/lib/module/download/validation.js.map +1 -0
- package/lib/module/enhancement/index.js +1 -1
- package/lib/module/enhancement/index.js.map +1 -1
- package/lib/module/index.js +41 -3
- package/lib/module/index.js.map +1 -1
- package/lib/module/separation/index.js +1 -1
- package/lib/module/separation/index.js.map +1 -1
- package/lib/module/stt/index.js +127 -60
- package/lib/module/stt/index.js.map +1 -1
- package/lib/module/stt/sttModelLanguages.js +512 -0
- package/lib/module/stt/sttModelLanguages.js.map +1 -0
- package/lib/module/stt/types.js +53 -1
- package/lib/module/stt/types.js.map +1 -1
- package/lib/module/tts/index.js +216 -289
- package/lib/module/tts/index.js.map +1 -1
- package/lib/module/tts/types.js +86 -1
- package/lib/module/tts/types.js.map +1 -1
- package/lib/module/types.js.map +1 -1
- package/lib/module/utils.js +86 -73
- package/lib/module/utils.js.map +1 -1
- package/lib/module/vad/index.js +1 -1
- package/lib/module/vad/index.js.map +1 -1
- package/lib/typescript/src/NativeSherpaOnnx.d.ts +192 -38
- package/lib/typescript/src/NativeSherpaOnnx.d.ts.map +1 -1
- package/lib/typescript/src/audio/index.d.ts +13 -0
- package/lib/typescript/src/audio/index.d.ts.map +1 -0
- package/lib/typescript/src/diarization/index.d.ts +3 -2
- package/lib/typescript/src/diarization/index.d.ts.map +1 -1
- package/lib/typescript/src/download/ModelDownloadManager.d.ts +108 -0
- package/lib/typescript/src/download/ModelDownloadManager.d.ts.map +1 -0
- package/lib/typescript/src/download/extractTarBz2.d.ts +14 -0
- package/lib/typescript/src/download/extractTarBz2.d.ts.map +1 -0
- package/lib/typescript/src/download/index.d.ts +7 -0
- package/lib/typescript/src/download/index.d.ts.map +1 -0
- package/lib/typescript/src/download/validation.d.ts +57 -0
- package/lib/typescript/src/download/validation.d.ts.map +1 -0
- package/lib/typescript/src/enhancement/index.d.ts +3 -2
- package/lib/typescript/src/enhancement/index.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +26 -2
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/separation/index.d.ts +3 -2
- package/lib/typescript/src/separation/index.d.ts.map +1 -1
- package/lib/typescript/src/stt/index.d.ts +31 -43
- package/lib/typescript/src/stt/index.d.ts.map +1 -1
- package/lib/typescript/src/stt/sttModelLanguages.d.ts +52 -0
- package/lib/typescript/src/stt/sttModelLanguages.d.ts.map +1 -0
- package/lib/typescript/src/stt/types.d.ts +196 -9
- package/lib/typescript/src/stt/types.d.ts.map +1 -1
- package/lib/typescript/src/tts/index.d.ts +25 -211
- package/lib/typescript/src/tts/index.d.ts.map +1 -1
- package/lib/typescript/src/tts/types.d.ts +148 -25
- package/lib/typescript/src/tts/types.d.ts.map +1 -1
- package/lib/typescript/src/types.d.ts +0 -32
- package/lib/typescript/src/types.d.ts.map +1 -1
- package/lib/typescript/src/utils.d.ts +28 -13
- package/lib/typescript/src/utils.d.ts.map +1 -1
- package/lib/typescript/src/vad/index.d.ts +3 -2
- package/lib/typescript/src/vad/index.d.ts.map +1 -1
- package/package.json +250 -222
- package/scripts/check-qnn-support.sh +78 -0
- package/scripts/setup-ios-framework.sh +379 -282
- package/src/NativeSherpaOnnx.ts +474 -251
- package/src/audio/index.ts +32 -0
- package/src/diarization/index.ts +4 -2
- package/src/download/ModelDownloadManager.ts +1325 -0
- package/src/download/extractTarBz2.ts +78 -0
- package/src/download/index.ts +43 -0
- package/src/download/validation.ts +279 -0
- package/src/enhancement/index.ts +4 -2
- package/src/index.tsx +78 -27
- package/src/separation/index.ts +4 -2
- package/src/stt/index.ts +249 -89
- package/src/stt/sttModelLanguages.ts +237 -0
- package/src/stt/types.ts +263 -9
- package/src/tts/index.ts +470 -458
- package/src/tts/types.ts +373 -218
- package/src/types.ts +0 -44
- package/src/utils.ts +145 -131
- package/src/vad/index.ts +4 -2
- package/third_party/ffmpeg_prebuilt/ANDROID_RELEASE_TAG +1 -0
- package/third_party/libarchive_prebuilt/ANDROID_RELEASE_TAG +1 -0
- package/third_party/libarchive_prebuilt/IOS_RELEASE_TAG +1 -0
- package/third_party/sherpa-onnx-prebuilt/ANDROID_RELEASE_TAG +1 -0
- package/third_party/sherpa-onnx-prebuilt/IOS_RELEASE_TAG +1 -0
- package/android/src/main/cpp/include/sherpa-onnx/c-api/c-api.h +0 -1918
- package/android/src/main/cpp/include/sherpa-onnx/c-api/cxx-api.h +0 -841
- package/android/src/main/cpp/jni/sherpa-onnx-model-detect.cpp +0 -541
- package/android/src/main/cpp/jni/sherpa-onnx-stt-jni.cpp +0 -336
- package/android/src/main/cpp/jni/sherpa-onnx-stt-wrapper.cpp +0 -222
- package/android/src/main/cpp/jni/sherpa-onnx-stt-wrapper.h +0 -68
- package/android/src/main/cpp/jni/sherpa-onnx-tts-jni.cpp +0 -823
- package/android/src/main/cpp/jni/sherpa-onnx-tts-wrapper.cpp +0 -387
- package/android/src/main/cpp/jni/sherpa-onnx-tts-wrapper.h +0 -147
- package/ios/Frameworks/sherpa_onnx.xcframework.zip +0 -0
- package/ios/include/sherpa-onnx/c-api/c-api.h +0 -1918
- package/ios/include/sherpa-onnx/c-api/cxx-api.h +0 -841
- package/ios/sherpa-onnx-model-detect.mm +0 -441
- package/ios/sherpa-onnx-stt-wrapper.h +0 -48
- package/ios/sherpa-onnx-stt-wrapper.mm +0 -201
- package/scripts/copy-headers.js +0 -184
- package/scripts/setup-assets.js +0 -323
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Alert","Platform","DocumentDirectoryPath","exists","readFile","mkdir","writeFile","readDir","stat","unlink","downloadFile","stopDownload","extractTarBz2","parseChecksumFile","validateChecksum","validateExtractedFiles","checkDiskSpace","RELEASE_API_BASE","CACHE_TTL_MINUTES","MODEL_ARCHIVE_EXT","MODEL_ONNX_EXT","ModelCategory","promptChecksumFallback","issue","Promise","resolve","reasonText","reason","body","message","alert","text","style","onPress","memoryCacheByCategory","checksumCacheByCategory","downloadProgressListeners","Set","modelsListUpdatedListeners","subscribeDownloadProgress","listener","add","delete","emitDownloadProgress","category","modelId","progress","error","console","warn","subscribeModelsListUpdated","emitModelsListUpdated","models","CATEGORY_CONFIG","Tts","tag","cacheFile","baseDir","Stt","Vad","Diarization","Enhancement","Separation","getCacheDir","getCachePath","getModelsBaseDir","getModelDir","getArchiveFilename","archiveExt","getArchivePath","filename","getTarArchivePath","getOnnxPath","getReadyMarkerPath","getManifestPath","getReleaseUrl","retryWithBackoff","fn","options","maxRetries","initialDelayMs","maxDelayMs","backoffFactor","lastError","attempt","signal","aborted","abortError","Error","name","String","delayMs","Math","min","pow","setTimeout","fetchChecksumsFromRelease","checksums","response","fetch","ok","status","content","Map","toTitleCase","value","split","filter","Boolean","map","token","toUpperCase","slice","join","deriveDisplayName","id","cleaned","replace","deriveType","lower","toLowerCase","includes","deriveQuantization","deriveSizeTier","deriveLanguages","tokens","languages","test","Array","from","getAssetExtension","endsWith","stripAssetExtension","ext","suffix","length","isAssetSupportedForCategory","parseDigestSha256","undefined","match","toTtsModelMeta","asset","type","displayName","quantization","sizeTier","downloadUrl","browser_download_url","bytes","size","sha256","digest","toGenericModelMeta","toModelMeta","loadCacheFromDisk","memoryCache","cachePath","existsResult","raw","parsed","JSON","parse","saveCache","payload","cacheDir","stringify","isCacheFresh","ttlMinutes","updated","Date","lastUpdated","getTime","ageMs","now","listModelsByCategory","cache","refreshModelsByCategory","ttl","cacheTtlMinutes","cached","forceRefresh","json","assets","isArray","model","archiveFilename","get","toISOString","getModelsCacheStatusByCategory","source","getModelByIdByCategory","find","listDownloadedModelsByCategory","entries","entry","isDirectory","manifestPath","manifestExists","manifest","push","isModelDownloadedByCategory","readyPath","getLocalModelPathByCategory","ready","updateModelLastUsed","downloadModelByCategory","opts","isAborted","downloadPath","isArchive","modelDir","sleep","ms","cleanupPartial","cleanupPartialWithRetry","diskSpaceCheck","success","overwrite","readyMarkerExists","archiveExists","partialDownload","statResult","currentSize","log","downloadStartTime","download","fromUrl","toFile","progressDivider","resumable","data","total","contentLength","percent","bytesWritten","elapsedSeconds","speed","eta","remainingBytes","bytesDownloaded","totalBytes","phase","onProgress","downloadFinished","onAbort","jobId","addEventListener","result","promise","removeEventListener","statusCode","isNonResumableError","extractResult","extractedTotalBytes","extractStartTime","evt","expectedSha","nativeSha","archivePath","expected","checksumResult","keepFile","onChecksumIssue","filesValidation","sizeOnDisk","downloadedAt","lastUsed","list","localPath","err","listDownloadedModelsWithMetadata","modelsWithMetadata","cleanupLeastRecentlyUsed","keepCount","sorted","sort","a","b","aTime","bTime","deletedIds","bytesFreed","targetBytes","maxToDelete","maxModelsToDelete","i","item","deleteModelByCategory","tarPath","onnxPath","clearModelCacheByCategory","getDownloadStorageBase","OS"],"sourceRoot":"../../../src","sources":["download/ModelDownloadManager.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { DeviceEventEmitter } from 'react-native';
|
|
4
|
+
import SherpaOnnx from "../NativeSherpaOnnx.js";
|
|
5
|
+
export async function extractTarBz2(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('extractTarBz2Progress', event => {
|
|
15
|
+
// Only handle events for this extraction (fixes parallel extractions showing same %)
|
|
16
|
+
if (event.sourcePath != null && event.sourcePath !== sourcePath) {
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
const safePercent = Math.max(0, Math.min(100, event.percent));
|
|
20
|
+
onProgress({
|
|
21
|
+
...event,
|
|
22
|
+
percent: safePercent
|
|
23
|
+
});
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
if (signal) {
|
|
27
|
+
const onAbort = () => {
|
|
28
|
+
try {
|
|
29
|
+
SherpaOnnx.cancelExtractTarBz2();
|
|
30
|
+
} catch {
|
|
31
|
+
// Ignore cancel errors to avoid crashing on abort.
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
signal.addEventListener('abort', onAbort);
|
|
35
|
+
removeAbortListener = () => signal.removeEventListener('abort', onAbort);
|
|
36
|
+
}
|
|
37
|
+
try {
|
|
38
|
+
const result = await SherpaOnnx.extractTarBz2(sourcePath, targetPath, force);
|
|
39
|
+
if (!result.success) {
|
|
40
|
+
const message = result.reason || 'Extraction failed';
|
|
41
|
+
const error = new Error(message);
|
|
42
|
+
if (signal?.aborted || /cancel/i.test(message)) {
|
|
43
|
+
error.name = 'AbortError';
|
|
44
|
+
}
|
|
45
|
+
throw error;
|
|
46
|
+
}
|
|
47
|
+
return result;
|
|
48
|
+
} finally {
|
|
49
|
+
subscription?.remove();
|
|
50
|
+
removeAbortListener?.();
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=extractTarBz2.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["DeviceEventEmitter","SherpaOnnx","extractTarBz2","sourcePath","targetPath","force","onProgress","signal","subscription","removeAbortListener","aborted","abortError","Error","name","addListener","event","safePercent","Math","max","min","percent","onAbort","cancelExtractTarBz2","addEventListener","removeEventListener","result","success","message","reason","error","test","remove"],"sourceRoot":"../../../src","sources":["download/extractTarBz2.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;MACA,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;QACFpB,UAAU,CAACqB,mBAAmB,CAAC,CAAC;MAClC,CAAC,CAAC,MAAM;QACN;MAAA;IAEJ,CAAC;IACDf,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,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
export { extractTarBz2 } from "./extractTarBz2.js";
|
|
4
|
+
export { listModelsByCategory, refreshModelsByCategory, getModelsCacheStatusByCategory, getModelByIdByCategory, listDownloadedModelsByCategory, isModelDownloadedByCategory, getLocalModelPathByCategory, downloadModelByCategory, deleteModelByCategory, clearModelCacheByCategory, getDownloadStorageBase, subscribeDownloadProgress, subscribeModelsListUpdated, updateModelLastUsed, listDownloadedModelsWithMetadata, cleanupLeastRecentlyUsed, ModelCategory } from "./ModelDownloadManager.js";
|
|
5
|
+
export { validateChecksum, validateExtractedFiles, checkDiskSpace, setExpectedFilesForCategory, getExpectedFilesForCategory, parseChecksumFile, calculateFileChecksum } from "./validation.js";
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["extractTarBz2","listModelsByCategory","refreshModelsByCategory","getModelsCacheStatusByCategory","getModelByIdByCategory","listDownloadedModelsByCategory","isModelDownloadedByCategory","getLocalModelPathByCategory","downloadModelByCategory","deleteModelByCategory","clearModelCacheByCategory","getDownloadStorageBase","subscribeDownloadProgress","subscribeModelsListUpdated","updateModelLastUsed","listDownloadedModelsWithMetadata","cleanupLeastRecentlyUsed","ModelCategory","validateChecksum","validateExtractedFiles","checkDiskSpace","setExpectedFilesForCategory","getExpectedFilesForCategory","parseChecksumFile","calculateFileChecksum"],"sourceRoot":"../../../src","sources":["download/index.ts"],"mappings":";;AAAA,SAASA,aAAa,QAAQ,oBAAiB;AAE/C,SACEC,oBAAoB,EACpBC,uBAAuB,EACvBC,8BAA8B,EAC9BC,sBAAsB,EACtBC,8BAA8B,EAC9BC,2BAA2B,EAC3BC,2BAA2B,EAC3BC,uBAAuB,EACvBC,qBAAqB,EACrBC,yBAAyB,EACzBC,sBAAsB,EACtBC,yBAAyB,EACzBC,0BAA0B,EAC1BC,mBAAmB,EACnBC,gCAAgC,EAChCC,wBAAwB,EACxBC,aAAa,QACR,2BAAwB;AAa/B,SACEC,gBAAgB,EAChBC,sBAAsB,EACtBC,cAAc,EACdC,2BAA2B,EAC3BC,2BAA2B,EAC3BC,iBAAiB,EACjBC,qBAAqB,QAChB,iBAAc","ignoreList":[]}
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { DocumentDirectoryPath, stat, exists, readDir } from '@dr.pogodin/react-native-fs';
|
|
4
|
+
import SherpaOnnx from "../NativeSherpaOnnx.js";
|
|
5
|
+
export class ValidationResult {
|
|
6
|
+
constructor(success, error, message) {
|
|
7
|
+
this.success = success;
|
|
8
|
+
this.error = error;
|
|
9
|
+
this.message = message;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Parse checksum.txt format into a Map of filename -> hash
|
|
15
|
+
* Expected format:
|
|
16
|
+
* filename\tsha256hash
|
|
17
|
+
* example:
|
|
18
|
+
* vits-vctk.tar.bz2 4f0a02db66914b3760b144cebc004e65dd4d1aeef43379f2b058849e74002490
|
|
19
|
+
*/
|
|
20
|
+
export function parseChecksumFile(content) {
|
|
21
|
+
const checksums = new Map();
|
|
22
|
+
const lines = content.split('\n').filter(line => line.trim());
|
|
23
|
+
for (const line of lines) {
|
|
24
|
+
const [filename, hash] = line.split(/\s+/);
|
|
25
|
+
if (filename && hash) {
|
|
26
|
+
checksums.set(filename.trim(), hash.trim());
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
return checksums;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Calculate SHA256 hash of a file in chunks to avoid OOM
|
|
34
|
+
* Reads file in 1MB chunks and processes them efficiently
|
|
35
|
+
*/
|
|
36
|
+
export async function calculateFileChecksum(filePath, onProgress) {
|
|
37
|
+
try {
|
|
38
|
+
const digest = await SherpaOnnx.computeFileSha256(filePath);
|
|
39
|
+
if (onProgress) {
|
|
40
|
+
const statResult = await stat(filePath);
|
|
41
|
+
const total = statResult.size;
|
|
42
|
+
onProgress(total, total, 100);
|
|
43
|
+
}
|
|
44
|
+
return digest.toLowerCase();
|
|
45
|
+
} catch (error) {
|
|
46
|
+
throw new Error(`Failed to calculate checksum: ${error}`);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* Validate checksum of downloaded file
|
|
52
|
+
*/
|
|
53
|
+
export async function validateChecksum(filePath, expectedChecksum, onProgress) {
|
|
54
|
+
try {
|
|
55
|
+
const actualChecksum = await calculateFileChecksum(filePath, onProgress);
|
|
56
|
+
// checksum comparison logged
|
|
57
|
+
if (actualChecksum.toLowerCase() !== expectedChecksum.toLowerCase()) {
|
|
58
|
+
return new ValidationResult(false, 'CHECKSUM_MISMATCH', `Checksum mismatch: expected ${expectedChecksum}, got ${actualChecksum}`);
|
|
59
|
+
}
|
|
60
|
+
return new ValidationResult(true);
|
|
61
|
+
} catch (error) {
|
|
62
|
+
return new ValidationResult(false, 'CHECKSUM_FAILED', `Failed to validate checksum: ${error}`);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
/**
|
|
67
|
+
* Validate that extraction was successful by checking:
|
|
68
|
+
* - Directory exists and is not empty
|
|
69
|
+
* - Contains at least some files (not just directories)
|
|
70
|
+
*
|
|
71
|
+
* The actual model validation (correct files for specific model type)
|
|
72
|
+
* is delegated to the native DetectSttModel / DetectTtsModel functions,
|
|
73
|
+
* so we don't need to check for specific filenames here.
|
|
74
|
+
*/
|
|
75
|
+
export async function validateExtractedFiles(modelDir, _category) {
|
|
76
|
+
try {
|
|
77
|
+
const dirExists = await exists(modelDir);
|
|
78
|
+
if (!dirExists) {
|
|
79
|
+
return new ValidationResult(false, 'MISSING_FILES', `Model directory does not exist: ${modelDir}`);
|
|
80
|
+
}
|
|
81
|
+
const isModelLikeFile = name => {
|
|
82
|
+
const lower = name.toLowerCase();
|
|
83
|
+
return lower.endsWith('.onnx') || lower.endsWith('.txt') || lower.endsWith('.bin') || lower.endsWith('.json');
|
|
84
|
+
};
|
|
85
|
+
const collectFilesRecursive = async (dir, depth = 0, maxDepth = 4) => {
|
|
86
|
+
if (depth > maxDepth) return [];
|
|
87
|
+
const entries = await readDir(dir);
|
|
88
|
+
const files = [];
|
|
89
|
+
for (const entry of entries) {
|
|
90
|
+
if (entry.isDirectory()) {
|
|
91
|
+
const nested = await collectFilesRecursive(entry.path, depth + 1, maxDepth);
|
|
92
|
+
files.push(...nested);
|
|
93
|
+
} else {
|
|
94
|
+
files.push(entry);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
return files;
|
|
98
|
+
};
|
|
99
|
+
const entries = await readDir(modelDir);
|
|
100
|
+
const actualFiles = entries.filter(entry => !entry.isDirectory());
|
|
101
|
+
const subdirs = entries.filter(entry => entry.isDirectory());
|
|
102
|
+
if (actualFiles.length === 0 && subdirs.length === 0) {
|
|
103
|
+
return new ValidationResult(false, 'MISSING_FILES', `Extraction failed: directory is empty: ${modelDir}`);
|
|
104
|
+
}
|
|
105
|
+
let hasModelLikeFiles = actualFiles.some(file => isModelLikeFile(file.name));
|
|
106
|
+
if (!hasModelLikeFiles) {
|
|
107
|
+
const nestedFiles = await collectFilesRecursive(modelDir);
|
|
108
|
+
hasModelLikeFiles = nestedFiles.some(file => isModelLikeFile(file.name));
|
|
109
|
+
}
|
|
110
|
+
if (!hasModelLikeFiles) {
|
|
111
|
+
return new ValidationResult(false, 'MISSING_FILES', `Extraction may have failed: no model files (.onnx/.txt/.bin/.json) found under ${modelDir}`);
|
|
112
|
+
}
|
|
113
|
+
return new ValidationResult(true);
|
|
114
|
+
} catch (error) {
|
|
115
|
+
return new ValidationResult(false, 'MISSING_FILES', `Failed to validate extracted files: ${error}`);
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
/**
|
|
120
|
+
* Get available disk space (in bytes)
|
|
121
|
+
* This is a simplified version. For accurate values on Android/iOS, use native modules.
|
|
122
|
+
*/
|
|
123
|
+
export async function getAvailableDiskSpace() {
|
|
124
|
+
try {
|
|
125
|
+
// Try to get the document directory (simple check for availability)
|
|
126
|
+
const dirExists = await exists(DocumentDirectoryPath);
|
|
127
|
+
if (dirExists) {
|
|
128
|
+
// Default to 10GB for modern devices
|
|
129
|
+
// In production, integrate native disk space calculation
|
|
130
|
+
return 10 * 1024 * 1024 * 1024; // 10GB
|
|
131
|
+
}
|
|
132
|
+
} catch (error) {
|
|
133
|
+
console.warn('Failed to check disk space:', error);
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
// Fallback: return 10GB estimate for modern devices
|
|
137
|
+
return 10 * 1024 * 1024 * 1024;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
/**
|
|
141
|
+
* Check if there's enough disk space for download
|
|
142
|
+
* Adds 20% buffer to the required size
|
|
143
|
+
*/
|
|
144
|
+
export async function checkDiskSpace(requiredBytes) {
|
|
145
|
+
try {
|
|
146
|
+
const available = await getAvailableDiskSpace();
|
|
147
|
+
const buffer = requiredBytes * 0.2; // 20% safety buffer
|
|
148
|
+
const totalRequired = requiredBytes + buffer;
|
|
149
|
+
if (available < totalRequired) {
|
|
150
|
+
const availableGB = (available / (1024 * 1024 * 1024)).toFixed(2);
|
|
151
|
+
const requiredGB = (totalRequired / (1024 * 1024 * 1024)).toFixed(2);
|
|
152
|
+
return new ValidationResult(false, 'INSUFFICIENT_DISK_SPACE', `Insufficient disk space. Available: ${availableGB}GB, Required: ${requiredGB}GB`);
|
|
153
|
+
}
|
|
154
|
+
return new ValidationResult(true);
|
|
155
|
+
} catch (error) {
|
|
156
|
+
return new ValidationResult(false, 'INSUFFICIENT_DISK_SPACE', `Failed to check disk space: ${error}`);
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
/**
|
|
161
|
+
* Update expected files configuration for a category
|
|
162
|
+
* DEPRECATED: The native DetectSttModel/DetectTtsModel functions handle model validation.
|
|
163
|
+
* This function is kept for backward compatibility but does nothing.
|
|
164
|
+
*/
|
|
165
|
+
export function setExpectedFilesForCategory(_category, _files) {
|
|
166
|
+
// No-op: validation is now handled by native detect functions
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
/**
|
|
170
|
+
* Get expected files for a category
|
|
171
|
+
* DEPRECATED: The native DetectSttModel/DetectTtsModel functions handle model validation.
|
|
172
|
+
* This function is kept for backward compatibility.
|
|
173
|
+
*/
|
|
174
|
+
export function getExpectedFilesForCategory(_category) {
|
|
175
|
+
// Return empty array: validation is now handled by native detect functions
|
|
176
|
+
return [];
|
|
177
|
+
}
|
|
178
|
+
//# sourceMappingURL=validation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["DocumentDirectoryPath","stat","exists","readDir","SherpaOnnx","ValidationResult","constructor","success","error","message","parseChecksumFile","content","checksums","Map","lines","split","filter","line","trim","filename","hash","set","calculateFileChecksum","filePath","onProgress","digest","computeFileSha256","statResult","total","size","toLowerCase","Error","validateChecksum","expectedChecksum","actualChecksum","validateExtractedFiles","modelDir","_category","dirExists","isModelLikeFile","name","lower","endsWith","collectFilesRecursive","dir","depth","maxDepth","entries","files","entry","isDirectory","nested","path","push","actualFiles","subdirs","length","hasModelLikeFiles","some","file","nestedFiles","getAvailableDiskSpace","console","warn","checkDiskSpace","requiredBytes","available","buffer","totalRequired","availableGB","toFixed","requiredGB","setExpectedFilesForCategory","_files","getExpectedFilesForCategory"],"sourceRoot":"../../../src","sources":["download/validation.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
* // Future usage:
|
|
13
13
|
* import { initializeEnhancement, enhanceAudio } from 'react-native-sherpa-onnx/enhancement';
|
|
14
14
|
*
|
|
15
|
-
* await initializeEnhancement({ modelPath: 'models/enhancement-model' });
|
|
15
|
+
* await initializeEnhancement({ modelPath: { type: 'auto', path: 'models/enhancement-model' } });
|
|
16
16
|
* const enhancedPath = await enhanceAudio('path/to/noisy-audio.wav');
|
|
17
17
|
* ```
|
|
18
18
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["initializeEnhancement","_options","Error","enhanceAudio","_filePath","unloadEnhancement"],"sourceRoot":"
|
|
1
|
+
{"version":3,"names":["initializeEnhancement","_options","Error","enhanceAudio","_filePath","unloadEnhancement"],"sourceRoot":"../../../src","sources":["enhancement/index.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAIA;AACA;AACA;;AAMA;AACA;AACA;;AAMA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeA,qBAAqBA,CACzCC,QAAsC,EACvB;EACf,MAAM,IAAIC,KAAK,CACb,kFACF,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,YAAYA,CAACC,SAAiB,EAA8B;EAC1E,MAAM,IAAIF,KAAK,CACb,kFACF,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASG,iBAAiBA,CAAA,EAAkB;EACjD,MAAM,IAAIH,KAAK,CACb,kFACF,CAAC;AACH","ignoreList":[]}
|
package/lib/module/index.js
CHANGED
|
@@ -4,20 +4,58 @@ import SherpaOnnx from "./NativeSherpaOnnx.js";
|
|
|
4
4
|
|
|
5
5
|
// Export common types and utilities
|
|
6
6
|
|
|
7
|
-
export { assetModelPath, autoModelPath, fileModelPath, getDefaultModelPath, listAssetModels, resolveModelPath } from "./utils.js";
|
|
7
|
+
export { assetModelPath, autoModelPath, fileModelPath, getAssetPackPath, getDefaultModelPath, getPlayAssetDeliveryModelsPath, listAssetModels, listModelsAtPath, resolveModelPath } from "./utils.js";
|
|
8
8
|
|
|
9
9
|
// Note: Feature-specific exports are available via subpath imports:
|
|
10
10
|
// - import { ... } from 'react-native-sherpa-onnx/stt'
|
|
11
11
|
// - import { ... } from 'react-native-sherpa-onnx/tts'
|
|
12
|
+
// - import { ... } from 'react-native-sherpa-onnx/download'
|
|
12
13
|
// - import { ... } from 'react-native-sherpa-onnx/vad' (planned)
|
|
13
14
|
// - import { ... } from 'react-native-sherpa-onnx/diarization' (planned)
|
|
14
15
|
// - import { ... } from 'react-native-sherpa-onnx/enhancement' (planned)
|
|
15
16
|
// - import { ... } from 'react-native-sherpa-onnx/separation' (planned)
|
|
16
17
|
|
|
17
|
-
/**
|
|
18
|
-
* Test method to verify sherpa-onnx native library is loaded.
|
|
18
|
+
/**
|
|
19
|
+
* Test method to verify sherpa-onnx native library is loaded.
|
|
19
20
|
*/
|
|
20
21
|
export function testSherpaInit() {
|
|
21
22
|
return SherpaOnnx.testSherpaInit();
|
|
22
23
|
}
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* QNN support (Android). Optional modelBase64 for canInit (session test); if omitted, SDK uses embedded test model.
|
|
27
|
+
*/
|
|
28
|
+
export function getQnnSupport(modelBase64) {
|
|
29
|
+
return SherpaOnnx.getQnnSupport(modelBase64);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Return the list of available ONNX Runtime execution providers
|
|
34
|
+
* (e.g. "CPU", "NNAPI", "QNN", "XNNPACK").
|
|
35
|
+
* Requires the ORT Java bridge from the onnxruntime AAR.
|
|
36
|
+
*/
|
|
37
|
+
export function getAvailableProviders() {
|
|
38
|
+
return SherpaOnnx.getAvailableProviders();
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* NNAPI support (Android). Optional modelBase64 for canInit (session test). On iOS returns all false.
|
|
43
|
+
*/
|
|
44
|
+
export function getNnapiSupport(modelBase64) {
|
|
45
|
+
return SherpaOnnx.getNnapiSupport(modelBase64);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* XNNPACK support. hasAccelerator = true when providerCompiled (CPU-optimized). Optional modelBase64 for canInit. On iOS returns all false.
|
|
50
|
+
*/
|
|
51
|
+
export function getXnnpackSupport(modelBase64) {
|
|
52
|
+
return SherpaOnnx.getXnnpackSupport(modelBase64);
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* Core ML support (iOS). providerCompiled = true (Core ML on iOS 11+), hasAccelerator = Apple Neural Engine. Optional modelBase64 for canInit. On Android returns all false.
|
|
57
|
+
*/
|
|
58
|
+
export function getCoreMlSupport(modelBase64) {
|
|
59
|
+
return SherpaOnnx.getCoreMlSupport(modelBase64);
|
|
60
|
+
}
|
|
23
61
|
//# sourceMappingURL=index.js.map
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["SherpaOnnx","assetModelPath","autoModelPath","fileModelPath","getDefaultModelPath","listAssetModels","resolveModelPath","testSherpaInit"],"sourceRoot":"
|
|
1
|
+
{"version":3,"names":["SherpaOnnx","assetModelPath","autoModelPath","fileModelPath","getAssetPackPath","getDefaultModelPath","getPlayAssetDeliveryModelsPath","listAssetModels","listModelsAtPath","resolveModelPath","testSherpaInit","getQnnSupport","modelBase64","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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO,SAASC,cAAcA,CAAA,EAAoB;EAChD,OAAOV,UAAU,CAACU,cAAc,CAAC,CAAC;AACpC;;AAEA;AACA;AACA;AACA,OAAO,SAASC,aAAaA,CAC3BC,WAAoB,EACU;EAC9B,OAAOZ,UAAU,CAACW,aAAa,CAACC,WAAW,CAAC;AAC9C;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,qBAAqBA,CAAA,EAAsB;EACzD,OAAOb,UAAU,CAACa,qBAAqB,CAAC,CAAC;AAC3C;;AAEA;AACA;AACA;AACA,OAAO,SAASC,eAAeA,CAC7BF,WAAoB,EACU;EAC9B,OAAOZ,UAAU,CAACc,eAAe,CAACF,WAAW,CAAC;AAChD;;AAEA;AACA;AACA;AACA,OAAO,SAASG,iBAAiBA,CAC/BH,WAAoB,EACU;EAC9B,OAAOZ,UAAU,CAACe,iBAAiB,CAACH,WAAW,CAAC;AAClD;;AAEA;AACA;AACA;AACA,OAAO,SAASI,gBAAgBA,CAC9BJ,WAAoB,EACU;EAC9B,OAAOZ,UAAU,CAACgB,gBAAgB,CAACJ,WAAW,CAAC;AACjD","ignoreList":[]}
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
* // Future usage:
|
|
13
13
|
* import { initializeSeparation, separateSources } from 'react-native-sherpa-onnx/separation';
|
|
14
14
|
*
|
|
15
|
-
* await initializeSeparation({ modelPath: 'models/separation-model' });
|
|
15
|
+
* await initializeSeparation({ modelPath: { type: 'auto', path: 'models/separation-model' } });
|
|
16
16
|
* const sources = await separateSources('path/to/mixed-audio.wav');
|
|
17
17
|
* ```
|
|
18
18
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["initializeSeparation","_options","Error","separateSources","_filePath","unloadSeparation"],"sourceRoot":"
|
|
1
|
+
{"version":3,"names":["initializeSeparation","_options","Error","separateSources","_filePath","unloadSeparation"],"sourceRoot":"../../../src","sources":["separation/index.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAIA;AACA;AACA;;AAMA;AACA;AACA;;AAOA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeA,oBAAoBA,CACxCC,QAAqC,EACtB;EACf,MAAM,IAAIC,KAAK,CACb,iFACF,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,eAAeA,CAACC,SAAiB,EAA8B;EAC7E,MAAM,IAAIF,KAAK,CACb,iFACF,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASG,gBAAgBA,CAAA,EAAkB;EAChD,MAAM,IAAIH,KAAK,CACb,iFACF,CAAC;AACH","ignoreList":[]}
|