whisper.rn 0.3.7 → 0.3.8
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 +28 -0
- package/android/src/main/java/com/rnwhisper/AudioUtils.java +119 -0
- package/android/src/main/java/com/rnwhisper/WhisperContext.java +37 -116
- package/android/src/main/jni.cpp +23 -12
- package/android/src/newarch/java/com/rnwhisper/RNWhisperModule.java +26 -0
- package/ios/RNWhisper.mm +81 -22
- package/ios/RNWhisper.xcodeproj/project.pbxproj +6 -0
- package/ios/RNWhisper.xcodeproj/project.xcworkspace/xcuserdata/jhen.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
- package/ios/RNWhisperAudioSessionUtils.h +13 -0
- package/ios/RNWhisperAudioSessionUtils.m +85 -0
- package/ios/RNWhisperAudioUtils.h +1 -0
- package/ios/RNWhisperAudioUtils.m +21 -0
- package/ios/RNWhisperContext.h +1 -0
- package/ios/RNWhisperContext.mm +56 -28
- package/lib/commonjs/AudioSessionIos.js +91 -0
- package/lib/commonjs/AudioSessionIos.js.map +1 -0
- package/lib/commonjs/NativeRNWhisper.js.map +1 -1
- package/lib/commonjs/index.js +82 -14
- package/lib/commonjs/index.js.map +1 -1
- package/lib/module/AudioSessionIos.js +83 -0
- package/lib/module/AudioSessionIos.js.map +1 -0
- package/lib/module/NativeRNWhisper.js.map +1 -1
- package/lib/module/index.js +77 -14
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/AudioSessionIos.d.ts +54 -0
- package/lib/typescript/AudioSessionIos.d.ts.map +1 -0
- package/lib/typescript/NativeRNWhisper.d.ts +8 -0
- package/lib/typescript/NativeRNWhisper.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +37 -2
- package/lib/typescript/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/AudioSessionIos.ts +90 -0
- package/src/NativeRNWhisper.ts +11 -1
- package/src/index.ts +153 -26
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { Platform } from 'react-native';
|
|
2
|
+
import RNWhisper from './NativeRNWhisper';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* @see https://developer.apple.com/documentation/avfaudio/avaudiosessioncategory?language=objc
|
|
6
|
+
*/
|
|
7
|
+
export let AudioSessionCategoryIos;
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* @see https://developer.apple.com/documentation/avfaudio/avaudiosessioncategoryoptions?language=objc
|
|
11
|
+
*/
|
|
12
|
+
(function (AudioSessionCategoryIos) {
|
|
13
|
+
AudioSessionCategoryIos["Ambient"] = "Ambient";
|
|
14
|
+
AudioSessionCategoryIos["SoloAmbient"] = "SoloAmbient";
|
|
15
|
+
AudioSessionCategoryIos["Playback"] = "Playback";
|
|
16
|
+
AudioSessionCategoryIos["Record"] = "Record";
|
|
17
|
+
AudioSessionCategoryIos["PlayAndRecord"] = "PlayAndRecord";
|
|
18
|
+
AudioSessionCategoryIos["MultiRoute"] = "MultiRoute";
|
|
19
|
+
})(AudioSessionCategoryIos || (AudioSessionCategoryIos = {}));
|
|
20
|
+
export let AudioSessionCategoryOptionIos;
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* @see https://developer.apple.com/documentation/avfaudio/avaudiosessionmode?language=objc
|
|
24
|
+
*/
|
|
25
|
+
(function (AudioSessionCategoryOptionIos) {
|
|
26
|
+
AudioSessionCategoryOptionIos["MixWithOthers"] = "MixWithOthers";
|
|
27
|
+
AudioSessionCategoryOptionIos["DuckOthers"] = "DuckOthers";
|
|
28
|
+
AudioSessionCategoryOptionIos["InterruptSpokenAudioAndMixWithOthers"] = "InterruptSpokenAudioAndMixWithOthers";
|
|
29
|
+
AudioSessionCategoryOptionIos["AllowBluetooth"] = "AllowBluetooth";
|
|
30
|
+
AudioSessionCategoryOptionIos["AllowBluetoothA2DP"] = "AllowBluetoothA2DP";
|
|
31
|
+
AudioSessionCategoryOptionIos["AllowAirPlay"] = "AllowAirPlay";
|
|
32
|
+
AudioSessionCategoryOptionIos["DefaultToSpeaker"] = "DefaultToSpeaker";
|
|
33
|
+
})(AudioSessionCategoryOptionIos || (AudioSessionCategoryOptionIos = {}));
|
|
34
|
+
export let AudioSessionModeIos;
|
|
35
|
+
(function (AudioSessionModeIos) {
|
|
36
|
+
AudioSessionModeIos["Default"] = "Default";
|
|
37
|
+
AudioSessionModeIos["VoiceChat"] = "VoiceChat";
|
|
38
|
+
AudioSessionModeIos["VideoChat"] = "VideoChat";
|
|
39
|
+
AudioSessionModeIos["GameChat"] = "GameChat";
|
|
40
|
+
AudioSessionModeIos["VideoRecording"] = "VideoRecording";
|
|
41
|
+
AudioSessionModeIos["Measurement"] = "Measurement";
|
|
42
|
+
AudioSessionModeIos["MoviePlayback"] = "MoviePlayback";
|
|
43
|
+
AudioSessionModeIos["SpokenAudio"] = "SpokenAudio";
|
|
44
|
+
})(AudioSessionModeIos || (AudioSessionModeIos = {}));
|
|
45
|
+
const checkPlatform = () => {
|
|
46
|
+
if (Platform.OS !== 'ios') throw new Error('Only supported on iOS');
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* AudioSession Utility, iOS only.
|
|
51
|
+
*/
|
|
52
|
+
export default {
|
|
53
|
+
Category: AudioSessionCategoryIos,
|
|
54
|
+
CategoryOption: AudioSessionCategoryOptionIos,
|
|
55
|
+
Mode: AudioSessionModeIos,
|
|
56
|
+
getCurrentCategory: async () => {
|
|
57
|
+
var _result$options;
|
|
58
|
+
checkPlatform();
|
|
59
|
+
const result = await RNWhisper.getAudioSessionCurrentCategory();
|
|
60
|
+
return {
|
|
61
|
+
category: result.category.replace('AVAudioSessionCategory', ''),
|
|
62
|
+
options: (_result$options = result.options) === null || _result$options === void 0 ? void 0 : _result$options.map(option => option.replace('AVAudioSessionCategoryOption', ''))
|
|
63
|
+
};
|
|
64
|
+
},
|
|
65
|
+
getCurrentMode: async () => {
|
|
66
|
+
checkPlatform();
|
|
67
|
+
const mode = await RNWhisper.getAudioSessionCurrentMode();
|
|
68
|
+
return mode.replace('AVAudioSessionMode', '');
|
|
69
|
+
},
|
|
70
|
+
setCategory: async (category, options) => {
|
|
71
|
+
checkPlatform();
|
|
72
|
+
await RNWhisper.setAudioSessionCategory(category, options);
|
|
73
|
+
},
|
|
74
|
+
setMode: async mode => {
|
|
75
|
+
checkPlatform();
|
|
76
|
+
await RNWhisper.setAudioSessionMode(mode);
|
|
77
|
+
},
|
|
78
|
+
setActive: async active => {
|
|
79
|
+
checkPlatform();
|
|
80
|
+
await RNWhisper.setAudioSessionActive(active);
|
|
81
|
+
}
|
|
82
|
+
};
|
|
83
|
+
//# sourceMappingURL=AudioSessionIos.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Platform","RNWhisper","AudioSessionCategoryIos","AudioSessionCategoryOptionIos","AudioSessionModeIos","checkPlatform","OS","Error","Category","CategoryOption","Mode","getCurrentCategory","_result$options","result","getAudioSessionCurrentCategory","category","replace","options","map","option","getCurrentMode","mode","getAudioSessionCurrentMode","setCategory","setAudioSessionCategory","setMode","setAudioSessionMode","setActive","active","setAudioSessionActive"],"sourceRoot":"../../src","sources":["AudioSessionIos.ts"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,cAAc;AACvC,OAAOC,SAAS,MAAM,mBAAmB;;AAEzC;AACA;AACA;AACA,WAAYC,uBAAuB;;AASnC;AACA;AACA;AAFA,WATYA,uBAAuB;EAAvBA,uBAAuB;EAAvBA,uBAAuB;EAAvBA,uBAAuB;EAAvBA,uBAAuB;EAAvBA,uBAAuB;EAAvBA,uBAAuB;AAAA,GAAvBA,uBAAuB,KAAvBA,uBAAuB;AAYnC,WAAYC,6BAA6B;;AAUzC;AACA;AACA;AAFA,WAVYA,6BAA6B;EAA7BA,6BAA6B;EAA7BA,6BAA6B;EAA7BA,6BAA6B;EAA7BA,6BAA6B;EAA7BA,6BAA6B;EAA7BA,6BAA6B;EAA7BA,6BAA6B;AAAA,GAA7BA,6BAA6B,KAA7BA,6BAA6B;AAazC,WAAYC,mBAAmB;AAS9B,WATWA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;AAAA,GAAnBA,mBAAmB,KAAnBA,mBAAmB;AAW/B,MAAMC,aAAa,GAAGA,CAAA,KAAM;EAC1B,IAAIL,QAAQ,CAACM,EAAE,KAAK,KAAK,EAAE,MAAM,IAAIC,KAAK,CAAC,uBAAuB,CAAC;AACrE,CAAC;;AAED;AACA;AACA;AACA,eAAe;EACbC,QAAQ,EAAEN,uBAAuB;EACjCO,cAAc,EAAEN,6BAA6B;EAC7CO,IAAI,EAAEN,mBAAmB;EAEzBO,kBAAkB,EAAE,MAAAA,CAAA,KAGd;IAAA,IAAAC,eAAA;IACJP,aAAa,EAAE;IACf,MAAMQ,MAAM,GAAG,MAAMZ,SAAS,CAACa,8BAA8B,EAAE;IAC/D,OAAO;MACLC,QAAQ,EAAGF,MAAM,CAACE,QAAQ,CAACC,OAAO,CAAC,wBAAwB,EAAE,EAAE,CAA6B;MAC5FC,OAAO,GAAAL,eAAA,GAAEC,MAAM,CAACI,OAAO,cAAAL,eAAA,uBAAdA,eAAA,CAAgBM,GAAG,CAAEC,MAAc,IAAMA,MAAM,CAACH,OAAO,CAAC,8BAA8B,EAAE,EAAE,CAAmC;IACxI,CAAC;EACH,CAAC;EAEDI,cAAc,EAAE,MAAAA,CAAA,KAA0C;IACxDf,aAAa,EAAE;IACf,MAAMgB,IAAI,GAAG,MAAMpB,SAAS,CAACqB,0BAA0B,EAAE;IACzD,OAAQD,IAAI,CAACL,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC;EAChD,CAAC;EAEDO,WAAW,EAAE,MAAAA,CACXR,QAAiC,EACjCE,OAAwC,KACtB;IAClBZ,aAAa,EAAE;IACf,MAAMJ,SAAS,CAACuB,uBAAuB,CAACT,QAAQ,EAAEE,OAAO,CAAC;EAC5D,CAAC;EAEDQ,OAAO,EAAE,MAAOJ,IAAyB,IAAoB;IAC3DhB,aAAa,EAAE;IACf,MAAMJ,SAAS,CAACyB,mBAAmB,CAACL,IAAI,CAAC;EAC3C,CAAC;EAEDM,SAAS,EAAE,MAAOC,MAAe,IAAoB;IACnDvB,aAAa,EAAE;IACf,MAAMJ,SAAS,CAAC4B,qBAAqB,CAACD,MAAM,CAAC;EAC/C;AACF,CAAC"}
|
|
@@ -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;;AAuFA,eAAeA,mBAAmB,CAACC,GAAG,CAAO,WAAW,CAAC"}
|
package/lib/module/index.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
var _RNWhisper$getConstan;
|
|
2
2
|
import { NativeEventEmitter, DeviceEventEmitter, Platform, Image } from 'react-native';
|
|
3
3
|
import RNWhisper from './NativeRNWhisper';
|
|
4
|
+
import AudioSessionIos from './AudioSessionIos';
|
|
4
5
|
import { version } from './version.json';
|
|
5
6
|
let EventEmitter;
|
|
6
7
|
if (Platform.OS === 'ios') {
|
|
@@ -11,11 +12,16 @@ if (Platform.OS === 'android') {
|
|
|
11
12
|
EventEmitter = DeviceEventEmitter;
|
|
12
13
|
}
|
|
13
14
|
const EVENT_ON_TRANSCRIBE_PROGRESS = '@RNWhisper_onTranscribeProgress';
|
|
15
|
+
const EVENT_ON_TRANSCRIBE_NEW_SEGMENTS = '@RNWhisper_onTranscribeNewSegments';
|
|
14
16
|
const EVENT_ON_REALTIME_TRANSCRIBE = '@RNWhisper_onRealtimeTranscribe';
|
|
15
17
|
const EVENT_ON_REALTIME_TRANSCRIBE_END = '@RNWhisper_onRealtimeTranscribeEnd';
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
18
|
+
const updateAudioSession = async setting => {
|
|
19
|
+
await AudioSessionIos.setCategory(setting.category, setting.options || []);
|
|
20
|
+
if (setting.mode) {
|
|
21
|
+
await AudioSessionIos.setMode(setting.mode);
|
|
22
|
+
}
|
|
23
|
+
await AudioSessionIos.setActive(setting.active ?? true);
|
|
24
|
+
};
|
|
19
25
|
export class WhisperContext {
|
|
20
26
|
constructor(id) {
|
|
21
27
|
this.id = id;
|
|
@@ -40,6 +46,7 @@ export class WhisperContext {
|
|
|
40
46
|
const jobId = Math.floor(Math.random() * 10000);
|
|
41
47
|
const {
|
|
42
48
|
onProgress,
|
|
49
|
+
onNewSegments,
|
|
43
50
|
...rest
|
|
44
51
|
} = options;
|
|
45
52
|
let progressListener;
|
|
@@ -61,16 +68,36 @@ export class WhisperContext {
|
|
|
61
68
|
progressListener = null;
|
|
62
69
|
}
|
|
63
70
|
};
|
|
71
|
+
let newSegmentsListener;
|
|
72
|
+
if (onNewSegments) {
|
|
73
|
+
newSegmentsListener = EventEmitter.addListener(EVENT_ON_TRANSCRIBE_NEW_SEGMENTS, evt => {
|
|
74
|
+
const {
|
|
75
|
+
contextId,
|
|
76
|
+
result
|
|
77
|
+
} = evt;
|
|
78
|
+
if (contextId !== this.id || evt.jobId !== jobId) return;
|
|
79
|
+
onNewSegments(result);
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
const removeNewSegmenetsListener = () => {
|
|
83
|
+
if (newSegmentsListener) {
|
|
84
|
+
newSegmentsListener.remove();
|
|
85
|
+
newSegmentsListener = null;
|
|
86
|
+
}
|
|
87
|
+
};
|
|
64
88
|
return {
|
|
65
89
|
stop: async () => {
|
|
66
90
|
await RNWhisper.abortTranscribe(this.id, jobId);
|
|
67
91
|
removeProgressListener();
|
|
92
|
+
removeNewSegmenetsListener();
|
|
68
93
|
},
|
|
69
94
|
promise: RNWhisper.transcribeFile(this.id, jobId, path, {
|
|
70
95
|
...rest,
|
|
71
|
-
onProgress: !!onProgress
|
|
96
|
+
onProgress: !!onProgress,
|
|
97
|
+
onNewSegments: !!onNewSegments
|
|
72
98
|
}).then(result => {
|
|
73
99
|
removeProgressListener();
|
|
100
|
+
removeNewSegmenetsListener();
|
|
74
101
|
if (!result.isAborted && lastProgress !== 100) {
|
|
75
102
|
// Handle the case that the last progress event is not triggered
|
|
76
103
|
onProgress === null || onProgress === void 0 ? void 0 : onProgress(100);
|
|
@@ -78,6 +105,7 @@ export class WhisperContext {
|
|
|
78
105
|
return result;
|
|
79
106
|
}).catch(e => {
|
|
80
107
|
removeProgressListener();
|
|
108
|
+
removeNewSegmenetsListener();
|
|
81
109
|
throw e;
|
|
82
110
|
})
|
|
83
111
|
};
|
|
@@ -86,8 +114,6 @@ export class WhisperContext {
|
|
|
86
114
|
/** Transcribe the microphone audio stream, the microphone user permission is required */
|
|
87
115
|
async transcribeRealtime() {
|
|
88
116
|
let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
89
|
-
const jobId = Math.floor(Math.random() * 10000);
|
|
90
|
-
await RNWhisper.startRealtimeTranscribe(this.id, jobId, options);
|
|
91
117
|
let lastTranscribePayload;
|
|
92
118
|
const slices = [];
|
|
93
119
|
let sliceIndex = 0;
|
|
@@ -135,8 +161,37 @@ export class WhisperContext {
|
|
|
135
161
|
slices
|
|
136
162
|
};
|
|
137
163
|
};
|
|
164
|
+
let prevAudioSession;
|
|
165
|
+
if (Platform.OS === 'ios' && options !== null && options !== void 0 && options.audioSessionOnStartIos) {
|
|
166
|
+
// iOS: Remember current audio session state
|
|
167
|
+
if ((options === null || options === void 0 ? void 0 : options.audioSessionOnStopIos) === 'restore') {
|
|
168
|
+
const categoryResult = await AudioSessionIos.getCurrentCategory();
|
|
169
|
+
const mode = await AudioSessionIos.getCurrentMode();
|
|
170
|
+
prevAudioSession = {
|
|
171
|
+
...categoryResult,
|
|
172
|
+
mode,
|
|
173
|
+
active: false // TODO: Need to check isOtherAudioPlaying to set active
|
|
174
|
+
};
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
// iOS: Update audio session state
|
|
178
|
+
await updateAudioSession(options === null || options === void 0 ? void 0 : options.audioSessionOnStartIos);
|
|
179
|
+
}
|
|
180
|
+
if (Platform.OS === 'ios' && typeof (options === null || options === void 0 ? void 0 : options.audioSessionOnStopIos) === 'object') {
|
|
181
|
+
prevAudioSession = options === null || options === void 0 ? void 0 : options.audioSessionOnStopIos;
|
|
182
|
+
}
|
|
183
|
+
const jobId = Math.floor(Math.random() * 10000);
|
|
184
|
+
try {
|
|
185
|
+
await RNWhisper.startRealtimeTranscribe(this.id, jobId, options);
|
|
186
|
+
} catch (e) {
|
|
187
|
+
if (prevAudioSession) await updateAudioSession(prevAudioSession);
|
|
188
|
+
throw e;
|
|
189
|
+
}
|
|
138
190
|
return {
|
|
139
|
-
stop: () =>
|
|
191
|
+
stop: async () => {
|
|
192
|
+
await RNWhisper.abortTranscribe(this.id, jobId);
|
|
193
|
+
if (prevAudioSession) await updateAudioSession(prevAudioSession);
|
|
194
|
+
},
|
|
140
195
|
subscribe: callback => {
|
|
141
196
|
let transcribeListener = EventEmitter.addListener(EVENT_ON_REALTIME_TRANSCRIBE, evt => {
|
|
142
197
|
const {
|
|
@@ -201,14 +256,21 @@ export async function initWhisper(_ref) {
|
|
|
201
256
|
} = coreMLModelAsset;
|
|
202
257
|
if (filename && assets) {
|
|
203
258
|
coreMLAssets = assets === null || assets === void 0 ? void 0 : assets.map(asset => {
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
259
|
+
if (typeof asset === 'number') {
|
|
260
|
+
const {
|
|
261
|
+
uri
|
|
262
|
+
} = Image.resolveAssetSource(asset);
|
|
263
|
+
const filepath = coreMLModelAssetPaths.find(p => uri.includes(p));
|
|
264
|
+
if (filepath) {
|
|
265
|
+
return {
|
|
266
|
+
uri,
|
|
267
|
+
filepath: `${filename}/${filepath}`
|
|
268
|
+
};
|
|
269
|
+
}
|
|
270
|
+
} else if (typeof asset === 'string') {
|
|
209
271
|
return {
|
|
210
|
-
uri,
|
|
211
|
-
filepath: `${filename}/${
|
|
272
|
+
uri: asset,
|
|
273
|
+
filepath: `${filename}/${asset}`
|
|
212
274
|
};
|
|
213
275
|
}
|
|
214
276
|
return undefined;
|
|
@@ -254,4 +316,5 @@ export const isUseCoreML = !!useCoreML;
|
|
|
254
316
|
|
|
255
317
|
/** Is allow fallback to CPU if load CoreML model failed */
|
|
256
318
|
export const isCoreMLAllowFallback = !!coreMLAllowFallback;
|
|
319
|
+
export { AudioSessionIos };
|
|
257
320
|
//# sourceMappingURL=index.js.map
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NativeEventEmitter","DeviceEventEmitter","Platform","Image","RNWhisper","version","EventEmitter","OS","EVENT_ON_TRANSCRIBE_PROGRESS","EVENT_ON_REALTIME_TRANSCRIBE","EVENT_ON_REALTIME_TRANSCRIBE_END","WhisperContext","constructor","id","transcribe","filePath","options","arguments","length","undefined","path","source","resolveAssetSource","uri","e","Error","startsWith","slice","jobId","Math","floor","random","onProgress","rest","progressListener","lastProgress","addListener","evt","contextId","progress","removeProgressListener","remove","stop","abortTranscribe","promise","transcribeFile","then","result","isAborted","catch","transcribeRealtime","startRealtimeTranscribe","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","subscribe","callback","transcribeListener","endListener","lastPayload","isCapturing","release","releaseContext","coreMLModelAssetPaths","initWhisper","_ref","coreMLModelAsset","isBundleAsset","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","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","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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"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @see https://developer.apple.com/documentation/avfaudio/avaudiosessioncategory?language=objc
|
|
3
|
+
*/
|
|
4
|
+
export declare enum AudioSessionCategoryIos {
|
|
5
|
+
Ambient = "Ambient",
|
|
6
|
+
SoloAmbient = "SoloAmbient",
|
|
7
|
+
Playback = "Playback",
|
|
8
|
+
Record = "Record",
|
|
9
|
+
PlayAndRecord = "PlayAndRecord",
|
|
10
|
+
MultiRoute = "MultiRoute"
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* @see https://developer.apple.com/documentation/avfaudio/avaudiosessioncategoryoptions?language=objc
|
|
14
|
+
*/
|
|
15
|
+
export declare enum AudioSessionCategoryOptionIos {
|
|
16
|
+
MixWithOthers = "MixWithOthers",
|
|
17
|
+
DuckOthers = "DuckOthers",
|
|
18
|
+
InterruptSpokenAudioAndMixWithOthers = "InterruptSpokenAudioAndMixWithOthers",
|
|
19
|
+
AllowBluetooth = "AllowBluetooth",
|
|
20
|
+
AllowBluetoothA2DP = "AllowBluetoothA2DP",
|
|
21
|
+
AllowAirPlay = "AllowAirPlay",
|
|
22
|
+
DefaultToSpeaker = "DefaultToSpeaker"
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* @see https://developer.apple.com/documentation/avfaudio/avaudiosessionmode?language=objc
|
|
26
|
+
*/
|
|
27
|
+
export declare enum AudioSessionModeIos {
|
|
28
|
+
Default = "Default",
|
|
29
|
+
VoiceChat = "VoiceChat",
|
|
30
|
+
VideoChat = "VideoChat",
|
|
31
|
+
GameChat = "GameChat",
|
|
32
|
+
VideoRecording = "VideoRecording",
|
|
33
|
+
Measurement = "Measurement",
|
|
34
|
+
MoviePlayback = "MoviePlayback",
|
|
35
|
+
SpokenAudio = "SpokenAudio"
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* AudioSession Utility, iOS only.
|
|
39
|
+
*/
|
|
40
|
+
declare const _default: {
|
|
41
|
+
Category: typeof AudioSessionCategoryIos;
|
|
42
|
+
CategoryOption: typeof AudioSessionCategoryOptionIos;
|
|
43
|
+
Mode: typeof AudioSessionModeIos;
|
|
44
|
+
getCurrentCategory: () => Promise<{
|
|
45
|
+
category: AudioSessionCategoryIos;
|
|
46
|
+
options: AudioSessionCategoryOptionIos[];
|
|
47
|
+
}>;
|
|
48
|
+
getCurrentMode: () => Promise<AudioSessionModeIos>;
|
|
49
|
+
setCategory: (category: AudioSessionCategoryIos, options: AudioSessionCategoryOptionIos[]) => Promise<void>;
|
|
50
|
+
setMode: (mode: AudioSessionModeIos) => Promise<void>;
|
|
51
|
+
setActive: (active: boolean) => Promise<void>;
|
|
52
|
+
};
|
|
53
|
+
export default _default;
|
|
54
|
+
//# sourceMappingURL=AudioSessionIos.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AudioSessionIos.d.ts","sourceRoot":"","sources":["../../src/AudioSessionIos.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,oBAAY,uBAAuB;IACjC,OAAO,YAAY;IACnB,WAAW,gBAAgB;IAC3B,QAAQ,aAAa;IACrB,MAAM,WAAW;IACjB,aAAa,kBAAkB;IAC/B,UAAU,eAAe;CAC1B;AAED;;GAEG;AACH,oBAAY,6BAA6B;IACvC,aAAa,kBAAkB;IAC/B,UAAU,eAAe;IACzB,oCAAoC,yCAAyC;IAC7E,cAAc,mBAAmB;IACjC,kBAAkB,uBAAuB;IACzC,YAAY,iBAAiB;IAC7B,gBAAgB,qBAAqB;CACtC;AAED;;GAEG;AACH,oBAAY,mBAAmB;IAC7B,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,QAAQ,aAAa;IACrB,cAAc,mBAAmB;IACjC,WAAW,gBAAgB;IAC3B,aAAa,kBAAkB;IAC/B,WAAW,gBAAgB;CAC5B;AAMD;;GAEG;;;;;8BAM6B,QAAQ;QACpC,QAAQ,EAAE,uBAAuB,CAAC;QAClC,OAAO,EAAE,6BAA6B,EAAE,CAAC;KAC1C,CAAC;0BASwB,QAAQ,mBAAmB,CAAC;4BAO1C,uBAAuB,WACxB,6BAA6B,EAAE,KACvC,QAAQ,IAAI,CAAC;oBAKM,mBAAmB,KAAG,QAAQ,IAAI,CAAC;wBAK/B,OAAO,KAAG,QAAQ,IAAI,CAAC;;AApCnD,wBAwCC"}
|
|
@@ -60,6 +60,14 @@ export interface Spec extends TurboModule {
|
|
|
60
60
|
transcribeFile(contextId: number, jobId: number, path: string, options: {}): Promise<TranscribeResult>;
|
|
61
61
|
startRealtimeTranscribe(contextId: number, jobId: number, options: TranscribeOptions): Promise<void>;
|
|
62
62
|
abortTranscribe(contextId: number, jobId: number): Promise<void>;
|
|
63
|
+
getAudioSessionCurrentCategory: () => Promise<{
|
|
64
|
+
category: string;
|
|
65
|
+
options: Array<string>;
|
|
66
|
+
}>;
|
|
67
|
+
getAudioSessionCurrentMode: () => Promise<string>;
|
|
68
|
+
setAudioSessionCategory: (category: string, options: Array<string>) => Promise<void>;
|
|
69
|
+
setAudioSessionMode: (mode: string) => Promise<void>;
|
|
70
|
+
setAudioSessionActive: (active: boolean) => Promise<void>;
|
|
63
71
|
}
|
|
64
72
|
declare const _default: Spec;
|
|
65
73
|
export default _default;
|
|
@@ -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,8CAA8C;IAC9C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,qBAAqB;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,KAAK,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,EAAE,EAAE,MAAM,CAAC;KACZ,CAAC,CAAC;IACH,SAAS,EAAE,OAAO,CAAC;CACpB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAA;AAED,KAAK,oBAAoB,GAAG;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;CAC9B,CAAA;AAED,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,YAAY,IAAI;QACd,SAAS,EAAE,OAAO,CAAA;QAClB,mBAAmB,EAAE,OAAO,CAAA;KAC7B,CAAC;IACF,WAAW,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5D,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,cAAc,CACZ,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,EAAE,GACV,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC7B,uBAAuB,CACrB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"NativeRNWhisper.d.ts","sourceRoot":"","sources":["../../src/NativeRNWhisper.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +1,39 @@
|
|
|
1
1
|
import type { TranscribeOptions, TranscribeResult } from './NativeRNWhisper';
|
|
2
|
-
|
|
2
|
+
import AudioSessionIos from './AudioSessionIos';
|
|
3
|
+
import type { AudioSessionCategoryIos, AudioSessionCategoryOptionIos, AudioSessionModeIos } from './AudioSessionIos';
|
|
4
|
+
export type { TranscribeOptions, TranscribeResult, AudioSessionCategoryIos, AudioSessionCategoryOptionIos, AudioSessionModeIos, };
|
|
5
|
+
export type TranscribeNewSegmentsResult = {
|
|
6
|
+
nNew: number;
|
|
7
|
+
totalNNew: number;
|
|
8
|
+
result: string;
|
|
9
|
+
segments: TranscribeResult['segments'];
|
|
10
|
+
};
|
|
11
|
+
export type TranscribeNewSegmentsNativeEvent = {
|
|
12
|
+
contextId: number;
|
|
13
|
+
jobId: number;
|
|
14
|
+
result: TranscribeNewSegmentsResult;
|
|
15
|
+
};
|
|
3
16
|
export type TranscribeFileOptions = TranscribeOptions & {
|
|
4
17
|
/**
|
|
5
18
|
* Progress callback, the progress is between 0 and 100
|
|
6
19
|
*/
|
|
7
20
|
onProgress?: (progress: number) => void;
|
|
21
|
+
/**
|
|
22
|
+
* Callback when new segments are transcribed
|
|
23
|
+
*/
|
|
24
|
+
onNewSegments?: (result: TranscribeNewSegmentsResult) => void;
|
|
8
25
|
};
|
|
9
26
|
export type TranscribeProgressNativeEvent = {
|
|
10
27
|
contextId: number;
|
|
11
28
|
jobId: number;
|
|
12
29
|
progress: number;
|
|
13
30
|
};
|
|
31
|
+
export type AudioSessionSettingIos = {
|
|
32
|
+
category: AudioSessionCategoryIos;
|
|
33
|
+
options?: AudioSessionCategoryOptionIos[];
|
|
34
|
+
mode?: AudioSessionModeIos;
|
|
35
|
+
active?: boolean;
|
|
36
|
+
};
|
|
14
37
|
export type TranscribeRealtimeOptions = TranscribeOptions & {
|
|
15
38
|
/**
|
|
16
39
|
* Realtime record max duration in seconds.
|
|
@@ -47,6 +70,17 @@ export type TranscribeRealtimeOptions = TranscribeOptions & {
|
|
|
47
70
|
* Frequency to apply High-pass filter in VAD. (Default: 100.0)
|
|
48
71
|
*/
|
|
49
72
|
vadFreqThold?: number;
|
|
73
|
+
/**
|
|
74
|
+
* iOS: Audio session settings when start transcribe
|
|
75
|
+
* Keep empty to use current audio session state
|
|
76
|
+
*/
|
|
77
|
+
audioSessionOnStartIos?: AudioSessionSettingIos;
|
|
78
|
+
/**
|
|
79
|
+
* iOS: Audio session settings when stop transcribe
|
|
80
|
+
* - Keep empty to use last audio session state
|
|
81
|
+
* - Use `restore` to restore audio session state before start transcribe
|
|
82
|
+
*/
|
|
83
|
+
audioSessionOnStopIos?: string | AudioSessionSettingIos;
|
|
50
84
|
};
|
|
51
85
|
export type TranscribeRealtimeEvent = {
|
|
52
86
|
contextId: number;
|
|
@@ -112,7 +146,7 @@ export type ContextOptions = {
|
|
|
112
146
|
*/
|
|
113
147
|
coreMLModelAsset?: {
|
|
114
148
|
filename: string;
|
|
115
|
-
assets: number[];
|
|
149
|
+
assets: string[] | number[];
|
|
116
150
|
};
|
|
117
151
|
/** Is the file path a bundle asset for pure string filePath */
|
|
118
152
|
isBundleAsset?: boolean;
|
|
@@ -125,4 +159,5 @@ export declare const libVersion: string;
|
|
|
125
159
|
export declare const isUseCoreML: boolean;
|
|
126
160
|
/** Is allow fallback to CPU if load CoreML model failed */
|
|
127
161
|
export declare const isCoreMLAllowFallback: boolean;
|
|
162
|
+
export { AudioSessionIos };
|
|
128
163
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACV,iBAAiB,EACjB,gBAAgB,EAEjB,MAAM,mBAAmB,CAAA;AAY1B,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import { Platform } from 'react-native'
|
|
2
|
+
import RNWhisper from './NativeRNWhisper'
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* @see https://developer.apple.com/documentation/avfaudio/avaudiosessioncategory?language=objc
|
|
6
|
+
*/
|
|
7
|
+
export enum AudioSessionCategoryIos {
|
|
8
|
+
Ambient = 'Ambient',
|
|
9
|
+
SoloAmbient = 'SoloAmbient',
|
|
10
|
+
Playback = 'Playback',
|
|
11
|
+
Record = 'Record',
|
|
12
|
+
PlayAndRecord = 'PlayAndRecord',
|
|
13
|
+
MultiRoute = 'MultiRoute',
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* @see https://developer.apple.com/documentation/avfaudio/avaudiosessioncategoryoptions?language=objc
|
|
18
|
+
*/
|
|
19
|
+
export enum AudioSessionCategoryOptionIos {
|
|
20
|
+
MixWithOthers = 'MixWithOthers',
|
|
21
|
+
DuckOthers = 'DuckOthers',
|
|
22
|
+
InterruptSpokenAudioAndMixWithOthers = 'InterruptSpokenAudioAndMixWithOthers',
|
|
23
|
+
AllowBluetooth = 'AllowBluetooth',
|
|
24
|
+
AllowBluetoothA2DP = 'AllowBluetoothA2DP',
|
|
25
|
+
AllowAirPlay = 'AllowAirPlay',
|
|
26
|
+
DefaultToSpeaker = 'DefaultToSpeaker',
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* @see https://developer.apple.com/documentation/avfaudio/avaudiosessionmode?language=objc
|
|
31
|
+
*/
|
|
32
|
+
export enum AudioSessionModeIos {
|
|
33
|
+
Default = 'Default',
|
|
34
|
+
VoiceChat = 'VoiceChat',
|
|
35
|
+
VideoChat = 'VideoChat',
|
|
36
|
+
GameChat = 'GameChat',
|
|
37
|
+
VideoRecording = 'VideoRecording',
|
|
38
|
+
Measurement = 'Measurement',
|
|
39
|
+
MoviePlayback = 'MoviePlayback',
|
|
40
|
+
SpokenAudio = 'SpokenAudio',
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
const checkPlatform = () => {
|
|
44
|
+
if (Platform.OS !== 'ios') throw new Error('Only supported on iOS')
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* AudioSession Utility, iOS only.
|
|
49
|
+
*/
|
|
50
|
+
export default {
|
|
51
|
+
Category: AudioSessionCategoryIos,
|
|
52
|
+
CategoryOption: AudioSessionCategoryOptionIos,
|
|
53
|
+
Mode: AudioSessionModeIos,
|
|
54
|
+
|
|
55
|
+
getCurrentCategory: async (): Promise<{
|
|
56
|
+
category: AudioSessionCategoryIos,
|
|
57
|
+
options: AudioSessionCategoryOptionIos[],
|
|
58
|
+
}> => {
|
|
59
|
+
checkPlatform()
|
|
60
|
+
const result = await RNWhisper.getAudioSessionCurrentCategory()
|
|
61
|
+
return {
|
|
62
|
+
category: (result.category.replace('AVAudioSessionCategory', '') as AudioSessionCategoryIos),
|
|
63
|
+
options: result.options?.map((option: string) => (option.replace('AVAudioSessionCategoryOption', '') as AudioSessionCategoryOptionIos)),
|
|
64
|
+
}
|
|
65
|
+
},
|
|
66
|
+
|
|
67
|
+
getCurrentMode: async (): Promise<AudioSessionModeIos> => {
|
|
68
|
+
checkPlatform()
|
|
69
|
+
const mode = await RNWhisper.getAudioSessionCurrentMode()
|
|
70
|
+
return (mode.replace('AVAudioSessionMode', '') as AudioSessionModeIos)
|
|
71
|
+
},
|
|
72
|
+
|
|
73
|
+
setCategory: async (
|
|
74
|
+
category: AudioSessionCategoryIos,
|
|
75
|
+
options: AudioSessionCategoryOptionIos[],
|
|
76
|
+
): Promise<void> => {
|
|
77
|
+
checkPlatform()
|
|
78
|
+
await RNWhisper.setAudioSessionCategory(category, options)
|
|
79
|
+
},
|
|
80
|
+
|
|
81
|
+
setMode: async (mode: AudioSessionModeIos): Promise<void> => {
|
|
82
|
+
checkPlatform()
|
|
83
|
+
await RNWhisper.setAudioSessionMode(mode)
|
|
84
|
+
},
|
|
85
|
+
|
|
86
|
+
setActive: async (active: boolean): Promise<void> => {
|
|
87
|
+
checkPlatform()
|
|
88
|
+
await RNWhisper.setAudioSessionActive(active)
|
|
89
|
+
},
|
|
90
|
+
}
|
package/src/NativeRNWhisper.ts
CHANGED
|
@@ -68,7 +68,7 @@ export interface Spec extends TurboModule {
|
|
|
68
68
|
contextId: number,
|
|
69
69
|
jobId: number,
|
|
70
70
|
path: string,
|
|
71
|
-
options: {}, // TranscribeOptions & { onProgress?: boolean }
|
|
71
|
+
options: {}, // TranscribeOptions & { onProgress?: boolean, onNewSegments?: boolean }
|
|
72
72
|
): Promise<TranscribeResult>;
|
|
73
73
|
startRealtimeTranscribe(
|
|
74
74
|
contextId: number,
|
|
@@ -76,6 +76,16 @@ export interface Spec extends TurboModule {
|
|
|
76
76
|
options: TranscribeOptions,
|
|
77
77
|
): Promise<void>;
|
|
78
78
|
abortTranscribe(contextId: number, jobId: number): Promise<void>;
|
|
79
|
+
|
|
80
|
+
// iOS specific
|
|
81
|
+
getAudioSessionCurrentCategory: () => Promise<{
|
|
82
|
+
category: string,
|
|
83
|
+
options: Array<string>,
|
|
84
|
+
}>;
|
|
85
|
+
getAudioSessionCurrentMode: () => Promise<string>;
|
|
86
|
+
setAudioSessionCategory: (category: string, options: Array<string>) => Promise<void>;
|
|
87
|
+
setAudioSessionMode: (mode: string) => Promise<void>;
|
|
88
|
+
setAudioSessionActive: (active: boolean) => Promise<void>;
|
|
79
89
|
}
|
|
80
90
|
|
|
81
91
|
export default TurboModuleRegistry.get<Spec>('RNWhisper') as Spec
|