twilio-video 2.24.2 → 2.24.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 CHANGED
@@ -2,6 +2,17 @@ The Twilio Programmable Video SDKs use [Semantic Versioning](http://www.semver.o
2
2
 
3
3
  **Version 1.x reached End of Life on September 8th, 2021.** See the changelog entry [here](https://www.twilio.com/changelog/end-of-life-complete-for-unsupported-versions-of-the-programmable-video-sdk). Support for the 1.x version ended on December 4th, 2020.
4
4
 
5
+ 2.24.3 (October 10, 2022)
6
+ =========================
7
+
8
+ Bug Fixes
9
+ ---------
10
+
11
+ - Fixed a bug where iOS Safari Participant could not hear or see others after switching back from YouTube picture-in-picture mode. (VIDEO-11352)
12
+ - Fixed a bug where iOS Safari Participant could not hear others after switching from recording an audio message in a messenger app. (VIDEO-11354)
13
+ - Fixed a bug where iOS Safari Participant could not hear or see others after watching a video in another browser tab. (VIDEO-11356)
14
+ - Fixed a bug where iOS Safari Participant sometimes could not hear or see others after finishing an incoming call in full screen mode. (VIDEO-11359)
15
+
5
16
  2.24.2 (September 29, 2022)
6
17
  ===========================
7
18
 
package/COMMON_ISSUES.md CHANGED
@@ -4,7 +4,6 @@ Common Issues
4
4
  Are you experiencing an issue with twilio-video.js? Please review this list of known issues and workarounds
5
5
  before opening a new issue. We recommend regularly upgrading to the latest version of the SDK, which includes new features, bug fixes and improvements (see [CHANGELOG.md](CHANGELOG.md)).
6
6
 
7
-
8
7
  ### Chrome desktop
9
8
  <details>
10
9
  <summary>Chrome memory leak might cause degraded experience in group rooms</summary>
@@ -32,8 +31,6 @@ before opening a new issue. We recommend regularly upgrading to the latest versi
32
31
  </p>
33
32
  </details>
34
33
 
35
-
36
-
37
34
  ### Chrome mobile
38
35
  <details>
39
36
  <summary>Android 11: Participants are unable to connect to a room due to ICE gathering failures on certain devices</summary>
@@ -42,29 +39,6 @@ before opening a new issue. We recommend regularly upgrading to the latest versi
42
39
  Participants are unable to connect to a room on certain Android 11 devices due to a [Chromium bug](https://bugs.chromium.org/p/chromium/issues/detail?id=1240237) where the browser is unable to gather ice candidates. Please see this [github issue](https://github.com/twilio/twilio-video.js/issues/1701#issuecomment-1067533348) for more details and a potential solution to mitigate the issue.
43
40
  </p>
44
41
  </details>
45
- <details>
46
- <summary>Android 12: Video distortion on Chrome when hardware acceleration is enabled</summary>
47
- <p>
48
-
49
- This is a VP8 encoder issue on Android 12. Please see this [github ticket](https://github.com/twilio/twilio-video.js/issues/1627) and this [Chrome bug](https://bugs.chromium.org/p/chromium/issues/detail?id=1237677) for more details.
50
- </p>
51
- </details>
52
- <details>
53
- <summary>Android Chrome on Pixel 3 receives corrupted video frames with codec VP8</summary>
54
- <p>
55
-
56
- This is an issue in the hardware VP8 encoder on the Pixel 3 devices. See [WebRTC ticket](https://bugs.chromium.org/p/webrtc/issues/detail?id=11337). To work around this issue, please set H264 as the preferred video codec on Pixel 3. ([Example](https://github.com/twilio/video-quickstart-android/issues/470#issuecomment-623042880)).
57
- </p>
58
- </details>
59
- <details>
60
- <summary>Android Chrome 81+ Participants fail to subscribe to H264 VideoTracks in Group Rooms</summary>
61
- <p>
62
-
63
- This happens primarily due to this [Chromium Bug](https://bugs.chromium.org/p/chromium/issues/detail?id=1074421).
64
- We have added a workaround to the SDK in version 2.4.0. For earlier versions of the SDK,
65
- please apply the workaround discussed in this [GitHub Issue](https://github.com/twilio/twilio-video.js/issues/966#issuecomment-619212184).
66
- </p>
67
- </details>
68
42
 
69
43
  ### Safari desktop
70
44
  <details>
@@ -83,15 +57,6 @@ before opening a new issue. We recommend regularly upgrading to the latest versi
83
57
  To fix this issue, please update your adapter.js version to the newer one (^7.7.1) with the [fix](https://github.com/webrtcHacks/adapter/commit/de0348c756b7bda11a700bf7ea9e9393cab16421)
84
58
  </p>
85
59
  </details>
86
-
87
- <details>
88
- <summary>Echo issues in Safari when using external microphone</summary>
89
- <p>
90
-
91
- This is an echo cancellation bug in Safari's implementation of WebRTC. For more details, go [here](https://bugs.webkit.org/show_bug.cgi?id=213723).
92
- and [here](https://github.com/twilio/twilio-video.js/issues/1433)
93
- </p>
94
- </details>
95
60
  <details>
96
61
  <summary>Angular applications missing audio and/or video tracks</summary>
97
62
  <p>
@@ -110,14 +75,6 @@ before opening a new issue. We recommend regularly upgrading to the latest versi
110
75
  </p>
111
76
  </details>
112
77
  <details>
113
- <summary>After unpublishing a Track, Safari 12.1 Participants cannot publish Track(s) of the same kind</summary>
114
- <p>
115
-
116
- Because of this Safari 12.1 [bug](https://bugs.webkit.org/show_bug.cgi?id=195489),
117
- once a Participant unpublishes a MediaTrack of any kind (audio or video), it will not be able to publish another MediaTrack of the same kind. DataTracks are not affected. We have escalated this bug to the Safari Team and are keeping track of related developments.
118
- </p>
119
- </details>
120
- <details>
121
78
  <summary>Video elements may not be visible when applying a 3d transform</summary>
122
79
  <p>
123
80
 
@@ -263,16 +220,15 @@ transform: scaleX(-1)
263
220
  This issue happened due to regression in Safari's WebKit in iOS version 14.2, the fix got rolled out in iOS 14.3 beta3. Find more details [here](https://github.com/twilio/twilio-video.js/issues/1296) and in this [WebKit bug](https://bugs.webkit.org/show_bug.cgi?id=218762).
264
221
  </p>
265
222
  </details>
266
-
267
-
268
- ### Firefox desktop
269
223
  <details>
270
- <summary>Firefox Participants sometimes fail to subscribe to DataTracks on Peer-to-Peer Rooms</summary>
224
+ <summary>Participant is disconnected from the Room after being backgrounded for 30 seconds due to another audio/video app or incoming phone call</summary>
271
225
  <p>
272
226
 
273
- Because of this Firefox [bug](https://bugzilla.mozilla.org/show_bug.cgi?id=1603887) Participants that join a Peer-to-Peer Room after a DataTrack has been published by a Firefox Participant fail to subscribe to it. You can work around this issue by publishing a DataTrack while connecting to the Room.
227
+ This is due to iOS suspending browser sessions that are not capturing audio after 30 seconds, as mentioned in this [Webkit bug comment](https://bugs.webkit.org/show_bug.cgi?id=204681#c5). You can work around this by rejoining the Room once the browser is foregrounded.
274
228
  </p>
275
229
  </details>
230
+
231
+ ### Firefox desktop
276
232
  <details>
277
233
  <summary>Firefox Participants cannot constrain their audio bandwidth</summary>
278
234
  <p>
package/README.md CHANGED
@@ -74,7 +74,7 @@ Releases of twilio-video.js are hosted on a CDN, and you can include these
74
74
  directly in your web app using a &lt;script&gt; tag.
75
75
 
76
76
  ```html
77
- <script src="//sdk.twilio.com/js/video/releases/2.24.2/twilio-video.min.js"></script>
77
+ <script src="//sdk.twilio.com/js/video/releases/2.24.3/twilio-video.min.js"></script>
78
78
 
79
79
  ```
80
80
 
@@ -1,4 +1,4 @@
1
- /*! twilio-video.js 2.24.2
1
+ /*! twilio-video.js 2.24.3
2
2
 
3
3
  The following license applies to all parts of this software except as
4
4
  documented below.
@@ -2676,17 +2676,6 @@ var AudioTrack = /** @class */ (function (_super) {
2676
2676
  function AudioTrack(mediaTrackTransceiver, options) {
2677
2677
  return _super.call(this, mediaTrackTransceiver, options) || this;
2678
2678
  }
2679
- /**
2680
- * @private
2681
- */
2682
- AudioTrack.prototype._start = function () {
2683
- _super.prototype._start.call(this);
2684
- if (this._dummyEl) {
2685
- // once started let go of dummy element
2686
- this._dummyEl.srcObject = null;
2687
- this._dummyEl = null;
2688
- }
2689
- };
2690
2679
  /**
2691
2680
  * Create an HTMLAudioElement and attach the {@link AudioTrack} to it.
2692
2681
  *
@@ -4978,6 +4967,18 @@ var RemoteAudioTrack = /** @class */ (function (_super) {
4978
4967
  RemoteAudioTrack.prototype.toString = function () {
4979
4968
  return "[RemoteAudioTrack #" + this._instanceId + ": " + this.sid + "]";
4980
4969
  };
4970
+ /**
4971
+ * @private
4972
+ */
4973
+ RemoteAudioTrack.prototype._start = function () {
4974
+ _super.prototype._start.call(this);
4975
+ if (this._dummyEl) {
4976
+ // NOTE(mpatwardhan): To fix VIDEO-6336, clear dummy element after the
4977
+ // RemoteAudioTrack has started.
4978
+ this._dummyEl.srcObject = null;
4979
+ this._dummyEl = null;
4980
+ }
4981
+ };
4981
4982
  /**
4982
4983
  * Update the subscribe {@link Track.Priority} of the {@link RemoteAudioTrack}.
4983
4984
  * @param {?Track.Priority} priority - the new subscribe {@link Track.Priority};
@@ -27533,12 +27534,6 @@ var FirefoxRTCSessionDescription = require('../rtcsessiondescription/firefox');
27533
27534
  var inherits = require('../../vendor/inherits');
27534
27535
  var updateTracksToSSRCs = require('../util/sdp').updateUnifiedPlanTrackIdsToSSRCs;
27535
27536
  var util = require('../util');
27536
- // NOTE(mroberts): This is a short-lived workaround. Checking the user agent
27537
- // string might not fix every affected Firefox instance, but it should be good
27538
- // enough for this bug.
27539
- var needsWorkaroundForBug1480277 = typeof navigator === 'object'
27540
- && navigator.userAgent
27541
- && (navigator.userAgent.match(/Firefox\/61/) || navigator.userAgent.match(/Firefox\/62/));
27542
27537
  // NOTE(mroberts): This class wraps Firefox's RTCPeerConnection implementation.
27543
27538
  // It provides some functionality not currently present in Firefox, namely the
27544
27539
  // abilities to
@@ -27637,14 +27632,6 @@ Object.defineProperty(FirefoxRTCPeerConnection.prototype, 'peerIdentity', {
27637
27632
  name: ''
27638
27633
  })
27639
27634
  });
27640
- if (needsWorkaroundForBug1480277) {
27641
- FirefoxRTCPeerConnection.prototype.addTrack = function addTrack() {
27642
- var track = arguments[0];
27643
- var sender = this._peerConnection.addTrack.apply(this._peerConnection, arguments);
27644
- sender.replaceTrack(track);
27645
- return sender;
27646
- };
27647
- }
27648
27635
  FirefoxRTCPeerConnection.prototype.createAnswer = function createAnswer() {
27649
27636
  var args = [].slice.call(arguments);
27650
27637
  var promise;
@@ -29545,7 +29532,7 @@ module.exports={
29545
29532
  "name": "twilio-video",
29546
29533
  "title": "Twilio Video",
29547
29534
  "description": "Twilio Video JavaScript Library",
29548
- "version": "2.24.2",
29535
+ "version": "2.24.3",
29549
29536
  "homepage": "https://twilio.com",
29550
29537
  "author": "Mark Andrus Roberts <mroberts@twilio.com>",
29551
29538
  "contributors": [