whisper.rn 0.4.0-rc.1 → 0.4.0-rc.11
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 +6 -6
- package/android/build.gradle +4 -0
- package/android/src/main/CMakeLists.txt +21 -1
- package/android/src/main/java/com/rnwhisper/AudioUtils.java +27 -92
- package/android/src/main/java/com/rnwhisper/RNWhisper.java +86 -40
- package/android/src/main/java/com/rnwhisper/WhisperContext.java +85 -131
- package/android/src/main/jni-utils.h +76 -0
- package/android/src/main/jni.cpp +226 -109
- package/android/src/newarch/java/com/rnwhisper/RNWhisperModule.java +10 -0
- package/android/src/oldarch/java/com/rnwhisper/RNWhisperModule.java +10 -0
- package/cpp/coreml/whisper-encoder-impl.h +1 -1
- package/cpp/coreml/whisper-encoder.h +4 -0
- package/cpp/coreml/whisper-encoder.mm +5 -3
- package/cpp/ggml-alloc.c +797 -400
- package/cpp/ggml-alloc.h +60 -10
- package/cpp/ggml-backend-impl.h +255 -0
- package/cpp/ggml-backend-reg.cpp +582 -0
- package/cpp/ggml-backend.cpp +2002 -0
- package/cpp/ggml-backend.h +354 -0
- package/cpp/ggml-common.h +1851 -0
- package/cpp/ggml-cpp.h +39 -0
- package/cpp/ggml-cpu-aarch64.cpp +4247 -0
- package/cpp/ggml-cpu-aarch64.h +8 -0
- package/cpp/ggml-cpu-impl.h +531 -0
- package/cpp/ggml-cpu-quants.c +12245 -0
- package/cpp/ggml-cpu-quants.h +63 -0
- package/cpp/ggml-cpu-traits.cpp +36 -0
- package/cpp/ggml-cpu-traits.h +38 -0
- package/cpp/ggml-cpu.c +14792 -0
- package/cpp/ggml-cpu.cpp +653 -0
- package/cpp/ggml-cpu.h +137 -0
- package/cpp/ggml-impl.h +567 -0
- package/cpp/ggml-metal-impl.h +288 -0
- package/cpp/ggml-metal.h +24 -43
- package/cpp/ggml-metal.m +4867 -1080
- package/cpp/ggml-opt.cpp +854 -0
- package/cpp/ggml-opt.h +216 -0
- package/cpp/ggml-quants.c +5238 -0
- package/cpp/ggml-quants.h +100 -0
- package/cpp/ggml-threading.cpp +12 -0
- package/cpp/ggml-threading.h +14 -0
- package/cpp/ggml-whisper.metallib +0 -0
- package/cpp/ggml.c +5106 -19431
- package/cpp/ggml.h +847 -669
- package/cpp/gguf.cpp +1329 -0
- package/cpp/gguf.h +202 -0
- package/cpp/rn-audioutils.cpp +68 -0
- package/cpp/rn-audioutils.h +14 -0
- package/cpp/rn-whisper-log.h +11 -0
- package/cpp/rn-whisper.cpp +221 -52
- package/cpp/rn-whisper.h +50 -15
- package/cpp/whisper.cpp +3174 -1533
- package/cpp/whisper.h +176 -44
- package/ios/RNWhisper.mm +139 -46
- package/ios/RNWhisperAudioUtils.h +1 -2
- package/ios/RNWhisperAudioUtils.m +18 -67
- package/ios/RNWhisperContext.h +11 -8
- package/ios/RNWhisperContext.mm +195 -150
- package/jest/mock.js +15 -2
- package/lib/commonjs/NativeRNWhisper.js.map +1 -1
- package/lib/commonjs/index.js +76 -28
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/version.json +1 -1
- package/lib/module/NativeRNWhisper.js.map +1 -1
- package/lib/module/index.js +76 -28
- package/lib/module/index.js.map +1 -1
- package/lib/module/version.json +1 -1
- package/lib/typescript/NativeRNWhisper.d.ts +13 -4
- package/lib/typescript/NativeRNWhisper.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +37 -5
- package/lib/typescript/index.d.ts.map +1 -1
- package/package.json +9 -7
- package/src/NativeRNWhisper.ts +20 -4
- package/src/index.ts +98 -42
- package/src/version.json +1 -1
- package/whisper-rn.podspec +13 -20
- package/cpp/README.md +0 -4
- package/cpp/ggml-metal.metal +0 -2353
package/lib/commonjs/index.js
CHANGED
|
@@ -39,26 +39,20 @@ const updateAudioSession = async setting => {
|
|
|
39
39
|
await _AudioSessionIos.default.setActive(setting.active ?? true);
|
|
40
40
|
};
|
|
41
41
|
class WhisperContext {
|
|
42
|
-
|
|
43
|
-
|
|
42
|
+
gpu = false;
|
|
43
|
+
reasonNoGPU = '';
|
|
44
|
+
constructor(_ref) {
|
|
45
|
+
let {
|
|
46
|
+
contextId,
|
|
47
|
+
gpu,
|
|
48
|
+
reasonNoGPU
|
|
49
|
+
} = _ref;
|
|
50
|
+
this.id = contextId;
|
|
51
|
+
this.gpu = gpu;
|
|
52
|
+
this.reasonNoGPU = reasonNoGPU;
|
|
44
53
|
}
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
transcribe(filePath) {
|
|
48
|
-
let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
49
|
-
let path = '';
|
|
50
|
-
if (typeof filePath === 'number') {
|
|
51
|
-
try {
|
|
52
|
-
const source = _reactNative.Image.resolveAssetSource(filePath);
|
|
53
|
-
if (source) path = source.uri;
|
|
54
|
-
} catch (e) {
|
|
55
|
-
throw new Error(`Invalid asset: ${filePath}`);
|
|
56
|
-
}
|
|
57
|
-
} else {
|
|
58
|
-
if (filePath.startsWith('http')) throw new Error('Transcribe remote file is not supported, please download it first');
|
|
59
|
-
path = filePath;
|
|
60
|
-
}
|
|
61
|
-
if (path.startsWith('file://')) path = path.slice(7);
|
|
54
|
+
transcribeWithNativeMethod(method, data) {
|
|
55
|
+
let options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
62
56
|
const jobId = Math.floor(Math.random() * 10000);
|
|
63
57
|
const {
|
|
64
58
|
onProgress,
|
|
@@ -107,7 +101,7 @@ class WhisperContext {
|
|
|
107
101
|
removeProgressListener();
|
|
108
102
|
removeNewSegmenetsListener();
|
|
109
103
|
},
|
|
110
|
-
promise: _NativeRNWhisper.default
|
|
104
|
+
promise: _NativeRNWhisper.default[method](this.id, jobId, data, {
|
|
111
105
|
...rest,
|
|
112
106
|
onProgress: !!onProgress,
|
|
113
107
|
onNewSegments: !!onNewSegments
|
|
@@ -127,6 +121,36 @@ class WhisperContext {
|
|
|
127
121
|
};
|
|
128
122
|
}
|
|
129
123
|
|
|
124
|
+
/**
|
|
125
|
+
* Transcribe audio file (path or base64 encoded wav file)
|
|
126
|
+
* base64: need add `data:audio/wav;base64,` prefix
|
|
127
|
+
*/
|
|
128
|
+
transcribe(filePathOrBase64) {
|
|
129
|
+
let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
130
|
+
let path = '';
|
|
131
|
+
if (typeof filePathOrBase64 === 'number') {
|
|
132
|
+
try {
|
|
133
|
+
const source = _reactNative.Image.resolveAssetSource(filePathOrBase64);
|
|
134
|
+
if (source) path = source.uri;
|
|
135
|
+
} catch (e) {
|
|
136
|
+
throw new Error(`Invalid asset: ${filePathOrBase64}`);
|
|
137
|
+
}
|
|
138
|
+
} else {
|
|
139
|
+
if (filePathOrBase64.startsWith('http')) throw new Error('Transcribe remote file is not supported, please download it first');
|
|
140
|
+
path = filePathOrBase64;
|
|
141
|
+
}
|
|
142
|
+
if (path.startsWith('file://')) path = path.slice(7);
|
|
143
|
+
return this.transcribeWithNativeMethod('transcribeFile', path, options);
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
/**
|
|
147
|
+
* Transcribe audio data (base64 encoded float32 PCM data)
|
|
148
|
+
*/
|
|
149
|
+
transcribeData(data) {
|
|
150
|
+
let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
151
|
+
return this.transcribeWithNativeMethod('transcribeData', data, options);
|
|
152
|
+
}
|
|
153
|
+
|
|
130
154
|
/** Transcribe the microphone audio stream, the microphone user permission is required */
|
|
131
155
|
async transcribeRealtime() {
|
|
132
156
|
let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
@@ -135,7 +159,7 @@ class WhisperContext {
|
|
|
135
159
|
let sliceIndex = 0;
|
|
136
160
|
let tOffset = 0;
|
|
137
161
|
const putSlice = payload => {
|
|
138
|
-
if (!payload.isUseSlices) return;
|
|
162
|
+
if (!payload.isUseSlices || !payload.data) return;
|
|
139
163
|
if (sliceIndex !== payload.sliceIndex) {
|
|
140
164
|
var _slices$sliceIndex, _segments;
|
|
141
165
|
const {
|
|
@@ -149,14 +173,14 @@ class WhisperContext {
|
|
|
149
173
|
} = payload);
|
|
150
174
|
slices[sliceIndex] = {
|
|
151
175
|
...payload,
|
|
152
|
-
data:
|
|
176
|
+
data: {
|
|
153
177
|
...payload.data,
|
|
154
178
|
segments: payload.data.segments.map(segment => ({
|
|
155
179
|
...segment,
|
|
156
180
|
t0: segment.t0 + tOffset,
|
|
157
181
|
t1: segment.t1 + tOffset
|
|
158
182
|
})) || []
|
|
159
|
-
}
|
|
183
|
+
}
|
|
160
184
|
};
|
|
161
185
|
};
|
|
162
186
|
const mergeSlicesIfNeeded = payload => {
|
|
@@ -252,19 +276,33 @@ class WhisperContext {
|
|
|
252
276
|
}
|
|
253
277
|
};
|
|
254
278
|
}
|
|
279
|
+
async bench(maxThreads) {
|
|
280
|
+
const result = await _NativeRNWhisper.default.bench(this.id, maxThreads);
|
|
281
|
+
const [config, nThreads, encodeMs, decodeMs, batchMs, promptMs] = JSON.parse(result);
|
|
282
|
+
return {
|
|
283
|
+
config,
|
|
284
|
+
nThreads,
|
|
285
|
+
encodeMs,
|
|
286
|
+
decodeMs,
|
|
287
|
+
batchMs,
|
|
288
|
+
promptMs
|
|
289
|
+
};
|
|
290
|
+
}
|
|
255
291
|
async release() {
|
|
256
292
|
return _NativeRNWhisper.default.releaseContext(this.id);
|
|
257
293
|
}
|
|
258
294
|
}
|
|
259
295
|
exports.WhisperContext = WhisperContext;
|
|
260
296
|
const coreMLModelAssetPaths = ['analytics/coremldata.bin', 'weights/weight.bin', 'model.mil', 'coremldata.bin'];
|
|
261
|
-
async function initWhisper(
|
|
297
|
+
async function initWhisper(_ref2) {
|
|
262
298
|
let {
|
|
263
299
|
filePath,
|
|
264
300
|
coreMLModelAsset,
|
|
265
301
|
isBundleAsset,
|
|
266
|
-
|
|
267
|
-
|
|
302
|
+
useGpu = true,
|
|
303
|
+
useCoreMLIos = true,
|
|
304
|
+
useFlashAttn = false
|
|
305
|
+
} = _ref2;
|
|
268
306
|
let path = '';
|
|
269
307
|
let coreMLAssets;
|
|
270
308
|
if (coreMLModelAsset) {
|
|
@@ -309,15 +347,25 @@ async function initWhisper(_ref) {
|
|
|
309
347
|
path = filePath;
|
|
310
348
|
}
|
|
311
349
|
if (path.startsWith('file://')) path = path.slice(7);
|
|
312
|
-
const
|
|
350
|
+
const {
|
|
351
|
+
contextId,
|
|
352
|
+
gpu,
|
|
353
|
+
reasonNoGPU
|
|
354
|
+
} = await _NativeRNWhisper.default.initContext({
|
|
313
355
|
filePath: path,
|
|
314
356
|
isBundleAsset: !!isBundleAsset,
|
|
357
|
+
useFlashAttn,
|
|
358
|
+
useGpu,
|
|
315
359
|
useCoreMLIos,
|
|
316
360
|
// Only development mode need download Core ML model assets (from packager server)
|
|
317
361
|
downloadCoreMLAssets: __DEV__ && !!coreMLAssets,
|
|
318
362
|
coreMLAssets
|
|
319
363
|
});
|
|
320
|
-
return new WhisperContext(
|
|
364
|
+
return new WhisperContext({
|
|
365
|
+
contextId,
|
|
366
|
+
gpu,
|
|
367
|
+
reasonNoGPU
|
|
368
|
+
});
|
|
321
369
|
}
|
|
322
370
|
async function releaseAllWhisper() {
|
|
323
371
|
return _NativeRNWhisper.default.releaseAllContexts();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","_NativeRNWhisper","_interopRequireDefault","_AudioSessionIos","_version","_RNWhisper$getConstan","obj","__esModule","default","EventEmitter","Platform","OS","NativeEventEmitter","RNWhisper","DeviceEventEmitter","EVENT_ON_TRANSCRIBE_PROGRESS","EVENT_ON_TRANSCRIBE_NEW_SEGMENTS","EVENT_ON_REALTIME_TRANSCRIBE","EVENT_ON_REALTIME_TRANSCRIBE_END","updateAudioSession","setting","AudioSessionIos","setCategory","category","options","mode","setMode","setActive","active","WhisperContext","constructor","id","transcribe","filePath","arguments","length","undefined","path","source","Image","resolveAssetSource","uri","e","Error","startsWith","slice","jobId","Math","floor","random","onProgress","onNewSegments","rest","progressListener","lastProgress","addListener","evt","contextId","progress","removeProgressListener","remove","newSegmentsListener","result","removeNewSegmenetsListener","stop","abortTranscribe","promise","transcribeFile","then","isAborted","catch","transcribeRealtime","lastTranscribePayload","slices","sliceIndex","tOffset","putSlice","payload","isUseSlices","_slices$sliceIndex","_segments","segments","data","t1","map","segment","t0","mergeSlicesIfNeeded","mergedPayload","forEach","_mergedPayload$data","_slice$data","_mergedPayload$data2","_slice$data2","processTime","recordingTime","prevAudioSession","audioSessionOnStartIos","audioSessionOnStopIos","categoryResult","getCurrentCategory","getCurrentMode","startRealtimeTranscribe","subscribe","callback","transcribeListener","endListener","lastPayload","isCapturing","release","releaseContext","exports","coreMLModelAssetPaths","initWhisper","_ref","coreMLModelAsset","isBundleAsset","useCoreMLIos","coreMLAssets","filename","assets","asset","filepath","find","p","includes","filter","initContext","downloadCoreMLAssets","__DEV__","releaseAllWhisper","releaseAllContexts","libVersion","version","useCoreML","coreMLAllowFallback","getConstants","call","isUseCoreML","isCoreMLAllowFallback"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_NativeRNWhisper","_interopRequireDefault","_AudioSessionIos","_version","_RNWhisper$getConstan","obj","__esModule","default","EventEmitter","Platform","OS","NativeEventEmitter","RNWhisper","DeviceEventEmitter","EVENT_ON_TRANSCRIBE_PROGRESS","EVENT_ON_TRANSCRIBE_NEW_SEGMENTS","EVENT_ON_REALTIME_TRANSCRIBE","EVENT_ON_REALTIME_TRANSCRIBE_END","updateAudioSession","setting","AudioSessionIos","setCategory","category","options","mode","setMode","setActive","active","WhisperContext","gpu","reasonNoGPU","constructor","_ref","contextId","id","transcribeWithNativeMethod","method","data","arguments","length","undefined","jobId","Math","floor","random","onProgress","onNewSegments","rest","progressListener","lastProgress","addListener","evt","progress","removeProgressListener","remove","newSegmentsListener","result","removeNewSegmenetsListener","stop","abortTranscribe","promise","then","isAborted","catch","e","transcribe","filePathOrBase64","path","source","Image","resolveAssetSource","uri","Error","startsWith","slice","transcribeData","transcribeRealtime","lastTranscribePayload","slices","sliceIndex","tOffset","putSlice","payload","isUseSlices","_slices$sliceIndex","_segments","segments","t1","map","segment","t0","mergeSlicesIfNeeded","mergedPayload","forEach","_mergedPayload$data","_slice$data","_mergedPayload$data2","_slice$data2","processTime","recordingTime","prevAudioSession","audioSessionOnStartIos","audioSessionOnStopIos","categoryResult","getCurrentCategory","getCurrentMode","startRealtimeTranscribe","subscribe","callback","transcribeListener","endListener","lastPayload","isCapturing","bench","maxThreads","config","nThreads","encodeMs","decodeMs","batchMs","promptMs","JSON","parse","release","releaseContext","exports","coreMLModelAssetPaths","initWhisper","_ref2","filePath","coreMLModelAsset","isBundleAsset","useGpu","useCoreMLIos","useFlashAttn","coreMLAssets","filename","assets","asset","filepath","find","p","includes","filter","initContext","downloadCoreMLAssets","__DEV__","releaseAllWhisper","releaseAllContexts","libVersion","version","useCoreML","coreMLAllowFallback","getConstants","call","isUseCoreML","isCoreMLAllowFallback"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAOA,IAAAC,gBAAA,GAAAC,sBAAA,CAAAF,OAAA;AAMA,IAAAG,gBAAA,GAAAD,sBAAA,CAAAF,OAAA;AAMA,IAAAI,QAAA,GAAAJ,OAAA;AAAwC,IAAAK,qBAAA;AAAA,SAAAH,uBAAAI,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAExC,IAAIG,YAA2D;AAC/D,IAAIC,qBAAQ,CAACC,EAAE,KAAK,KAAK,EAAE;EACzB;EACAF,YAAY,GAAG,IAAIG,+BAAkB,CAACC,wBAAS,CAAC;AAClD;AACA,IAAIH,qBAAQ,CAACC,EAAE,KAAK,SAAS,EAAE;EAC7BF,YAAY,GAAGK,+BAAkB;AACnC;AAUA,MAAMC,4BAA4B,GAAG,iCAAiC;AACtE,MAAMC,gCAAgC,GAAG,oCAAoC;AAE7E,MAAMC,4BAA4B,GAAG,iCAAiC;AACtE,MAAMC,gCAAgC,GAAG,oCAAoC;AA+I7E,MAAMC,kBAAkB,GAAG,MAAOC,OAA+B,IAAK;EACpE,MAAMC,wBAAe,CAACC,WAAW,CAC/BF,OAAO,CAACG,QAAQ,EAChBH,OAAO,CAACI,OAAO,IAAI,EAAE,CACtB;EACD,IAAIJ,OAAO,CAACK,IAAI,EAAE;IAChB,MAAMJ,wBAAe,CAACK,OAAO,CAACN,OAAO,CAACK,IAAI,CAAC;EAC7C;EACA,MAAMJ,wBAAe,CAACM,SAAS,CAACP,OAAO,CAACQ,MAAM,IAAI,IAAI,CAAC;AACzD,CAAC;AAEM,MAAMC,cAAc,CAAC;EAG1BC,GAAG,GAAY,KAAK;EAEpBC,WAAW,GAAW,EAAE;EAExBC,WAAWA,CAAAC,IAAA,EAIc;IAAA,IAJb;MACVC,SAAS;MACTJ,GAAG;MACHC;IACoB,CAAC,GAAAE,IAAA;IACrB,IAAI,CAACE,EAAE,GAAGD,SAAS;IACnB,IAAI,CAACJ,GAAG,GAAGA,GAAG;IACd,IAAI,CAACC,WAAW,GAAGA,WAAW;EAChC;EAEQK,0BAA0BA,CAACC,MAA2C,EAAEC,IAAY,EAG1F;IAAA,IAH4Fd,OAA8B,GAAAe,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;IAI/H,MAAMG,KAAa,GAAGC,IAAI,CAACC,KAAK,CAACD,IAAI,CAACE,MAAM,EAAE,GAAG,KAAK,CAAC;IAEvD,MAAM;MAAEC,UAAU;MAAEC,aAAa;MAAE,GAAGC;IAAK,CAAC,GAAGxB,OAAO;IAEtD,IAAIyB,gBAAqB;IACzB,IAAIC,YAAoB,GAAG,CAAC;IAC5B,IAAIJ,UAAU,EAAE;MACdG,gBAAgB,GAAGxC,YAAY,CAAC0C,WAAW,CACzCpC,4BAA4B,EAC3BqC,GAAkC,IAAK;QACtC,MAAM;UAAElB,SAAS;UAAEmB;QAAS,CAAC,GAAGD,GAAG;QACnC,IAAIlB,SAAS,KAAK,IAAI,CAACC,EAAE,IAAIiB,GAAG,CAACV,KAAK,KAAKA,KAAK,EAAE;QAClDQ,YAAY,GAAGG,QAAQ,GAAG,GAAG,GAAG,GAAG,GAAGA,QAAQ;QAC9CP,UAAU,CAACI,YAAY,CAAC;MAC1B,CAAC,CACF;IACH;IACA,MAAMI,sBAAsB,GAAGA,CAAA,KAAM;MACnC,IAAIL,gBAAgB,EAAE;QACpBA,gBAAgB,CAACM,MAAM,EAAE;QACzBN,gBAAgB,GAAG,IAAI;MACzB;IACF,CAAC;IAED,IAAIO,mBAAwB;IAC5B,IAAIT,aAAa,EAAE;MACjBS,mBAAmB,GAAG/C,YAAY,CAAC0C,WAAW,CAC5CnC,gCAAgC,EAC/BoC,GAAqC,IAAK;QACzC,MAAM;UAAElB,SAAS;UAAEuB;QAAO,CAAC,GAAGL,GAAG;QACjC,IAAIlB,SAAS,KAAK,IAAI,CAACC,EAAE,IAAIiB,GAAG,CAACV,KAAK,KAAKA,KAAK,EAAE;QAClDK,aAAa,CAACU,MAAM,CAAC;MACvB,CAAC,CACF;IACH;IACA,MAAMC,0BAA0B,GAAGA,CAAA,KAAM;MACvC,IAAIF,mBAAmB,EAAE;QACvBA,mBAAmB,CAACD,MAAM,EAAE;QAC5BC,mBAAmB,GAAG,IAAI;MAC5B;IACF,CAAC;IAED,OAAO;MACLG,IAAI,EAAE,MAAAA,CAAA,KAAY;QAChB,MAAM9C,wBAAS,CAAC+C,eAAe,CAAC,IAAI,CAACzB,EAAE,EAAEO,KAAK,CAAC;QAC/CY,sBAAsB,EAAE;QACxBI,0BAA0B,EAAE;MAC9B,CAAC;MACDG,OAAO,EAAEhD,wBAAS,CAACwB,MAAM,CAAC,CAAC,IAAI,CAACF,EAAE,EAAEO,KAAK,EAAEJ,IAAI,EAAE;QAC/C,GAAGU,IAAI;QACPF,UAAU,EAAE,CAAC,CAACA,UAAU;QACxBC,aAAa,EAAE,CAAC,CAACA;MACnB,CAAC,CAAC,CACCe,IAAI,CAAEL,MAAM,IAAK;QAChBH,sBAAsB,EAAE;QACxBI,0BAA0B,EAAE;QAC5B,IAAI,CAACD,MAAM,CAACM,SAAS,IAAIb,YAAY,KAAK,GAAG,EAAE;UAC7C;UACAJ,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAG,GAAG,CAAC;QACnB;QACA,OAAOW,MAAM;MACf,CAAC,CAAC,CACDO,KAAK,CAAEC,CAAC,IAAK;QACZX,sBAAsB,EAAE;QACxBI,0BAA0B,EAAE;QAC5B,MAAMO,CAAC;MACT,CAAC;IACL,CAAC;EACH;;EAEA;AACF;AACA;AACA;EACEC,UAAUA,CACRC,gBAAiC,EAOjC;IAAA,IANA3C,OAA8B,GAAAe,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;IAOnC,IAAI6B,IAAI,GAAG,EAAE;IACb,IAAI,OAAOD,gBAAgB,KAAK,QAAQ,EAAE;MACxC,IAAI;QACF,MAAME,MAAM,GAAGC,kBAAK,CAACC,kBAAkB,CAACJ,gBAAgB,CAAC;QACzD,IAAIE,MAAM,EAAED,IAAI,GAAGC,MAAM,CAACG,GAAG;MAC/B,CAAC,CAAC,OAAOP,CAAC,EAAE;QACV,MAAM,IAAIQ,KAAK,CAAE,kBAAiBN,gBAAiB,EAAC,CAAC;MACvD;IACF,CAAC,MAAM;MACL,IAAIA,gBAAgB,CAACO,UAAU,CAAC,MAAM,CAAC,EACrC,MAAM,IAAID,KAAK,CACb,mEAAmE,CACpE;MACHL,IAAI,GAAGD,gBAAgB;IACzB;IACA,IAAIC,IAAI,CAACM,UAAU,CAAC,SAAS,CAAC,EAAEN,IAAI,GAAGA,IAAI,CAACO,KAAK,CAAC,CAAC,CAAC;IACpD,OAAO,IAAI,CAACvC,0BAA0B,CAAC,gBAAgB,EAAEgC,IAAI,EAAE5C,OAAO,CAAC;EACzE;;EAEA;AACF;AACA;EACEoD,cAAcA,CAACtC,IAAY,EAGzB;IAAA,IAH2Bd,OAA8B,GAAAe,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;IAI9D,OAAO,IAAI,CAACH,0BAA0B,CAAC,gBAAgB,EAAEE,IAAI,EAAEd,OAAO,CAAC;EACzE;;EAEA;EACA,MAAMqD,kBAAkBA,CAAA,EAKrB;IAAA,IALsBrD,OAAkC,GAAAe,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;IAM9D,IAAIuC,qBAAsD;IAE1D,MAAMC,MAAyC,GAAG,EAAE;IACpD,IAAIC,UAAkB,GAAG,CAAC;IAC1B,IAAIC,OAAe,GAAG,CAAC;IAEvB,MAAMC,QAAQ,GAAIC,OAAwC,IAAK;MAC7D,IAAI,CAACA,OAAO,CAACC,WAAW,IAAI,CAACD,OAAO,CAAC7C,IAAI,EAAE;MAC3C,IAAI0C,UAAU,KAAKG,OAAO,CAACH,UAAU,EAAE;QAAA,IAAAK,kBAAA,EAAAC,SAAA;QACrC,MAAM;UAAEC,QAAQ,GAAG;QAAG,CAAC,GAAG,EAAAF,kBAAA,GAAAN,MAAM,CAACC,UAAU,CAAC,cAAAK,kBAAA,uBAAlBA,kBAAA,CAAoB/C,IAAI,KAAI,CAAC,CAAC;QACxD2C,OAAO,GAAG,EAAAK,SAAA,GAAAC,QAAQ,CAACA,QAAQ,CAAC/C,MAAM,GAAG,CAAC,CAAC,cAAA8C,SAAA,uBAA7BA,SAAA,CAA+BE,EAAE,KAAI,CAAC;MAClD;MACA;MAAC,CAAC;QAAER;MAAW,CAAC,GAAGG,OAAO;MAC1BJ,MAAM,CAACC,UAAU,CAAC,GAAG;QACnB,GAAGG,OAAO;QACV7C,IAAI,EAAE;UACJ,GAAG6C,OAAO,CAAC7C,IAAI;UACfiD,QAAQ,EACNJ,OAAO,CAAC7C,IAAI,CAACiD,QAAQ,CAACE,GAAG,CAAEC,OAAO,KAAM;YACtC,GAAGA,OAAO;YACVC,EAAE,EAAED,OAAO,CAACC,EAAE,GAAGV,OAAO;YACxBO,EAAE,EAAEE,OAAO,CAACF,EAAE,GAAGP;UACnB,CAAC,CAAC,CAAC,IAAI;QACX;MACF,CAAC;IACH,CAAC;IAED,MAAMW,mBAAmB,GACvBT,OAAwC,IACJ;MACpC,IAAI,CAACA,OAAO,CAACC,WAAW,EAAE,OAAOD,OAAO;MAExC,MAAMU,aAAkB,GAAG,CAAC,CAAC;MAC7Bd,MAAM,CAACe,OAAO,CAAEnB,KAAK,IAAK;QAAA,IAAAoB,mBAAA,EAAAC,WAAA,EAAAC,oBAAA,EAAAC,YAAA;QACxBL,aAAa,CAACvD,IAAI,GAAG;UACnBmB,MAAM,EACJ,CAAC,EAAAsC,mBAAA,GAAAF,aAAa,CAACvD,IAAI,cAAAyD,mBAAA,uBAAlBA,mBAAA,CAAoBtC,MAAM,KAAI,EAAE,KAAK,EAAAuC,WAAA,GAAArB,KAAK,CAACrC,IAAI,cAAA0D,WAAA,uBAAVA,WAAA,CAAYvC,MAAM,KAAI,EAAE,CAAC;UACjE8B,QAAQ,EAAE,CACR,IAAI,CAAAM,aAAa,aAAbA,aAAa,wBAAAI,oBAAA,GAAbJ,aAAa,CAAEvD,IAAI,cAAA2D,oBAAA,uBAAnBA,oBAAA,CAAqBV,QAAQ,KAAI,EAAE,CAAC,EACxC,IAAI,EAAAW,YAAA,GAAAvB,KAAK,CAACrC,IAAI,cAAA4D,YAAA,uBAAVA,YAAA,CAAYX,QAAQ,KAAI,EAAE,CAAC;QAEnC,CAAC;QACDM,aAAa,CAACM,WAAW,GAAGxB,KAAK,CAACwB,WAAW;QAC7CN,aAAa,CAACO,aAAa,GACzB,CAAC,CAAAP,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEO,aAAa,KAAI,CAAC,IAAIzB,KAAK,CAACyB,aAAa;MAC7D,CAAC,CAAC;MACF,OAAO;QAAE,GAAGjB,OAAO;QAAE,GAAGU,aAAa;QAAEd;MAAO,CAAC;IACjD,CAAC;IAED,IAAIsB,gBAAoD;IACxD,IAAI3F,qBAAQ,CAACC,EAAE,KAAK,KAAK,IAAIa,OAAO,aAAPA,OAAO,eAAPA,OAAO,CAAE8E,sBAAsB,EAAE;MAC5D;MACA,IAAI,CAAA9E,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAE+E,qBAAqB,MAAK,SAAS,EAAE;QAChD,MAAMC,cAAc,GAAG,MAAMnF,wBAAe,CAACoF,kBAAkB,EAAE;QACjE,MAAMhF,IAAI,GAAG,MAAMJ,wBAAe,CAACqF,cAAc,EAAE;QAEnDL,gBAAgB,GAAG;UACjB,GAAGG,cAAc;UACjB/E,IAAI;UACJG,MAAM,EAAE,KAAK,CAAE;QACjB,CAAC;MACH;;MAEA;MACA,MAAMT,kBAAkB,CAACK,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAE8E,sBAAsB,CAAC;IAC3D;IACA,IAAI5F,qBAAQ,CAACC,EAAE,KAAK,KAAK,IAAI,QAAOa,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAE+E,qBAAqB,MAAK,QAAQ,EAAE;MAC/EF,gBAAgB,GAAG7E,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAE+E,qBAAqB;IACnD;IAEA,MAAM7D,KAAa,GAAGC,IAAI,CAACC,KAAK,CAACD,IAAI,CAACE,MAAM,EAAE,GAAG,KAAK,CAAC;IACvD,IAAI;MACF,MAAMhC,wBAAS,CAAC8F,uBAAuB,CAAC,IAAI,CAACxE,EAAE,EAAEO,KAAK,EAAElB,OAAO,CAAC;IAClE,CAAC,CAAC,OAAOyC,CAAC,EAAE;MACV,IAAIoC,gBAAgB,EAAE,MAAMlF,kBAAkB,CAACkF,gBAAgB,CAAC;MAChE,MAAMpC,CAAC;IACT;IAEA,OAAO;MACLN,IAAI,EAAE,MAAAA,CAAA,KAAY;QAChB,MAAM9C,wBAAS,CAAC+C,eAAe,CAAC,IAAI,CAACzB,EAAE,EAAEO,KAAK,CAAC;QAC/C,IAAI2D,gBAAgB,EAAE,MAAMlF,kBAAkB,CAACkF,gBAAgB,CAAC;MAClE,CAAC;MACDO,SAAS,EAAGC,QAAkD,IAAK;QACjE,IAAIC,kBAAuB,GAAGrG,YAAY,CAAC0C,WAAW,CACpDlC,4BAA4B,EAC3BmC,GAAkC,IAAK;UACtC,MAAM;YAAElB,SAAS;YAAEiD;UAAQ,CAAC,GAAG/B,GAAG;UAClC,IAAIlB,SAAS,KAAK,IAAI,CAACC,EAAE,IAAIiB,GAAG,CAACV,KAAK,KAAKA,KAAK,EAAE;UAClDoC,qBAAqB,GAAGK,OAAO;UAC/BD,QAAQ,CAACC,OAAO,CAAC;UACjB0B,QAAQ,CAAC;YACP3E,SAAS;YACTQ,KAAK,EAAEU,GAAG,CAACV,KAAK;YAChB,GAAGkD,mBAAmB,CAACT,OAAO;UAChC,CAAC,CAAC;QACJ,CAAC,CACF;QACD,IAAI4B,WAAgB,GAAGtG,YAAY,CAAC0C,WAAW,CAC7CjC,gCAAgC,EAC/BkC,GAAkC,IAAK;UACtC,MAAM;YAAElB,SAAS;YAAEiD;UAAQ,CAAC,GAAG/B,GAAG;UAClC,IAAIlB,SAAS,KAAK,IAAI,CAACC,EAAE,IAAIiB,GAAG,CAACV,KAAK,KAAKA,KAAK,EAAE;UAClD,MAAMsE,WAAW,GAAG;YAClB,GAAGlC,qBAAqB;YACxB,GAAGK;UACL,CAAC;UACDD,QAAQ,CAAC8B,WAAW,CAAC;UACrBH,QAAQ,CAAC;YACP3E,SAAS;YACTQ,KAAK,EAAEU,GAAG,CAACV,KAAK;YAChB,GAAGkD,mBAAmB,CAACoB,WAAW,CAAC;YACnCC,WAAW,EAAE;UACf,CAAC,CAAC;UACF,IAAIH,kBAAkB,EAAE;YACtBA,kBAAkB,CAACvD,MAAM,EAAE;YAC3BuD,kBAAkB,GAAG,IAAI;UAC3B;UACA,IAAIC,WAAW,EAAE;YACfA,WAAW,CAACxD,MAAM,EAAE;YACpBwD,WAAW,GAAG,IAAI;UACpB;QACF,CAAC,CACF;MACH;IACF,CAAC;EACH;EAEA,MAAMG,KAAKA,CAACC,UAAkB,EAAwB;IACpD,MAAM1D,MAAM,GAAG,MAAM5C,wBAAS,CAACqG,KAAK,CAAC,IAAI,CAAC/E,EAAE,EAAEgF,UAAU,CAAC;IACzD,MAAM,CAACC,MAAM,EAAEC,QAAQ,EAAEC,QAAQ,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,QAAQ,CAAC,GAAGC,IAAI,CAACC,KAAK,CAAClE,MAAM,CAAC;IACpF,OAAO;MAAE2D,MAAM;MAAEC,QAAQ;MAAEC,QAAQ;MAAEC,QAAQ;MAAEC,OAAO;MAAEC;IAAS,CAAC;EACpE;EAEA,MAAMG,OAAOA,CAAA,EAAkB;IAC7B,OAAO/G,wBAAS,CAACgH,cAAc,CAAC,IAAI,CAAC1F,EAAE,CAAC;EAC1C;AACF;AAAC2F,OAAA,CAAAjG,cAAA,GAAAA,cAAA;AAuBD,MAAMkG,qBAAqB,GAAG,CAC5B,0BAA0B,EAC1B,oBAAoB,EACpB,WAAW,EACX,gBAAgB,CACjB;AAEM,eAAeC,WAAWA,CAAAC,KAAA,EAOW;EAAA,IAPV;IAChCC,QAAQ;IACRC,gBAAgB;IAChBC,aAAa;IACbC,MAAM,GAAG,IAAI;IACbC,YAAY,GAAG,IAAI;IACnBC,YAAY,GAAG;EACD,CAAC,GAAAN,KAAA;EACf,IAAI7D,IAAI,GAAG,EAAE;EACb,IAAIoE,YAAuC;EAC3C,IAAIL,gBAAgB,EAAE;IACpB,MAAM;MAAEM,QAAQ;MAAEC;IAAO,CAAC,GAAGP,gBAAgB;IAC7C,IAAIM,QAAQ,IAAIC,MAAM,EAAE;MACtBF,YAAY,GAAGE,MAAM,aAANA,MAAM,uBAANA,MAAM,CACjBjD,GAAG,CAAEkD,KAAK,IAAK;QACf,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;UAC7B,MAAM;YAAEnE;UAAI,CAAC,GAAGF,kBAAK,CAACC,kBAAkB,CAACoE,KAAK,CAAC;UAC/C,MAAMC,QAAQ,GAAGb,qBAAqB,CAACc,IAAI,CAAEC,CAAC,IAAKtE,GAAG,CAACuE,QAAQ,CAACD,CAAC,CAAC,CAAC;UACnE,IAAIF,QAAQ,EAAE;YACZ,OAAO;cACLpE,GAAG;cACHoE,QAAQ,EAAG,GAAEH,QAAS,IAAGG,QAAS;YACpC,CAAC;UACH;QACF,CAAC,MAAM,IAAI,OAAOD,KAAK,KAAK,QAAQ,EAAE;UACpC,OAAO;YACLnE,GAAG,EAAEmE,KAAK;YACVC,QAAQ,EAAG,GAAEH,QAAS,IAAGE,KAAM;UACjC,CAAC;QACH;QACA,OAAOlG,SAAS;MAClB,CAAC,CAAC,CACDuG,MAAM,CAAEL,KAAK,IAA2BA,KAAK,KAAKlG,SAAS,CAAC;IACjE;EACF;EACA,IAAI,OAAOyF,QAAQ,KAAK,QAAQ,EAAE;IAChC,IAAI;MACF,MAAM7D,MAAM,GAAGC,kBAAK,CAACC,kBAAkB,CAAC2D,QAAQ,CAAC;MACjD,IAAI7D,MAAM,EAAE;QACVD,IAAI,GAAGC,MAAM,CAACG,GAAG;MACnB;IACF,CAAC,CAAC,OAAOP,CAAC,EAAE;MACV,MAAM,IAAIQ,KAAK,CAAE,kBAAiByD,QAAS,EAAC,CAAC;IAC/C;EACF,CAAC,MAAM;IACL,IAAI,CAACE,aAAa,IAAIF,QAAQ,CAACxD,UAAU,CAAC,MAAM,CAAC,EAC/C,MAAM,IAAID,KAAK,CACb,mEAAmE,CACpE;IACHL,IAAI,GAAG8D,QAAQ;EACjB;EACA,IAAI9D,IAAI,CAACM,UAAU,CAAC,SAAS,CAAC,EAAEN,IAAI,GAAGA,IAAI,CAACO,KAAK,CAAC,CAAC,CAAC;EACpD,MAAM;IAAEzC,SAAS;IAAEJ,GAAG;IAAEC;EAAY,CAAC,GAAG,MAAMlB,wBAAS,CAACoI,WAAW,CAAC;IAClEf,QAAQ,EAAE9D,IAAI;IACdgE,aAAa,EAAE,CAAC,CAACA,aAAa;IAC9BG,YAAY;IACZF,MAAM;IACNC,YAAY;IACZ;IACAY,oBAAoB,EAAEC,OAAO,IAAI,CAAC,CAACX,YAAY;IAC/CA;EACF,CAAC,CAAC;EACF,OAAO,IAAI3G,cAAc,CAAC;IAAEK,SAAS;IAAEJ,GAAG;IAAEC;EAAY,CAAC,CAAC;AAC5D;AAEO,eAAeqH,iBAAiBA,CAAA,EAAkB;EACvD,OAAOvI,wBAAS,CAACwI,kBAAkB,EAAE;AACvC;;AAEA;AACO,MAAMC,UAAkB,GAAGC,gBAAO;AAAAzB,OAAA,CAAAwB,UAAA,GAAAA,UAAA;AAEzC,MAAM;EAAEE,SAAS;EAAEC;AAAoB,CAAC,GAAG,EAAApJ,qBAAA,GAAAQ,wBAAS,CAAC6I,YAAY,cAAArJ,qBAAA,uBAAtBA,qBAAA,CAAAsJ,IAAA,CAAA9I,wBAAS,CAAiB,KAAI,CAAC,CAAC;;AAE3E;AACO,MAAM+I,WAAoB,GAAG,CAAC,CAACJ,SAAS;;AAE/C;AAAA1B,OAAA,CAAA8B,WAAA,GAAAA,WAAA;AACO,MAAMC,qBAA8B,GAAG,CAAC,CAACJ,mBAAmB;AAAA3B,OAAA,CAAA+B,qBAAA,GAAAA,qBAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":"1.4
|
|
1
|
+
{"version":"1.7.4"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["TurboModuleRegistry","get"],"sourceRoot":"../../src","sources":["NativeRNWhisper.ts"],"mappings":"AACA,SAASA,mBAAmB,QAAQ,cAAc;;AAElD;;
|
|
1
|
+
{"version":3,"names":["TurboModuleRegistry","get"],"sourceRoot":"../../src","sources":["NativeRNWhisper.ts"],"mappings":"AACA,SAASA,mBAAmB,QAAQ,cAAc;;AAElD;;AAwGA,eAAeA,mBAAmB,CAACC,GAAG,CAAO,WAAW,CAAC"}
|
package/lib/module/index.js
CHANGED
|
@@ -23,26 +23,20 @@ const updateAudioSession = async setting => {
|
|
|
23
23
|
await AudioSessionIos.setActive(setting.active ?? true);
|
|
24
24
|
};
|
|
25
25
|
export class WhisperContext {
|
|
26
|
-
|
|
27
|
-
|
|
26
|
+
gpu = false;
|
|
27
|
+
reasonNoGPU = '';
|
|
28
|
+
constructor(_ref) {
|
|
29
|
+
let {
|
|
30
|
+
contextId,
|
|
31
|
+
gpu,
|
|
32
|
+
reasonNoGPU
|
|
33
|
+
} = _ref;
|
|
34
|
+
this.id = contextId;
|
|
35
|
+
this.gpu = gpu;
|
|
36
|
+
this.reasonNoGPU = reasonNoGPU;
|
|
28
37
|
}
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
transcribe(filePath) {
|
|
32
|
-
let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
33
|
-
let path = '';
|
|
34
|
-
if (typeof filePath === 'number') {
|
|
35
|
-
try {
|
|
36
|
-
const source = Image.resolveAssetSource(filePath);
|
|
37
|
-
if (source) path = source.uri;
|
|
38
|
-
} catch (e) {
|
|
39
|
-
throw new Error(`Invalid asset: ${filePath}`);
|
|
40
|
-
}
|
|
41
|
-
} else {
|
|
42
|
-
if (filePath.startsWith('http')) throw new Error('Transcribe remote file is not supported, please download it first');
|
|
43
|
-
path = filePath;
|
|
44
|
-
}
|
|
45
|
-
if (path.startsWith('file://')) path = path.slice(7);
|
|
38
|
+
transcribeWithNativeMethod(method, data) {
|
|
39
|
+
let options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
46
40
|
const jobId = Math.floor(Math.random() * 10000);
|
|
47
41
|
const {
|
|
48
42
|
onProgress,
|
|
@@ -91,7 +85,7 @@ export class WhisperContext {
|
|
|
91
85
|
removeProgressListener();
|
|
92
86
|
removeNewSegmenetsListener();
|
|
93
87
|
},
|
|
94
|
-
promise: RNWhisper
|
|
88
|
+
promise: RNWhisper[method](this.id, jobId, data, {
|
|
95
89
|
...rest,
|
|
96
90
|
onProgress: !!onProgress,
|
|
97
91
|
onNewSegments: !!onNewSegments
|
|
@@ -111,6 +105,36 @@ export class WhisperContext {
|
|
|
111
105
|
};
|
|
112
106
|
}
|
|
113
107
|
|
|
108
|
+
/**
|
|
109
|
+
* Transcribe audio file (path or base64 encoded wav file)
|
|
110
|
+
* base64: need add `data:audio/wav;base64,` prefix
|
|
111
|
+
*/
|
|
112
|
+
transcribe(filePathOrBase64) {
|
|
113
|
+
let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
114
|
+
let path = '';
|
|
115
|
+
if (typeof filePathOrBase64 === 'number') {
|
|
116
|
+
try {
|
|
117
|
+
const source = Image.resolveAssetSource(filePathOrBase64);
|
|
118
|
+
if (source) path = source.uri;
|
|
119
|
+
} catch (e) {
|
|
120
|
+
throw new Error(`Invalid asset: ${filePathOrBase64}`);
|
|
121
|
+
}
|
|
122
|
+
} else {
|
|
123
|
+
if (filePathOrBase64.startsWith('http')) throw new Error('Transcribe remote file is not supported, please download it first');
|
|
124
|
+
path = filePathOrBase64;
|
|
125
|
+
}
|
|
126
|
+
if (path.startsWith('file://')) path = path.slice(7);
|
|
127
|
+
return this.transcribeWithNativeMethod('transcribeFile', path, options);
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
/**
|
|
131
|
+
* Transcribe audio data (base64 encoded float32 PCM data)
|
|
132
|
+
*/
|
|
133
|
+
transcribeData(data) {
|
|
134
|
+
let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
135
|
+
return this.transcribeWithNativeMethod('transcribeData', data, options);
|
|
136
|
+
}
|
|
137
|
+
|
|
114
138
|
/** Transcribe the microphone audio stream, the microphone user permission is required */
|
|
115
139
|
async transcribeRealtime() {
|
|
116
140
|
let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
@@ -119,7 +143,7 @@ export class WhisperContext {
|
|
|
119
143
|
let sliceIndex = 0;
|
|
120
144
|
let tOffset = 0;
|
|
121
145
|
const putSlice = payload => {
|
|
122
|
-
if (!payload.isUseSlices) return;
|
|
146
|
+
if (!payload.isUseSlices || !payload.data) return;
|
|
123
147
|
if (sliceIndex !== payload.sliceIndex) {
|
|
124
148
|
var _slices$sliceIndex, _segments;
|
|
125
149
|
const {
|
|
@@ -133,14 +157,14 @@ export class WhisperContext {
|
|
|
133
157
|
} = payload);
|
|
134
158
|
slices[sliceIndex] = {
|
|
135
159
|
...payload,
|
|
136
|
-
data:
|
|
160
|
+
data: {
|
|
137
161
|
...payload.data,
|
|
138
162
|
segments: payload.data.segments.map(segment => ({
|
|
139
163
|
...segment,
|
|
140
164
|
t0: segment.t0 + tOffset,
|
|
141
165
|
t1: segment.t1 + tOffset
|
|
142
166
|
})) || []
|
|
143
|
-
}
|
|
167
|
+
}
|
|
144
168
|
};
|
|
145
169
|
};
|
|
146
170
|
const mergeSlicesIfNeeded = payload => {
|
|
@@ -236,18 +260,32 @@ export class WhisperContext {
|
|
|
236
260
|
}
|
|
237
261
|
};
|
|
238
262
|
}
|
|
263
|
+
async bench(maxThreads) {
|
|
264
|
+
const result = await RNWhisper.bench(this.id, maxThreads);
|
|
265
|
+
const [config, nThreads, encodeMs, decodeMs, batchMs, promptMs] = JSON.parse(result);
|
|
266
|
+
return {
|
|
267
|
+
config,
|
|
268
|
+
nThreads,
|
|
269
|
+
encodeMs,
|
|
270
|
+
decodeMs,
|
|
271
|
+
batchMs,
|
|
272
|
+
promptMs
|
|
273
|
+
};
|
|
274
|
+
}
|
|
239
275
|
async release() {
|
|
240
276
|
return RNWhisper.releaseContext(this.id);
|
|
241
277
|
}
|
|
242
278
|
}
|
|
243
279
|
const coreMLModelAssetPaths = ['analytics/coremldata.bin', 'weights/weight.bin', 'model.mil', 'coremldata.bin'];
|
|
244
|
-
export async function initWhisper(
|
|
280
|
+
export async function initWhisper(_ref2) {
|
|
245
281
|
let {
|
|
246
282
|
filePath,
|
|
247
283
|
coreMLModelAsset,
|
|
248
284
|
isBundleAsset,
|
|
249
|
-
|
|
250
|
-
|
|
285
|
+
useGpu = true,
|
|
286
|
+
useCoreMLIos = true,
|
|
287
|
+
useFlashAttn = false
|
|
288
|
+
} = _ref2;
|
|
251
289
|
let path = '';
|
|
252
290
|
let coreMLAssets;
|
|
253
291
|
if (coreMLModelAsset) {
|
|
@@ -292,15 +330,25 @@ export async function initWhisper(_ref) {
|
|
|
292
330
|
path = filePath;
|
|
293
331
|
}
|
|
294
332
|
if (path.startsWith('file://')) path = path.slice(7);
|
|
295
|
-
const
|
|
333
|
+
const {
|
|
334
|
+
contextId,
|
|
335
|
+
gpu,
|
|
336
|
+
reasonNoGPU
|
|
337
|
+
} = await RNWhisper.initContext({
|
|
296
338
|
filePath: path,
|
|
297
339
|
isBundleAsset: !!isBundleAsset,
|
|
340
|
+
useFlashAttn,
|
|
341
|
+
useGpu,
|
|
298
342
|
useCoreMLIos,
|
|
299
343
|
// Only development mode need download Core ML model assets (from packager server)
|
|
300
344
|
downloadCoreMLAssets: __DEV__ && !!coreMLAssets,
|
|
301
345
|
coreMLAssets
|
|
302
346
|
});
|
|
303
|
-
return new WhisperContext(
|
|
347
|
+
return new WhisperContext({
|
|
348
|
+
contextId,
|
|
349
|
+
gpu,
|
|
350
|
+
reasonNoGPU
|
|
351
|
+
});
|
|
304
352
|
}
|
|
305
353
|
export async function releaseAllWhisper() {
|
|
306
354
|
return RNWhisper.releaseAllContexts();
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NativeEventEmitter","DeviceEventEmitter","Platform","Image","RNWhisper","AudioSessionIos","version","EventEmitter","OS","EVENT_ON_TRANSCRIBE_PROGRESS","EVENT_ON_TRANSCRIBE_NEW_SEGMENTS","EVENT_ON_REALTIME_TRANSCRIBE","EVENT_ON_REALTIME_TRANSCRIBE_END","updateAudioSession","setting","setCategory","category","options","mode","setMode","setActive","active","WhisperContext","constructor","id","transcribe","filePath","arguments","length","undefined","path","source","resolveAssetSource","uri","e","Error","startsWith","slice","jobId","Math","floor","random","onProgress","onNewSegments","rest","progressListener","lastProgress","addListener","evt","contextId","progress","removeProgressListener","remove","newSegmentsListener","result","removeNewSegmenetsListener","stop","abortTranscribe","promise","transcribeFile","then","isAborted","catch","transcribeRealtime","lastTranscribePayload","slices","sliceIndex","tOffset","putSlice","payload","isUseSlices","_slices$sliceIndex","_segments","segments","data","t1","map","segment","t0","mergeSlicesIfNeeded","mergedPayload","forEach","_mergedPayload$data","_slice$data","_mergedPayload$data2","_slice$data2","processTime","recordingTime","prevAudioSession","audioSessionOnStartIos","audioSessionOnStopIos","categoryResult","getCurrentCategory","getCurrentMode","startRealtimeTranscribe","subscribe","callback","transcribeListener","endListener","lastPayload","isCapturing","release","releaseContext","coreMLModelAssetPaths","initWhisper","_ref","coreMLModelAsset","isBundleAsset","useCoreMLIos","coreMLAssets","filename","assets","asset","filepath","find","p","includes","filter","initContext","downloadCoreMLAssets","__DEV__","releaseAllWhisper","releaseAllContexts","libVersion","useCoreML","coreMLAllowFallback","_RNWhisper$getConstan","getConstants","call","isUseCoreML","isCoreMLAllowFallback"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["NativeEventEmitter","DeviceEventEmitter","Platform","Image","RNWhisper","AudioSessionIos","version","EventEmitter","OS","EVENT_ON_TRANSCRIBE_PROGRESS","EVENT_ON_TRANSCRIBE_NEW_SEGMENTS","EVENT_ON_REALTIME_TRANSCRIBE","EVENT_ON_REALTIME_TRANSCRIBE_END","updateAudioSession","setting","setCategory","category","options","mode","setMode","setActive","active","WhisperContext","gpu","reasonNoGPU","constructor","_ref","contextId","id","transcribeWithNativeMethod","method","data","arguments","length","undefined","jobId","Math","floor","random","onProgress","onNewSegments","rest","progressListener","lastProgress","addListener","evt","progress","removeProgressListener","remove","newSegmentsListener","result","removeNewSegmenetsListener","stop","abortTranscribe","promise","then","isAborted","catch","e","transcribe","filePathOrBase64","path","source","resolveAssetSource","uri","Error","startsWith","slice","transcribeData","transcribeRealtime","lastTranscribePayload","slices","sliceIndex","tOffset","putSlice","payload","isUseSlices","_slices$sliceIndex","_segments","segments","t1","map","segment","t0","mergeSlicesIfNeeded","mergedPayload","forEach","_mergedPayload$data","_slice$data","_mergedPayload$data2","_slice$data2","processTime","recordingTime","prevAudioSession","audioSessionOnStartIos","audioSessionOnStopIos","categoryResult","getCurrentCategory","getCurrentMode","startRealtimeTranscribe","subscribe","callback","transcribeListener","endListener","lastPayload","isCapturing","bench","maxThreads","config","nThreads","encodeMs","decodeMs","batchMs","promptMs","JSON","parse","release","releaseContext","coreMLModelAssetPaths","initWhisper","_ref2","filePath","coreMLModelAsset","isBundleAsset","useGpu","useCoreMLIos","useFlashAttn","coreMLAssets","filename","assets","asset","filepath","find","p","includes","filter","initContext","downloadCoreMLAssets","__DEV__","releaseAllWhisper","releaseAllContexts","libVersion","useCoreML","coreMLAllowFallback","_RNWhisper$getConstan","getConstants","call","isUseCoreML","isCoreMLAllowFallback"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";AAAA,SACEA,kBAAkB,EAClBC,kBAAkB,EAClBC,QAAQ,EAERC,KAAK,QACA,cAAc;AACrB,OAAOC,SAAS,MAAgC,mBAAmB;AAMnE,OAAOC,eAAe,MAAM,mBAAmB;AAM/C,SAASC,OAAO,QAAQ,gBAAgB;AAExC,IAAIC,YAA2D;AAC/D,IAAIL,QAAQ,CAACM,EAAE,KAAK,KAAK,EAAE;EACzB;EACAD,YAAY,GAAG,IAAIP,kBAAkB,CAACI,SAAS,CAAC;AAClD;AACA,IAAIF,QAAQ,CAACM,EAAE,KAAK,SAAS,EAAE;EAC7BD,YAAY,GAAGN,kBAAkB;AACnC;AAUA,MAAMQ,4BAA4B,GAAG,iCAAiC;AACtE,MAAMC,gCAAgC,GAAG,oCAAoC;AAE7E,MAAMC,4BAA4B,GAAG,iCAAiC;AACtE,MAAMC,gCAAgC,GAAG,oCAAoC;AA+I7E,MAAMC,kBAAkB,GAAG,MAAOC,OAA+B,IAAK;EACpE,MAAMT,eAAe,CAACU,WAAW,CAC/BD,OAAO,CAACE,QAAQ,EAChBF,OAAO,CAACG,OAAO,IAAI,EAAE,CACtB;EACD,IAAIH,OAAO,CAACI,IAAI,EAAE;IAChB,MAAMb,eAAe,CAACc,OAAO,CAACL,OAAO,CAACI,IAAI,CAAC;EAC7C;EACA,MAAMb,eAAe,CAACe,SAAS,CAACN,OAAO,CAACO,MAAM,IAAI,IAAI,CAAC;AACzD,CAAC;AAED,OAAO,MAAMC,cAAc,CAAC;EAG1BC,GAAG,GAAY,KAAK;EAEpBC,WAAW,GAAW,EAAE;EAExBC,WAAWA,CAAAC,IAAA,EAIc;IAAA,IAJb;MACVC,SAAS;MACTJ,GAAG;MACHC;IACoB,CAAC,GAAAE,IAAA;IACrB,IAAI,CAACE,EAAE,GAAGD,SAAS;IACnB,IAAI,CAACJ,GAAG,GAAGA,GAAG;IACd,IAAI,CAACC,WAAW,GAAGA,WAAW;EAChC;EAEQK,0BAA0BA,CAACC,MAA2C,EAAEC,IAAY,EAG1F;IAAA,IAH4Fd,OAA8B,GAAAe,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;IAI/H,MAAMG,KAAa,GAAGC,IAAI,CAACC,KAAK,CAACD,IAAI,CAACE,MAAM,EAAE,GAAG,KAAK,CAAC;IAEvD,MAAM;MAAEC,UAAU;MAAEC,aAAa;MAAE,GAAGC;IAAK,CAAC,GAAGxB,OAAO;IAEtD,IAAIyB,gBAAqB;IACzB,IAAIC,YAAoB,GAAG,CAAC;IAC5B,IAAIJ,UAAU,EAAE;MACdG,gBAAgB,GAAGnC,YAAY,CAACqC,WAAW,CACzCnC,4BAA4B,EAC3BoC,GAAkC,IAAK;QACtC,MAAM;UAAElB,SAAS;UAAEmB;QAAS,CAAC,GAAGD,GAAG;QACnC,IAAIlB,SAAS,KAAK,IAAI,CAACC,EAAE,IAAIiB,GAAG,CAACV,KAAK,KAAKA,KAAK,EAAE;QAClDQ,YAAY,GAAGG,QAAQ,GAAG,GAAG,GAAG,GAAG,GAAGA,QAAQ;QAC9CP,UAAU,CAACI,YAAY,CAAC;MAC1B,CAAC,CACF;IACH;IACA,MAAMI,sBAAsB,GAAGA,CAAA,KAAM;MACnC,IAAIL,gBAAgB,EAAE;QACpBA,gBAAgB,CAACM,MAAM,EAAE;QACzBN,gBAAgB,GAAG,IAAI;MACzB;IACF,CAAC;IAED,IAAIO,mBAAwB;IAC5B,IAAIT,aAAa,EAAE;MACjBS,mBAAmB,GAAG1C,YAAY,CAACqC,WAAW,CAC5ClC,gCAAgC,EAC/BmC,GAAqC,IAAK;QACzC,MAAM;UAAElB,SAAS;UAAEuB;QAAO,CAAC,GAAGL,GAAG;QACjC,IAAIlB,SAAS,KAAK,IAAI,CAACC,EAAE,IAAIiB,GAAG,CAACV,KAAK,KAAKA,KAAK,EAAE;QAClDK,aAAa,CAACU,MAAM,CAAC;MACvB,CAAC,CACF;IACH;IACA,MAAMC,0BAA0B,GAAGA,CAAA,KAAM;MACvC,IAAIF,mBAAmB,EAAE;QACvBA,mBAAmB,CAACD,MAAM,EAAE;QAC5BC,mBAAmB,GAAG,IAAI;MAC5B;IACF,CAAC;IAED,OAAO;MACLG,IAAI,EAAE,MAAAA,CAAA,KAAY;QAChB,MAAMhD,SAAS,CAACiD,eAAe,CAAC,IAAI,CAACzB,EAAE,EAAEO,KAAK,CAAC;QAC/CY,sBAAsB,EAAE;QACxBI,0BAA0B,EAAE;MAC9B,CAAC;MACDG,OAAO,EAAElD,SAAS,CAAC0B,MAAM,CAAC,CAAC,IAAI,CAACF,EAAE,EAAEO,KAAK,EAAEJ,IAAI,EAAE;QAC/C,GAAGU,IAAI;QACPF,UAAU,EAAE,CAAC,CAACA,UAAU;QACxBC,aAAa,EAAE,CAAC,CAACA;MACnB,CAAC,CAAC,CACCe,IAAI,CAAEL,MAAM,IAAK;QAChBH,sBAAsB,EAAE;QACxBI,0BAA0B,EAAE;QAC5B,IAAI,CAACD,MAAM,CAACM,SAAS,IAAIb,YAAY,KAAK,GAAG,EAAE;UAC7C;UACAJ,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAG,GAAG,CAAC;QACnB;QACA,OAAOW,MAAM;MACf,CAAC,CAAC,CACDO,KAAK,CAAEC,CAAC,IAAK;QACZX,sBAAsB,EAAE;QACxBI,0BAA0B,EAAE;QAC5B,MAAMO,CAAC;MACT,CAAC;IACL,CAAC;EACH;;EAEA;AACF;AACA;AACA;EACEC,UAAUA,CACRC,gBAAiC,EAOjC;IAAA,IANA3C,OAA8B,GAAAe,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;IAOnC,IAAI6B,IAAI,GAAG,EAAE;IACb,IAAI,OAAOD,gBAAgB,KAAK,QAAQ,EAAE;MACxC,IAAI;QACF,MAAME,MAAM,GAAG3D,KAAK,CAAC4D,kBAAkB,CAACH,gBAAgB,CAAC;QACzD,IAAIE,MAAM,EAAED,IAAI,GAAGC,MAAM,CAACE,GAAG;MAC/B,CAAC,CAAC,OAAON,CAAC,EAAE;QACV,MAAM,IAAIO,KAAK,CAAE,kBAAiBL,gBAAiB,EAAC,CAAC;MACvD;IACF,CAAC,MAAM;MACL,IAAIA,gBAAgB,CAACM,UAAU,CAAC,MAAM,CAAC,EACrC,MAAM,IAAID,KAAK,CACb,mEAAmE,CACpE;MACHJ,IAAI,GAAGD,gBAAgB;IACzB;IACA,IAAIC,IAAI,CAACK,UAAU,CAAC,SAAS,CAAC,EAAEL,IAAI,GAAGA,IAAI,CAACM,KAAK,CAAC,CAAC,CAAC;IACpD,OAAO,IAAI,CAACtC,0BAA0B,CAAC,gBAAgB,EAAEgC,IAAI,EAAE5C,OAAO,CAAC;EACzE;;EAEA;AACF;AACA;EACEmD,cAAcA,CAACrC,IAAY,EAGzB;IAAA,IAH2Bd,OAA8B,GAAAe,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;IAI9D,OAAO,IAAI,CAACH,0BAA0B,CAAC,gBAAgB,EAAEE,IAAI,EAAEd,OAAO,CAAC;EACzE;;EAEA;EACA,MAAMoD,kBAAkBA,CAAA,EAKrB;IAAA,IALsBpD,OAAkC,GAAAe,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;IAM9D,IAAIsC,qBAAsD;IAE1D,MAAMC,MAAyC,GAAG,EAAE;IACpD,IAAIC,UAAkB,GAAG,CAAC;IAC1B,IAAIC,OAAe,GAAG,CAAC;IAEvB,MAAMC,QAAQ,GAAIC,OAAwC,IAAK;MAC7D,IAAI,CAACA,OAAO,CAACC,WAAW,IAAI,CAACD,OAAO,CAAC5C,IAAI,EAAE;MAC3C,IAAIyC,UAAU,KAAKG,OAAO,CAACH,UAAU,EAAE;QAAA,IAAAK,kBAAA,EAAAC,SAAA;QACrC,MAAM;UAAEC,QAAQ,GAAG;QAAG,CAAC,GAAG,EAAAF,kBAAA,GAAAN,MAAM,CAACC,UAAU,CAAC,cAAAK,kBAAA,uBAAlBA,kBAAA,CAAoB9C,IAAI,KAAI,CAAC,CAAC;QACxD0C,OAAO,GAAG,EAAAK,SAAA,GAAAC,QAAQ,CAACA,QAAQ,CAAC9C,MAAM,GAAG,CAAC,CAAC,cAAA6C,SAAA,uBAA7BA,SAAA,CAA+BE,EAAE,KAAI,CAAC;MAClD;MACA;MAAC,CAAC;QAAER;MAAW,CAAC,GAAGG,OAAO;MAC1BJ,MAAM,CAACC,UAAU,CAAC,GAAG;QACnB,GAAGG,OAAO;QACV5C,IAAI,EAAE;UACJ,GAAG4C,OAAO,CAAC5C,IAAI;UACfgD,QAAQ,EACNJ,OAAO,CAAC5C,IAAI,CAACgD,QAAQ,CAACE,GAAG,CAAEC,OAAO,KAAM;YACtC,GAAGA,OAAO;YACVC,EAAE,EAAED,OAAO,CAACC,EAAE,GAAGV,OAAO;YACxBO,EAAE,EAAEE,OAAO,CAACF,EAAE,GAAGP;UACnB,CAAC,CAAC,CAAC,IAAI;QACX;MACF,CAAC;IACH,CAAC;IAED,MAAMW,mBAAmB,GACvBT,OAAwC,IACJ;MACpC,IAAI,CAACA,OAAO,CAACC,WAAW,EAAE,OAAOD,OAAO;MAExC,MAAMU,aAAkB,GAAG,CAAC,CAAC;MAC7Bd,MAAM,CAACe,OAAO,CAAEnB,KAAK,IAAK;QAAA,IAAAoB,mBAAA,EAAAC,WAAA,EAAAC,oBAAA,EAAAC,YAAA;QACxBL,aAAa,CAACtD,IAAI,GAAG;UACnBmB,MAAM,EACJ,CAAC,EAAAqC,mBAAA,GAAAF,aAAa,CAACtD,IAAI,cAAAwD,mBAAA,uBAAlBA,mBAAA,CAAoBrC,MAAM,KAAI,EAAE,KAAK,EAAAsC,WAAA,GAAArB,KAAK,CAACpC,IAAI,cAAAyD,WAAA,uBAAVA,WAAA,CAAYtC,MAAM,KAAI,EAAE,CAAC;UACjE6B,QAAQ,EAAE,CACR,IAAI,CAAAM,aAAa,aAAbA,aAAa,wBAAAI,oBAAA,GAAbJ,aAAa,CAAEtD,IAAI,cAAA0D,oBAAA,uBAAnBA,oBAAA,CAAqBV,QAAQ,KAAI,EAAE,CAAC,EACxC,IAAI,EAAAW,YAAA,GAAAvB,KAAK,CAACpC,IAAI,cAAA2D,YAAA,uBAAVA,YAAA,CAAYX,QAAQ,KAAI,EAAE,CAAC;QAEnC,CAAC;QACDM,aAAa,CAACM,WAAW,GAAGxB,KAAK,CAACwB,WAAW;QAC7CN,aAAa,CAACO,aAAa,GACzB,CAAC,CAAAP,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEO,aAAa,KAAI,CAAC,IAAIzB,KAAK,CAACyB,aAAa;MAC7D,CAAC,CAAC;MACF,OAAO;QAAE,GAAGjB,OAAO;QAAE,GAAGU,aAAa;QAAEd;MAAO,CAAC;IACjD,CAAC;IAED,IAAIsB,gBAAoD;IACxD,IAAI3F,QAAQ,CAACM,EAAE,KAAK,KAAK,IAAIS,OAAO,aAAPA,OAAO,eAAPA,OAAO,CAAE6E,sBAAsB,EAAE;MAC5D;MACA,IAAI,CAAA7E,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAE8E,qBAAqB,MAAK,SAAS,EAAE;QAChD,MAAMC,cAAc,GAAG,MAAM3F,eAAe,CAAC4F,kBAAkB,EAAE;QACjE,MAAM/E,IAAI,GAAG,MAAMb,eAAe,CAAC6F,cAAc,EAAE;QAEnDL,gBAAgB,GAAG;UACjB,GAAGG,cAAc;UACjB9E,IAAI;UACJG,MAAM,EAAE,KAAK,CAAE;QACjB,CAAC;MACH;;MAEA;MACA,MAAMR,kBAAkB,CAACI,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAE6E,sBAAsB,CAAC;IAC3D;IACA,IAAI5F,QAAQ,CAACM,EAAE,KAAK,KAAK,IAAI,QAAOS,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAE8E,qBAAqB,MAAK,QAAQ,EAAE;MAC/EF,gBAAgB,GAAG5E,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAE8E,qBAAqB;IACnD;IAEA,MAAM5D,KAAa,GAAGC,IAAI,CAACC,KAAK,CAACD,IAAI,CAACE,MAAM,EAAE,GAAG,KAAK,CAAC;IACvD,IAAI;MACF,MAAMlC,SAAS,CAAC+F,uBAAuB,CAAC,IAAI,CAACvE,EAAE,EAAEO,KAAK,EAAElB,OAAO,CAAC;IAClE,CAAC,CAAC,OAAOyC,CAAC,EAAE;MACV,IAAImC,gBAAgB,EAAE,MAAMhF,kBAAkB,CAACgF,gBAAgB,CAAC;MAChE,MAAMnC,CAAC;IACT;IAEA,OAAO;MACLN,IAAI,EAAE,MAAAA,CAAA,KAAY;QAChB,MAAMhD,SAAS,CAACiD,eAAe,CAAC,IAAI,CAACzB,EAAE,EAAEO,KAAK,CAAC;QAC/C,IAAI0D,gBAAgB,EAAE,MAAMhF,kBAAkB,CAACgF,gBAAgB,CAAC;MAClE,CAAC;MACDO,SAAS,EAAGC,QAAkD,IAAK;QACjE,IAAIC,kBAAuB,GAAG/F,YAAY,CAACqC,WAAW,CACpDjC,4BAA4B,EAC3BkC,GAAkC,IAAK;UACtC,MAAM;YAAElB,SAAS;YAAEgD;UAAQ,CAAC,GAAG9B,GAAG;UAClC,IAAIlB,SAAS,KAAK,IAAI,CAACC,EAAE,IAAIiB,GAAG,CAACV,KAAK,KAAKA,KAAK,EAAE;UAClDmC,qBAAqB,GAAGK,OAAO;UAC/BD,QAAQ,CAACC,OAAO,CAAC;UACjB0B,QAAQ,CAAC;YACP1E,SAAS;YACTQ,KAAK,EAAEU,GAAG,CAACV,KAAK;YAChB,GAAGiD,mBAAmB,CAACT,OAAO;UAChC,CAAC,CAAC;QACJ,CAAC,CACF;QACD,IAAI4B,WAAgB,GAAGhG,YAAY,CAACqC,WAAW,CAC7ChC,gCAAgC,EAC/BiC,GAAkC,IAAK;UACtC,MAAM;YAAElB,SAAS;YAAEgD;UAAQ,CAAC,GAAG9B,GAAG;UAClC,IAAIlB,SAAS,KAAK,IAAI,CAACC,EAAE,IAAIiB,GAAG,CAACV,KAAK,KAAKA,KAAK,EAAE;UAClD,MAAMqE,WAAW,GAAG;YAClB,GAAGlC,qBAAqB;YACxB,GAAGK;UACL,CAAC;UACDD,QAAQ,CAAC8B,WAAW,CAAC;UACrBH,QAAQ,CAAC;YACP1E,SAAS;YACTQ,KAAK,EAAEU,GAAG,CAACV,KAAK;YAChB,GAAGiD,mBAAmB,CAACoB,WAAW,CAAC;YACnCC,WAAW,EAAE;UACf,CAAC,CAAC;UACF,IAAIH,kBAAkB,EAAE;YACtBA,kBAAkB,CAACtD,MAAM,EAAE;YAC3BsD,kBAAkB,GAAG,IAAI;UAC3B;UACA,IAAIC,WAAW,EAAE;YACfA,WAAW,CAACvD,MAAM,EAAE;YACpBuD,WAAW,GAAG,IAAI;UACpB;QACF,CAAC,CACF;MACH;IACF,CAAC;EACH;EAEA,MAAMG,KAAKA,CAACC,UAAkB,EAAwB;IACpD,MAAMzD,MAAM,GAAG,MAAM9C,SAAS,CAACsG,KAAK,CAAC,IAAI,CAAC9E,EAAE,EAAE+E,UAAU,CAAC;IACzD,MAAM,CAACC,MAAM,EAAEC,QAAQ,EAAEC,QAAQ,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,QAAQ,CAAC,GAAGC,IAAI,CAACC,KAAK,CAACjE,MAAM,CAAC;IACpF,OAAO;MAAE0D,MAAM;MAAEC,QAAQ;MAAEC,QAAQ;MAAEC,QAAQ;MAAEC,OAAO;MAAEC;IAAS,CAAC;EACpE;EAEA,MAAMG,OAAOA,CAAA,EAAkB;IAC7B,OAAOhH,SAAS,CAACiH,cAAc,CAAC,IAAI,CAACzF,EAAE,CAAC;EAC1C;AACF;AAuBA,MAAM0F,qBAAqB,GAAG,CAC5B,0BAA0B,EAC1B,oBAAoB,EACpB,WAAW,EACX,gBAAgB,CACjB;AAED,OAAO,eAAeC,WAAWA,CAAAC,KAAA,EAOW;EAAA,IAPV;IAChCC,QAAQ;IACRC,gBAAgB;IAChBC,aAAa;IACbC,MAAM,GAAG,IAAI;IACbC,YAAY,GAAG,IAAI;IACnBC,YAAY,GAAG;EACD,CAAC,GAAAN,KAAA;EACf,IAAI3D,IAAI,GAAG,EAAE;EACb,IAAIkE,YAAuC;EAC3C,IAAIL,gBAAgB,EAAE;IACpB,MAAM;MAAEM,QAAQ;MAAEC;IAAO,CAAC,GAAGP,gBAAgB;IAC7C,IAAIM,QAAQ,IAAIC,MAAM,EAAE;MACtBF,YAAY,GAAGE,MAAM,aAANA,MAAM,uBAANA,MAAM,CACjBhD,GAAG,CAAEiD,KAAK,IAAK;QACf,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;UAC7B,MAAM;YAAElE;UAAI,CAAC,GAAG7D,KAAK,CAAC4D,kBAAkB,CAACmE,KAAK,CAAC;UAC/C,MAAMC,QAAQ,GAAGb,qBAAqB,CAACc,IAAI,CAAEC,CAAC,IAAKrE,GAAG,CAACsE,QAAQ,CAACD,CAAC,CAAC,CAAC;UACnE,IAAIF,QAAQ,EAAE;YACZ,OAAO;cACLnE,GAAG;cACHmE,QAAQ,EAAG,GAAEH,QAAS,IAAGG,QAAS;YACpC,CAAC;UACH;QACF,CAAC,MAAM,IAAI,OAAOD,KAAK,KAAK,QAAQ,EAAE;UACpC,OAAO;YACLlE,GAAG,EAAEkE,KAAK;YACVC,QAAQ,EAAG,GAAEH,QAAS,IAAGE,KAAM;UACjC,CAAC;QACH;QACA,OAAOhG,SAAS;MAClB,CAAC,CAAC,CACDqG,MAAM,CAAEL,KAAK,IAA2BA,KAAK,KAAKhG,SAAS,CAAC;IACjE;EACF;EACA,IAAI,OAAOuF,QAAQ,KAAK,QAAQ,EAAE;IAChC,IAAI;MACF,MAAM3D,MAAM,GAAG3D,KAAK,CAAC4D,kBAAkB,CAAC0D,QAAQ,CAAC;MACjD,IAAI3D,MAAM,EAAE;QACVD,IAAI,GAAGC,MAAM,CAACE,GAAG;MACnB;IACF,CAAC,CAAC,OAAON,CAAC,EAAE;MACV,MAAM,IAAIO,KAAK,CAAE,kBAAiBwD,QAAS,EAAC,CAAC;IAC/C;EACF,CAAC,MAAM;IACL,IAAI,CAACE,aAAa,IAAIF,QAAQ,CAACvD,UAAU,CAAC,MAAM,CAAC,EAC/C,MAAM,IAAID,KAAK,CACb,mEAAmE,CACpE;IACHJ,IAAI,GAAG4D,QAAQ;EACjB;EACA,IAAI5D,IAAI,CAACK,UAAU,CAAC,SAAS,CAAC,EAAEL,IAAI,GAAGA,IAAI,CAACM,KAAK,CAAC,CAAC,CAAC;EACpD,MAAM;IAAExC,SAAS;IAAEJ,GAAG;IAAEC;EAAY,CAAC,GAAG,MAAMpB,SAAS,CAACoI,WAAW,CAAC;IAClEf,QAAQ,EAAE5D,IAAI;IACd8D,aAAa,EAAE,CAAC,CAACA,aAAa;IAC9BG,YAAY;IACZF,MAAM;IACNC,YAAY;IACZ;IACAY,oBAAoB,EAAEC,OAAO,IAAI,CAAC,CAACX,YAAY;IAC/CA;EACF,CAAC,CAAC;EACF,OAAO,IAAIzG,cAAc,CAAC;IAAEK,SAAS;IAAEJ,GAAG;IAAEC;EAAY,CAAC,CAAC;AAC5D;AAEA,OAAO,eAAemH,iBAAiBA,CAAA,EAAkB;EACvD,OAAOvI,SAAS,CAACwI,kBAAkB,EAAE;AACvC;;AAEA;AACA,OAAO,MAAMC,UAAkB,GAAGvI,OAAO;AAEzC,MAAM;EAAEwI,SAAS;EAAEC;AAAoB,CAAC,GAAG,EAAAC,qBAAA,GAAA5I,SAAS,CAAC6I,YAAY,cAAAD,qBAAA,uBAAtBA,qBAAA,CAAAE,IAAA,CAAA9I,SAAS,CAAiB,KAAI,CAAC,CAAC;;AAE3E;AACA,OAAO,MAAM+I,WAAoB,GAAG,CAAC,CAACL,SAAS;;AAE/C;AACA,OAAO,MAAMM,qBAA8B,GAAG,CAAC,CAACL,mBAAmB;AAEnE,SAAS1I,eAAe"}
|
package/lib/module/version.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":"1.4
|
|
1
|
+
{"version":"1.7.4"}
|
|
@@ -12,6 +12,8 @@ export type TranscribeOptions = {
|
|
|
12
12
|
maxLen?: number;
|
|
13
13
|
/** Enable token-level timestamps */
|
|
14
14
|
tokenTimestamps?: boolean;
|
|
15
|
+
/** Enable tinydiarize (requires a tdrz model) */
|
|
16
|
+
tdrzEnable?: boolean;
|
|
15
17
|
/** Word timestamp probability threshold */
|
|
16
18
|
wordThold?: number;
|
|
17
19
|
/** Time offset in milliseconds */
|
|
@@ -25,8 +27,6 @@ export type TranscribeOptions = {
|
|
|
25
27
|
beamSize?: number;
|
|
26
28
|
/** Number of best candidates to keep */
|
|
27
29
|
bestOf?: number;
|
|
28
|
-
/** Speed up audio by x2 (reduced accuracy) */
|
|
29
|
-
speedUp?: boolean;
|
|
30
30
|
/** Initial Prompt */
|
|
31
31
|
prompt?: string;
|
|
32
32
|
};
|
|
@@ -46,21 +46,30 @@ export type CoreMLAsset = {
|
|
|
46
46
|
type NativeContextOptions = {
|
|
47
47
|
filePath: string;
|
|
48
48
|
isBundleAsset: boolean;
|
|
49
|
+
useFlashAttn?: boolean;
|
|
50
|
+
useGpu?: boolean;
|
|
49
51
|
useCoreMLIos?: boolean;
|
|
50
52
|
downloadCoreMLAssets?: boolean;
|
|
51
53
|
coreMLAssets?: CoreMLAsset[];
|
|
52
54
|
};
|
|
55
|
+
export type NativeWhisperContext = {
|
|
56
|
+
contextId: number;
|
|
57
|
+
gpu: boolean;
|
|
58
|
+
reasonNoGPU: string;
|
|
59
|
+
};
|
|
53
60
|
export interface Spec extends TurboModule {
|
|
54
61
|
getConstants(): {
|
|
55
62
|
useCoreML: boolean;
|
|
56
63
|
coreMLAllowFallback: boolean;
|
|
57
64
|
};
|
|
58
|
-
initContext(options: NativeContextOptions): Promise<
|
|
65
|
+
initContext(options: NativeContextOptions): Promise<NativeWhisperContext>;
|
|
59
66
|
releaseContext(contextId: number): Promise<void>;
|
|
60
67
|
releaseAllContexts(): Promise<void>;
|
|
61
|
-
transcribeFile(contextId: number, jobId: number,
|
|
68
|
+
transcribeFile(contextId: number, jobId: number, pathOrBase64: string, options: {}): Promise<TranscribeResult>;
|
|
69
|
+
transcribeData(contextId: number, jobId: number, dataBase64: string, options: {}): Promise<TranscribeResult>;
|
|
62
70
|
startRealtimeTranscribe(contextId: number, jobId: number, options: TranscribeOptions): Promise<void>;
|
|
63
71
|
abortTranscribe(contextId: number, jobId: number): Promise<void>;
|
|
72
|
+
bench(contextId: number, maxThreads: number): Promise<string>;
|
|
64
73
|
getAudioSessionCurrentCategory: () => Promise<{
|
|
65
74
|
category: string;
|
|
66
75
|
options: Array<string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NativeRNWhisper.d.ts","sourceRoot":"","sources":["../../src/NativeRNWhisper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8CAA8C,CAAA;AAI/E,MAAM,MAAM,iBAAiB,GAAG;IAC9B,wDAAwD;IACxD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iEAAiE;IACjE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,oGAAoG;IACpG,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qDAAqD;IACrD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2CAA2C;IAC3C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oCAAoC;IACpC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,2CAA2C;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kCAAkC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,mDAAmD;IACnD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mCAAmC;IACnC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gCAAgC;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wCAAwC;IACxC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,
|
|
1
|
+
{"version":3,"file":"NativeRNWhisper.d.ts","sourceRoot":"","sources":["../../src/NativeRNWhisper.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { NativeWhisperContext } from './NativeRNWhisper';
|
|
1
2
|
import type { TranscribeOptions, TranscribeResult } from './NativeRNWhisper';
|
|
2
3
|
import AudioSessionIos from './AudioSessionIos';
|
|
3
4
|
import type { AudioSessionCategoryIos, AudioSessionCategoryOptionIos, AudioSessionModeIos } from './AudioSessionIos';
|
|
@@ -47,6 +48,11 @@ export type TranscribeRealtimeOptions = TranscribeOptions & {
|
|
|
47
48
|
* (Default: Equal to `realtimeMaxAudioSec`)
|
|
48
49
|
*/
|
|
49
50
|
realtimeAudioSliceSec?: number;
|
|
51
|
+
/**
|
|
52
|
+
* Min duration of audio to start transcribe in seconds for each slice.
|
|
53
|
+
* The minimum value is 0.5 ms and maximum value is realtimeAudioSliceSec (Default: 1)
|
|
54
|
+
*/
|
|
55
|
+
realtimeAudioMinSec?: number;
|
|
50
56
|
/**
|
|
51
57
|
* Output path for audio file. If not set, the audio file will not be saved
|
|
52
58
|
* (Default: Undefined)
|
|
@@ -59,7 +65,7 @@ export type TranscribeRealtimeOptions = TranscribeOptions & {
|
|
|
59
65
|
*/
|
|
60
66
|
useVad?: boolean;
|
|
61
67
|
/**
|
|
62
|
-
* The length of the collected audio is used for VAD. (ms) (Default: 2000)
|
|
68
|
+
* The length of the collected audio is used for VAD, cannot be less than 2000ms. (ms) (Default: 2000)
|
|
63
69
|
*/
|
|
64
70
|
vadMs?: number;
|
|
65
71
|
/**
|
|
@@ -118,16 +124,37 @@ export type TranscribeRealtimeNativeEvent = {
|
|
|
118
124
|
jobId: number;
|
|
119
125
|
payload: TranscribeRealtimeNativePayload;
|
|
120
126
|
};
|
|
127
|
+
export type BenchResult = {
|
|
128
|
+
config: string;
|
|
129
|
+
nThreads: number;
|
|
130
|
+
encodeMs: number;
|
|
131
|
+
decodeMs: number;
|
|
132
|
+
batchMs: number;
|
|
133
|
+
promptMs: number;
|
|
134
|
+
};
|
|
121
135
|
export declare class WhisperContext {
|
|
122
136
|
id: number;
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
137
|
+
gpu: boolean;
|
|
138
|
+
reasonNoGPU: string;
|
|
139
|
+
constructor({ contextId, gpu, reasonNoGPU, }: NativeWhisperContext);
|
|
140
|
+
private transcribeWithNativeMethod;
|
|
141
|
+
/**
|
|
142
|
+
* Transcribe audio file (path or base64 encoded wav file)
|
|
143
|
+
* base64: need add `data:audio/wav;base64,` prefix
|
|
144
|
+
*/
|
|
145
|
+
transcribe(filePathOrBase64: string | number, options?: TranscribeFileOptions): {
|
|
126
146
|
/** Stop the transcribe */
|
|
127
147
|
stop: () => Promise<void>;
|
|
128
148
|
/** Transcribe result promise */
|
|
129
149
|
promise: Promise<TranscribeResult>;
|
|
130
150
|
};
|
|
151
|
+
/**
|
|
152
|
+
* Transcribe audio data (base64 encoded float32 PCM data)
|
|
153
|
+
*/
|
|
154
|
+
transcribeData(data: string, options?: TranscribeFileOptions): {
|
|
155
|
+
stop: () => Promise<void>;
|
|
156
|
+
promise: Promise<TranscribeResult>;
|
|
157
|
+
};
|
|
131
158
|
/** Transcribe the microphone audio stream, the microphone user permission is required */
|
|
132
159
|
transcribeRealtime(options?: TranscribeRealtimeOptions): Promise<{
|
|
133
160
|
/** Stop the realtime transcribe */
|
|
@@ -135,6 +162,7 @@ export declare class WhisperContext {
|
|
|
135
162
|
/** Subscribe to realtime transcribe events */
|
|
136
163
|
subscribe: (callback: (event: TranscribeRealtimeEvent) => void) => void;
|
|
137
164
|
}>;
|
|
165
|
+
bench(maxThreads: number): Promise<BenchResult>;
|
|
138
166
|
release(): Promise<void>;
|
|
139
167
|
}
|
|
140
168
|
export type ContextOptions = {
|
|
@@ -152,8 +180,12 @@ export type ContextOptions = {
|
|
|
152
180
|
isBundleAsset?: boolean;
|
|
153
181
|
/** Prefer to use Core ML model if exists. If set to false, even if the Core ML model exists, it will not be used. */
|
|
154
182
|
useCoreMLIos?: boolean;
|
|
183
|
+
/** Use GPU if available. Currently iOS only, if it's enabled, Core ML option will be ignored. */
|
|
184
|
+
useGpu?: boolean;
|
|
185
|
+
/** Use Flash Attention, only recommended if GPU available */
|
|
186
|
+
useFlashAttn?: boolean;
|
|
155
187
|
};
|
|
156
|
-
export declare function initWhisper({ filePath, coreMLModelAsset, isBundleAsset, useCoreMLIos, }: ContextOptions): Promise<WhisperContext>;
|
|
188
|
+
export declare function initWhisper({ filePath, coreMLModelAsset, isBundleAsset, useGpu, useCoreMLIos, useFlashAttn, }: ContextOptions): Promise<WhisperContext>;
|
|
157
189
|
export declare function releaseAllWhisper(): Promise<void>;
|
|
158
190
|
/** Current version of whisper.cpp */
|
|
159
191
|
export declare const libVersion: string;
|