@livedigital/client 3.61.0 → 3.62.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.
@@ -83,8 +83,28 @@ export interface BaseTrack {
83
83
  getInfo: () => Promise<BaseTrackInfo>;
84
84
  /** Возвращает техническую WebRTC-статистику опубликованного трека. */
85
85
  getStats: () => Promise<TrackOutboundStats | undefined>;
86
- /** Подменяет исходный `MediaStreamTrack` без пересоздания всего объекта трека. */
87
- replaceTrack: (track: MediaStreamTrack) => Promise<void>;
86
+ /**
87
+ * Подменяет исходный `MediaStreamTrack` без пересоздания всего объекта трека.
88
+ * Если передан `MediaStreamTrack`, прежним медиапотоком распоряжается вызывающий:
89
+ * он не останавливается — это нужно, например, для эффектов, где новый медиапоток
90
+ * порождён из прежнего.
91
+ * Если передан другой трек, у него забирается медиапоток, прежний медиапоток
92
+ * останавливается, а сам переданный трек удаляется из жизненного цикла SDK.
93
+ */
94
+ replaceTrack: (trackOrSource: MediaStreamTrack | BaseTrack) => Promise<void>;
95
+ /** Пересоздаёт медиа-трек с нового устройства deviceId и подменяет им текущий трек, принимая MediaTrackConstraints */
96
+ changeDevice: (deviceId: string, constraints?: MediaTrackConstraints) => Promise<void>;
97
+ }
98
+ /**
99
+ * Внутренние опции удаления локального трека из жизненного цикла SDK.
100
+ * Если надо убрать временный трек, не останавливая медиапоток, уже отданный другому треку
101
+ */
102
+ export interface DeleteTrackOptions {
103
+ /**
104
+ * Останавливать ли исходный `MediaStreamTrack` при удалении трека.
105
+ * @defaultValue true
106
+ */
107
+ stopTrack?: boolean;
88
108
  }
89
109
  export interface TrackWithEncodings extends BaseTrack {
90
110
  getCodecOptions: () => ProducerCodecOptions;
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@livedigital/client",
3
3
  "author": "vlprojects",
4
4
  "license": "MIT",
5
- "version": "3.61.0",
5
+ "version": "3.62.0",
6
6
  "private": false,
7
7
  "bugs": {
8
8
  "url": "https://github.com/vlprojects/livedigital-sdk/issues"