whisper.rn 0.3.0-rc.2 → 0.3.0-rc.4
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 +1 -1
- package/android/src/main/java/com/rnwhisper/WhisperContext.java +14 -12
- package/cpp/ggml.c +399 -162
- package/cpp/ggml.h +13 -3
- package/cpp/whisper.cpp +15 -1
- package/cpp/whisper.h +3 -0
- package/ios/RNWhisperContext.mm +19 -20
- package/lib/commonjs/index.js +8 -1
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/version.json +1 -0
- package/lib/module/index.js +5 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/version.json +1 -0
- package/lib/typescript/index.d.ts +4 -3
- package/lib/typescript/index.d.ts.map +1 -1
- package/package.json +5 -2
- package/src/index.ts +6 -2
- package/src/version.json +1 -0
package/cpp/ggml.h
CHANGED
|
@@ -190,7 +190,7 @@
|
|
|
190
190
|
#define GGML_FILE_MAGIC 0x67676d6c // "ggml"
|
|
191
191
|
#define GGML_FILE_VERSION 1
|
|
192
192
|
|
|
193
|
-
#define GGML_QNT_VERSION
|
|
193
|
+
#define GGML_QNT_VERSION 2 // bump this on quantization format changes
|
|
194
194
|
#define GGML_QNT_VERSION_FACTOR 1000 // do not change this
|
|
195
195
|
|
|
196
196
|
#define GGML_MAX_DIMS 4
|
|
@@ -313,6 +313,7 @@ extern "C" {
|
|
|
313
313
|
GGML_OP_ROPE,
|
|
314
314
|
GGML_OP_ROPE_BACK,
|
|
315
315
|
GGML_OP_ALIBI,
|
|
316
|
+
GGML_OP_CLAMP,
|
|
316
317
|
GGML_OP_CONV_1D_1S,
|
|
317
318
|
GGML_OP_CONV_1D_2S,
|
|
318
319
|
|
|
@@ -849,7 +850,7 @@ extern "C" {
|
|
|
849
850
|
int n_past);
|
|
850
851
|
|
|
851
852
|
// in-place, returns view(a)
|
|
852
|
-
GGML_API struct ggml_tensor *
|
|
853
|
+
GGML_API struct ggml_tensor * ggml_diag_mask_zero_inplace(
|
|
853
854
|
struct ggml_context * ctx,
|
|
854
855
|
struct ggml_tensor * a,
|
|
855
856
|
int n_past);
|
|
@@ -897,7 +898,16 @@ extern "C" {
|
|
|
897
898
|
struct ggml_context * ctx,
|
|
898
899
|
struct ggml_tensor * a,
|
|
899
900
|
int n_past,
|
|
900
|
-
int n_head
|
|
901
|
+
int n_head,
|
|
902
|
+
float bias_max);
|
|
903
|
+
|
|
904
|
+
// clamp
|
|
905
|
+
// in-place, returns view(a)
|
|
906
|
+
struct ggml_tensor * ggml_clamp(
|
|
907
|
+
struct ggml_context * ctx,
|
|
908
|
+
struct ggml_tensor * a,
|
|
909
|
+
float min,
|
|
910
|
+
float max);
|
|
901
911
|
|
|
902
912
|
// padding = 1
|
|
903
913
|
// TODO: we don't support extra parameters for now
|
package/cpp/whisper.cpp
CHANGED
|
@@ -139,7 +139,7 @@ static const std::map<std::string, std::pair<int, std::string>> g_lang = {
|
|
|
139
139
|
{ "hi", { 17, "hindi", } },
|
|
140
140
|
{ "fi", { 18, "finnish", } },
|
|
141
141
|
{ "vi", { 19, "vietnamese", } },
|
|
142
|
-
{ "
|
|
142
|
+
{ "he", { 20, "hebrew", } },
|
|
143
143
|
{ "uk", { 21, "ukrainian", } },
|
|
144
144
|
{ "el", { 22, "greek", } },
|
|
145
145
|
{ "ms", { 23, "malay", } },
|
|
@@ -2852,6 +2852,12 @@ void whisper_free(struct whisper_context * ctx) {
|
|
|
2852
2852
|
}
|
|
2853
2853
|
}
|
|
2854
2854
|
|
|
2855
|
+
void whisper_free_params(struct whisper_full_params * params) {
|
|
2856
|
+
if (params) {
|
|
2857
|
+
delete params;
|
|
2858
|
+
}
|
|
2859
|
+
}
|
|
2860
|
+
|
|
2855
2861
|
int whisper_pcm_to_mel_with_state(struct whisper_context * ctx, struct whisper_state * state, const float * samples, int n_samples, int n_threads) {
|
|
2856
2862
|
if (!log_mel_spectrogram(*state, samples, n_samples, WHISPER_SAMPLE_RATE, WHISPER_N_FFT, WHISPER_HOP_LENGTH, WHISPER_N_MEL, n_threads, ctx->model.filters, false, state->mel)) {
|
|
2857
2863
|
fprintf(stderr, "%s: failed to compute mel spectrogram\n", __func__);
|
|
@@ -3285,6 +3291,14 @@ const char * whisper_print_system_info(void) {
|
|
|
3285
3291
|
|
|
3286
3292
|
////////////////////////////////////////////////////////////////////////////
|
|
3287
3293
|
|
|
3294
|
+
struct whisper_full_params * whisper_full_default_params_by_ref(enum whisper_sampling_strategy strategy) {
|
|
3295
|
+
struct whisper_full_params params = whisper_full_default_params(strategy);
|
|
3296
|
+
|
|
3297
|
+
struct whisper_full_params* result = new whisper_full_params();
|
|
3298
|
+
*result = params;
|
|
3299
|
+
return result;
|
|
3300
|
+
}
|
|
3301
|
+
|
|
3288
3302
|
struct whisper_full_params whisper_full_default_params(enum whisper_sampling_strategy strategy) {
|
|
3289
3303
|
struct whisper_full_params result = {
|
|
3290
3304
|
/*.strategy =*/ strategy,
|
package/cpp/whisper.h
CHANGED
|
@@ -113,6 +113,7 @@ extern "C" {
|
|
|
113
113
|
// Frees all allocated memory
|
|
114
114
|
WHISPER_API void whisper_free (struct whisper_context * ctx);
|
|
115
115
|
WHISPER_API void whisper_free_state(struct whisper_state * state);
|
|
116
|
+
WHISPER_API void whisper_free_params(struct whisper_full_params * params);
|
|
116
117
|
|
|
117
118
|
// Convert RAW PCM audio to log mel spectrogram.
|
|
118
119
|
// The resulting spectrogram is stored inside the default state of the provided whisper context.
|
|
@@ -409,6 +410,8 @@ extern "C" {
|
|
|
409
410
|
void * logits_filter_callback_user_data;
|
|
410
411
|
};
|
|
411
412
|
|
|
413
|
+
// NOTE: this function allocates memory, and it is the responsibility of the caller to free the pointer - see whisper_free_params()
|
|
414
|
+
WHISPER_API struct whisper_full_params * whisper_full_default_params_by_ref(enum whisper_sampling_strategy strategy);
|
|
412
415
|
WHISPER_API struct whisper_full_params whisper_full_default_params(enum whisper_sampling_strategy strategy);
|
|
413
416
|
|
|
414
417
|
// Run the entire model: PCM -> log mel spectrogram -> encoder -> decoder -> text
|
package/ios/RNWhisperContext.mm
CHANGED
|
@@ -180,14 +180,26 @@ void AudioInputCallback(void * inUserData,
|
|
|
180
180
|
}
|
|
181
181
|
|
|
182
182
|
nSamplesOfIndex = [[state->sliceNSamples objectAtIndex:state->transcribeSliceIndex] intValue];
|
|
183
|
+
|
|
184
|
+
bool isStopped = state->isStoppedByAction || (
|
|
185
|
+
!state->isCapturing &&
|
|
186
|
+
state->nSamplesTranscribing == nSamplesOfIndex &&
|
|
187
|
+
state->sliceIndex == state->transcribeSliceIndex
|
|
188
|
+
);
|
|
189
|
+
|
|
183
190
|
if (
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
state->nSamplesTranscribing == nSamplesOfIndex &&
|
|
188
|
-
state->sliceIndex == state->transcribeSliceIndex
|
|
189
|
-
)
|
|
191
|
+
// If no more samples on current slice, move to next slice
|
|
192
|
+
state->nSamplesTranscribing == nSamplesOfIndex &&
|
|
193
|
+
state->transcribeSliceIndex != state->sliceIndex
|
|
190
194
|
) {
|
|
195
|
+
state->transcribeSliceIndex++;
|
|
196
|
+
state->nSamplesTranscribing = 0;
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
bool continueNeeded = !state->isCapturing &&
|
|
200
|
+
state->nSamplesTranscribing != nSamplesOfIndex;
|
|
201
|
+
|
|
202
|
+
if (isStopped && !continueNeeded) {
|
|
191
203
|
NSLog(@"[RNWhisper] Transcribe end");
|
|
192
204
|
result[@"isStoppedByAction"] = @(state->isStoppedByAction);
|
|
193
205
|
result[@"isCapturing"] = @(false);
|
|
@@ -200,19 +212,7 @@ void AudioInputCallback(void * inUserData,
|
|
|
200
212
|
state->transcribeHandler(state->jobId, @"transcribe", result);
|
|
201
213
|
}
|
|
202
214
|
|
|
203
|
-
if (
|
|
204
|
-
// If no more samples on current slice, move to next slice
|
|
205
|
-
state->nSamplesTranscribing == nSamplesOfIndex &&
|
|
206
|
-
state->transcribeSliceIndex != state->sliceIndex
|
|
207
|
-
) {
|
|
208
|
-
state->transcribeSliceIndex++;
|
|
209
|
-
state->nSamplesTranscribing = 0;
|
|
210
|
-
}
|
|
211
|
-
|
|
212
|
-
if (
|
|
213
|
-
!state->isCapturing &&
|
|
214
|
-
state->nSamplesTranscribing != nSamplesOfIndex
|
|
215
|
-
) {
|
|
215
|
+
if (continueNeeded) {
|
|
216
216
|
state->isTranscribing = true;
|
|
217
217
|
// Finish transcribing the rest of the samples
|
|
218
218
|
[self fullTranscribeSamples:state];
|
|
@@ -285,7 +285,6 @@ void AudioInputCallback(void * inUserData,
|
|
|
285
285
|
if (!self->recordState.isRealtime || !self->recordState.isCapturing) {
|
|
286
286
|
return;
|
|
287
287
|
}
|
|
288
|
-
self->recordState.isTranscribing = false;
|
|
289
288
|
self->recordState.isCapturing = false;
|
|
290
289
|
self->recordState.isStoppedByAction = true;
|
|
291
290
|
[self stopAudio];
|
package/lib/commonjs/index.js
CHANGED
|
@@ -3,10 +3,12 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
+
exports.WhisperContext = void 0;
|
|
6
7
|
exports.initWhisper = initWhisper;
|
|
7
|
-
exports.isUseCoreML = exports.isCoreMLAllowFallback = void 0;
|
|
8
|
+
exports.libVersion = exports.isUseCoreML = exports.isCoreMLAllowFallback = void 0;
|
|
8
9
|
exports.releaseAllWhisper = releaseAllWhisper;
|
|
9
10
|
var _reactNative = require("react-native");
|
|
11
|
+
var _version = require("./version.json");
|
|
10
12
|
const LINKING_ERROR = `The package 'whisper.rn' doesn't seem to be linked. Make sure: \n\n${_reactNative.Platform.select({
|
|
11
13
|
ios: "- You have run 'pod install'\n",
|
|
12
14
|
default: ''
|
|
@@ -141,6 +143,7 @@ class WhisperContext {
|
|
|
141
143
|
return RNWhisper.releaseContext(this.id);
|
|
142
144
|
}
|
|
143
145
|
}
|
|
146
|
+
exports.WhisperContext = WhisperContext;
|
|
144
147
|
async function initWhisper() {
|
|
145
148
|
let {
|
|
146
149
|
filePath,
|
|
@@ -153,7 +156,11 @@ async function releaseAllWhisper() {
|
|
|
153
156
|
return RNWhisper.releaseAllContexts();
|
|
154
157
|
}
|
|
155
158
|
|
|
159
|
+
/** Current version of whisper.cpp */
|
|
160
|
+
const libVersion = _version.version;
|
|
161
|
+
|
|
156
162
|
/** Is use CoreML models on iOS */
|
|
163
|
+
exports.libVersion = libVersion;
|
|
157
164
|
const isUseCoreML = !!RNWhisper.WHISPER_USE_COREML;
|
|
158
165
|
|
|
159
166
|
/** Is allow fallback to CPU if load CoreML model failed */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","LINKING_ERROR","Platform","select","ios","default","RNWhisper","NativeModules","Proxy","get","Error","EventEmitter","OS","NativeEventEmitter","DeviceEventEmitter","EVENT_ON_REALTIME_TRANSCRIBE","EVENT_ON_REALTIME_TRANSCRIBE_END","WhisperContext","constructor","id","transcribe","path","options","arguments","length","undefined","jobId","Math","floor","random","stop","abortTranscribe","promise","transcribeFile","transcribeRealtime","startRealtimeTranscribe","lastTranscribePayload","slices","sliceIndex","tOffset","putSlice","payload","isUseSlices","_slices$sliceIndex","_segments","segments","data","t1","map","segment","t0","mergeSlicesIfNeeded","mergedPayload","forEach","slice","_mergedPayload$data","_slice$data","_mergedPayload$data2","_slice$data2","result","processTime","recordingTime","subscribe","callback","transcribeListener","addListener","evt","contextId","endListener","lastPayload","isCapturing","remove","release","releaseContext","initWhisper","filePath","isBundleAsset","initContext","releaseAllWhisper","releaseAllContexts","
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_version","LINKING_ERROR","Platform","select","ios","default","RNWhisper","NativeModules","Proxy","get","Error","EventEmitter","OS","NativeEventEmitter","DeviceEventEmitter","EVENT_ON_REALTIME_TRANSCRIBE","EVENT_ON_REALTIME_TRANSCRIBE_END","WhisperContext","constructor","id","transcribe","path","options","arguments","length","undefined","jobId","Math","floor","random","stop","abortTranscribe","promise","transcribeFile","transcribeRealtime","startRealtimeTranscribe","lastTranscribePayload","slices","sliceIndex","tOffset","putSlice","payload","isUseSlices","_slices$sliceIndex","_segments","segments","data","t1","map","segment","t0","mergeSlicesIfNeeded","mergedPayload","forEach","slice","_mergedPayload$data","_slice$data","_mergedPayload$data2","_slice$data2","result","processTime","recordingTime","subscribe","callback","transcribeListener","addListener","evt","contextId","endListener","lastPayload","isCapturing","remove","release","releaseContext","exports","initWhisper","filePath","isBundleAsset","initContext","releaseAllWhisper","releaseAllContexts","libVersion","version","isUseCoreML","WHISPER_USE_COREML","isCoreMLAllowFallback","WHISPER_COREML_ALLOW_FALLBACK"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":"1.4.2"}
|
package/lib/module/index.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { NativeEventEmitter, DeviceEventEmitter, NativeModules, Platform } from 'react-native';
|
|
2
|
+
import { version } from './version.json';
|
|
2
3
|
const LINKING_ERROR = `The package 'whisper.rn' doesn't seem to be linked. Make sure: \n\n${Platform.select({
|
|
3
4
|
ios: "- You have run 'pod install'\n",
|
|
4
5
|
default: ''
|
|
@@ -17,7 +18,7 @@ if (Platform.OS === 'android') {
|
|
|
17
18
|
}
|
|
18
19
|
const EVENT_ON_REALTIME_TRANSCRIBE = '@RNWhisper_onRealtimeTranscribe';
|
|
19
20
|
const EVENT_ON_REALTIME_TRANSCRIBE_END = '@RNWhisper_onRealtimeTranscribeEnd';
|
|
20
|
-
class WhisperContext {
|
|
21
|
+
export class WhisperContext {
|
|
21
22
|
constructor(id) {
|
|
22
23
|
this.id = id;
|
|
23
24
|
}
|
|
@@ -145,6 +146,9 @@ export async function releaseAllWhisper() {
|
|
|
145
146
|
return RNWhisper.releaseAllContexts();
|
|
146
147
|
}
|
|
147
148
|
|
|
149
|
+
/** Current version of whisper.cpp */
|
|
150
|
+
export const libVersion = version;
|
|
151
|
+
|
|
148
152
|
/** Is use CoreML models on iOS */
|
|
149
153
|
export const isUseCoreML = !!RNWhisper.WHISPER_USE_COREML;
|
|
150
154
|
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NativeEventEmitter","DeviceEventEmitter","NativeModules","Platform","LINKING_ERROR","select","ios","default","RNWhisper","Proxy","get","Error","EventEmitter","OS","EVENT_ON_REALTIME_TRANSCRIBE","EVENT_ON_REALTIME_TRANSCRIBE_END","WhisperContext","constructor","id","transcribe","path","options","arguments","length","undefined","jobId","Math","floor","random","stop","abortTranscribe","promise","transcribeFile","transcribeRealtime","startRealtimeTranscribe","lastTranscribePayload","slices","sliceIndex","tOffset","putSlice","payload","isUseSlices","_slices$sliceIndex","_segments","segments","data","t1","map","segment","t0","mergeSlicesIfNeeded","mergedPayload","forEach","slice","_mergedPayload$data","_slice$data","_mergedPayload$data2","_slice$data2","result","processTime","recordingTime","subscribe","callback","transcribeListener","addListener","evt","contextId","endListener","lastPayload","isCapturing","remove","release","releaseContext","initWhisper","filePath","isBundleAsset","initContext","releaseAllWhisper","releaseAllContexts","isUseCoreML","WHISPER_USE_COREML","isCoreMLAllowFallback","WHISPER_COREML_ALLOW_FALLBACK"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"AAAA,SACEA,kBAAkB,EAClBC,kBAAkB,EAClBC,aAAa,EACbC,QAAQ,QAEH,cAAc;
|
|
1
|
+
{"version":3,"names":["NativeEventEmitter","DeviceEventEmitter","NativeModules","Platform","version","LINKING_ERROR","select","ios","default","RNWhisper","Proxy","get","Error","EventEmitter","OS","EVENT_ON_REALTIME_TRANSCRIBE","EVENT_ON_REALTIME_TRANSCRIBE_END","WhisperContext","constructor","id","transcribe","path","options","arguments","length","undefined","jobId","Math","floor","random","stop","abortTranscribe","promise","transcribeFile","transcribeRealtime","startRealtimeTranscribe","lastTranscribePayload","slices","sliceIndex","tOffset","putSlice","payload","isUseSlices","_slices$sliceIndex","_segments","segments","data","t1","map","segment","t0","mergeSlicesIfNeeded","mergedPayload","forEach","slice","_mergedPayload$data","_slice$data","_mergedPayload$data2","_slice$data2","result","processTime","recordingTime","subscribe","callback","transcribeListener","addListener","evt","contextId","endListener","lastPayload","isCapturing","remove","release","releaseContext","initWhisper","filePath","isBundleAsset","initContext","releaseAllWhisper","releaseAllContexts","libVersion","isUseCoreML","WHISPER_USE_COREML","isCoreMLAllowFallback","WHISPER_COREML_ALLOW_FALLBACK"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":"1.4.2"}
|
|
@@ -87,7 +87,7 @@ export type TranscribeRealtimeNativeEvent = {
|
|
|
87
87
|
jobId: number;
|
|
88
88
|
payload: TranscribeRealtimeNativePayload;
|
|
89
89
|
};
|
|
90
|
-
declare class WhisperContext {
|
|
90
|
+
export declare class WhisperContext {
|
|
91
91
|
id: number;
|
|
92
92
|
constructor(id: number);
|
|
93
93
|
/** Transcribe audio file */
|
|
@@ -104,16 +104,17 @@ declare class WhisperContext {
|
|
|
104
104
|
/** Subscribe to realtime transcribe events */
|
|
105
105
|
subscribe: (callback: (event: TranscribeRealtimeEvent) => void) => void;
|
|
106
106
|
}>;
|
|
107
|
-
release(): Promise<
|
|
107
|
+
release(): Promise<void>;
|
|
108
108
|
}
|
|
109
109
|
export declare function initWhisper({ filePath, isBundleAsset }?: {
|
|
110
110
|
filePath?: string;
|
|
111
111
|
isBundleAsset?: boolean;
|
|
112
112
|
}): Promise<WhisperContext>;
|
|
113
113
|
export declare function releaseAllWhisper(): Promise<void>;
|
|
114
|
+
/** Current version of whisper.cpp */
|
|
115
|
+
export declare const libVersion: string;
|
|
114
116
|
/** Is use CoreML models on iOS */
|
|
115
117
|
export declare const isUseCoreML: boolean;
|
|
116
118
|
/** Is allow fallback to CPU if load CoreML model failed */
|
|
117
119
|
export declare const isCoreMLAllowFallback: boolean;
|
|
118
|
-
export {};
|
|
119
120
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"
|
|
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.3.0-rc.
|
|
3
|
+
"version": "0.3.0-rc.4",
|
|
4
4
|
"description": "React Native binding of whisper.cpp",
|
|
5
5
|
"main": "lib/commonjs/index",
|
|
6
6
|
"module": "lib/module/index",
|
|
@@ -30,9 +30,10 @@
|
|
|
30
30
|
],
|
|
31
31
|
"scripts": {
|
|
32
32
|
"bootstrap": "./scripts/bootstrap.sh",
|
|
33
|
+
"docgen": "typedoc src/index.ts --plugin typedoc-plugin-markdown --readme none",
|
|
33
34
|
"lint": "eslint \"**/*.{js,ts,tsx}\"",
|
|
34
35
|
"typecheck": "tsc --noEmit",
|
|
35
|
-
"prepack": "bob build",
|
|
36
|
+
"prepack": "yarn docgen && bob build",
|
|
36
37
|
"test": "jest",
|
|
37
38
|
"example": "yarn --cwd example",
|
|
38
39
|
"clean": "del-cli android/build example/android/build example/android/app/build example/ios/build"
|
|
@@ -74,6 +75,8 @@
|
|
|
74
75
|
"react-native": "0.71.4",
|
|
75
76
|
"react-native-builder-bob": "^0.20.4",
|
|
76
77
|
"release-it": "^15.8.0",
|
|
78
|
+
"typedoc": "^0.24.7",
|
|
79
|
+
"typedoc-plugin-markdown": "^3.15.3",
|
|
77
80
|
"typescript": "^4.9.5"
|
|
78
81
|
},
|
|
79
82
|
"resolutions": {
|
package/src/index.ts
CHANGED
|
@@ -5,6 +5,7 @@ import {
|
|
|
5
5
|
Platform,
|
|
6
6
|
DeviceEventEmitterStatic,
|
|
7
7
|
} from 'react-native'
|
|
8
|
+
import { version } from './version.json'
|
|
8
9
|
|
|
9
10
|
const LINKING_ERROR =
|
|
10
11
|
`The package 'whisper.rn' doesn't seem to be linked. Make sure: \n\n${Platform.select({ ios: "- You have run 'pod install'\n", default: '' })
|
|
@@ -127,7 +128,7 @@ export type TranscribeRealtimeNativeEvent = {
|
|
|
127
128
|
payload: TranscribeRealtimeNativePayload,
|
|
128
129
|
}
|
|
129
130
|
|
|
130
|
-
class WhisperContext {
|
|
131
|
+
export class WhisperContext {
|
|
131
132
|
id: number
|
|
132
133
|
|
|
133
134
|
constructor(id: number) {
|
|
@@ -250,7 +251,7 @@ class WhisperContext {
|
|
|
250
251
|
}
|
|
251
252
|
}
|
|
252
253
|
|
|
253
|
-
async release() {
|
|
254
|
+
async release(): Promise<void> {
|
|
254
255
|
return RNWhisper.releaseContext(this.id)
|
|
255
256
|
}
|
|
256
257
|
}
|
|
@@ -266,6 +267,9 @@ export async function releaseAllWhisper(): Promise<void> {
|
|
|
266
267
|
return RNWhisper.releaseAllContexts()
|
|
267
268
|
}
|
|
268
269
|
|
|
270
|
+
/** Current version of whisper.cpp */
|
|
271
|
+
export const libVersion: string = version
|
|
272
|
+
|
|
269
273
|
/** Is use CoreML models on iOS */
|
|
270
274
|
export const isUseCoreML: boolean = !!RNWhisper.WHISPER_USE_COREML
|
|
271
275
|
|
package/src/version.json
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":"1.4.2"}
|