twilio-video 2.22.1 → 2.24.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.
Files changed (64) hide show
  1. package/CHANGELOG.md +73 -1
  2. package/README.md +1 -1
  3. package/dist/twilio-video.js +753 -213
  4. package/dist/twilio-video.min.js +21 -20
  5. package/es5/connect.js +1 -1
  6. package/es5/connect.js.map +1 -1
  7. package/es5/createlocaltrack.js +38 -8
  8. package/es5/createlocaltrack.js.map +1 -1
  9. package/es5/createlocaltracks.js +36 -11
  10. package/es5/createlocaltracks.js.map +1 -1
  11. package/es5/dynamicImport.js +9 -0
  12. package/es5/index.js +1 -1
  13. package/es5/index.js.map +1 -1
  14. package/es5/localparticipant.js +10 -1
  15. package/es5/localparticipant.js.map +1 -1
  16. package/es5/media/track/localaudiotrack.js +30 -1
  17. package/es5/media/track/localaudiotrack.js.map +1 -1
  18. package/es5/media/track/noisecancellationimpl.js +228 -0
  19. package/es5/media/track/noisecancellationimpl.js.map +1 -0
  20. package/es5/noisecancellationadapter.js +155 -0
  21. package/es5/noisecancellationadapter.js.map +1 -0
  22. package/es5/preflight/preflighttest.js +2 -2
  23. package/es5/preflight/preflighttest.js.map +1 -1
  24. package/es5/room.js +12 -0
  25. package/es5/room.js.map +1 -1
  26. package/es5/signaling/localparticipant.js +4 -2
  27. package/es5/signaling/localparticipant.js.map +1 -1
  28. package/es5/signaling/v2/cancelableroomsignalingpromise.js +0 -2
  29. package/es5/signaling/v2/cancelableroomsignalingpromise.js.map +1 -1
  30. package/es5/signaling/v2/localparticipant.js +16 -4
  31. package/es5/signaling/v2/localparticipant.js.map +1 -1
  32. package/es5/signaling/v2/localtrackpublication.js +12 -3
  33. package/es5/signaling/v2/localtrackpublication.js.map +1 -1
  34. package/es5/signaling/v2/room.js +8 -1
  35. package/es5/signaling/v2/room.js.map +1 -1
  36. package/es5/util/support.js +2 -0
  37. package/es5/util/support.js.map +1 -1
  38. package/es5/webrtc/util/sdp.js +10 -1
  39. package/es5/webrtc/util/sdp.js.map +1 -1
  40. package/karma/makeconf.js +11 -1
  41. package/lib/connect.js +2 -1
  42. package/lib/createlocaltrack.js +41 -8
  43. package/lib/createlocaltracks.ts +35 -11
  44. package/lib/dynamicImport.js +9 -0
  45. package/lib/index.ts +5 -3
  46. package/lib/localparticipant.js +10 -1
  47. package/lib/media/track/localaudiotrack.js +30 -0
  48. package/lib/media/track/noisecancellationimpl.ts +176 -0
  49. package/lib/noisecancellationadapter.ts +134 -0
  50. package/lib/preflight/preflighttest.ts +1 -1
  51. package/lib/room.js +13 -0
  52. package/lib/signaling/localparticipant.js +3 -2
  53. package/lib/signaling/v2/cancelableroomsignalingpromise.js +0 -3
  54. package/lib/signaling/v2/localparticipant.js +17 -4
  55. package/lib/signaling/v2/localtrackpublication.js +14 -3
  56. package/lib/signaling/v2/room.js +13 -1
  57. package/lib/util/support.js +2 -0
  58. package/lib/webrtc/util/sdp.js +11 -1
  59. package/package.json +2 -2
  60. package/tsconfig.json +4 -0
  61. package/tsdef/AudioProcessor.d.ts +65 -0
  62. package/tsdef/LocalAudioTrack.d.ts +2 -0
  63. package/tsdef/index.d.ts +7 -2
  64. package/tsdef/types.d.ts +23 -2
