shaka-player 4.2.9 → 4.2.10

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 (80) hide show
  1. package/.github/workflows/selenium-lab-tests.yaml +23 -1
  2. package/AUTHORS +2 -1
  3. package/CHANGELOG.md +27 -0
  4. package/CONTRIBUTORS +4 -1
  5. package/dist/controls.css +1 -1
  6. package/dist/demo.compiled.debug.js +154 -276
  7. package/dist/demo.compiled.debug.map +4 -4
  8. package/dist/demo.compiled.js +154 -276
  9. package/dist/demo.compiled.map +4 -4
  10. package/dist/deps.js +1 -1
  11. package/dist/locales.js +30 -30
  12. package/dist/receiver.compiled.debug.js +36 -65
  13. package/dist/receiver.compiled.debug.map +4 -4
  14. package/dist/receiver.compiled.js +36 -65
  15. package/dist/receiver.compiled.map +4 -4
  16. package/dist/shaka-player.compiled.d.ts +12 -3
  17. package/dist/shaka-player.compiled.debug.d.ts +12 -3
  18. package/dist/shaka-player.compiled.debug.externs.js +17 -12
  19. package/dist/shaka-player.compiled.debug.js +150 -147
  20. package/dist/shaka-player.compiled.debug.map +4 -4
  21. package/dist/shaka-player.compiled.externs.js +17 -12
  22. package/dist/shaka-player.compiled.js +822 -820
  23. package/dist/shaka-player.compiled.map +3 -3
  24. package/dist/shaka-player.ui.d.ts +12 -3
  25. package/dist/shaka-player.ui.debug.d.ts +12 -3
  26. package/dist/shaka-player.ui.debug.externs.js +5 -0
  27. package/dist/shaka-player.ui.debug.js +160 -157
  28. package/dist/shaka-player.ui.debug.map +3 -3
  29. package/dist/shaka-player.ui.externs.js +5 -0
  30. package/dist/shaka-player.ui.js +952 -949
  31. package/dist/shaka-player.ui.map +3 -3
  32. package/docs/tutorials/a11y.md +0 -4
  33. package/docs/tutorials/ad_monetization.md +0 -4
  34. package/docs/tutorials/basic-usage.md +0 -5
  35. package/docs/tutorials/config.md +0 -5
  36. package/docs/tutorials/debugging.md +0 -5
  37. package/docs/tutorials/drm-config.md +0 -5
  38. package/docs/tutorials/fairplay.md +2 -2
  39. package/docs/tutorials/license-server-auth.md +0 -5
  40. package/docs/tutorials/license-wrapping.md +0 -5
  41. package/docs/tutorials/network-and-buffering-config.md +0 -5
  42. package/docs/tutorials/ui-customization.md +0 -5
  43. package/docs/tutorials/ui.md +0 -7
  44. package/docs/tutorials/welcome.md +0 -5
  45. package/externs/network_information.js +7 -2
  46. package/externs/shaka/abr_manager.js +6 -0
  47. package/externs/shaka/net.js +1 -0
  48. package/externs/shaka/player.js +13 -7
  49. package/lib/abr/simple_abr_manager.js +27 -3
  50. package/lib/ads/client_side_ad_manager.js +6 -3
  51. package/lib/dash/dash_parser.js +49 -48
  52. package/lib/debug/log.js +9 -13
  53. package/lib/media/media_source_engine.js +11 -4
  54. package/lib/media/segment_index.js +2 -0
  55. package/lib/media/streaming_engine.js +8 -3
  56. package/lib/net/http_fetch_plugin.js +79 -57
  57. package/lib/net/networking_engine.js +1 -0
  58. package/lib/player.js +22 -3
  59. package/lib/polyfill/media_capabilities.js +13 -0
  60. package/lib/text/mp4_vtt_parser.js +4 -0
  61. package/lib/text/text_engine.js +1 -0
  62. package/lib/util/manifest_parser_utils.js +1 -2
  63. package/lib/util/mime_utils.js +11 -0
  64. package/lib/util/periods.js +5 -5
  65. package/lib/util/stream_utils.js +2 -2
  66. package/maintained-branches.md +3 -4
  67. package/package.json +1 -1
  68. package/test/media/content_workarounds_unit.js +43 -0
  69. package/test/media/drm_engine_integration.js +4 -17
  70. package/test/media/streaming_engine_unit.js +6 -1
  71. package/test/net/networking_engine_unit.js +6 -1
  72. package/test/player_integration.js +39 -0
  73. package/test/player_unit.js +57 -0
  74. package/test/polyfill/media_capabilities_unit.js +0 -1
  75. package/test/test/assets/text-clip-alt.vtt +63 -0
  76. package/test/test/util/fake_drm_engine.js +3 -0
  77. package/test/test/util/simple_fakes.js +6 -0
  78. package/test/test/util/test_scheme.js +9 -14
  79. package/test/text/mp4_vtt_parser_unit.js +8 -0
  80. package/test/util/mime_utils_unit.js +10 -0
