twilio-video 2.18.2 → 2.20.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/CHANGELOG.md +81 -0
- package/LICENSE.md +1 -1
- package/README.md +1 -1
- package/dist/twilio-video.js +1000 -796
- package/dist/twilio-video.min.js +23 -23
- package/es5/connect.js +24 -3
- package/es5/connect.js.map +1 -1
- package/es5/encodingparameters.js +5 -1
- package/es5/encodingparameters.js.map +1 -1
- package/es5/localparticipant.js +4 -0
- package/es5/localparticipant.js.map +1 -1
- package/es5/media/track/localmediatrack.js +2 -0
- package/es5/media/track/localmediatrack.js.map +1 -1
- package/es5/media/track/sender.js +50 -2
- package/es5/media/track/sender.js.map +1 -1
- package/es5/preflight/getturncredentials.js +14 -9
- package/es5/preflight/getturncredentials.js.map +1 -1
- package/es5/preflight/preflighttest.js +115 -75
- package/es5/preflight/preflighttest.js.map +1 -1
- package/es5/signaling/v2/cancelableroomsignalingpromise.js +2 -0
- package/es5/signaling/v2/cancelableroomsignalingpromise.js.map +1 -1
- package/es5/signaling/v2/iceconnectionmonitor.js +3 -7
- package/es5/signaling/v2/iceconnectionmonitor.js.map +1 -1
- package/es5/signaling/v2/localparticipant.js +35 -1
- package/es5/signaling/v2/localparticipant.js.map +1 -1
- package/es5/signaling/v2/networkqualitysignaling.js +20 -1
- package/es5/signaling/v2/networkqualitysignaling.js.map +1 -1
- package/es5/signaling/v2/peerconnection.js +268 -145
- package/es5/signaling/v2/peerconnection.js.map +1 -1
- package/es5/signaling/v2/peerconnectionmanager.js +8 -0
- package/es5/signaling/v2/peerconnectionmanager.js.map +1 -1
- package/es5/signaling/v2/publisherhintsignaling.js +85 -0
- package/es5/signaling/v2/publisherhintsignaling.js.map +1 -0
- package/es5/signaling/v2/renderhintssignaling.js +28 -17
- package/es5/signaling/v2/renderhintssignaling.js.map +1 -1
- package/es5/signaling/v2/room.js +33 -1
- package/es5/signaling/v2/room.js.map +1 -1
- package/es5/signaling/v2/twilioconnectiontransport.js +6 -8
- package/es5/signaling/v2/twilioconnectiontransport.js.map +1 -1
- package/es5/util/cancelablepromise.js +11 -0
- package/es5/util/cancelablepromise.js.map +1 -1
- package/es5/util/constants.js +1 -0
- package/es5/util/constants.js.map +1 -1
- package/es5/util/index.js +22 -6
- package/es5/util/index.js.map +1 -1
- package/es5/util/sdp/index.js +31 -95
- package/es5/util/sdp/index.js.map +1 -1
- package/es5/util/sdp/issue8329.js +1 -2
- package/es5/util/sdp/issue8329.js.map +1 -1
- package/es5/util/sdp/simulcast.js +6 -29
- package/es5/util/sdp/simulcast.js.map +1 -1
- package/es5/util/sdp/{trackmatcher/mid.js → trackmatcher.js} +11 -11
- package/es5/util/sdp/trackmatcher.js.map +1 -0
- package/lib/connect.js +29 -3
- package/lib/encodingparameters.js +5 -1
- package/lib/localparticipant.js +5 -0
- package/lib/media/track/localmediatrack.js +2 -0
- package/lib/media/track/sender.js +36 -2
- package/lib/preflight/getturncredentials.ts +18 -9
- package/lib/preflight/preflighttest.ts +110 -74
- package/lib/signaling/v2/cancelableroomsignalingpromise.js +2 -0
- package/lib/signaling/v2/iceconnectionmonitor.js +3 -8
- package/lib/signaling/v2/localparticipant.js +41 -1
- package/lib/signaling/v2/networkqualitysignaling.js +24 -1
- package/lib/signaling/v2/peerconnection.js +270 -157
- package/lib/signaling/v2/peerconnectionmanager.js +9 -0
- package/lib/signaling/v2/publisherhintsignaling.js +71 -0
- package/lib/signaling/v2/renderhintssignaling.js +28 -17
- package/lib/signaling/v2/room.js +37 -1
- package/lib/signaling/v2/twilioconnectiontransport.js +7 -10
- package/lib/util/cancelablepromise.js +12 -0
- package/lib/util/constants.js +1 -0
- package/lib/util/index.js +21 -6
- package/lib/util/sdp/index.js +30 -102
- package/lib/util/sdp/issue8329.js +2 -3
- package/lib/util/sdp/simulcast.js +6 -31
- package/lib/util/sdp/{trackmatcher/mid.js → trackmatcher.js} +6 -6
- package/package.json +3 -3
- package/tsconfig.json +1 -1
- package/tsdef/PreflightTypes.d.ts +6 -2
- package/tsdef/index.d.ts +2 -2
- package/tsdef/preflighttest.d.ts +1 -1
- package/tsdef/twilio-video-tests.ts +19 -0
- package/tsdef/types.d.ts +6 -1
- package/es5/util/sdp/trackmatcher/identity.js +0 -25
- package/es5/util/sdp/trackmatcher/identity.js.map +0 -1
- package/es5/util/sdp/trackmatcher/mid.js.map +0 -1
- package/es5/util/sdp/trackmatcher/ordered.js +0 -111
- package/es5/util/sdp/trackmatcher/ordered.js.map +0 -1
- package/lib/util/sdp/trackmatcher/identity.js +0 -24
- package/lib/util/sdp/trackmatcher/ordered.js +0 -120
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,87 @@ 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.20.0 (February 10, 2022)
|
|
6
|
+
==========================
|
|
7
|
+
|
|
8
|
+
Changes
|
|
9
|
+
-------
|
|
10
|
+
|
|
11
|
+
The Preflight API ([runPreflight](https://sdk.twilio.com/js/video/releases/2.20.0/docs/module-twilio-video.html#.runPreflight__anchor)), originally released in [2.16.0](#2160-august-11-2021), has been promoted to GA.
|
|
12
|
+
|
|
13
|
+
Thank you @morninng @eroidaaruqaj [#1622](https://github.com/twilio/twilio-video.js/issues/1622) for your feedback. Based on this feedback, we have made the following changes to `runPreflight`. (VIDEO-7728)
|
|
14
|
+
|
|
15
|
+
- The [failed](https://sdk.twilio.com/js/video/releases/2.20.0/docs/PreflightTest.html#event:failed) event now provides a [PreflightTestReport](https://sdk.twilio.com/js/video/releases/2.20.0/docs/global.html#PreflightTestReport) which include partial results gathered during the test. Use this in addition to the error object to get more insights on the failure.
|
|
16
|
+
|
|
17
|
+
- Signaling and Media Connection errors are now properly surfaced via the [failed](https://sdk.twilio.com/js/video/releases/2.20.0/docs/PreflightTest.html#event:failed) event.
|
|
18
|
+
|
|
19
|
+
- [PreflightTestReport](https://sdk.twilio.com/js/video/releases/2.20.0/docs/global.html#PreflightTestReport) now includes a `progressEvents` property. This new property is an array of [PreflightProgress](https://sdk.twilio.com/js/video/releases/2.20.0/docs/global.html#PreflightProgress) events detected during the test. Use this information to determine which steps were completed and which ones were not.
|
|
20
|
+
|
|
21
|
+
You can learn more about `runPreflight` usage in the documentation, [here](twilio.com/docs/video/troubleshooting/preflight-api).
|
|
22
|
+
|
|
23
|
+
Other changes in this release includes:
|
|
24
|
+
|
|
25
|
+
- In [October 2019](#200-beta15-october-24-2019), twilio-video.js started using Unified Plan where available, while also maintaining support for earlier browser versions with Plan B as the default SDP format. With this release, twilio-video.js will now stop supporting the Plan B SDP format and will only support the Unified Plan SDP format. Please refer to this [changelog](#200-beta15-october-24-2019) and this [public advisory](https://support.twilio.com/hc/en-us/articles/360039098974-Upcoming-Breaking-Changes-in-Twilio-Video-JavaScript-SDK-Google-Chrome) for more related information. (VIDEO-6587)
|
|
26
|
+
|
|
27
|
+
2.19.1 (February 7, 2022)
|
|
28
|
+
=========================
|
|
29
|
+
|
|
30
|
+
Bug Fixes
|
|
31
|
+
---------
|
|
32
|
+
|
|
33
|
+
- Fixed a bug where media connection was not getting reconnected after a network interruption if participant was not subscribed to any tracks. (VIDEO-8315)
|
|
34
|
+
- Fixed a bug where network quality score stops updating after network glitches. (VIDEO-8413)
|
|
35
|
+
|
|
36
|
+
2.19.0 (January 31, 2022)
|
|
37
|
+
=========================
|
|
38
|
+
|
|
39
|
+
New Features
|
|
40
|
+
------------
|
|
41
|
+
|
|
42
|
+
- This release introduces a new feature **Adaptive Simulcast**. This opt-in feature can be enabled by setting `preferredVideoCodecs="auto"` in ConnectOptions. When joining a group room with this feature enabled, the SDK will use VP8 simulcast, and will enable/disable simulcast layers dynamically, thus improving bandwidth and CPU usage for the publishing client. It works best when used along with `Client Track Switch Off Control` and `Video Content Preferences`. These two flags allow the SFU to determine which simulcast layers are needed, thus allowing it to disable the layers not needed on publisher side. This feature cannot be used alongside `maxVideoBitrate`.
|
|
43
|
+
|
|
44
|
+
If your application is currently using VP8 simulcast we recommend that you switch to this option.
|
|
45
|
+
|
|
46
|
+
Example:
|
|
47
|
+
|
|
48
|
+
```ts
|
|
49
|
+
const { connect } = require('twilio-video');
|
|
50
|
+
|
|
51
|
+
const room = await connect(token, {
|
|
52
|
+
preferredVideoCodecs: 'auto',
|
|
53
|
+
bandwidthProfile: {
|
|
54
|
+
video: {
|
|
55
|
+
contentPreferencesMode: 'auto',
|
|
56
|
+
clientTrackSwitchOffControl: 'auto'
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
Known Limitations
|
|
63
|
+
-----------------
|
|
64
|
+
|
|
65
|
+
- Specifying `preferredVideoCodecs="auto"` will revert to unicast in the following cases:
|
|
66
|
+
- The publisher is using Firefox.
|
|
67
|
+
- The publisher has preferred the H264 codec.
|
|
68
|
+
- The Room is configured to support only the H264 codec.
|
|
69
|
+
- Peer-to-Peer Rooms
|
|
70
|
+
- When the participant is being recorded, the SFU will not disable any simulcast layers of the participant's VideoTrack.
|
|
71
|
+
|
|
72
|
+
Bug Fixes
|
|
73
|
+
---------
|
|
74
|
+
|
|
75
|
+
- Fixed a bug where `clientTrackSwitchOffControl` and `contentPreferencesMode` sometimes did not work as expected during network glitches. (VIDEO-7654)
|
|
76
|
+
|
|
77
|
+
2.18.3 (January 4, 2022)
|
|
78
|
+
========================
|
|
79
|
+
|
|
80
|
+
Bug Fixes
|
|
81
|
+
---------
|
|
82
|
+
|
|
83
|
+
- Fixed a bug where connect was returning a Promise type instead of a CancelablePromise. (VIDEO-7831)
|
|
84
|
+
- Fixed a bug where `audioLevel`, `frameRate`, and `captureDimensions` WebRTC stats are returning null on certain browsers. With this release, these stats are now populated whenever they are available. (VIDEO-3600)
|
|
85
|
+
|
|
5
86
|
2.18.2 (December 15, 2021)
|
|
6
87
|
==========================
|
|
7
88
|
|
package/LICENSE.md
CHANGED
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 <script> tag.
|
|
75
75
|
|
|
76
76
|
```html
|
|
77
|
-
<script src="//sdk.twilio.com/js/video/releases/2.
|
|
77
|
+
<script src="//sdk.twilio.com/js/video/releases/2.20.0/twilio-video.min.js"></script>
|
|
78
78
|
|
|
79
79
|
```
|
|
80
80
|
|