whisper.rn 0.4.0 → 0.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/README.md +69 -0
  2. package/android/src/main/java/com/rnwhisper/RNWhisper.java +212 -0
  3. package/android/src/main/java/com/rnwhisper/WhisperContext.java +34 -4
  4. package/android/src/main/java/com/rnwhisper/WhisperVadContext.java +101 -0
  5. package/android/src/main/jni.cpp +196 -0
  6. package/android/src/main/jniLibs/arm64-v8a/librnwhisper.so +0 -0
  7. package/android/src/main/jniLibs/arm64-v8a/librnwhisper_v8fp16_va_2.so +0 -0
  8. package/android/src/main/jniLibs/armeabi-v7a/librnwhisper.so +0 -0
  9. package/android/src/main/jniLibs/armeabi-v7a/librnwhisper_vfpv4.so +0 -0
  10. package/android/src/main/jniLibs/x86_64/librnwhisper.so +0 -0
  11. package/android/src/main/jniLibs/x86_64/librnwhisper_x86_64.so +0 -0
  12. package/android/src/newarch/java/com/rnwhisper/RNWhisperModule.java +26 -0
  13. package/android/src/oldarch/java/com/rnwhisper/RNWhisperModule.java +26 -0
  14. package/ios/RNWhisper.mm +147 -0
  15. package/ios/RNWhisperContext.mm +18 -24
  16. package/ios/RNWhisperVadContext.h +29 -0
  17. package/ios/RNWhisperVadContext.mm +148 -0
  18. package/jest/mock.js +19 -0
  19. package/lib/commonjs/NativeRNWhisper.js.map +1 -1
  20. package/lib/commonjs/index.js +111 -1
  21. package/lib/commonjs/index.js.map +1 -1
  22. package/lib/module/NativeRNWhisper.js.map +1 -1
  23. package/lib/module/index.js +112 -0
  24. package/lib/module/index.js.map +1 -1
  25. package/lib/typescript/NativeRNWhisper.d.ts +35 -0
  26. package/lib/typescript/NativeRNWhisper.d.ts.map +1 -1
  27. package/lib/typescript/index.d.ts +39 -3
  28. package/lib/typescript/index.d.ts.map +1 -1
  29. package/package.json +1 -1
  30. package/src/NativeRNWhisper.ts +48 -0
  31. package/src/index.ts +132 -1
@@ -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","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":"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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","WhisperVadContext","_ref3","detectSpeech","vadDetectSpeech","vadDetectSpeechFile","detectSpeechData","audioData","releaseVadContext","initWhisperVad","_ref4","initVadContext","releaseAllWhisperVad","releaseAllVadContexts"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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"}
@@ -1 +1 @@
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"}
1
+ {"version":3,"names":["TurboModuleRegistry","get"],"sourceRoot":"../../src","sources":["NativeRNWhisper.ts"],"mappings":"AACA,SAASA,mBAAmB,QAAQ,cAAc;;AAElD;;AAwJA,eAAeA,mBAAmB,CAACC,GAAG,CAAO,WAAW,CAAC"}
@@ -367,4 +367,116 @@ export const isUseCoreML = !!useCoreML;
367
367
  /** Is allow fallback to CPU if load CoreML model failed */
368
368
  export const isCoreMLAllowFallback = !!coreMLAllowFallback;
369
369
  export { AudioSessionIos };
