shaka-player 4.8.8 → 4.9.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 (60) hide show
  1. package/README.md +5 -0
  2. package/dist/controls.css +1 -1
  3. package/dist/controls.css.map +1 -1
  4. package/dist/deps.js +5 -5
  5. package/dist/locales.js +33 -33
  6. package/dist/shaka-player.compiled.d.ts +39 -17
  7. package/dist/shaka-player.compiled.debug.d.ts +39 -17
  8. package/dist/shaka-player.compiled.debug.externs.js +32 -11
  9. package/dist/shaka-player.compiled.debug.js +574 -516
  10. package/dist/shaka-player.compiled.debug.map +4 -4
  11. package/dist/shaka-player.compiled.externs.js +32 -11
  12. package/dist/shaka-player.compiled.js +1270 -1236
  13. package/dist/shaka-player.compiled.map +4 -4
  14. package/dist/shaka-player.ui.d.ts +39 -17
  15. package/dist/shaka-player.ui.debug.d.ts +39 -17
  16. package/dist/shaka-player.ui.debug.externs.js +43 -22
  17. package/dist/shaka-player.ui.debug.js +601 -543
  18. package/dist/shaka-player.ui.debug.map +4 -4
  19. package/dist/shaka-player.ui.externs.js +43 -22
  20. package/dist/shaka-player.ui.js +1483 -1448
  21. package/dist/shaka-player.ui.map +4 -4
  22. package/externs/shaka/manifest.js +11 -1
  23. package/externs/shaka/offline.js +3 -0
  24. package/externs/shaka/player.js +105 -12
  25. package/externs/tizen.js +1 -1
  26. package/lib/abr/simple_abr_manager.js +5 -0
  27. package/lib/ads/media_tailor_ad.js +11 -0
  28. package/lib/ads/media_tailor_ad_manager.js +37 -3
  29. package/lib/cea/cea608_data_channel.js +9 -0
  30. package/lib/cea/cea_decoder.js +6 -2
  31. package/lib/dash/dash_parser.js +655 -46
  32. package/lib/dash/mpd_utils.js +7 -8
  33. package/lib/dash/segment_template.js +65 -10
  34. package/lib/hls/hls_parser.js +92 -34
  35. package/lib/media/drm_engine.js +274 -40
  36. package/lib/media/manifest_filterer.js +10 -14
  37. package/lib/media/preload_manager.js +3 -10
  38. package/lib/media/segment_utils.js +14 -3
  39. package/lib/mss/mss_parser.js +2 -0
  40. package/lib/net/http_plugin_utils.js +2 -1
  41. package/lib/net/networking_engine.js +27 -0
  42. package/lib/offline/indexeddb/v1_storage_cell.js +1 -0
  43. package/lib/offline/indexeddb/v2_storage_cell.js +1 -0
  44. package/lib/offline/manifest_converter.js +2 -0
  45. package/lib/offline/storage.js +1 -0
  46. package/lib/player.js +221 -14
  47. package/lib/polyfill/media_capabilities.js +10 -35
  48. package/lib/util/config_utils.js +74 -6
  49. package/lib/util/error.js +7 -0
  50. package/lib/util/mp4_box_parsers.js +23 -2
  51. package/lib/util/periods.js +51 -28
  52. package/lib/util/platform.js +3 -1
  53. package/lib/util/player_configuration.js +20 -8
  54. package/lib/util/stream_utils.js +62 -30
  55. package/lib/util/tXml.js +74 -6
  56. package/package.json +2 -2
  57. package/support.html +1 -0
  58. package/ui/controls.js +4 -0
  59. package/ui/less/ad_controls.less +2 -1
  60. package/ui/resolution_selection.js +12 -3
