@elevenlabs/client 1.7.1 → 1.8.1
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/dist/BaseConversation.d.ts +2 -2
- package/dist/BaseConversation.d.ts.map +1 -1
- package/dist/BaseConversation.js +18 -15
- package/dist/BaseConversation.js.map +1 -1
- package/dist/InputController.d.ts +9 -0
- package/dist/InputController.d.ts.map +1 -1
- package/dist/OutputController.d.ts +18 -0
- package/dist/OutputController.d.ts.map +1 -1
- package/dist/TextConversation.js +2 -2
- package/dist/TextConversation.js.map +1 -1
- package/dist/VoiceConversation.d.ts +3 -6
- package/dist/VoiceConversation.d.ts.map +1 -1
- package/dist/VoiceConversation.js +15 -69
- package/dist/VoiceConversation.js.map +1 -1
- package/dist/WebRTCAudioAdapter.d.ts +52 -0
- package/dist/WebRTCAudioAdapter.d.ts.map +1 -0
- package/dist/WebRTCAudioAdapter.js +17 -0
- package/dist/WebRTCAudioAdapter.js.map +1 -0
- package/dist/index.d.ts +3 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/internal.d.ts +6 -1
- package/dist/internal.d.ts.map +1 -1
- package/dist/internal.js +4 -1
- package/dist/internal.js.map +1 -1
- package/dist/lib.iife.js +3519 -3220
- package/dist/lib.iife.js.map +1 -1
- package/dist/platform/VoiceSessionSetup.d.ts +10 -15
- package/dist/platform/VoiceSessionSetup.d.ts.map +1 -1
- package/dist/platform/VoiceSessionSetup.js +20 -62
- package/dist/platform/VoiceSessionSetup.js.map +1 -1
- package/dist/platform/tsconfig.test.tsbuildinfo +1 -0
- package/dist/platform/web/VoiceSessionSetup.d.ts +9 -0
- package/dist/platform/web/VoiceSessionSetup.d.ts.map +1 -0
- package/dist/platform/web/VoiceSessionSetup.js +166 -0
- package/dist/platform/web/VoiceSessionSetup.js.map +1 -0
- package/dist/platform/web/addLibsamplerateModule.d.ts.map +1 -0
- package/dist/platform/web/addLibsamplerateModule.js.map +1 -0
- package/dist/platform/web/audioConcatProcessor.generated.d.ts.map +1 -0
- package/dist/platform/web/audioConcatProcessor.generated.js.map +1 -0
- package/dist/platform/web/audioUnlock.d.ts +11 -0
- package/dist/platform/web/audioUnlock.d.ts.map +1 -0
- package/dist/platform/web/audioUnlock.js +74 -0
- package/dist/platform/web/audioUnlock.js.map +1 -0
- package/dist/platform/web/compatibility.d.ts.map +1 -0
- package/dist/platform/web/compatibility.js.map +1 -0
- package/dist/platform/web/createWorkletModuleLoader.d.ts.map +1 -0
- package/dist/platform/web/createWorkletModuleLoader.js.map +1 -0
- package/dist/platform/web/index.d.ts +3 -0
- package/dist/platform/web/index.d.ts.map +1 -0
- package/dist/platform/web/index.js +18 -0
- package/dist/platform/web/index.js.map +1 -0
- package/dist/{utils → platform/web}/input.d.ts +3 -12
- package/dist/platform/web/input.d.ts.map +1 -0
- package/dist/platform/web/input.js.map +1 -0
- package/dist/platform/web/output.d.ts +29 -0
- package/dist/platform/web/output.d.ts.map +1 -0
- package/dist/{utils → platform/web}/output.js +29 -3
- package/dist/platform/web/output.js.map +1 -0
- package/dist/platform/web/rawAudioProcessor.generated.d.ts.map +1 -0
- package/dist/platform/web/rawAudioProcessor.generated.js.map +1 -0
- package/dist/platform/web/scribeAudioProcessor.generated.d.ts.map +1 -0
- package/dist/platform/web/scribeAudioProcessor.generated.js.map +1 -0
- package/dist/platform/web/scribeMicrophone.d.ts +10 -0
- package/dist/platform/web/scribeMicrophone.d.ts.map +1 -0
- package/dist/platform/web/scribeMicrophone.js +65 -0
- package/dist/platform/web/scribeMicrophone.js.map +1 -0
- package/dist/platform/web/volumeProvider.d.ts +4 -0
- package/dist/platform/web/volumeProvider.d.ts.map +1 -0
- package/dist/platform/web/volumeProvider.js +24 -0
- package/dist/platform/web/volumeProvider.js.map +1 -0
- package/dist/platform/web/webAudioAdapter.d.ts +23 -0
- package/dist/platform/web/webAudioAdapter.d.ts.map +1 -0
- package/dist/platform/web/webAudioAdapter.js +127 -0
- package/dist/platform/web/webAudioAdapter.js.map +1 -0
- package/dist/runtime.d.ts +181 -0
- package/dist/runtime.d.ts.map +1 -0
- package/dist/runtime.js +34 -0
- package/dist/runtime.js.map +1 -0
- package/dist/scribe/microphone.d.ts +31 -0
- package/dist/scribe/microphone.d.ts.map +1 -0
- package/dist/scribe/microphone.js +23 -0
- package/dist/scribe/microphone.js.map +1 -0
- package/dist/scribe/scribe.d.ts +1 -1
- package/dist/scribe/scribe.d.ts.map +1 -1
- package/dist/scribe/scribe.js +6 -62
- package/dist/scribe/scribe.js.map +1 -1
- package/dist/types.d.ts +12 -2
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/utils/BaseConnection.d.ts +1 -1
- package/dist/utils/BaseConnection.d.ts.map +1 -1
- package/dist/utils/WebRTCConnection.d.ts +4 -7
- package/dist/utils/WebRTCConnection.d.ts.map +1 -1
- package/dist/utils/WebRTCConnection.js +51 -128
- package/dist/utils/WebRTCConnection.js.map +1 -1
- package/dist/utils/WebSocketConnection.d.ts +2 -1
- package/dist/utils/WebSocketConnection.d.ts.map +1 -1
- package/dist/utils/WebSocketConnection.js +29 -12
- package/dist/utils/WebSocketConnection.js.map +1 -1
- package/dist/utils/applyDelay.d.ts +3 -2
- package/dist/utils/applyDelay.d.ts.map +1 -1
- package/dist/utils/applyDelay.js +18 -12
- package/dist/utils/applyDelay.js.map +1 -1
- package/dist/utils/assert.d.ts +3 -0
- package/dist/utils/assert.d.ts.map +1 -0
- package/dist/utils/assert.js +9 -0
- package/dist/utils/assert.js.map +1 -0
- package/dist/utils/attachConnectionToOutput.d.ts +1 -1
- package/dist/utils/attachConnectionToOutput.d.ts.map +1 -1
- package/dist/utils/attachInputToConnection.d.ts +1 -1
- package/dist/utils/attachInputToConnection.d.ts.map +1 -1
- package/dist/utils/audio.d.ts.map +1 -1
- package/dist/utils/audio.js +2 -3
- package/dist/utils/audio.js.map +1 -1
- package/dist/utils/connection.d.ts +1 -1
- package/dist/utils/connection.d.ts.map +1 -1
- package/dist/utils/connection.js.map +1 -1
- package/dist/utils/errors.d.ts.map +1 -1
- package/dist/utils/errors.js +5 -1
- package/dist/utils/errors.js.map +1 -1
- package/dist/utils/mergeOptions.d.ts.map +1 -1
- package/dist/utils/mergeOptions.js +1 -3
- package/dist/utils/mergeOptions.js.map +1 -1
- package/dist/utils/volumeProvider.d.ts +0 -1
- package/dist/utils/volumeProvider.d.ts.map +1 -1
- package/dist/utils/volumeProvider.js +0 -22
- package/dist/utils/volumeProvider.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +3 -2
- package/dist/utils/addLibsamplerateModule.d.ts.map +0 -1
- package/dist/utils/addLibsamplerateModule.js.map +0 -1
- package/dist/utils/audioConcatProcessor.generated.d.ts.map +0 -1
- package/dist/utils/audioConcatProcessor.generated.js.map +0 -1
- package/dist/utils/compatibility.d.ts.map +0 -1
- package/dist/utils/compatibility.js.map +0 -1
- package/dist/utils/createWorkletModuleLoader.d.ts.map +0 -1
- package/dist/utils/createWorkletModuleLoader.js.map +0 -1
- package/dist/utils/input.d.ts.map +0 -1
- package/dist/utils/input.js.map +0 -1
- package/dist/utils/output.d.ts +0 -45
- package/dist/utils/output.d.ts.map +0 -1
- package/dist/utils/output.js.map +0 -1
- package/dist/utils/rawAudioProcessor.generated.d.ts.map +0 -1
- package/dist/utils/rawAudioProcessor.generated.js.map +0 -1
- package/dist/utils/scribeAudioProcessor.generated.d.ts.map +0 -1
- package/dist/utils/scribeAudioProcessor.generated.js.map +0 -1
- /package/dist/{utils → platform/web}/addLibsamplerateModule.d.ts +0 -0
- /package/dist/{utils → platform/web}/addLibsamplerateModule.js +0 -0
- /package/dist/{utils → platform/web}/audioConcatProcessor.generated.d.ts +0 -0
- /package/dist/{utils → platform/web}/audioConcatProcessor.generated.js +0 -0
- /package/dist/{utils → platform/web}/compatibility.d.ts +0 -0
- /package/dist/{utils → platform/web}/compatibility.js +0 -0
- /package/dist/{utils → platform/web}/createWorkletModuleLoader.d.ts +0 -0
- /package/dist/{utils → platform/web}/createWorkletModuleLoader.js +0 -0
- /package/dist/{utils → platform/web}/input.js +0 -0
- /package/dist/{utils → platform/web}/rawAudioProcessor.generated.d.ts +0 -0
- /package/dist/{utils → platform/web}/rawAudioProcessor.generated.js +0 -0
- /package/dist/{utils → platform/web}/scribeAudioProcessor.generated.d.ts +0 -0
- /package/dist/{utils → platform/web}/scribeAudioProcessor.generated.js +0 -0
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
declare global {
|
|
2
|
+
interface Console {
|
|
3
|
+
log(message?: unknown, ...optionalParams: unknown[]): void;
|
|
4
|
+
error(message?: unknown, ...optionalParams: unknown[]): void;
|
|
5
|
+
warn(message?: unknown, ...optionalParams: unknown[]): void;
|
|
6
|
+
info(message?: unknown, ...optionalParams: unknown[]): void;
|
|
7
|
+
debug(message?: unknown, ...optionalParams: unknown[]): void;
|
|
8
|
+
}
|
|
9
|
+
var console: Console;
|
|
10
|
+
function setTimeout(callback: () => void, ms?: number, ...args: unknown[]): number;
|
|
11
|
+
function setInterval(callback: () => void, ms?: number, ...args: unknown[]): number;
|
|
12
|
+
function setImmediate(callback: () => void, ...args: unknown[]): number;
|
|
13
|
+
function clearTimeout(handle?: number): void;
|
|
14
|
+
function clearInterval(handle?: number): void;
|
|
15
|
+
function clearImmediate(handle?: number): void;
|
|
16
|
+
function queueMicrotask(callback: () => void): void;
|
|
17
|
+
function fetch(input: string | Request, init?: RequestInit): Promise<Response>;
|
|
18
|
+
class Headers {
|
|
19
|
+
constructor(init?: Record<string, string> | [string, string][]);
|
|
20
|
+
append(name: string, value: string): void;
|
|
21
|
+
get(name: string): string | null;
|
|
22
|
+
has(name: string): boolean;
|
|
23
|
+
set(name: string, value: string): void;
|
|
24
|
+
}
|
|
25
|
+
class Request {
|
|
26
|
+
constructor(input: string | Request, init?: RequestInit);
|
|
27
|
+
readonly url: string;
|
|
28
|
+
readonly method: string;
|
|
29
|
+
readonly headers: Headers;
|
|
30
|
+
}
|
|
31
|
+
interface RequestInit {
|
|
32
|
+
method?: string;
|
|
33
|
+
headers?: Record<string, string> | Headers;
|
|
34
|
+
body?: string | FormData | Blob | ArrayBuffer;
|
|
35
|
+
signal?: AbortSignal;
|
|
36
|
+
}
|
|
37
|
+
class Response {
|
|
38
|
+
readonly ok: boolean;
|
|
39
|
+
readonly status: number;
|
|
40
|
+
readonly statusText: string;
|
|
41
|
+
readonly headers: Headers;
|
|
42
|
+
json(): Promise<unknown>;
|
|
43
|
+
text(): Promise<string>;
|
|
44
|
+
blob(): Promise<Blob>;
|
|
45
|
+
arrayBuffer(): Promise<ArrayBuffer>;
|
|
46
|
+
}
|
|
47
|
+
class FormData {
|
|
48
|
+
append(name: string, value: string | Blob, filename?: string): void;
|
|
49
|
+
}
|
|
50
|
+
class Blob {
|
|
51
|
+
readonly size: number;
|
|
52
|
+
readonly type: string;
|
|
53
|
+
constructor(parts?: (string | ArrayBuffer | Blob)[], options?: {
|
|
54
|
+
type?: string;
|
|
55
|
+
});
|
|
56
|
+
text(): Promise<string>;
|
|
57
|
+
arrayBuffer(): Promise<ArrayBuffer>;
|
|
58
|
+
}
|
|
59
|
+
class URL {
|
|
60
|
+
constructor(url: string, base?: string);
|
|
61
|
+
readonly href: string;
|
|
62
|
+
readonly origin: string;
|
|
63
|
+
readonly protocol: string;
|
|
64
|
+
readonly host: string;
|
|
65
|
+
readonly hostname: string;
|
|
66
|
+
readonly pathname: string;
|
|
67
|
+
readonly search: string;
|
|
68
|
+
readonly searchParams: URLSearchParams;
|
|
69
|
+
toString(): string;
|
|
70
|
+
}
|
|
71
|
+
class URLSearchParams {
|
|
72
|
+
constructor(init?: string | Record<string, string> | [string, string][]);
|
|
73
|
+
append(name: string, value: string): void;
|
|
74
|
+
get(name: string): string | null;
|
|
75
|
+
has(name: string): boolean;
|
|
76
|
+
set(name: string, value: string): void;
|
|
77
|
+
toString(): string;
|
|
78
|
+
}
|
|
79
|
+
class TextEncoder {
|
|
80
|
+
encode(input?: string): Uint8Array;
|
|
81
|
+
}
|
|
82
|
+
class TextDecoder {
|
|
83
|
+
constructor(label?: string, options?: {
|
|
84
|
+
fatal?: boolean;
|
|
85
|
+
});
|
|
86
|
+
decode(input?: ArrayBuffer | Uint8Array): string;
|
|
87
|
+
}
|
|
88
|
+
function btoa(data: string): string;
|
|
89
|
+
function atob(data: string): string;
|
|
90
|
+
class AbortController {
|
|
91
|
+
readonly signal: AbortSignal;
|
|
92
|
+
abort(reason?: unknown): void;
|
|
93
|
+
}
|
|
94
|
+
class AbortSignal {
|
|
95
|
+
readonly aborted: boolean;
|
|
96
|
+
}
|
|
97
|
+
class WebSocket {
|
|
98
|
+
static readonly CONNECTING: 0;
|
|
99
|
+
static readonly OPEN: 1;
|
|
100
|
+
static readonly CLOSING: 2;
|
|
101
|
+
static readonly CLOSED: 3;
|
|
102
|
+
constructor(url: string, protocols?: string | string[]);
|
|
103
|
+
readonly readyState: number;
|
|
104
|
+
send(data: string | ArrayBuffer | Uint8Array): void;
|
|
105
|
+
close(code?: number, reason?: string): void;
|
|
106
|
+
addEventListener(type: "open", listener: (event: Event) => void, options?: {
|
|
107
|
+
once?: boolean;
|
|
108
|
+
}): void;
|
|
109
|
+
addEventListener(type: "close", listener: (event: CloseEvent) => void, options?: {
|
|
110
|
+
once?: boolean;
|
|
111
|
+
}): void;
|
|
112
|
+
addEventListener(type: "message", listener: (event: MessageEvent) => void, options?: {
|
|
113
|
+
once?: boolean;
|
|
114
|
+
}): void;
|
|
115
|
+
addEventListener(type: "error", listener: (event: Event) => void, options?: {
|
|
116
|
+
once?: boolean;
|
|
117
|
+
}): void;
|
|
118
|
+
}
|
|
119
|
+
interface MediaStreamTrack {
|
|
120
|
+
readonly kind: string;
|
|
121
|
+
readonly id: string;
|
|
122
|
+
enabled: boolean;
|
|
123
|
+
stop(): void;
|
|
124
|
+
clone(): MediaStreamTrack;
|
|
125
|
+
getConstraints(): MediaTrackConstraints;
|
|
126
|
+
}
|
|
127
|
+
interface MediaDeviceConstraintParameters {
|
|
128
|
+
exact?: string | string[];
|
|
129
|
+
ideal?: string | string[];
|
|
130
|
+
}
|
|
131
|
+
type MediaDeviceConstraint = string | string[] | MediaDeviceConstraintParameters;
|
|
132
|
+
interface MediaTrackConstraints {
|
|
133
|
+
deviceId?: MediaDeviceConstraint;
|
|
134
|
+
echoCancellation?: boolean;
|
|
135
|
+
noiseSuppression?: boolean;
|
|
136
|
+
autoGainControl?: boolean;
|
|
137
|
+
channelCount?: number | {
|
|
138
|
+
exact?: number;
|
|
139
|
+
ideal?: number;
|
|
140
|
+
};
|
|
141
|
+
sampleRate?: number | {
|
|
142
|
+
exact?: number;
|
|
143
|
+
ideal?: number;
|
|
144
|
+
};
|
|
145
|
+
}
|
|
146
|
+
class MediaStream {
|
|
147
|
+
constructor(tracks?: MediaStreamTrack[]);
|
|
148
|
+
getTracks(): MediaStreamTrack[];
|
|
149
|
+
getAudioTracks(): MediaStreamTrack[];
|
|
150
|
+
addTrack(track: MediaStreamTrack): void;
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Minimal AnalyserNode declaration for the deprecated
|
|
154
|
+
* `InputController.getAnalyser()` / `OutputController.getAnalyser()`
|
|
155
|
+
* return types. On web this resolves to the full DOM AnalyserNode; on
|
|
156
|
+
* other platforms the methods return `undefined`.
|
|
157
|
+
*/
|
|
158
|
+
interface AnalyserNode {
|
|
159
|
+
readonly frequencyBinCount: number;
|
|
160
|
+
getByteFrequencyData(array: Uint8Array): void;
|
|
161
|
+
getByteTimeDomainData(array: Uint8Array): void;
|
|
162
|
+
getFloatFrequencyData(array: Float32Array): void;
|
|
163
|
+
}
|
|
164
|
+
interface Event {
|
|
165
|
+
readonly type: string;
|
|
166
|
+
}
|
|
167
|
+
interface CloseEvent extends Event {
|
|
168
|
+
readonly code: number;
|
|
169
|
+
readonly reason: string;
|
|
170
|
+
readonly wasClean: boolean;
|
|
171
|
+
}
|
|
172
|
+
interface MessageEvent<T = string> extends Event {
|
|
173
|
+
readonly data: T;
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* Throws if any of the expected cross-platform globals are missing.
|
|
178
|
+
* Call once at startup to surface environment issues early.
|
|
179
|
+
*/
|
|
180
|
+
export declare function assertRuntimeCompatibility(): void;
|
|
181
|
+
//# sourceMappingURL=runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
|
package/dist/runtime.js
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
// Cross-platform runtime globals.
|
|
2
|
+
//
|
|
3
|
+
// These APIs are available natively on the web, Node.js (>=18), and
|
|
4
|
+
// React Native, but are not part of TypeScript's standard library when
|
|
5
|
+
// `lib` omits "DOM". We declare the minimal subset actually used by
|
|
6
|
+
// the codebase so that `tsconfig.common.json` (lib: ["ES2022"]) compiles
|
|
7
|
+
// without DOM.
|
|
8
|
+
//
|
|
9
|
+
// Because this file has an `export`, TypeScript treats it as a module.
|
|
10
|
+
// All ambient declarations must therefore be inside `declare global`.
|
|
11
|
+
// ---------------------------------------------------------------------------
|
|
12
|
+
// Runtime assertions
|
|
13
|
+
// ---------------------------------------------------------------------------
|
|
14
|
+
/**
|
|
15
|
+
* Throws if any of the expected cross-platform globals are missing.
|
|
16
|
+
* Call once at startup to surface environment issues early.
|
|
17
|
+
*/
|
|
18
|
+
export function assertRuntimeCompatibility() {
|
|
19
|
+
const required = [
|
|
20
|
+
"fetch",
|
|
21
|
+
"WebSocket",
|
|
22
|
+
"TextEncoder",
|
|
23
|
+
"TextDecoder",
|
|
24
|
+
"URL",
|
|
25
|
+
"btoa",
|
|
26
|
+
"atob",
|
|
27
|
+
];
|
|
28
|
+
for (const name of required) {
|
|
29
|
+
if (typeof globalThis[name] === "undefined") {
|
|
30
|
+
throw new Error(`${name} is not available in this environment.`);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=runtime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA,kCAAkC;AAClC,EAAE;AACF,oEAAoE;AACpE,uEAAuE;AACvE,oEAAoE;AACpE,yEAAyE;AACzE,eAAe;AACf,EAAE;AACF,uEAAuE;AACvE,sEAAsE;AA6QtE,8EAA8E;AAC9E,qBAAqB;AACrB,8EAA8E;AAE9E;;;GAGG;AACH,MAAM,UAAU,0BAA0B;IACxC,MAAM,QAAQ,GAAG;QACf,OAAO;QACP,WAAW;QACX,aAAa;QACb,aAAa;QACb,KAAK;QACL,MAAM;QACN,MAAM;KACP,CAAC;IACF,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC5B,IAAI,OAAQ,UAAsC,CAAC,IAAI,CAAC,KAAK,WAAW,EAAE,CAAC;YACzE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,wCAAwC,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Platform-agnostic microphone streaming interface for Scribe.
|
|
3
|
+
*
|
|
4
|
+
* The web implementation (`platform/web/scribeMicrophone.ts`) provides the
|
|
5
|
+
* actual AudioContext + getUserMedia pipeline; other platforms can supply
|
|
6
|
+
* their own implementation via `setScribeMicrophoneSetup`.
|
|
7
|
+
*/
|
|
8
|
+
export interface ScribeMicrophoneConfig {
|
|
9
|
+
deviceId?: MediaDeviceConstraint;
|
|
10
|
+
echoCancellation?: boolean;
|
|
11
|
+
noiseSuppression?: boolean;
|
|
12
|
+
autoGainControl?: boolean;
|
|
13
|
+
channelCount?: number;
|
|
14
|
+
}
|
|
15
|
+
export interface ScribeMicrophoneResult {
|
|
16
|
+
/** Track reference so the connection can toggle `track.enabled` for mute/unmute. */
|
|
17
|
+
mediaStreamTrack: MediaStreamTrack;
|
|
18
|
+
/** Tear down the audio pipeline and release hardware. */
|
|
19
|
+
cleanup: () => void;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Sets up microphone capture and streams PCM audio to the provided callback.
|
|
23
|
+
*
|
|
24
|
+
* @param config - Microphone constraints
|
|
25
|
+
* @param onAudioData - Called with base64-encoded PCM16 chunks
|
|
26
|
+
* @returns A result containing the track and cleanup function
|
|
27
|
+
*/
|
|
28
|
+
export type ScribeMicrophoneSetup = (config: ScribeMicrophoneConfig, onAudioData: (base64Audio: string) => void) => Promise<ScribeMicrophoneResult>;
|
|
29
|
+
export declare function setScribeMicrophoneSetup(setup: ScribeMicrophoneSetup): void;
|
|
30
|
+
export declare function getScribeMicrophoneSetup(): ScribeMicrophoneSetup;
|
|
31
|
+
//# sourceMappingURL=microphone.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"microphone.d.ts","sourceRoot":"","sources":["../../src/scribe/microphone.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,EAAE,qBAAqB,CAAC;IACjC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,sBAAsB;IACrC,oFAAoF;IACpF,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,yDAAyD;IACzD,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED;;;;;;GAMG;AACH,MAAM,MAAM,qBAAqB,GAAG,CAClC,MAAM,EAAE,sBAAsB,EAC9B,WAAW,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,KACvC,OAAO,CAAC,sBAAsB,CAAC,CAAC;AAQrC,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,qBAAqB,GAAG,IAAI,CAE3E;AAED,wBAAgB,wBAAwB,IAAI,qBAAqB,CAShE"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Platform-agnostic microphone streaming interface for Scribe.
|
|
3
|
+
*
|
|
4
|
+
* The web implementation (`platform/web/scribeMicrophone.ts`) provides the
|
|
5
|
+
* actual AudioContext + getUserMedia pipeline; other platforms can supply
|
|
6
|
+
* their own implementation via `setScribeMicrophoneSetup`.
|
|
7
|
+
*/
|
|
8
|
+
// ---------------------------------------------------------------------------
|
|
9
|
+
// Injectable factory
|
|
10
|
+
// ---------------------------------------------------------------------------
|
|
11
|
+
let microphoneSetup = null;
|
|
12
|
+
export function setScribeMicrophoneSetup(setup) {
|
|
13
|
+
microphoneSetup = setup;
|
|
14
|
+
}
|
|
15
|
+
export function getScribeMicrophoneSetup() {
|
|
16
|
+
if (!microphoneSetup) {
|
|
17
|
+
throw new Error("No Scribe microphone implementation registered. " +
|
|
18
|
+
"Import '@elevenlabs/client/platform/web' or provide a custom " +
|
|
19
|
+
"implementation via setScribeMicrophoneSetup().");
|
|
20
|
+
}
|
|
21
|
+
return microphoneSetup;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=microphone.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"microphone.js","sourceRoot":"","sources":["../../src/scribe/microphone.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA6BH,8EAA8E;AAC9E,qBAAqB;AACrB,8EAA8E;AAE9E,IAAI,eAAe,GAAiC,IAAI,CAAC;AAEzD,MAAM,UAAU,wBAAwB,CAAC,KAA4B;IACnE,eAAe,GAAG,KAAK,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,wBAAwB;IACtC,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CACb,kDAAkD;YAChD,+DAA+D;YAC/D,gDAAgD,CACnD,CAAC;IACJ,CAAC;IACD,OAAO,eAAe,CAAC;AACzB,CAAC"}
|
package/dist/scribe/scribe.d.ts
CHANGED
|
@@ -83,7 +83,7 @@ export interface AudioOptions extends BaseOptions {
|
|
|
83
83
|
*/
|
|
84
84
|
export interface MicrophoneOptions extends BaseOptions {
|
|
85
85
|
microphone?: {
|
|
86
|
-
deviceId?:
|
|
86
|
+
deviceId?: MediaDeviceConstraint;
|
|
87
87
|
echoCancellation?: boolean;
|
|
88
88
|
noiseSuppression?: boolean;
|
|
89
89
|
autoGainControl?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scribe.d.ts","sourceRoot":"","sources":["../../src/scribe/scribe.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAGrD,oBAAY,WAAW;IACrB,QAAQ,aAAa;IACrB,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,SAAS,cAAc;CACxB;AAED,oBAAY,cAAc;IACxB,MAAM,WAAW;IACjB,GAAG,QAAQ;CACZ;AAED,UAAU,WAAW;IACnB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC;;;OAGG;IACH,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B;;;OAGG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,YAAa,SAAQ,WAAW;IAC/C,WAAW,EAAE,WAAW,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,KAAK,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACpD,UAAU,CAAC,EAAE;QACX,QAAQ,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"scribe.d.ts","sourceRoot":"","sources":["../../src/scribe/scribe.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAGrD,oBAAY,WAAW;IACrB,QAAQ,aAAa;IACrB,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,SAAS,cAAc;CACxB;AAED,oBAAY,cAAc;IACxB,MAAM,WAAW;IACjB,GAAG,QAAQ;CACZ;AAED,UAAU,WAAW;IACnB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC;;;OAGG;IACH,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B;;;OAGG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,YAAa,SAAQ,WAAW;IAC/C,WAAW,EAAE,WAAW,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,KAAK,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACpD,UAAU,CAAC,EAAE;QACX,QAAQ,CAAC,EAAE,qBAAqB,CAAC;QACjC,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAC3B,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAC3B,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,WAAW,CAAC,EAAE,KAAK,CAAC;IACpB,UAAU,CAAC,EAAE,KAAK,CAAC;CACpB;AAED;;;GAGG;AAGH,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAA6B;IAErE,OAAO,CAAC,MAAM,CAAC,eAAe;IAM9B,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAiFhC;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;WACW,OAAO,CACnB,OAAO,EAAE,YAAY,GAAG,iBAAiB,GACxC,kBAAkB;mBAgCA,oBAAoB;CAiB1C"}
|
package/dist/scribe/scribe.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { RealtimeConnection } from "./connection.js";
|
|
2
|
-
import {
|
|
2
|
+
import { getScribeMicrophoneSetup } from "./microphone.js";
|
|
3
3
|
export var AudioFormat;
|
|
4
4
|
(function (AudioFormat) {
|
|
5
5
|
AudioFormat["PCM_8000"] = "pcm_8000";
|
|
@@ -131,69 +131,13 @@ export class ScribeRealtime {
|
|
|
131
131
|
return connection;
|
|
132
132
|
}
|
|
133
133
|
static async streamFromMicrophone(options, connection) {
|
|
134
|
-
const TARGET_SAMPLE_RATE = 16000;
|
|
135
134
|
try {
|
|
136
|
-
|
|
137
|
-
const
|
|
138
|
-
audio: {
|
|
139
|
-
deviceId: options.microphone?.deviceId,
|
|
140
|
-
echoCancellation: options.microphone?.echoCancellation ?? true,
|
|
141
|
-
noiseSuppression: options.microphone?.noiseSuppression ?? true,
|
|
142
|
-
autoGainControl: options.microphone?.autoGainControl ?? true,
|
|
143
|
-
channelCount: options.microphone?.channelCount ?? 1,
|
|
144
|
-
sampleRate: { ideal: TARGET_SAMPLE_RATE },
|
|
145
|
-
},
|
|
146
|
-
});
|
|
147
|
-
// Get the actual sample rate from the stream - the ideal may not have been honored
|
|
148
|
-
const trackSettings = stream.getAudioTracks()[0]?.getSettings();
|
|
149
|
-
const streamSampleRate = trackSettings?.sampleRate;
|
|
150
|
-
// Create audio context matching the stream's sample rate to avoid Firefox errors
|
|
151
|
-
// Firefox requires the AudioContext to match the microphone's native sample rate
|
|
152
|
-
const audioContext = new AudioContext(streamSampleRate ? { sampleRate: streamSampleRate } : {});
|
|
153
|
-
// Load scribe worklet
|
|
154
|
-
await loadScribeAudioProcessor(audioContext.audioWorklet);
|
|
155
|
-
// Set up audio pipeline
|
|
156
|
-
const source = audioContext.createMediaStreamSource(stream);
|
|
157
|
-
const scribeNode = new AudioWorkletNode(audioContext, "scribeAudioProcessor");
|
|
158
|
-
// Configure the worklet with sample rate info for resampling
|
|
159
|
-
// (only needed when AudioContext sample rate differs from target)
|
|
160
|
-
if (audioContext.sampleRate !== TARGET_SAMPLE_RATE) {
|
|
161
|
-
scribeNode.port.postMessage({
|
|
162
|
-
type: "configure",
|
|
163
|
-
inputSampleRate: audioContext.sampleRate,
|
|
164
|
-
outputSampleRate: TARGET_SAMPLE_RATE,
|
|
165
|
-
});
|
|
166
|
-
}
|
|
167
|
-
// Store the track so mute()/unmute() can toggle track.enabled.
|
|
168
|
-
const [audioTrack] = stream.getAudioTracks();
|
|
169
|
-
connection._mediaStreamTrack = audioTrack;
|
|
170
|
-
// Handle audio data from worklet
|
|
171
|
-
scribeNode.port.onmessage = event => {
|
|
172
|
-
const { audioData } = event.data;
|
|
173
|
-
// Convert ArrayBuffer to base64
|
|
174
|
-
const bytes = new Uint8Array(audioData);
|
|
175
|
-
let binary = "";
|
|
176
|
-
for (let i = 0; i < bytes.length; i++) {
|
|
177
|
-
binary += String.fromCharCode(bytes[i]);
|
|
178
|
-
}
|
|
179
|
-
const base64Audio = btoa(binary);
|
|
135
|
+
const setup = getScribeMicrophoneSetup();
|
|
136
|
+
const result = await setup(options.microphone ?? {}, base64Audio => {
|
|
180
137
|
connection.send({ audioBase64: base64Audio });
|
|
181
|
-
};
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
// Resume audio context if needed
|
|
185
|
-
if (audioContext.state === "suspended") {
|
|
186
|
-
await audioContext.resume();
|
|
187
|
-
}
|
|
188
|
-
// Store cleanup function
|
|
189
|
-
connection._audioCleanup = () => {
|
|
190
|
-
stream.getTracks().forEach(track => {
|
|
191
|
-
track.stop();
|
|
192
|
-
});
|
|
193
|
-
source.disconnect();
|
|
194
|
-
scribeNode.disconnect();
|
|
195
|
-
audioContext.close();
|
|
196
|
-
};
|
|
138
|
+
});
|
|
139
|
+
connection._mediaStreamTrack = result.mediaStreamTrack;
|
|
140
|
+
connection._audioCleanup = result.cleanup;
|
|
197
141
|
}
|
|
198
142
|
catch (error) {
|
|
199
143
|
console.error("Failed to start microphone streaming:", error);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scribe.js","sourceRoot":"","sources":["../../src/scribe/scribe.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,wBAAwB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"scribe.js","sourceRoot":"","sources":["../../src/scribe/scribe.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -12,18 +12,28 @@ export type Mode = "speaking" | "listening";
|
|
|
12
12
|
* Connection status of the conversation
|
|
13
13
|
*/
|
|
14
14
|
export type Status = "disconnected" | "connecting" | "connected" | "disconnecting";
|
|
15
|
+
/**
|
|
16
|
+
* Platform-agnostic representation of the event that triggered a disconnection.
|
|
17
|
+
* Replaces the former `Event` / `CloseEvent` DOM constructors which are
|
|
18
|
+
* not available on React Native.
|
|
19
|
+
*/
|
|
20
|
+
export type DisconnectionContext = {
|
|
21
|
+
type: string;
|
|
22
|
+
reason?: string;
|
|
23
|
+
code?: number;
|
|
24
|
+
};
|
|
15
25
|
/**
|
|
16
26
|
* Reason for the disconnection
|
|
17
27
|
*/
|
|
18
28
|
export type DisconnectionDetails = {
|
|
19
29
|
reason: "error";
|
|
20
30
|
message: string;
|
|
21
|
-
context:
|
|
31
|
+
context: DisconnectionContext;
|
|
22
32
|
closeCode?: number;
|
|
23
33
|
closeReason?: string;
|
|
24
34
|
} | {
|
|
25
35
|
reason: "agent";
|
|
26
|
-
context?:
|
|
36
|
+
context?: DisconnectionContext;
|
|
27
37
|
closeCode?: number;
|
|
28
38
|
closeReason?: string;
|
|
29
39
|
} | {
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,yBAAyB,EACzB,sBAAsB,EACtB,8BAA8B,EAC9B,2BAA2B,EAC3B,4BAA4B,EAC5B,uCAAuC,EACvC,oBAAoB,EACpB,0BAA0B,EAC1B,YAAY,EACZ,uBAAuB,EACvB,gCAAgC,EACjC,MAAM,mBAAmB,CAAC;AAE3B;;GAEG;AACH,MAAM,MAAM,IAAI,GAAG,MAAM,GAAG,OAAO,CAAC;AAEpC,MAAM,MAAM,mBAAmB,GAAG,mBAAmB,CAAC;AAEtD;;GAEG;AACH,MAAM,MAAM,IAAI,GAAG,UAAU,GAAG,WAAW,CAAC;AAE5C;;GAEG;AACH,MAAM,MAAM,MAAM,GACd,cAAc,GACd,YAAY,GACZ,WAAW,GACX,eAAe,CAAC;AAEpB;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAC5B;IACE,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,yBAAyB,EACzB,sBAAsB,EACtB,8BAA8B,EAC9B,2BAA2B,EAC3B,4BAA4B,EAC5B,uCAAuC,EACvC,oBAAoB,EACpB,0BAA0B,EAC1B,YAAY,EACZ,uBAAuB,EACvB,gCAAgC,EACjC,MAAM,mBAAmB,CAAC;AAE3B;;GAEG;AACH,MAAM,MAAM,IAAI,GAAG,MAAM,GAAG,OAAO,CAAC;AAEpC,MAAM,MAAM,mBAAmB,GAAG,mBAAmB,CAAC;AAEtD;;GAEG;AACH,MAAM,MAAM,IAAI,GAAG,UAAU,GAAG,WAAW,CAAC;AAE5C;;GAEG;AACH,MAAM,MAAM,MAAM,GACd,cAAc,GACd,YAAY,GACZ,WAAW,GACX,eAAe,CAAC;AAEpB;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAC5B;IACE,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,oBAAoB,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GACD;IACE,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GACD;IACE,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEN,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,EAAE,IAAI,CAAC;CACZ;AAED;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG;IACtB,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,cAAc,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACxD,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,oBAAoB,KAAK,IAAI,CAAC;IACvD,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IACnD,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,CAAC;IAC5C,OAAO,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,KAAK,IAAI,CAAC;IAC9C,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACpD,uBAAuB,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,eAAe,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC;IACvE,yBAAyB,CAAC,EAAE,CAC1B,MAAM,EAAE,yBAAyB,CAAC,kBAAkB,CAAC,KAClD,IAAI,CAAC;IACV,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACnD,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,sBAAsB,CAAC,eAAe,CAAC,KAAK,IAAI,CAAC;IACzE,qBAAqB,CAAC,EAAE,CACtB,KAAK,EAAE,8BAA8B,CAAC,uBAAuB,CAAC,KAC3D,IAAI,CAAC;IACV,kBAAkB,CAAC,EAAE,CACnB,KAAK,EAAE,2BAA2B,CAAC,oBAAoB,CAAC,KACrD,IAAI,CAAC;IACV,mBAAmB,CAAC,EAAE,CACpB,KAAK,EACD,4BAA4B,CAAC,qBAAqB,CAAC,GACnD,uCAAuC,CAAC,kCAAkC,CAAC,KAC5E,IAAI,CAAC;IACV,sBAAsB,CAAC,EAAE,CACvB,KAAK,EAAE,oBAAoB,CAAC,wCAAwC,CAAC,KAClE,IAAI,CAAC;IACV,uBAAuB,CAAC,EAAE,CACxB,KAAK,EAAE,0BAA0B,CAAC,+BAA+B,CAAC,KAC/D,IAAI,CAAC;IACV,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,oBAAoB,CAAC,KAAK,IAAI,CAAC;IACrE,yBAAyB,CAAC,EAAE,CAC1B,KAAK,EAAE,uBAAuB,CAAC,iCAAiC,CAAC,KAC9D,IAAI,CAAC;IACV,uBAAuB,CAAC,EAAE,CACxB,KAAK,EAAE,gCAAgC,CAAC,oBAAoB,CAAC,KAC1D,IAAI,CAAC;IACV,oBAAoB,CAAC,EAAE,MAAM,IAAI,CAAC;IAClC,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAExD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;CAChC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,aAAa,gcAuBuB,CAAC"}
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AA6HA;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,WAAW;IACX,cAAc;IACd,SAAS;IACT,WAAW;IACX,SAAS;IACT,cAAc;IACd,gBAAgB;IAChB,yBAAyB;IACzB,2BAA2B;IAC3B,YAAY;IACZ,eAAe;IACf,uBAAuB;IACvB,oBAAoB;IACpB,qBAAqB;IACrB,wBAAwB;IACxB,yBAAyB;IACzB,gBAAgB;IAChB,2BAA2B;IAC3B,yBAAyB;IACzB,kBAAkB;IAClB,sBAAsB;IACtB,SAAS;CACsC,CAAC"}
|
|
@@ -3,7 +3,7 @@ import type { Mode } from "../BaseConversation.js";
|
|
|
3
3
|
import type { ConversationConfigOverrideAgentPrompt, ConversationConfigOverrideAgentLanguage as Language } from "@elevenlabs/types";
|
|
4
4
|
import type { DisconnectionDetails } from "../types.js";
|
|
5
5
|
export type { ConversationConfigOverrideAgentPrompt, ConversationConfigOverrideAgentLanguage as Language, } from "@elevenlabs/types";
|
|
6
|
-
export type { DisconnectionDetails } from "../types.js";
|
|
6
|
+
export type { DisconnectionContext, DisconnectionDetails } from "../types.js";
|
|
7
7
|
export type DelayConfig = {
|
|
8
8
|
default: number;
|
|
9
9
|
android?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseConnection.d.ts","sourceRoot":"","sources":["../../src/utils/BaseConnection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,KAAK,EACV,qCAAqC,EACrC,uCAAuC,IAAI,QAAQ,EACpD,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAExD,YAAY,EACV,qCAAqC,EACrC,uCAAuC,IAAI,QAAQ,GACpD,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"BaseConnection.d.ts","sourceRoot":"","sources":["../../src/utils/BaseConnection.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,11 +14,9 @@ export declare class WebRTCConnection extends BaseConnection {
|
|
|
14
14
|
private room;
|
|
15
15
|
private isConnected;
|
|
16
16
|
private audioEventId;
|
|
17
|
-
private audioCaptureContext;
|
|
18
|
-
private audioElements;
|
|
19
17
|
private outputDeviceId;
|
|
18
|
+
private audioAdapter;
|
|
20
19
|
private inputAnalyser;
|
|
21
|
-
private inputAudioContext;
|
|
22
20
|
private inputVolumeProvider;
|
|
23
21
|
private outputAnalyser;
|
|
24
22
|
private outputVolumeProvider;
|
|
@@ -32,10 +30,9 @@ export declare class WebRTCConnection extends BaseConnection {
|
|
|
32
30
|
sendMessage(message: OutgoingSocketEvent): Promise<void>;
|
|
33
31
|
getRoom(): Room;
|
|
34
32
|
/**
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
*
|
|
38
|
-
* active mic track.
|
|
33
|
+
* Delegates input volume analysis to the audio adapter (if present).
|
|
34
|
+
* Called once during create() and again after an input device switch
|
|
35
|
+
* so the analyser follows the active mic track.
|
|
39
36
|
*/
|
|
40
37
|
private setupInputAnalyser;
|
|
41
38
|
setInputVolumeProvider(provider: VolumeProvider): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebRTCConnection.d.ts","sourceRoot":"","sources":["../../src/utils/WebRTCConnection.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,KAAK,aAAa,EAClB,KAAK,YAAY,EAElB,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"WebRTCConnection.d.ts","sourceRoot":"","sources":["../../src/utils/WebRTCConnection.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,KAAK,aAAa,EAClB,KAAK,YAAY,EAElB,MAAM,qBAAqB,CAAC;AAI7B,OAAO,EAAsB,KAAK,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAC3E,OAAO,EACL,IAAI,EAKL,MAAM,gBAAgB,CAAC;AAYxB,OAAO,KAAK,EAAE,eAAe,EAAqB,MAAM,uBAAuB,CAAC;AAChF,OAAO,KAAK,EACV,gBAAgB,EAEjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,KAAK,cAAc,EAAa,MAAM,qBAAqB,CAAC;AAerE,MAAM,MAAM,gBAAgB,GAAG,aAAa,GAAG;IAC7C,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CACnC,CAAC;AAEF,qBAAa,gBAAiB,SAAQ,cAAc;IAC3C,cAAc,EAAE,MAAM,CAAC;IAC9B,SAAgB,WAAW,EAAE,YAAY,CAAC;IAC1C,SAAgB,YAAY,EAAE,YAAY,CAAC;IAE3C,OAAO,CAAC,IAAI,CAAO;IACnB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,cAAc,CAAuB;IAE7C,OAAO,CAAC,YAAY,CAA4B;IAEhD,OAAO,CAAC,aAAa,CAAsB;IAC3C,OAAO,CAAC,mBAAmB,CAA6B;IAExD,OAAO,CAAC,cAAc,CAAsB;IAC5C,OAAO,CAAC,oBAAoB,CAA6B;IAGzD,OAAO,CAAC,QAAQ,CAAS;IAGzB,SAAgB,KAAK,EAAE,eAAe,CAgGpC;IAGF,SAAgB,MAAM,EAAE,gBAAgB,CAmCtC;IAEF,OAAO;WAiBa,MAAM,CACxB,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAAC,gBAAgB,CAAC;IA0I5B,OAAO,CAAC,uBAAuB;IAuGxB,KAAK;IA0BC,WAAW,CAAC,OAAO,EAAE,mBAAmB;IAgC9C,OAAO,IAAI,IAAI;IAItB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAiBnB,sBAAsB,CAAC,QAAQ,EAAE,cAAc;IAI/C,uBAAuB,CAAC,QAAQ,EAAE,cAAc;YAIzC,iBAAiB;IAqCxB,cAAc,CAAC,MAAM,EAAE,MAAM;IAIvB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAarD,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAqDlE"}
|