@@ -454,7 +454,7 @@ declare namespace shaka.Player {
454
454
  }
455
455
  // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js
456
456
  declare namespace shaka.abr {
457
- class SimpleAbrManager implements shaka.extern.AbrManager {
457
+ class SimpleAbrManager implements shaka.extern.AbrManager , shaka.util.IReleasable {
458
458
  private noStructuralTyping_shaka_abr_SimpleAbrManager : any;
459
459
  chooseVariant ( ) : any ;
460
460
  configure (config : any ) : any ;
@@ -463,6 +463,7 @@ declare namespace shaka.abr {
463
463
  getBandwidthEstimate ( ) : any ;
464
464
  init (switchCallback : any ) : any ;
465
465
  playbackRateChanged (rate : any ) : any ;
466
+ release ( ) : any ;
466
467
  segmentDownloaded (deltaTimeMs : any , numBytes : any ) : any ;
467
468
  setMediaElement (mediaElement : any ) : any ;
468
469
  setVariants (variants : any ) : any ;
@@ -3825,6 +3826,10 @@ declare namespace shaka.extern {
3825
3826
  * Updates manager playback rate.
3826
3827
  */
3827
3828
  playbackRateChanged (rate : number ) : any ;
3829
+ /**
3830
+ * Request that this object release all internal references.
3831
+ */
3832
+ release ( ) : any ;
3828
3833
  /**
3829
3834
  * Notifies the AbrManager that a segment has been downloaded (includes MP4
3830
3835
  * SIDX data, WebM Cues data, initialization segments, and media segments).
@@ -4101,7 +4106,7 @@ declare namespace shaka.extern {
4101
4106
  }
4102
4107
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/net.js
4103
4108
  declare namespace shaka.extern {
4104
- type Response = { data : ArrayBuffer | ArrayBufferView , fromCache ? : boolean , headers : { [ key: string ]: string } , status ? : number , timeMs ? : number , uri : string } ;
4109
+ type Response = { data : ArrayBuffer | ArrayBufferView , fromCache ? : boolean , headers : { [ key: string ]: string } , originalUri : string , status ? : number , timeMs ? : number , uri : string } ;
4105
4110
  }
4106
4111
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/net.js
4107
4112
  declare namespace shaka.extern {
@@ -4368,7 +4373,7 @@ declare namespace shaka.extern {
4368
4373
  }
4369
4374
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4370
4375
  declare namespace shaka.extern {
4371
- type DrmConfiguration = { advanced : { [ key: string ]: shaka.extern.AdvancedDrmConfiguration } | null , clearKeys : { [ key: string ]: string } , delayLicenseRequestUntilPlayed : boolean , initDataTransform ? : (a : Uint8Array , b : string , c : shaka.extern.DrmInfo | null ) => Uint8Array , keySystemsMapping : { [ key: string ]: string } , logLicenseExchange : boolean , parseInbandPsshEnabled : boolean , preferredKeySystems : string [] , retryParameters : shaka.extern.RetryParameters , servers : { [ key: string ]: string } , updateExpirationTime : number } ;
4376
+ type DrmConfiguration = { advanced : { [ key: string ]: shaka.extern.AdvancedDrmConfiguration } | null , clearKeys : { [ key: string ]: string } , delayLicenseRequestUntilPlayed : boolean , initDataTransform ? : shaka.extern.InitDataTransform , keySystemsMapping : { [ key: string ]: string } , logLicenseExchange : boolean , parseInbandPsshEnabled : boolean , preferredKeySystems : string [] , retryParameters : shaka.extern.RetryParameters , servers : { [ key: string ]: string } , updateExpirationTime : number } ;
4372
4377
  }
4373
4378
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4374
4379
  declare namespace shaka.extern {
@@ -4387,6 +4392,10 @@ declare namespace shaka.extern {
4387
4392
  type ID3Metadata = { [ key: string ]: any } ;
4388
4393
  }
4389
4394
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4395
+ declare namespace shaka.extern {
4396
+ type InitDataTransform = (a : Uint8Array , b : string , c : shaka.extern.DrmInfo | null ) => Uint8Array ;
4397
+ }
4398
+ // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4390
4399
  declare namespace shaka.extern {
4391
4400
  type LanguageRole = { label : string | null , language : string , role : string } ;
4392
4401
  }
@@ -454,7 +454,7 @@ declare namespace shaka.Player {
454
454
  }
455
455
  // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.debug.externs.js
456
456
  declare namespace shaka.abr {
457
- class SimpleAbrManager implements shaka.extern.AbrManager {
457
+ class SimpleAbrManager implements shaka.extern.AbrManager , shaka.util.IReleasable {
458
458
  private noStructuralTyping_shaka_abr_SimpleAbrManager : any;
459
459
  chooseVariant ( ) : any ;
460
460
  configure (config : any ) : any ;
@@ -463,6 +463,7 @@ declare namespace shaka.abr {
463
463
  getBandwidthEstimate ( ) : any ;
464
464
  init (switchCallback : any ) : any ;
465
465
  playbackRateChanged (rate : any ) : any ;
466
+ release ( ) : any ;
466
467
  segmentDownloaded (deltaTimeMs : any , numBytes : any ) : any ;
467
468
  setMediaElement (mediaElement : any ) : any ;
468
469
  setVariants (variants : any ) : any ;
@@ -3825,6 +3826,10 @@ declare namespace shaka.extern {
3825
3826
  * Updates manager playback rate.
3826
3827
  */
3827
3828
  playbackRateChanged (rate : number ) : any ;
3829
+ /**
3830
+ * Request that this object release all internal references.
3831
+ */
3832
+ release ( ) : any ;
3828
3833
  /**
3829
3834
  * Notifies the AbrManager that a segment has been downloaded (includes MP4
3830
3835
  * SIDX data, WebM Cues data, initialization segments, and media segments).
@@ -4101,7 +4106,7 @@ declare namespace shaka.extern {
4101
4106
  }
4102
4107
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/net.js
4103
4108
  declare namespace shaka.extern {
4104
- type Response = { data : ArrayBuffer | ArrayBufferView , fromCache ? : boolean , headers : { [ key: string ]: string } , status ? : number , timeMs ? : number , uri : string } ;
4109
+ type Response = { data : ArrayBuffer | ArrayBufferView , fromCache ? : boolean , headers : { [ key: string ]: string } , originalUri : string , status ? : number , timeMs ? : number , uri : string } ;
4105
4110
  }
4106
4111
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/net.js
4107
4112
  declare namespace shaka.extern {
@@ -4368,7 +4373,7 @@ declare namespace shaka.extern {
4368
4373
  }
4369
4374
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4370
4375
  declare namespace shaka.extern {
4371
- type DrmConfiguration = { advanced : { [ key: string ]: shaka.extern.AdvancedDrmConfiguration } | null , clearKeys : { [ key: string ]: string } , delayLicenseRequestUntilPlayed : boolean , initDataTransform ? : (a : Uint8Array , b : string , c : shaka.extern.DrmInfo | null ) => Uint8Array , keySystemsMapping : { [ key: string ]: string } , logLicenseExchange : boolean , parseInbandPsshEnabled : boolean , preferredKeySystems : string [] , retryParameters : shaka.extern.RetryParameters , servers : { [ key: string ]: string } , updateExpirationTime : number } ;
4376
+ type DrmConfiguration = { advanced : { [ key: string ]: shaka.extern.AdvancedDrmConfiguration } | null , clearKeys : { [ key: string ]: string } , delayLicenseRequestUntilPlayed : boolean , initDataTransform ? : shaka.extern.InitDataTransform , keySystemsMapping : { [ key: string ]: string } , logLicenseExchange : boolean , parseInbandPsshEnabled : boolean , preferredKeySystems : string [] , retryParameters : shaka.extern.RetryParameters , servers : { [ key: string ]: string } , updateExpirationTime : number } ;
4372
4377
  }
4373
4378
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4374
4379
  declare namespace shaka.extern {
@@ -4387,6 +4392,10 @@ declare namespace shaka.extern {
4387
4392
  type ID3Metadata = { [ key: string ]: any } ;
4388
4393
  }
4389
4394
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4395
+ declare namespace shaka.extern {
4396
+ type InitDataTransform = (a : Uint8Array , b : string , c : shaka.extern.DrmInfo | null ) => Uint8Array ;
4397
+ }
4398
+ // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4390
4399
  declare namespace shaka.extern {
4391
4400
  type LanguageRole = { label : string | null , language : string , role : string } ;
4392
4401
  }
@@ -1170,6 +1170,7 @@ shaka.text.TextEngine = class {
1170
1170
  * per ({@link shaka.abr.SimpleAbrManager.SWITCH_INTERVAL_MS}).
1171
1171
  * </p>
1172
1172
  * @implements {shaka.extern.AbrManager}
1173
+ * @implements {shaka.util.IReleasable}
1173
1174
  */
1174
1175
  shaka.abr.SimpleAbrManager = class {
1175
1176
  /** */
@@ -1178,6 +1179,10 @@ shaka.abr.SimpleAbrManager = class {
1178
1179
  * @override
1179
1180
  */
1180
1181
  stop() {}
1182
+ /**
1183
+ * @override
1184
+ */
1185
+ release() {}
1181
1186
  /**
1182
1187
  * @override
1183
1188
  */