@vkontakte/calls-sdk 2.5.3-dev.5dc4e16.0 → 2.5.3-dev.685756f.0
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/calls-sdk.cjs.js +8 -8
- package/calls-sdk.esm.js +8 -8
- package/classes/Conversation.d.ts +1 -0
- package/classes/codec/IDecoder.d.ts +1 -1
- package/classes/codec/WebCodecsDecoder.d.ts +1 -1
- package/classes/screenshare/BaseRenderer.d.ts +8 -0
- package/classes/screenshare/CanvasRenderer.d.ts +16 -0
- package/classes/screenshare/StreamBuilder.d.ts +1 -9
- package/classes/screenshare/TrackGeneratorRenderer.d.ts +10 -0
- package/enums/HangupType.d.ts +2 -1
- package/package.json +1 -1
- package/static/External.d.ts +6 -0
- package/static/Params.d.ts +14 -0
- package/types/ConversationParams.d.ts +4 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export default interface IDecoder {
|
|
2
|
-
init(onFrameImage: (image: ImageBitmap | ImageData) => void): Promise<void>;
|
|
2
|
+
init(onFrameImage: (image: VideoFrame | ImageBitmap | ImageData) => void): Promise<void>;
|
|
3
3
|
decodeFrame(timestamp: number, data: Uint8Array, isVP9: boolean, keyFrame?: boolean): void;
|
|
4
4
|
destroy(): void;
|
|
5
5
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import IDecoder from './IDecoder';
|
|
2
2
|
import WorkerBase from './WorkerBase';
|
|
3
3
|
export default class WebCodecsDecoder extends WorkerBase implements IDecoder {
|
|
4
|
-
init(onFrameImage: (
|
|
4
|
+
init(onFrameImage: (frame: VideoFrame) => void): Promise<void>;
|
|
5
5
|
decodeFrame(timestamp: number, data: Uint8Array, isVP9: boolean, keyFrame?: boolean): void;
|
|
6
6
|
destroy(): void;
|
|
7
7
|
static isBrowserSupported(): boolean;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export default abstract class BaseRenderer {
|
|
2
|
+
protected readonly _onStream: (stream: MediaStream) => void;
|
|
3
|
+
protected constructor(onStream: (stream: MediaStream) => void);
|
|
4
|
+
drawFrame(frame: VideoFrame): Promise<void>;
|
|
5
|
+
drawImage(image: ImageBitmap | ImageData): void;
|
|
6
|
+
abstract destroy(): void;
|
|
7
|
+
static isBrowserSupported(): boolean;
|
|
8
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import BaseRenderer from './BaseRenderer';
|
|
2
|
+
export default class CanvasRenderer extends BaseRenderer {
|
|
3
|
+
private readonly _useImageBitmap;
|
|
4
|
+
private _canvas;
|
|
5
|
+
private _canvasContext;
|
|
6
|
+
private _stream;
|
|
7
|
+
private _track;
|
|
8
|
+
constructor(onStream: (stream: MediaStream) => void);
|
|
9
|
+
private _createStream;
|
|
10
|
+
private _removeStream;
|
|
11
|
+
private _requestCanvasFrame;
|
|
12
|
+
drawFrame(frame: VideoFrame): Promise<void>;
|
|
13
|
+
drawImage(image: ImageBitmap | ImageData): void;
|
|
14
|
+
destroy(): void;
|
|
15
|
+
static isBrowserSupported(): boolean;
|
|
16
|
+
}
|
|
@@ -1,19 +1,11 @@
|
|
|
1
1
|
import { ParticipantId } from '../../types/Participant';
|
|
2
2
|
import { BaseStreamBuilder, FrameData } from './BaseStreamBuilder';
|
|
3
3
|
export default class StreamBuilder extends BaseStreamBuilder {
|
|
4
|
+
private readonly _renderer;
|
|
4
5
|
private readonly _decoder;
|
|
5
6
|
private _decoderReady;
|
|
6
7
|
private _decoderQueue;
|
|
7
|
-
private readonly _useImageBitmap;
|
|
8
|
-
private _canvas;
|
|
9
|
-
private _canvasContext;
|
|
10
|
-
private _stream;
|
|
11
|
-
private _track;
|
|
12
8
|
constructor(participantId: ParticipantId, onStream: (stream: MediaStream) => void);
|
|
13
|
-
private _createStream;
|
|
14
|
-
private _removeStream;
|
|
15
|
-
private _requestCanvasFrame;
|
|
16
|
-
private _drawImage;
|
|
17
9
|
protected _processFrame(frame: FrameData): void;
|
|
18
10
|
private _decodeQueue;
|
|
19
11
|
destroy(): void;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import BaseRenderer from './BaseRenderer';
|
|
2
|
+
export default class TrackGeneratorRenderer extends BaseRenderer {
|
|
3
|
+
private readonly _generator;
|
|
4
|
+
private readonly _writer;
|
|
5
|
+
private readonly _stream;
|
|
6
|
+
constructor(onStream: (stream: MediaStream) => void);
|
|
7
|
+
drawFrame(frame: VideoFrame): Promise<void>;
|
|
8
|
+
destroy(): void;
|
|
9
|
+
static isBrowserSupported(): boolean;
|
|
10
|
+
}
|
package/enums/HangupType.d.ts
CHANGED
|
@@ -22,6 +22,7 @@ declare enum HangupType {
|
|
|
22
22
|
SERVICE_DISABLED = "SERVICE_DISABLED",
|
|
23
23
|
EXTERNAL_API_ERROR = "EXTERNAL_API_ERROR",
|
|
24
24
|
SOCKET_CLOSED = "SOCKET_CLOSED",
|
|
25
|
-
ENDED = "ENDED"
|
|
25
|
+
ENDED = "ENDED",
|
|
26
|
+
KILLED_WITHOUT_DELETE = "KILLED_WITHOUT_DELETE"
|
|
26
27
|
}
|
|
27
28
|
export default HangupType;
|
package/package.json
CHANGED
package/static/External.d.ts
CHANGED
|
@@ -319,5 +319,11 @@ declare namespace External {
|
|
|
319
319
|
* @param firstParticipants Первые несколько ожидающих в зале
|
|
320
320
|
*/
|
|
321
321
|
function onChatRoomUpdated(eventType: ChatRoomEventType, totalCount: number, firstParticipants: ExternalId[]): void;
|
|
322
|
+
/**
|
|
323
|
+
* Получен микшированный аудио стрим.
|
|
324
|
+
*
|
|
325
|
+
* @param stream стрим от WebRTC
|
|
326
|
+
*/
|
|
327
|
+
function onRemoteMixedAudioStream(stream: MediaStream): void;
|
|
322
328
|
}
|
|
323
329
|
export default External;
|
package/static/Params.d.ts
CHANGED
|
@@ -242,6 +242,13 @@ export declare type ParamsObject = {
|
|
|
242
242
|
* @hidden
|
|
243
243
|
*/
|
|
244
244
|
muteMode: boolean;
|
|
245
|
+
/**
|
|
246
|
+
* Сохранять (не удалять) аудио дорожки в стримах, поступающих клиенту
|
|
247
|
+
* Позволяет клиенту получать и сохранять аудио данные
|
|
248
|
+
* Внимание: может привести к "двойному" звуку при проигрывании
|
|
249
|
+
* @hidden
|
|
250
|
+
*/
|
|
251
|
+
preserveAudioTracks: boolean;
|
|
245
252
|
/**
|
|
246
253
|
* Получен локальный стрим с камеры/микрофона
|
|
247
254
|
*/
|
|
@@ -427,6 +434,12 @@ export declare type ParamsObject = {
|
|
|
427
434
|
* @param firstParticipants Первые несколько ожидающих в зале
|
|
428
435
|
*/
|
|
429
436
|
onChatRoomUpdated?: (eventType: ChatRoomEventType, totalCount: number, firstParticipants: ExternalId[]) => void;
|
|
437
|
+
/**
|
|
438
|
+
* Получен микшированный аудио стрим.
|
|
439
|
+
* @hidden
|
|
440
|
+
* @param stream стрим от WebRTC
|
|
441
|
+
*/
|
|
442
|
+
onRemoteMixedAudioStream?: (stream: MediaStream) => void;
|
|
430
443
|
};
|
|
431
444
|
export default abstract class Params {
|
|
432
445
|
private static _params;
|
|
@@ -519,4 +532,5 @@ export default abstract class Params {
|
|
|
519
532
|
static get batchParticipantsOnStart(): boolean;
|
|
520
533
|
static get filterObservers(): boolean;
|
|
521
534
|
static get muteMode(): boolean;
|
|
535
|
+
static get preserveAudioTracks(): boolean;
|
|
522
536
|
}
|