@stream-io/video-client 1.8.2 → 1.8.3
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/CHANGELOG.md +7 -0
- package/dist/index.browser.es.js +13 -48
- package/dist/index.browser.es.js.map +1 -1
- package/dist/index.cjs.js +13 -48
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.es.js +13 -48
- package/dist/index.es.js.map +1 -1
- package/package.json +1 -1
- package/src/devices/InputMediaDeviceManager.ts +1 -8
- package/src/devices/devices.ts +0 -6
- package/src/helpers/RNSpeechDetector.ts +1 -8
- package/src/rtc/Publisher.ts +11 -24
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
|
|
4
4
|
|
|
5
|
+
## [1.8.3](https://github.com/GetStream/stream-video-js/compare/@stream-io/video-client-1.8.2...@stream-io/video-client-1.8.3) (2024-10-10)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Bug Fixes
|
|
9
|
+
|
|
10
|
+
* do not release track if track was not removed from stream ([#1517](https://github.com/GetStream/stream-video-js/issues/1517)) ([5bfc528](https://github.com/GetStream/stream-video-js/commit/5bfc52850c36ffe0de37e47066538a8a14dc9e01))
|
|
11
|
+
|
|
5
12
|
## [1.8.2](https://github.com/GetStream/stream-video-js/compare/@stream-io/video-client-1.8.1...@stream-io/video-client-1.8.2) (2024-10-10)
|
|
6
13
|
|
|
7
14
|
|
package/dist/index.browser.es.js
CHANGED
|
@@ -3020,7 +3020,7 @@ const retryable = async (rpc, signal) => {
|
|
|
3020
3020
|
return result;
|
|
3021
3021
|
};
|
|
3022
3022
|
|
|
3023
|
-
const version = "1.8.
|
|
3023
|
+
const version = "1.8.3";
|
|
3024
3024
|
const [major, minor, patch] = version.split('.');
|
|
3025
3025
|
let sdkInfo = {
|
|
3026
3026
|
type: SdkType.PLAIN_JAVASCRIPT,
|
|
@@ -5237,11 +5237,6 @@ class Publisher {
|
|
|
5237
5237
|
if (previousTrack && previousTrack !== track) {
|
|
5238
5238
|
previousTrack.stop();
|
|
5239
5239
|
previousTrack.removeEventListener('ended', handleTrackEnded);
|
|
5240
|
-
// @ts-expect-error release() is present in react-native-webrtc and must be called to dispose the track
|
|
5241
|
-
if (typeof previousTrack.release === 'function') {
|
|
5242
|
-
// @ts-expect-error
|
|
5243
|
-
track.release();
|
|
5244
|
-
}
|
|
5245
5240
|
track.addEventListener('ended', handleTrackEnded);
|
|
5246
5241
|
}
|
|
5247
5242
|
if (!track.enabled) {
|
|
@@ -5261,19 +5256,14 @@ class Publisher {
|
|
|
5261
5256
|
const transceiver = this.pc
|
|
5262
5257
|
.getTransceivers()
|
|
5263
5258
|
.find((t) => t === this.transceiverRegistry[trackType] && t.sender.track);
|
|
5264
|
-
|
|
5265
|
-
|
|
5266
|
-
|
|
5267
|
-
track.
|
|
5268
|
-
|
|
5269
|
-
|
|
5270
|
-
|
|
5271
|
-
|
|
5272
|
-
}
|
|
5273
|
-
}
|
|
5274
|
-
else {
|
|
5275
|
-
track.enabled = false;
|
|
5276
|
-
}
|
|
5259
|
+
if (transceiver &&
|
|
5260
|
+
transceiver.sender.track &&
|
|
5261
|
+
(stopTrack
|
|
5262
|
+
? transceiver.sender.track.readyState === 'live'
|
|
5263
|
+
: transceiver.sender.track.enabled)) {
|
|
5264
|
+
stopTrack
|
|
5265
|
+
? transceiver.sender.track.stop()
|
|
5266
|
+
: (transceiver.sender.track.enabled = false);
|
|
5277
5267
|
// We don't need to notify SFU if unpublishing in response to remote soft mute
|
|
5278
5268
|
if (this.state.localParticipant?.publishedTracks.includes(trackType)) {
|
|
5279
5269
|
await this.notifyTrackMuteStateChanged(undefined, trackType, true);
|
|
@@ -5320,13 +5310,7 @@ class Publisher {
|
|
|
5320
5310
|
this.stopPublishing = () => {
|
|
5321
5311
|
this.logger('debug', 'Stopping publishing all tracks');
|
|
5322
5312
|
this.pc.getSenders().forEach((s) => {
|
|
5323
|
-
|
|
5324
|
-
track?.stop();
|
|
5325
|
-
// @ts-expect-error release() is present in react-native-webrtc and must be called to dispose the track
|
|
5326
|
-
if (typeof track?.release === 'function') {
|
|
5327
|
-
// @ts-expect-error
|
|
5328
|
-
track.release();
|
|
5329
|
-
}
|
|
5313
|
+
s.track?.stop();
|
|
5330
5314
|
if (this.pc.signalingState !== 'closed') {
|
|
5331
5315
|
this.pc.removeTrack(s);
|
|
5332
5316
|
}
|
|
@@ -7954,12 +7938,6 @@ const disposeOfMediaStream = (stream) => {
|
|
|
7954
7938
|
return;
|
|
7955
7939
|
stream.getTracks().forEach((track) => {
|
|
7956
7940
|
track.stop();
|
|
7957
|
-
stream.removeTrack(track);
|
|
7958
|
-
// @ts-expect-error release() is present in react-native-webrtc and must be called to dispose the track
|
|
7959
|
-
if (typeof track.release === 'function') {
|
|
7960
|
-
// @ts-expect-error
|
|
7961
|
-
track.release();
|
|
7962
|
-
}
|
|
7963
7941
|
});
|
|
7964
7942
|
// @ts-expect-error release() is present in react-native-webrtc and must be called to dispose the stream
|
|
7965
7943
|
if (typeof stream.release === 'function') {
|
|
@@ -8179,14 +8157,8 @@ class InputMediaDeviceManager {
|
|
|
8179
8157
|
}
|
|
8180
8158
|
stopTracks() {
|
|
8181
8159
|
this.getTracks().forEach((track) => {
|
|
8182
|
-
if (track.readyState === 'live')
|
|
8160
|
+
if (track.readyState === 'live')
|
|
8183
8161
|
track.stop();
|
|
8184
|
-
// @ts-expect-error release() is present in react-native-webrtc and must be called to dispose the track
|
|
8185
|
-
if (typeof track.release === 'function') {
|
|
8186
|
-
// @ts-expect-error
|
|
8187
|
-
track.release();
|
|
8188
|
-
}
|
|
8189
|
-
}
|
|
8190
8162
|
});
|
|
8191
8163
|
}
|
|
8192
8164
|
muteLocalStream(stopTracks) {
|
|
@@ -8827,14 +8799,7 @@ class RNSpeechDetector {
|
|
|
8827
8799
|
if (!this.audioStream) {
|
|
8828
8800
|
return;
|
|
8829
8801
|
}
|
|
8830
|
-
this.audioStream.getTracks().forEach((track) =>
|
|
8831
|
-
track.stop();
|
|
8832
|
-
// @ts-expect-error release() is present in react-native-webrtc and must be called to dispose the track
|
|
8833
|
-
if (typeof track.release === 'function') {
|
|
8834
|
-
// @ts-expect-error
|
|
8835
|
-
track.release();
|
|
8836
|
-
}
|
|
8837
|
-
});
|
|
8802
|
+
this.audioStream.getTracks().forEach((track) => track.stop());
|
|
8838
8803
|
if (
|
|
8839
8804
|
// @ts-expect-error release() is present in react-native-webrtc
|
|
8840
8805
|
typeof this.audioStream.release === 'function') {
|
|
@@ -12504,7 +12469,7 @@ class StreamClient {
|
|
|
12504
12469
|
});
|
|
12505
12470
|
};
|
|
12506
12471
|
this.getUserAgent = () => {
|
|
12507
|
-
const version = "1.8.
|
|
12472
|
+
const version = "1.8.3";
|
|
12508
12473
|
return (this.userAgent ||
|
|
12509
12474
|
`stream-video-javascript-client-${this.node ? 'node' : 'browser'}-${version}`);
|
|
12510
12475
|
};
|