package/CHANGELOG.md CHANGED
@@ -2,6 +2,78 @@ 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
+
6
+ 2.24.0 (August 22, 2022)
7
+ ========================
8
+
9
+ New Features
10
+ ------------
11
+
12
+ - The support for twilio approved 3rd party noise cancellation solutions is now **generally available**.
13
+
14
+ Bug Fixes
15
+ ---------
16
+
17
+ - Fixed an issue where input media track was not stopped, after `localAudioTrack.stop()` when using noiseCancellation (VIDEO-11047)
18
+ - Added versioning support for noise cancellation plugin. This SDK will require noise cancellation plugin to be version 1.0.0 or greater. (VIDEO-11087)
19
+
20
+ 2.23.0 (July 28, 2022)
21
+ ======================
22
+
23
+ New Features
24
+ ------------
25
+
26
+ - This release adds private beta support for 3rd party noise cancellation solution. You need to host twilio approved 3rd party plugin on your web server to enable noise cancellation. Please fill out [this form](https://forms.gle/eeFyoGJj1mgMrxN88) to request access to the 3rd party plugin.
27
+
28
+ Once you get the access to the plugin, You can install it from npm with:
29
+ ```
30
+ npm install <noise_cancellation_plugin>
31
+ ```
32
+
33
+ Once installed, you need to host the contents of `./node_modules/<noise_cancellation_plugin>/dist/` from your web server. We recommend that you add plugin version number to the hosted path to ensure that browser does not use [stale version](https://www.keycdn.com/support/what-is-cache-busting) when its updated. You need to pass the path to the hosted files to `twilio-video` sdk when creating audio track as shown in the example below. The example below assumes that you have hosted the files at `/noise_cancellation_plugin/1.0.0/dist` on your web server.
34
+
35
+ ```ts
36
+ const { connect, createLocalAudioTrack } = require('twilio-video');
37
+
38
+ // create a local audio track and have it use
39
+ // @twilio/krisp-audio-plugin for noise cancellation processing.
40
+ const localAudioTrack = await Video.createLocalAudioTrack({
41
+ noiseCancellationOptions: {
42
+ vendor: 'krisp',
43
+ sdkAssetsPath: '/noise_cancellation_plugin/1.0.0/dist'
44
+ }
45
+ });
46
+
47
+ // publish the track to a room
48
+ const room = await connect( token, {
49
+ tracks: [localAudioTrack]
50
+ // ... any other connect options
51
+ });
52
+
53
+ // you can enable/disable noise cancellation at runtime
54
+ // using noiseCancellation interface exposed by localAudioTrack
55
+ function updateNoiseCancellation(enable: boolean) {
56
+ const noiseCancellation = localAudioTrack.noiseCancellation;
57
+
58
+ if (noiseCancellation) {
59
+ enable ? noiseCancellation.enable() : noiseCancellation.disable();
60
+ }
61
+ }
62
+
63
+ ```
64
+ 2.22.2 (July 25, 2022)
65
+ ======================
66
+
67
+ Changes
68
+ -------
69
+
70
+ - `isSupported` flag now returns `false` if the browser does not support the Unified Plan SDP format. (VIDEO-10307)
71
+
72
+ The following is a list of browsers with Unified Plan as the default SDP format.
73
+ - Chrome 72+
74
+ - Safari 12.1+
75
+ - Firefox 38+
76
+
5
77
  2.22.1 (July 11, 2022)
6
78
  ======================
7
79
 
@@ -85,7 +157,7 @@ Bug Fixes
85
157
  Bug Fixes
86
158
  ---------
87
159
 
88
- - Fixed an issue where some extraneous errors were logged to console when a video track was stopped. (VIDEO-9511)
160
+ - Fixed an issue where publishing a video track sometimes caused a failure with "Unhandled exception: Client is unable to create or apply a local media description". (VIDEO-9511)
89
161
  - Fixed an issue where the `dimensionsChanged` event was not firing when the track dimensions first became available. (VIDEO-3576)
90
162
  - Removed references to node dependencies that causes build errors on Angular and Vue. (VIDEO-9282)
91
163
  - Fixed an issue where incorrect device was detected when using iPad in Desktop Website mode. (VIDEO-8282)
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.22.1/twilio-video.min.js"></script>
77
+ <script src="//sdk.twilio.com/js/video/releases/2.24.0/twilio-video.min.js"></script>
78
78
 
79
79
  ```
80
80