370
+
371
+ //
372
+ // VAD (Voice Activity Detection) Context
373
+ //
374
+
375
+ export class WhisperVadContext {
376
+ gpu = false;
377
+ reasonNoGPU = '';
378
+ constructor(_ref3) {
379
+ let {
380
+ contextId,
381
+ gpu,
382
+ reasonNoGPU
383
+ } = _ref3;
384
+ this.id = contextId;
385
+ this.gpu = gpu;
386
+ this.reasonNoGPU = reasonNoGPU;
387
+ }
388
+
389
+ /**
390
+ * Detect speech segments in audio file (path or base64 encoded wav file)
391
+ * base64: need add `data:audio/wav;base64,` prefix
392
+ */
393
+ async detectSpeech(filePathOrBase64) {
394
+ let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
395
+ let path = '';
396
+ if (typeof filePathOrBase64 === 'number') {
397
+ try {
398
+ const source = Image.resolveAssetSource(filePathOrBase64);
399
+ if (source) path = source.uri;
400
+ } catch (e) {
401
+ throw new Error(`Invalid asset: ${filePathOrBase64}`);
402
+ }
403
+ } else {
404
+ if (filePathOrBase64.startsWith('http')) throw new Error('VAD remote file is not supported, please download it first');
405
+ path = filePathOrBase64;
406
+ }
407
+ if (path.startsWith('file://')) path = path.slice(7);
408
+
409
+ // Check if this is base64 encoded audio data
410
+ if (path.startsWith('data:audio/')) {
411
+ // This is base64 encoded audio data, use the raw data method
412
+ return RNWhisper.vadDetectSpeech(this.id, path, options);
413
+ } else {
414
+ // This is a file path, use the file method
415
+ return RNWhisper.vadDetectSpeechFile(this.id, path, options);
416
+ }
417
+ }
418
+
419
+ /**
420
+ * Detect speech segments in raw audio data (base64 encoded float32 PCM data)
421
+ */
422
+ async detectSpeechData(audioData) {
423
+ let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
424
+ return RNWhisper.vadDetectSpeech(this.id, audioData, options);
425
+ }
426
+ async release() {
427
+ return RNWhisper.releaseVadContext(this.id);
428
+ }
429
+ }
430
+
431
+ /**
432
+ * Initialize a VAD context for voice activity detection
433
+ * @param options VAD context options
434
+ * @returns Promise resolving to WhisperVadContext instance
435
+ */
436
+ export async function initWhisperVad(_ref4) {
437
+ let {
438
+ filePath,
439
+ isBundleAsset,
440
+ useGpu = true,
441
+ nThreads
442
+ } = _ref4;
443
+ let path = '';
444
+ if (typeof filePath === 'number') {
445
+ try {
446
+ const source = Image.resolveAssetSource(filePath);
447
+ if (source) {
448
+ path = source.uri;
449
+ }
450
+ } catch (e) {
451
+ throw new Error(`Invalid asset: ${filePath}`);
452
+ }
453
+ } else {
454
+ if (!isBundleAsset && filePath.startsWith('http')) throw new Error('VAD remote file is not supported, please download it first');
455
+ path = filePath;
456
+ }
457
+ if (path.startsWith('file://')) path = path.slice(7);
458
+ const {
459
+ contextId,
460
+ gpu,
461
+ reasonNoGPU
462
+ } = await RNWhisper.initVadContext({
463
+ filePath: path,
464
+ isBundleAsset: !!isBundleAsset,
465
+ useGpu,
466
+ nThreads
467
+ });
468
+ return new WhisperVadContext({
469
+ contextId,
470
+ gpu,
471
+ reasonNoGPU
472
+ });
473
+ }
474
+
475
+ /**
476
+ * Release all VAD contexts and free their memory
477
+ * @returns Promise resolving when all contexts are released
478
+ */
479
+ export async function releaseAllWhisperVad() {
480
+ return RNWhisper.releaseAllVadContexts();
481
+ }
370
482
  //# sourceMappingURL=index.js.map
@@ -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","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":"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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","WhisperVadContext","_ref3","detectSpeech","vadDetectSpeech","vadDetectSpeechFile","detectSpeechData","audioData","releaseVadContext","initWhisperVad","_ref4","initVadContext","releaseAllWhisperVad","releaseAllVadContexts"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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"}
@@ -57,6 +57,35 @@ export type NativeWhisperContext = {
57
57
  gpu: boolean;
58
58
  reasonNoGPU: string;
59
59
  };
