@memberjunction/ai-realtime-client 6.1.4 → 6.2.0-edge.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.
@@ -22,5 +22,7 @@ export interface IPcmMicCapture {
22
22
  * ElevenLabs default).
23
23
  * @param onPcmChunk Invoked with each captured block as base64-encoded PCM16.
24
24
  */
25
+ export declare function CreatePcmMicCapture(micStream: MediaStream, sampleRate: number, onPcmChunk: (base64Pcm16: string) => void): Promise<IPcmMicCapture>;
26
+ /** @deprecated Use {@link CreatePcmMicCapture}. */
25
27
  export declare function createPcmMicCapture(micStream: MediaStream, sampleRate: number, onPcmChunk: (base64Pcm16: string) => void): Promise<IPcmMicCapture>;
26
28
  //# sourceMappingURL=micCapture.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"micCapture.d.ts","sourceRoot":"","sources":["../../src/audio/micCapture.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC3B,wEAAwE;IACxE,IAAI,IAAI,IAAI,CAAC;CAChB;AAkCD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,mBAAmB,CACrC,SAAS,EAAE,WAAW,EACtB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,GAC1C,OAAO,CAAC,cAAc,CAAC,CAqBzB"}
1
+ {"version":3,"file":"micCapture.d.ts","sourceRoot":"","sources":["../../src/audio/micCapture.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC3B,wEAAwE;IACxE,IAAI,IAAI,IAAI,CAAC;CAChB;AAkCD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,mBAAmB,CACrC,SAAS,EAAE,WAAW,EACtB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,GAC1C,OAAO,CAAC,cAAc,CAAC,CAqBzB;AAED,mDAAmD;AACnD,wBAAsB,mBAAmB,CACrC,SAAS,EAAE,WAAW,EACtB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,GAC1C,OAAO,CAAC,cAAc,CAAC,CAEzB"}
@@ -1,4 +1,4 @@
1
- import { encodeFloat32ToPcm16Base64 } from './pcmUtils.js';
1
+ import { EncodeFloat32ToPcm16Base64 } from './pcmUtils.js';
2
2
  /** Registration name for the inline mic-capture worklet processor. */
3
3
  const CAPTURE_WORKLET_NAME = 'mj-realtime-pcm16-capture';
4
4
  /**
@@ -44,13 +44,13 @@ async function loadCaptureWorklet(context) {
44
44
  * ElevenLabs default).
45
45
  * @param onPcmChunk Invoked with each captured block as base64-encoded PCM16.
46
46
  */
47
- export async function createPcmMicCapture(micStream, sampleRate, onPcmChunk) {
47
+ export async function CreatePcmMicCapture(micStream, sampleRate, onPcmChunk) {
48
48
  const context = new AudioContext({ sampleRate });
49
49
  await loadCaptureWorklet(context);
50
50
  const source = context.createMediaStreamSource(micStream);
51
51
  const worklet = new AudioWorkletNode(context, CAPTURE_WORKLET_NAME);
52
52
  worklet.port.onmessage = (event) => {
53
- onPcmChunk(encodeFloat32ToPcm16Base64(event.data));
53
+ onPcmChunk(EncodeFloat32ToPcm16Base64(event.data));
54
54
  };
55
55
  source.connect(worklet);
56
56
  const muteTail = context.createGain();
@@ -66,4 +66,8 @@ export async function createPcmMicCapture(micStream, sampleRate, onPcmChunk) {
66
66
  },
67
67
  };
68
68
  }
69
+ /** @deprecated Use {@link CreatePcmMicCapture}. */
70
+ export async function createPcmMicCapture(micStream, sampleRate, onPcmChunk) {
71
+ return CreatePcmMicCapture(micStream, sampleRate, onPcmChunk);
72
+ }
69
73
  //# sourceMappingURL=micCapture.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"micCapture.js","sourceRoot":"","sources":["../../src/audio/micCapture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAYxD,sEAAsE;AACtE,MAAM,oBAAoB,GAAG,2BAA2B,CAAC;AAEzD;;;;;GAKG;AACH,MAAM,sBAAsB,GAAG;;;;;;;;;;qBAUV,oBAAoB;CACxC,CAAC;AAEF,wFAAwF;AACxF,KAAK,UAAU,kBAAkB,CAAC,OAAqB;IACnD,MAAM,OAAO,GAAG,GAAG,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC,CAAC,sBAAsB,CAAC,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC;IAC5G,IAAI,CAAC;QACD,MAAM,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAClD,CAAC;YAAS,CAAC;QACP,GAAG,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACrC,SAAsB,EACtB,UAAkB,EAClB,UAAyC;IAEzC,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC;IACjD,MAAM,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAClC,MAAM,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;IAC1D,MAAM,OAAO,GAAG,IAAI,gBAAgB,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;IACpE,OAAO,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,KAAiC,EAAE,EAAE;QAC3D,UAAU,CAAC,0BAA0B,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IACvD,CAAC,CAAC;IACF,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACxB,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IACtC,QAAQ,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IACxB,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACvD,OAAO;QACH,IAAI,EAAE,GAAG,EAAE;YACP,OAAO,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YAC9B,MAAM,CAAC,UAAU,EAAE,CAAC;YACpB,OAAO,CAAC,UAAU,EAAE,CAAC;YACrB,QAAQ,CAAC,UAAU,EAAE,CAAC;YACtB,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC;QACzB,CAAC;KACJ,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"micCapture.js","sourceRoot":"","sources":["../../src/audio/micCapture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAYxD,sEAAsE;AACtE,MAAM,oBAAoB,GAAG,2BAA2B,CAAC;AAEzD;;;;;GAKG;AACH,MAAM,sBAAsB,GAAG;;;;;;;;;;qBAUV,oBAAoB;CACxC,CAAC;AAEF,wFAAwF;AACxF,KAAK,UAAU,kBAAkB,CAAC,OAAqB;IACnD,MAAM,OAAO,GAAG,GAAG,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC,CAAC,sBAAsB,CAAC,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC;IAC5G,IAAI,CAAC;QACD,MAAM,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAClD,CAAC;YAAS,CAAC;QACP,GAAG,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACrC,SAAsB,EACtB,UAAkB,EAClB,UAAyC;IAEzC,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC;IACjD,MAAM,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAClC,MAAM,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;IAC1D,MAAM,OAAO,GAAG,IAAI,gBAAgB,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;IACpE,OAAO,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,KAAiC,EAAE,EAAE;QAC3D,UAAU,CAAC,0BAA0B,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IACvD,CAAC,CAAC;IACF,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACxB,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IACtC,QAAQ,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IACxB,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACvD,OAAO;QACH,IAAI,EAAE,GAAG,EAAE;YACP,OAAO,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YAC9B,MAAM,CAAC,UAAU,EAAE,CAAC;YACpB,OAAO,CAAC,UAAU,EAAE,CAAC;YACrB,QAAQ,CAAC,UAAU,EAAE,CAAC;YACtB,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC;QACzB,CAAC;KACJ,CAAC;AACN,CAAC;AAED,mDAAmD;AACnD,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACrC,SAAsB,EACtB,UAAkB,EAClB,UAAyC;IAEzC,OAAO,mBAAmB,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;AAClE,CAAC"}
@@ -1,4 +1,4 @@
1
- import { pcm16ToFloat32 } from './pcmUtils.js';
1
+ import { Pcm16ToFloat32 } from './pcmUtils.js';
2
2
  import { RealtimeAudioMeter } from './audioMeter.js';
3
3
  /**
4
4
  * Web Audio playout scheduler for raw PCM16 model audio at a driver-supplied sample rate.
@@ -33,7 +33,7 @@ export class RealtimePcmPlayback {
33
33
  }
34
34
  /** @inheritdoc */
35
35
  Enqueue(pcm16) {
36
- const samples = pcm16ToFloat32(pcm16);
36
+ const samples = Pcm16ToFloat32(pcm16);
37
37
  if (samples.length === 0) {
38
38
  return;
39
39
  }
@@ -7,11 +7,19 @@
7
7
  * unchanged in unit tests.
8
8
  */
9
9
  /** Decodes a base64 string into a freshly-allocated `ArrayBuffer`. */
10
+ export declare function Base64ToArrayBuffer(base64: string): ArrayBuffer;
11
+ /** @deprecated Use {@link Base64ToArrayBuffer}. */
10
12
  export declare function base64ToArrayBuffer(base64: string): ArrayBuffer;
11
13
  /** Encodes raw bytes to base64 in chunks (avoids call-stack limits on large frames). */
14
+ export declare function BytesToBase64(bytes: Uint8Array): string;
15
+ /** @deprecated Use {@link BytesToBase64}. */
12
16
  export declare function bytesToBase64(bytes: Uint8Array): string;
13
17
  /** Converts a Float32 [-1, 1] sample block to PCM16 little-endian bytes, base64-encoded. */
18
+ export declare function EncodeFloat32ToPcm16Base64(samples: Float32Array): string;
19
+ /** @deprecated Use {@link EncodeFloat32ToPcm16Base64}. */
14
20
  export declare function encodeFloat32ToPcm16Base64(samples: Float32Array): string;
15
21
  /** Converts raw PCM16 little-endian bytes to Float32 samples (truncates a trailing odd byte). */
22
+ export declare function Pcm16ToFloat32(pcm: ArrayBuffer): Float32Array<ArrayBuffer>;
23
+ /** @deprecated Use {@link Pcm16ToFloat32}. */
16
24
  export declare function pcm16ToFloat32(pcm: ArrayBuffer): Float32Array<ArrayBuffer>;
17
25
  //# sourceMappingURL=pcmUtils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pcmUtils.d.ts","sourceRoot":"","sources":["../../src/audio/pcmUtils.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,sEAAsE;AACtE,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,CAO/D;AAED,wFAAwF;AACxF,wBAAgB,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAOvD;AAED,4FAA4F;AAC5F,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,YAAY,GAAG,MAAM,CAOxE;AAED,iGAAiG;AACjG,wBAAgB,cAAc,CAAC,GAAG,EAAE,WAAW,GAAG,YAAY,CAAC,WAAW,CAAC,CAQ1E"}
1
+ {"version":3,"file":"pcmUtils.d.ts","sourceRoot":"","sources":["../../src/audio/pcmUtils.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,sEAAsE;AACtE,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,CAO/D;AAED,mDAAmD;AACnD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,CAE/D;AAED,wFAAwF;AACxF,wBAAgB,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAOvD;AAED,6CAA6C;AAC7C,wBAAgB,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAEvD;AAED,4FAA4F;AAC5F,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,YAAY,GAAG,MAAM,CAOxE;AAED,0DAA0D;AAC1D,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,YAAY,GAAG,MAAM,CAExE;AAED,iGAAiG;AACjG,wBAAgB,cAAc,CAAC,GAAG,EAAE,WAAW,GAAG,YAAY,CAAC,WAAW,CAAC,CAQ1E;AAED,8CAA8C;AAC9C,wBAAgB,cAAc,CAAC,GAAG,EAAE,WAAW,GAAG,YAAY,CAAC,WAAW,CAAC,CAE1E"}
@@ -7,7 +7,7 @@
7
7
  * unchanged in unit tests.
8
8
  */
9
9
  /** Decodes a base64 string into a freshly-allocated `ArrayBuffer`. */
10
- export function base64ToArrayBuffer(base64) {
10
+ export function Base64ToArrayBuffer(base64) {
11
11
  const binary = atob(base64);
12
12
  const out = new Uint8Array(binary.length);
13
13
  for (let i = 0; i < binary.length; i++) {
@@ -15,8 +15,12 @@ export function base64ToArrayBuffer(base64) {
15
15
  }
16
16
  return out.buffer;
17
17
  }
18
+ /** @deprecated Use {@link Base64ToArrayBuffer}. */
19
+ export function base64ToArrayBuffer(base64) {
20
+ return Base64ToArrayBuffer(base64);
21
+ }
18
22
  /** Encodes raw bytes to base64 in chunks (avoids call-stack limits on large frames). */
19
- export function bytesToBase64(bytes) {
23
+ export function BytesToBase64(bytes) {
20
24
  let binary = '';
21
25
  const chunkSize = 0x8000;
22
26
  for (let i = 0; i < bytes.length; i += chunkSize) {
@@ -24,17 +28,25 @@ export function bytesToBase64(bytes) {
24
28
  }
25
29
  return btoa(binary);
26
30
  }
31
+ /** @deprecated Use {@link BytesToBase64}. */
32
+ export function bytesToBase64(bytes) {
33
+ return BytesToBase64(bytes);
34
+ }
27
35
  /** Converts a Float32 [-1, 1] sample block to PCM16 little-endian bytes, base64-encoded. */
28
- export function encodeFloat32ToPcm16Base64(samples) {
36
+ export function EncodeFloat32ToPcm16Base64(samples) {
29
37
  const pcm = new Int16Array(samples.length);
30
38
  for (let i = 0; i < samples.length; i++) {
31
39
  const s = Math.max(-1, Math.min(1, samples[i]));
32
40
  pcm[i] = s < 0 ? s * 0x8000 : s * 0x7fff;
33
41
  }
34
- return bytesToBase64(new Uint8Array(pcm.buffer));
42
+ return BytesToBase64(new Uint8Array(pcm.buffer));
43
+ }
44
+ /** @deprecated Use {@link EncodeFloat32ToPcm16Base64}. */
45
+ export function encodeFloat32ToPcm16Base64(samples) {
46
+ return EncodeFloat32ToPcm16Base64(samples);
35
47
  }
36
48
  /** Converts raw PCM16 little-endian bytes to Float32 samples (truncates a trailing odd byte). */
37
- export function pcm16ToFloat32(pcm) {
49
+ export function Pcm16ToFloat32(pcm) {
38
50
  const even = pcm.byteLength - (pcm.byteLength % 2);
39
51
  const ints = new Int16Array(pcm.slice(0, even));
40
52
  const out = new Float32Array(ints.length);
@@ -43,4 +55,8 @@ export function pcm16ToFloat32(pcm) {
43
55
  }
44
56
  return out;
45
57
  }
58
+ /** @deprecated Use {@link Pcm16ToFloat32}. */
59
+ export function pcm16ToFloat32(pcm) {
60
+ return Pcm16ToFloat32(pcm);
61
+ }
46
62
  //# sourceMappingURL=pcmUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pcmUtils.js","sourceRoot":"","sources":["../../src/audio/pcmUtils.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,sEAAsE;AACtE,MAAM,UAAU,mBAAmB,CAAC,MAAc;IAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,GAAG,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC;IACD,OAAO,GAAG,CAAC,MAAM,CAAC;AACtB,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,aAAa,CAAC,KAAiB;IAC3C,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,MAAM,SAAS,GAAG,MAAM,CAAC;IACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC;QAC/C,MAAM,IAAI,MAAM,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC;IACvE,CAAC;IACD,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC;AACxB,CAAC;AAED,4FAA4F;AAC5F,MAAM,UAAU,0BAA0B,CAAC,OAAqB;IAC5D,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChD,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;IAC7C,CAAC;IACD,OAAO,aAAa,CAAC,IAAI,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;AACrD,CAAC;AAED,iGAAiG;AACjG,MAAM,UAAU,cAAc,CAAC,GAAgB;IAC3C,MAAM,IAAI,GAAG,GAAG,CAAC,UAAU,GAAG,CAAC,GAAG,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;IACnD,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;IAChD,MAAM,GAAG,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACnC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;IAC9B,CAAC;IACD,OAAO,GAAG,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"pcmUtils.js","sourceRoot":"","sources":["../../src/audio/pcmUtils.ts"],"names":[],"mappings":"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"}
@@ -6,10 +6,10 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { RegisterClass } from '@memberjunction/global';
8
8
  import { BaseRealtimeClient } from '../generic/baseRealtimeClient.js';
9
- import { base64ToArrayBuffer } from '../audio/pcmUtils.js';
9
+ import { Base64ToArrayBuffer } from '../audio/pcmUtils.js';
10
10
  import { RealtimePcmPlayback } from '../audio/pcmPlayback.js';
11
11
  import { RealtimeAudioMeter } from '../audio/audioMeter.js';
12
- import { createPcmMicCapture } from '../audio/micCapture.js';
12
+ import { CreatePcmMicCapture } from '../audio/micCapture.js';
13
13
  // ── Audio constants (AssemblyAI Voice Agent wire format) ───────────────────────
14
14
  /** The single Voice Agent websocket endpoint (auth rides as a `?token=` query parameter). */
15
15
  export const ASSEMBLYAI_AGENT_WS_URL = 'wss://agents.assemblyai.com/v1/ws';
@@ -374,7 +374,7 @@ let AssemblyAIRealtimeClient = class AssemblyAIRealtimeClient extends BaseRealti
374
374
  * this with a no-op fake (and may capture `onPcmChunk` to simulate mic frames).
375
375
  */
376
376
  async createMicCapture(micStream, sampleRate, onPcmChunk) {
377
- return createPcmMicCapture(micStream, sampleRate, onPcmChunk);
377
+ return CreatePcmMicCapture(micStream, sampleRate, onPcmChunk);
378
378
  }
379
379
  /**
380
380
  * Creation seam for the playout engine at the provider's fixed 24 kHz rate. Production
@@ -533,7 +533,7 @@ let AssemblyAIRealtimeClient = class AssemblyAIRealtimeClient extends BaseRealti
533
533
  return;
534
534
  }
535
535
  this.markGenerationStarted();
536
- this.playback?.Enqueue(base64ToArrayBuffer(audioBase64));
536
+ this.playback?.Enqueue(Base64ToArrayBuffer(audioBase64));
537
537
  }
538
538
  /** User transcript: streaming deltas (`IsFinal: false`) finalized by `transcript.user`. */
539
539
  handleUserTranscript(text, isFinal) {
@@ -336,7 +336,7 @@ export declare class ElevenLabsRealtimeClient extends BaseRealtimeClient {
336
336
  */
337
337
  private sendToolResultFrame;
338
338
  /** How long to wait for real model output after a tool result before nudging. */
339
- private static readonly ToolResultNudgeMs;
339
+ private static readonly toolResultNudgeMs;
340
340
  /** Arms the absorbed-tool-result nudge (see {@link toolResultNudgeTimer}). */
341
341
  private armToolResultNudge;
342
342
  /** Cancels the nudge — real model output arrived (or the session is resetting). */
@@ -7,10 +7,10 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  var ElevenLabsRealtimeClient_1;
8
8
  import { RegisterClass } from '@memberjunction/global';
9
9
  import { BaseRealtimeClient } from '../generic/baseRealtimeClient.js';
10
- import { base64ToArrayBuffer } from '../audio/pcmUtils.js';
10
+ import { Base64ToArrayBuffer } from '../audio/pcmUtils.js';
11
11
  import { RealtimePcmPlayback } from '../audio/pcmPlayback.js';
12
12
  import { RealtimeAudioMeter } from '../audio/audioMeter.js';
13
- import { createPcmMicCapture } from '../audio/micCapture.js';
13
+ import { CreatePcmMicCapture } from '../audio/micCapture.js';
14
14
  // ── Audio constants (ElevenLabs Agents wire formats) ───────────────────────────
15
15
  /**
16
16
  * Fallback PCM16 sample rate used when the `conversation_initiation_metadata` carries no
@@ -344,7 +344,7 @@ let ElevenLabsRealtimeClient = class ElevenLabsRealtimeClient extends BaseRealti
344
344
  * no-op fake (and may capture `onPcmChunk` to simulate mic frames).
345
345
  */
346
346
  async createMicCapture(micStream, sampleRate, onPcmChunk) {
347
- return createPcmMicCapture(micStream, sampleRate, onPcmChunk);
347
+ return CreatePcmMicCapture(micStream, sampleRate, onPcmChunk);
348
348
  }
349
349
  /**
350
350
  * Creation seam for the playout engine at the NEGOTIATED output rate. Production returns
@@ -465,7 +465,7 @@ let ElevenLabsRealtimeClient = class ElevenLabsRealtimeClient extends BaseRealti
465
465
  return;
466
466
  }
467
467
  this.markGenerationStarted();
468
- this.playback?.Enqueue(base64ToArrayBuffer(audioBase64));
468
+ this.playback?.Enqueue(Base64ToArrayBuffer(audioBase64));
469
469
  }
470
470
  /** User transcript: whole-utterance FINAL (this provider emits no interim deltas). */
471
471
  handleUserTranscript(text) {
@@ -619,7 +619,7 @@ let ElevenLabsRealtimeClient = class ElevenLabsRealtimeClient extends BaseRealti
619
619
  this.armToolResultNudge();
620
620
  }
621
621
  /** How long to wait for real model output after a tool result before nudging. */
622
- static { this.ToolResultNudgeMs = 1600; }
622
+ static { this.toolResultNudgeMs = 1600; }
623
623
  /** Arms the absorbed-tool-result nudge (see {@link toolResultNudgeTimer}). */
624
624
  armToolResultNudge() {
625
625
  this.cancelToolResultNudge();
@@ -631,7 +631,7 @@ let ElevenLabsRealtimeClient = class ElevenLabsRealtimeClient extends BaseRealti
631
631
  this.responseActive = false;
632
632
  this.sendUserMessage('The delegated work you were waiting on has just finished and its result has been ' +
633
633
  'delivered to you. Tell the user the outcome now, in your own first-person voice.', 'normal', false);
634
- }, ElevenLabsRealtimeClient_1.ToolResultNudgeMs);
634
+ }, ElevenLabsRealtimeClient_1.toolResultNudgeMs);
635
635
  }
636
636
  /** Cancels the nudge — real model output arrived (or the session is resetting). */
637
637
  cancelToolResultNudge() {
@@ -9,11 +9,11 @@ import { RegisterClass } from '@memberjunction/global';
9
9
  import { RealtimeDiagLog, RealtimeToolBatchBarrier, ExtractToolSchedulingHint, } from '@memberjunction/ai';
10
10
  import { GoogleGenAI, FunctionResponseScheduling, } from '@google/genai';
11
11
  import { BaseRealtimeClient } from '../generic/baseRealtimeClient.js';
12
- import { base64ToArrayBuffer } from '../audio/pcmUtils.js';
12
+ import { Base64ToArrayBuffer } from '../audio/pcmUtils.js';
13
13
  import { RealtimePcmPlayback } from '../audio/pcmPlayback.js';
14
14
  import { RealtimeAudioMeter } from '../audio/audioMeter.js';
15
- import { createPcmMicCapture } from '../audio/micCapture.js';
16
- import { createStreamFrameCapture } from '../media/frameCapture.js';
15
+ import { CreatePcmMicCapture } from '../audio/micCapture.js';
16
+ import { CreateStreamFrameCapture } from '../media/frameCapture.js';
17
17
  // ── Audio constants (Gemini Live wire formats) ─────────────────────────────────
18
18
  /** Gemini Live expects client audio as 16-bit signed PCM, 16 kHz, mono. */
19
19
  const GEMINI_INPUT_SAMPLE_RATE = 16000;
@@ -249,7 +249,7 @@ let GeminiRealtimeClient = class GeminiRealtimeClient extends BaseRealtimeClient
249
249
  this.micCapture = await this.createMicCapture(micStream, (base64Pcm16) => this.sendMicChunk(base64Pcm16));
250
250
  // Start camera capture if inbound video is established and cameraStream provided
251
251
  if (this.cameraStream && this.IsTrackEstablished('video', 'inbound')) {
252
- this.cameraCapture = createStreamFrameCapture(this.cameraStream, {
252
+ this.cameraCapture = CreateStreamFrameCapture(this.cameraStream, {
253
253
  Rate: 1,
254
254
  OnFrame: (frame) => this.SendVideoFrame(frame.data, frame.mimeType),
255
255
  });
@@ -500,7 +500,7 @@ let GeminiRealtimeClient = class GeminiRealtimeClient extends BaseRealtimeClient
500
500
  * frames).
501
501
  */
502
502
  async createMicCapture(micStream, onPcmChunk) {
503
- return createPcmMicCapture(micStream, GEMINI_INPUT_SAMPLE_RATE, onPcmChunk);
503
+ return CreatePcmMicCapture(micStream, GEMINI_INPUT_SAMPLE_RATE, onPcmChunk);
504
504
  }
505
505
  /** Creation seam for the playout engine. Production returns {@link GeminiPcmPlayback}. */
506
506
  createPlayback() {
@@ -805,7 +805,7 @@ let GeminiRealtimeClient = class GeminiRealtimeClient extends BaseRealtimeClient
805
805
  const data = part.inlineData?.data;
806
806
  if (data) {
807
807
  this.markGenerationStarted();
808
- this.playback?.Enqueue(base64ToArrayBuffer(data));
808
+ this.playback?.Enqueue(Base64ToArrayBuffer(data));
809
809
  }
810
810
  }
811
811
  }
@@ -1,9 +1,9 @@
1
1
  import { ResolveResponseDoneUsage } from '@memberjunction/ai';
2
2
  import { BaseRealtimeClient } from './baseRealtimeClient.js';
3
- import { base64ToArrayBuffer } from '../audio/pcmUtils.js';
3
+ import { Base64ToArrayBuffer } from '../audio/pcmUtils.js';
4
4
  import { RealtimePcmPlayback } from '../audio/pcmPlayback.js';
5
5
  import { RealtimeAudioMeter } from '../audio/audioMeter.js';
6
- import { createPcmMicCapture } from '../audio/micCapture.js';
6
+ import { CreatePcmMicCapture } from '../audio/micCapture.js';
7
7
  // ── Layer 1: the protocol brain ─────────────────────────────────────────────────
8
8
  /**
9
9
  * The shared **OpenAI-protocol brain** for realtime CLIENT drivers — the transport-agnostic
@@ -775,7 +775,7 @@ export class OpenAIProtocolWebSocketRealtimeClient extends OpenAIProtocolRealtim
775
775
  }
776
776
  /** @inheritdoc — enqueues one base64 PCM16 chunk into the local playout engine. */
777
777
  handleAudioDeltaFrame(deltaBase64) {
778
- this.playback?.Enqueue(base64ToArrayBuffer(deltaBase64));
778
+ this.playback?.Enqueue(Base64ToArrayBuffer(deltaBase64));
779
779
  }
780
780
  /**
781
781
  * @inheritdoc
@@ -864,7 +864,7 @@ export class OpenAIProtocolWebSocketRealtimeClient extends OpenAIProtocolRealtim
864
864
  * (and may capture `onPcmChunk` to simulate mic frames).
865
865
  */
866
866
  async createMicCapture(micStream, sampleRate, onPcmChunk) {
867
- return createPcmMicCapture(micStream, sampleRate, onPcmChunk);
867
+ return CreatePcmMicCapture(micStream, sampleRate, onPcmChunk);
868
868
  }
869
869
  /** Creation seam for the playout engine. Production returns the shared {@link RealtimePcmPlayback}. */
870
870
  createPlayback(sampleRate) {
@@ -2,9 +2,9 @@
2
2
  * @fileoverview FRAME CAPTURE for realtime video tracks — camera and screen capture pipelines.
3
3
  *
4
4
  * Patterned beside `micCapture.ts`:
5
- * - `createCameraCapture`: prompts via `getUserMedia` (consent-gated via {@link RealtimeTrackDescriptor.RequiresConsent}).
6
- * - `createScreenCapture`: prompts via `getDisplayMedia` (consent-gated via {@link RealtimeTrackDescriptor.RequiresConsent}).
7
- * - `createStreamFrameCapture`: extracts periodic JPEG frames from an already-acquired `MediaStream`.
5
+ * - `CreateCameraCapture`: prompts via `getUserMedia` (consent-gated via {@link RealtimeTrackDescriptor.RequiresConsent}).
6
+ * - `CreateScreenCapture`: prompts via `getDisplayMedia` (consent-gated via {@link RealtimeTrackDescriptor.RequiresConsent}).
7
+ * - `CreateStreamFrameCapture`: extracts periodic JPEG frames from an already-acquired `MediaStream`.
8
8
  *
9
9
  * Cadence is throttled to at most 1 frame per second (1 fps ceiling per Live API capabilities guide).
10
10
  *
@@ -53,7 +53,7 @@ export interface FrameCaptureOptions {
53
53
  * @param stream The media stream containing one or more video tracks.
54
54
  * @param options Frame capture options (cadence, format, frame callback).
55
55
  */
56
- export declare function createStreamFrameCapture(stream: MediaStream, options: FrameCaptureOptions): IFrameCapture;
56
+ export declare function CreateStreamFrameCapture(stream: MediaStream, options: FrameCaptureOptions): IFrameCapture;
57
57
  /**
58
58
  * Requests user camera video capture via `navigator.mediaDevices.getUserMedia`.
59
59
  * Gated on {@link FrameCaptureOptions.ConsentGranted} when consent is required.
@@ -61,7 +61,7 @@ export declare function createStreamFrameCapture(stream: MediaStream, options: F
61
61
  * @param options Frame capture options.
62
62
  * @param constraints Video track constraints.
63
63
  */
64
- export declare function createCameraCapture(options: FrameCaptureOptions, constraints?: MediaTrackConstraints): Promise<IFrameCapture>;
64
+ export declare function CreateCameraCapture(options: FrameCaptureOptions, constraints?: MediaTrackConstraints): Promise<IFrameCapture>;
65
65
  /**
66
66
  * Requests screen share video capture via `navigator.mediaDevices.getDisplayMedia`.
67
67
  * Gated on {@link FrameCaptureOptions.ConsentGranted} when consent is required.
@@ -69,5 +69,11 @@ export declare function createCameraCapture(options: FrameCaptureOptions, constr
69
69
  * @param options Frame capture options.
70
70
  * @param displayMediaOptions Display media options.
71
71
  */
72
+ export declare function CreateScreenCapture(options: FrameCaptureOptions, displayMediaOptions?: DisplayMediaStreamOptions): Promise<IFrameCapture>;
73
+ /** @deprecated Use {@link CreateStreamFrameCapture}. */
74
+ export declare function createStreamFrameCapture(stream: MediaStream, options: FrameCaptureOptions): IFrameCapture;
75
+ /** @deprecated Use {@link CreateCameraCapture}. */
76
+ export declare function createCameraCapture(options: FrameCaptureOptions, constraints?: MediaTrackConstraints): Promise<IFrameCapture>;
77
+ /** @deprecated Use {@link CreateScreenCapture}. */
72
78
  export declare function createScreenCapture(options: FrameCaptureOptions, displayMediaOptions?: DisplayMediaStreamOptions): Promise<IFrameCapture>;
73
79
  //# sourceMappingURL=frameCapture.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"frameCapture.d.ts","sourceRoot":"","sources":["../../src/media/frameCapture.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAElE;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,yFAAyF;IACzF,IAAI,IAAI,IAAI,CAAC;IACb,0DAA0D;IAC1D,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAChC,+CAA+C;IAC/C,UAAU,CAAC,EAAE,uBAAuB,CAAC;IACrC;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mFAAmF;IACnF,QAAQ,CAAC,EAAE,YAAY,GAAG,WAAW,CAAC;IACtC,kEAAkE;IAClE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qEAAqE;IACrE,OAAO,EAAE,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;CAChE;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACpC,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,mBAAmB,GAC7B,aAAa,CAyEf;AAED;;;;;;GAMG;AACH,wBAAsB,mBAAmB,CACrC,OAAO,EAAE,mBAAmB,EAC5B,WAAW,CAAC,EAAE,qBAAqB,GACpC,OAAO,CAAC,aAAa,CAAC,CAqBxB;AAED;;;;;;GAMG;AACH,wBAAsB,mBAAmB,CACrC,OAAO,EAAE,mBAAmB,EAC5B,mBAAmB,CAAC,EAAE,yBAAyB,GAChD,OAAO,CAAC,aAAa,CAAC,CAqBxB"}
1
+ {"version":3,"file":"frameCapture.d.ts","sourceRoot":"","sources":["../../src/media/frameCapture.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAElE;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,yFAAyF;IACzF,IAAI,IAAI,IAAI,CAAC;IACb,0DAA0D;IAC1D,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAChC,+CAA+C;IAC/C,UAAU,CAAC,EAAE,uBAAuB,CAAC;IACrC;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mFAAmF;IACnF,QAAQ,CAAC,EAAE,YAAY,GAAG,WAAW,CAAC;IACtC,kEAAkE;IAClE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qEAAqE;IACrE,OAAO,EAAE,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;CAChE;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACpC,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,mBAAmB,GAC7B,aAAa,CAyEf;AAED;;;;;;GAMG;AACH,wBAAsB,mBAAmB,CACrC,OAAO,EAAE,mBAAmB,EAC5B,WAAW,CAAC,EAAE,qBAAqB,GACpC,OAAO,CAAC,aAAa,CAAC,CAqBxB;AAED;;;;;;GAMG;AACH,wBAAsB,mBAAmB,CACrC,OAAO,EAAE,mBAAmB,EAC5B,mBAAmB,CAAC,EAAE,yBAAyB,GAChD,OAAO,CAAC,aAAa,CAAC,CAqBxB;AAED,wDAAwD;AACxD,wBAAgB,wBAAwB,CACpC,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,mBAAmB,GAC7B,aAAa,CAEf;AAED,mDAAmD;AACnD,wBAAsB,mBAAmB,CACrC,OAAO,EAAE,mBAAmB,EAC5B,WAAW,CAAC,EAAE,qBAAqB,GACpC,OAAO,CAAC,aAAa,CAAC,CAExB;AAED,mDAAmD;AACnD,wBAAsB,mBAAmB,CACrC,OAAO,EAAE,mBAAmB,EAC5B,mBAAmB,CAAC,EAAE,yBAAyB,GAChD,OAAO,CAAC,aAAa,CAAC,CAExB"}
@@ -2,9 +2,9 @@
2
2
  * @fileoverview FRAME CAPTURE for realtime video tracks — camera and screen capture pipelines.
3
3
  *
4
4
  * Patterned beside `micCapture.ts`:
5
- * - `createCameraCapture`: prompts via `getUserMedia` (consent-gated via {@link RealtimeTrackDescriptor.RequiresConsent}).
6
- * - `createScreenCapture`: prompts via `getDisplayMedia` (consent-gated via {@link RealtimeTrackDescriptor.RequiresConsent}).
7
- * - `createStreamFrameCapture`: extracts periodic JPEG frames from an already-acquired `MediaStream`.
5
+ * - `CreateCameraCapture`: prompts via `getUserMedia` (consent-gated via {@link RealtimeTrackDescriptor.RequiresConsent}).
6
+ * - `CreateScreenCapture`: prompts via `getDisplayMedia` (consent-gated via {@link RealtimeTrackDescriptor.RequiresConsent}).
7
+ * - `CreateStreamFrameCapture`: extracts periodic JPEG frames from an already-acquired `MediaStream`.
8
8
  *
9
9
  * Cadence is throttled to at most 1 frame per second (1 fps ceiling per Live API capabilities guide).
10
10
  *
@@ -17,7 +17,7 @@
17
17
  * @param stream The media stream containing one or more video tracks.
18
18
  * @param options Frame capture options (cadence, format, frame callback).
19
19
  */
20
- export function createStreamFrameCapture(stream, options) {
20
+ export function CreateStreamFrameCapture(stream, options) {
21
21
  const rawRate = options.Rate ?? options.Descriptor?.Rate ?? 1;
22
22
  // Cadence ceiling: max 1 fps per Gemini Live API specs; minimum 0.1 fps
23
23
  const rate = Math.min(Math.max(rawRate, 0.1), 1);
@@ -93,7 +93,7 @@ export function createStreamFrameCapture(stream, options) {
93
93
  * @param options Frame capture options.
94
94
  * @param constraints Video track constraints.
95
95
  */
96
- export async function createCameraCapture(options, constraints) {
96
+ export async function CreateCameraCapture(options, constraints) {
97
97
  const requiresConsent = options.Descriptor?.RequiresConsent ?? true;
98
98
  if (requiresConsent && !options.ConsentGranted) {
99
99
  throw new Error('Explicit consent is required to establish camera video capture.');
@@ -104,7 +104,7 @@ export async function createCameraCapture(options, constraints) {
104
104
  const stream = await navigator.mediaDevices.getUserMedia({
105
105
  video: constraints ?? { width: { ideal: 1280 }, height: { ideal: 720 }, frameRate: { max: 1 } },
106
106
  });
107
- const capture = createStreamFrameCapture(stream, options);
107
+ const capture = CreateStreamFrameCapture(stream, options);
108
108
  return {
109
109
  Stop: () => {
110
110
  capture.Stop();
@@ -122,7 +122,7 @@ export async function createCameraCapture(options, constraints) {
122
122
  * @param options Frame capture options.
123
123
  * @param displayMediaOptions Display media options.
124
124
  */
125
- export async function createScreenCapture(options, displayMediaOptions) {
125
+ export async function CreateScreenCapture(options, displayMediaOptions) {
126
126
  const requiresConsent = options.Descriptor?.RequiresConsent ?? true;
127
127
  if (requiresConsent && !options.ConsentGranted) {
128
128
  throw new Error('Explicit consent is required to establish screen video capture.');
@@ -131,7 +131,7 @@ export async function createScreenCapture(options, displayMediaOptions) {
131
131
  throw new Error('Screen capture is unavailable: navigator.mediaDevices.getDisplayMedia not supported in this environment.');
132
132
  }
133
133
  const stream = await navigator.mediaDevices.getDisplayMedia(displayMediaOptions ?? { video: { frameRate: { max: 1 } } });
134
- const capture = createStreamFrameCapture(stream, options);
134
+ const capture = CreateStreamFrameCapture(stream, options);
135
135
  return {
136
136
  Stop: () => {
137
137
  capture.Stop();
@@ -142,4 +142,16 @@ export async function createScreenCapture(options, displayMediaOptions) {
142
142
  },
143
143
  };
144
144
  }
145
+ /** @deprecated Use {@link CreateStreamFrameCapture}. */
146
+ export function createStreamFrameCapture(stream, options) {
147
+ return CreateStreamFrameCapture(stream, options);
148
+ }
149
+ /** @deprecated Use {@link CreateCameraCapture}. */
150
+ export async function createCameraCapture(options, constraints) {
151
+ return CreateCameraCapture(options, constraints);
152
+ }
153
+ /** @deprecated Use {@link CreateScreenCapture}. */
154
+ export async function createScreenCapture(options, displayMediaOptions) {
155
+ return CreateScreenCapture(options, displayMediaOptions);
156
+ }
145
157
  //# sourceMappingURL=frameCapture.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"frameCapture.js","sourceRoot":"","sources":["../../src/media/frameCapture.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"frameCapture.js","sourceRoot":"","sources":["../../src/media/frameCapture.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@memberjunction/ai-realtime-client",
3
3
  "type": "module",
4
- "version": "6.1.4",
4
+ "version": "6.2.0-edge.1",
5
5
  "description": "MemberJunction: Framework-agnostic browser client abstraction for provider-direct realtime (voice) sessions - BaseRealtimeClient + provider drivers",
6
6
  "main": "dist/index.js",
7
7
  "types": "dist/index.d.ts",
@@ -11,8 +11,8 @@
11
11
  "author": "MemberJunction.com",
12
12
  "license": "BUSL-1.1",
13
13
  "dependencies": {
14
- "@memberjunction/global": "6.1.4",
15
- "@memberjunction/ai": "6.1.4",
14
+ "@memberjunction/global": "6.2.0-edge.1",
15
+ "@memberjunction/ai": "6.2.0-edge.1",
16
16
  "@google/genai": "^2.8.0"
17
17
  },
18
18
  "devDependencies": {