@@ -867,6 +867,7 @@ shaka.util.Error.Code = {
867
867
  'AES_128_INVALID_KEY_LENGTH': 4049,
868
868
  'DASH_CONFLICTING_AES_128': 4050,
869
869
  'DASH_UNSUPPORTED_AES_128': 4051,
870
+ 'DASH_INVALID_PATCH': 4052,
870
871
  'STREAMING_ENGINE_STARTUP_INVALID_STATE': 5006,
871
872
  'NO_RECOGNIZED_KEY_SYSTEMS': 6000,
872
873
  'REQUESTED_KEY_SYSTEM_CONFIG_UNAVAILABLE': 6001,
@@ -1249,7 +1250,7 @@ shaka.util.StreamUtils = class {
1249
1250
  * @param {shaka.extern.Variant} variant
1250
1251
  * @param {shaka.extern.Restrictions} restrictions
1251
1252
  * Configured restrictions from the user.
1252
- * @param {{width: number, height: number}} maxHwRes
1253
+ * @param {shaka.extern.Resolution} maxHwRes
1253
1254
  * The maximum resolution the hardware can handle.
1254
1255
  * This is applied separately from user restrictions because the setting
1255
1256
  * should not be easily replaced by the user's configuration.
@@ -1538,6 +1539,10 @@ shaka.net.NetworkingEngine = class extends shaka.util.FakeEventTarget {
1538
1539
  * Called when receive the response
1539
1540
  */
1540
1541
  constructor(onProgressUpdated, onHeadersReceived, onDownloadFailed, onRequest, onRetry, onResponse) {}
1542
+ /**
1543
+ * @param {boolean} forceHTTP
1544
+ */
1545
+ setForceHTTP(forceHTTP) {}
1541
1546
  /**
1542
1547
  * @param {boolean} forceHTTPS
1543
1548
  */
@@ -2830,6 +2835,12 @@ shaka.util.ConfigUtils = class {
2830
2835
  * @return {!Object}
2831
2836
  */
2832
2837
  static convertToConfigObject(fieldName, value) {}
2838
+ /**
2839
+ * @param {!Object} object
2840
+ * @param {!Object} base
2841
+ * @return {!Object}
2842
+ */
2843
+ static getDifferenceFromConfigObjects(object, base) {}
2833
2844
  };
2834
2845
  /**
2835
2846
  * @summary A set of FairPlay utility functions.
@@ -3247,6 +3258,17 @@ shaka.Player = class extends shaka.util.FakeEventTarget {
3247
3258
  * @return {!Promise.<?shaka.media.PreloadManager>}
3248
3259
  */
3249
3260
  unloadAndSavePreload(initializeMediaSource, keepAdManager) {}
3261
+ /**
3262
+ * Detach the player from the current media element, if any, and returns a
3263
+ * PreloadManager that contains the loaded manifest of that asset, if any.
3264
+ * Allows for the asset to be re-loaded by this player faster, in the future.
3265
+ * When in src= mode, this detach but does not make a PreloadManager.
3266
+ * Leaves the player in a state where it cannot play media, until it has been
3267
+ * attached to something else.
3268
+ * @param {boolean=} keepAdManager
3269
+ * @return {!Promise.<?shaka.media.PreloadManager>}
3270
+ */
3271
+ detachAndSavePreload(keepAdManager) {}
3250
3272
  /**
3251
3273
  * Starts to preload a given asset, and returns a PreloadManager object that
3252
3274
  * represents that preloading process.
@@ -3303,6 +3325,13 @@ shaka.Player = class extends shaka.util.FakeEventTarget {
3303
3325
  * @return {shaka.extern.PlayerConfiguration}
3304
3326
  */
3305
3327
  getConfiguration() {}
3328
+ /**
3329
+ * Return a copy of the current non default configuration. Modifications of
3330
+ * the returned value will not affect the Player's active configuration.
3331
+ * You must call <code>player.configure()</code> to make changes.
3332
+ * @return {!Object}
3333
+ */
3334
+ getNonDefaultConfiguration() {}
3306
3335
  /**
3307
3336
  * Returns the ratio of video length buffered compared to buffering Goal
3308
3337
  * @return {number}
@@ -4576,9 +4605,10 @@ shaka.util.PeriodCombiner = class {
4576
4605
  /**
4577
4606
  * @param {!Array.<shaka.extern.Period>} periods
4578
4607
  * @param {boolean} isDynamic
4608
+ * @param {boolean=} isPatchUpdate
4579
4609
  * @return {!Promise}
4580
4610
  */
4581
- combinePeriods(periods, isDynamic) {}
4611
+ combinePeriods(periods, isDynamic, isPatchUpdate) {}
4582
4612
  /**
4583
4613
  * @param {boolean} allowed If set to true, multi-mimeType or multi-codec
4584
4614
  * variants will be allowed.
@@ -5033,15 +5063,6 @@ shaka.polyfill.MediaCapabilities = class {
5033
5063
  * @type {MediaCapabilities}
5034
5064
  */
5035
5065
  shaka.polyfill.MediaCapabilities.originalMcap;
5036
- /**
5037
- * A cache that stores the MediaKeySystemAccess result of calling
5038
- * `navigator.requestMediaKeySystemAccess` by a key combination of
5039
- * video/audio codec and key system string.
5040
- * @type {(Object<(!string), (!MediaKeySystemAccess)>)}
5041
- */
5042
- shaka.polyfill.MediaCapabilities.memoizedMediaKeySystemAccessRequests_ = {
5043
-
5044
- };
5045
5066
  /**
5046
5067
  * A cache that stores the canDisplayType result of calling
5047
5068
  * `cast.__platform__.canDisplayType`.