60
+ export type VadOptions = {
61
+ /** Probability threshold to consider as speech (Default: 0.5) */
62
+ threshold?: number;
63
+ /** Min duration for a valid speech segment in ms (Default: 250) */
64
+ minSpeechDurationMs?: number;
65
+ /** Min silence duration to consider speech as ended in ms (Default: 100) */
66
+ minSilenceDurationMs?: number;
67
+ /** Max duration of a speech segment before forcing a new segment in seconds (Default: 30) */
68
+ maxSpeechDurationS?: number;
69
+ /** Padding added before and after speech segments in ms (Default: 30) */
70
+ speechPadMs?: number;
71
+ /** Overlap in seconds when copying audio samples from speech segment (Default: 0.1) */
72
+ samplesOverlap?: number;
73
+ };
74
+ type NativeVadContextOptions = {
75
+ filePath: string;
76
+ isBundleAsset: boolean;
77
+ useGpu?: boolean;
78
+ nThreads?: number;
79
+ };
80
+ export type NativeWhisperVadContext = {
81
+ contextId: number;
82
+ gpu: boolean;
83
+ reasonNoGPU: string;
84
+ };
85
+ export type VadSegment = {
86
+ t0: number;
87
+ t1: number;
88
+ };
60
89
  export interface Spec extends TurboModule {
61
90
  getConstants(): {
62
91
  useCoreML: boolean;
@@ -70,6 +99,12 @@ export interface Spec extends TurboModule {
70
99
  startRealtimeTranscribe(contextId: number, jobId: number, options: TranscribeOptions): Promise<void>;
71
100
  abortTranscribe(contextId: number, jobId: number): Promise<void>;
72
101
  bench(contextId: number, maxThreads: number): Promise<string>;
102
+ initVadContext(options: NativeVadContextOptions): Promise<NativeWhisperVadContext>;
103
+ releaseVadContext(contextId: number): Promise<void>;
104
+ releaseAllVadContexts(): Promise<void>;
105
+ vadDetectSpeech(contextId: number, audioData: string, // base64 encoded float32 PCM data
106
+ options: VadOptions): Promise<VadSegment[]>;
107
+ vadDetectSpeechFile(contextId: number, filePathOrBase64: string, options: VadOptions): Promise<VadSegment[]>;
73
108
  getAudioSessionCurrentCategory: () => Promise<{
74
109
  category: string;
75
110
  options: Array<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"NativeRNWhisper.d.ts","sourceRoot":"","sources":["../../src/NativeRNWhisper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NativeRNWhisper.d.ts","sourceRoot":"","sources":["../../src/NativeRNWhisper.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
- import { NativeWhisperContext } from './NativeRNWhisper';
2
- import type { TranscribeOptions, TranscribeResult } from './NativeRNWhisper';
1
+ import { NativeWhisperContext, NativeWhisperVadContext } from './NativeRNWhisper';
2
+ import type { TranscribeOptions, TranscribeResult, VadOptions, VadSegment } from './NativeRNWhisper';
3
3
  import AudioSessionIos from './AudioSessionIos';
4
4
  import type { AudioSessionCategoryIos, AudioSessionCategoryOptionIos, AudioSessionModeIos } from './AudioSessionIos';
5
- export type { TranscribeOptions, TranscribeResult, AudioSessionCategoryIos, AudioSessionCategoryOptionIos, AudioSessionModeIos, };
5
+ export type { TranscribeOptions, TranscribeResult, AudioSessionCategoryIos, AudioSessionCategoryOptionIos, AudioSessionModeIos, VadOptions, VadSegment, };
6
6
  export type TranscribeNewSegmentsResult = {
7
7
  nNew: number;
8
8
  totalNNew: number;
@@ -194,4 +194,40 @@ export declare const isUseCoreML: boolean;
194
194
  /** Is allow fallback to CPU if load CoreML model failed */
195
195
  export declare const isCoreMLAllowFallback: boolean;
196
196
  export { AudioSessionIos };
197
+ export type VadContextOptions = {
198
+ filePath: string | number;
199
+ /** Is the file path a bundle asset for pure string filePath */
200
+ isBundleAsset?: boolean;
201
+ /** Use GPU if available. Currently iOS only */
202
+ useGpu?: boolean;
203
+ /** Number of threads to use during computation (Default: 2 for 4-core devices, 4 for more cores) */
204
+ nThreads?: number;
205
+ };
206
+ export declare class WhisperVadContext {
207
+ id: number;
208
+ gpu: boolean;
209
+ reasonNoGPU: string;
210
+ constructor({ contextId, gpu, reasonNoGPU, }: NativeWhisperVadContext);
211
+ /**
212
+ * Detect speech segments in audio file (path or base64 encoded wav file)
213
+ * base64: need add `data:audio/wav;base64,` prefix
214
+ */
215
+ detectSpeech(filePathOrBase64: string | number, options?: VadOptions): Promise<VadSegment[]>;
216
+ /**
217
+ * Detect speech segments in raw audio data (base64 encoded float32 PCM data)
218
+ */
219
+ detectSpeechData(audioData: string, options?: VadOptions): Promise<VadSegment[]>;
220
+ release(): Promise<void>;
221
+ }
222
+ /**
223
+ * Initialize a VAD context for voice activity detection
224
+ * @param options VAD context options
225
+ * @returns Promise resolving to WhisperVadContext instance
226
+ */
227
+ export declare function initWhisperVad({ filePath, isBundleAsset, useGpu, nThreads, }: VadContextOptions): Promise<WhisperVadContext>;
228
+ /**
229
+ * Release all VAD contexts and free their memory
230
+ * @returns Promise resolving when all contexts are released
231
+ */
232
+ export declare function releaseAllWhisperVad(): Promise<void>;
197
233
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "whisper.rn",
3
- "version": "0.4.0",
3
+ "version": "0.4.2",
4
4
  "description": "React Native binding of whisper.cpp",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -65,6 +65,39 @@ export type NativeWhisperContext = {
65
65
  reasonNoGPU: string
66
66
  }
67
67
 
68
+ export type VadOptions = {
69
+ /** Probability threshold to consider as speech (Default: 0.5) */
70
+ threshold?: number,
71
+ /** Min duration for a valid speech segment in ms (Default: 250) */
72
+ minSpeechDurationMs?: number,
73
+ /** Min silence duration to consider speech as ended in ms (Default: 100) */
74
+ minSilenceDurationMs?: number,
75
+ /** Max duration of a speech segment before forcing a new segment in seconds (Default: 30) */
76
+ maxSpeechDurationS?: number,
77
+ /** Padding added before and after speech segments in ms (Default: 30) */
78
+ speechPadMs?: number,
79
+ /** Overlap in seconds when copying audio samples from speech segment (Default: 0.1) */
80
+ samplesOverlap?: number,
81
+ }
82
+
83
+ type NativeVadContextOptions = {
84
+ filePath: string,
85
+ isBundleAsset: boolean,
86
+ useGpu?: boolean,
87
+ nThreads?: number,
88
+ }
89
+
90
+ export type NativeWhisperVadContext = {
91
+ contextId: number
92
+ gpu: boolean
93
+ reasonNoGPU: string
94
+ }
95
+
96
+ export type VadSegment = {
97
+ t0: number
98
+ t1: number
99
+ }
100
+
68
101
  export interface Spec extends TurboModule {
69
102
  getConstants(): {
70
103
  useCoreML: boolean
@@ -94,6 +127,21 @@ export interface Spec extends TurboModule {
94
127
 
95
128
  bench(contextId: number, maxThreads: number): Promise<string>;
96
129
 
130
+ // VAD methods
131
+ initVadContext(options: NativeVadContextOptions): Promise<NativeWhisperVadContext>;
132
+ releaseVadContext(contextId: number): Promise<void>;
133
+ releaseAllVadContexts(): Promise<void>;
134
+ vadDetectSpeech(
135
+ contextId: number,
136
+ audioData: string, // base64 encoded float32 PCM data
137
+ options: VadOptions,
138
+ ): Promise<VadSegment[]>;
139
+ vadDetectSpeechFile(
140
+ contextId: number,
141
+ filePathOrBase64: string,
142
+ options: VadOptions,
143
+ ): Promise<VadSegment[]>;
144
+
97
145
  // iOS specific
98
146
  getAudioSessionCurrentCategory: () => Promise<{
99
147
  category: string,
package/src/index.ts CHANGED
@@ -5,11 +5,13 @@ import {
5
5
  DeviceEventEmitterStatic,
6
6
  Image,
7
7
  } from 'react-native'
8
- import RNWhisper, { NativeWhisperContext } from './NativeRNWhisper'
8
+ import RNWhisper, { NativeWhisperContext, NativeWhisperVadContext } from './NativeRNWhisper'
9
9
  import type {
10
10
  TranscribeOptions,
11
11
  TranscribeResult,
12
12
  CoreMLAsset,
13
+ VadOptions,
14
+ VadSegment,
13
15
  } from './NativeRNWhisper'
14
16
  import AudioSessionIos from './AudioSessionIos'
15
17
  import type {
@@ -34,6 +36,8 @@ export type {
34
36
  AudioSessionCategoryIos,
35
37
  AudioSessionCategoryOptionIos,
36
38
  AudioSessionModeIos,
39
+ VadOptions,
40
+ VadSegment,
37
41
  }
38
42
 
39
43
  const EVENT_ON_TRANSCRIBE_PROGRESS = '@RNWhisper_onTranscribeProgress'
@@ -582,3 +586,130 @@ export const isUseCoreML: boolean = !!useCoreML
582
586
  export const isCoreMLAllowFallback: boolean = !!coreMLAllowFallback
583
587
 
584
588
  export { AudioSessionIos }
589
+
590
+ //
591
+ // VAD (Voice Activity Detection) Context
592
+ //
593
+
594
+ export type VadContextOptions = {
595
+ filePath: string | number
596
+ /** Is the file path a bundle asset for pure string filePath */
597
+ isBundleAsset?: boolean
598
+ /** Use GPU if available. Currently iOS only */
599
+ useGpu?: boolean
600
+ /** Number of threads to use during computation (Default: 2 for 4-core devices, 4 for more cores) */
601
+ nThreads?: number
602
+ }
603
+
604
+ export class WhisperVadContext {
605
+ id: number
606
+
607
+ gpu: boolean = false
608
+
609
+ reasonNoGPU: string = ''
610
+
611
+ constructor({
612
+ contextId,
613
+ gpu,
614
+ reasonNoGPU,
615
+ }: NativeWhisperVadContext) {
616
+ this.id = contextId
617
+ this.gpu = gpu
618
+ this.reasonNoGPU = reasonNoGPU
619
+ }
620
+
621
+ /**
622
+ * Detect speech segments in audio file (path or base64 encoded wav file)
623
+ * base64: need add `data:audio/wav;base64,` prefix
624
+ */
625
+ async detectSpeech(
626
+ filePathOrBase64: string | number,
627
+ options: VadOptions = {}
628
+ ): Promise<VadSegment[]> {
629
+ let path = ''
630
+ if (typeof filePathOrBase64 === 'number') {
631
+ try {
632
+ const source = Image.resolveAssetSource(filePathOrBase64)
633
+ if (source) path = source.uri
634
+ } catch (e) {
635
+ throw new Error(`Invalid asset: ${filePathOrBase64}`)
636
+ }
637
+ } else {
638
+ if (filePathOrBase64.startsWith('http'))
639
+ throw new Error(
640
+ 'VAD remote file is not supported, please download it first',
641
+ )
642
+ path = filePathOrBase64
643
+ }
644
+ if (path.startsWith('file://')) path = path.slice(7)
645
+
646
+ // Check if this is base64 encoded audio data
647
+ if (path.startsWith('data:audio/')) {
648
+ // This is base64 encoded audio data, use the raw data method
649
+ return RNWhisper.vadDetectSpeech(this.id, path, options)
650
+ } else {
651
+ // This is a file path, use the file method
652
+ return RNWhisper.vadDetectSpeechFile(this.id, path, options)
653
+ }
654
+ }
655
+
656
+ /**
657
+ * Detect speech segments in raw audio data (base64 encoded float32 PCM data)
658
+ */
659
+ async detectSpeechData(
660
+ audioData: string,
661
+ options: VadOptions = {}
662
+ ): Promise<VadSegment[]> {
663
+ return RNWhisper.vadDetectSpeech(this.id, audioData, options)
664
+ }
665
+
666
+ async release(): Promise<void> {
667
+ return RNWhisper.releaseVadContext(this.id)
668
+ }
669
+ }
670
+
671
+ /**
672
+ * Initialize a VAD context for voice activity detection
673
+ * @param options VAD context options
674
+ * @returns Promise resolving to WhisperVadContext instance
675
+ */
676
+ export async function initWhisperVad({
677
+ filePath,
678
+ isBundleAsset,
679
+ useGpu = true,
680
+ nThreads,
681
+ }: VadContextOptions): Promise<WhisperVadContext> {
682
+ let path = ''
683
+ if (typeof filePath === 'number') {
684
+ try {
685
+ const source = Image.resolveAssetSource(filePath)
686
+ if (source) {
687
+ path = source.uri
688
+ }
689
+ } catch (e) {
690
+ throw new Error(`Invalid asset: ${filePath}`)
691
+ }
692
+ } else {
693
+ if (!isBundleAsset && filePath.startsWith('http'))
694
+ throw new Error(
695
+ 'VAD remote file is not supported, please download it first',
696
+ )
697
+ path = filePath
698
+ }
699
+ if (path.startsWith('file://')) path = path.slice(7)
700
+ const { contextId, gpu, reasonNoGPU } = await RNWhisper.initVadContext({
701
+ filePath: path,
702
+ isBundleAsset: !!isBundleAsset,
703
+ useGpu,
704
+ nThreads,
705
+ })
706
+ return new WhisperVadContext({ contextId, gpu, reasonNoGPU })
707
+ }
708
+
709
+ /**
710
+ * Release all VAD contexts and free their memory
711
+ * @returns Promise resolving when all contexts are released
712
+ */
713
+ export async function releaseAllWhisperVad(): Promise<void> {
714
+ return RNWhisper.releaseAllVadContexts()
715
+ }