shaka-player 4.2.1 → 4.2.2

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/build-and-test.yaml +31 -16
  2. package/.github/workflows/custom-actions/set-commit-status/action.yaml +1 -5
  3. package/.github/workflows/deflake.yaml +28 -0
  4. package/.github/workflows/selenium-lab-tests.yaml +13 -4
  5. package/AUTHORS +3 -0
  6. package/CHANGELOG.md +19 -0
  7. package/CONTRIBUTORS +3 -0
  8. package/demo/common/message_ids.js +1 -0
  9. package/demo/config.js +3 -1
  10. package/demo/locales/en.json +1 -0
  11. package/demo/locales/source.json +4 -0
  12. package/dist/demo.compiled.debug.js +7 -6
  13. package/dist/demo.compiled.debug.map +3 -3
  14. package/dist/demo.compiled.js +7 -6
  15. package/dist/demo.compiled.map +3 -3
  16. package/dist/deps.js +2 -2
  17. package/dist/locales.js +32 -32
  18. package/dist/receiver.compiled.debug.js +4 -3
  19. package/dist/receiver.compiled.debug.map +3 -3
  20. package/dist/receiver.compiled.js +4 -3
  21. package/dist/receiver.compiled.map +3 -3
  22. package/dist/shaka-player.compiled.d.ts +2 -2
  23. package/dist/shaka-player.compiled.debug.d.ts +2 -2
  24. package/dist/shaka-player.compiled.debug.externs.js +24 -24
  25. package/dist/shaka-player.compiled.debug.js +237 -229
  26. package/dist/shaka-player.compiled.debug.map +4 -4
  27. package/dist/shaka-player.compiled.externs.js +24 -24
  28. package/dist/shaka-player.compiled.js +744 -741
  29. package/dist/shaka-player.compiled.map +4 -4
  30. package/dist/shaka-player.ui.d.ts +2 -2
  31. package/dist/shaka-player.ui.debug.d.ts +2 -2
  32. package/dist/shaka-player.ui.debug.externs.js +24 -24
  33. package/dist/shaka-player.ui.debug.js +212 -203
  34. package/dist/shaka-player.ui.debug.map +4 -4
  35. package/dist/shaka-player.ui.externs.js +24 -24
  36. package/dist/shaka-player.ui.js +905 -901
  37. package/dist/shaka-player.ui.map +4 -4
  38. package/docs/jsdoc-template/publish.js +33 -0
  39. package/docs/jsdoc-template/tmpl/container.tmpl +4 -1
  40. package/docs/jsdoc.conf.json +1 -0
  41. package/externs/shaka/manifest_parser.js +4 -1
  42. package/externs/shaka/player.js +7 -1
  43. package/lib/ads/client_side_ad_manager.js +7 -0
  44. package/lib/cast/cast_sender.js +39 -14
  45. package/lib/cea/cea608_memory.js +4 -0
  46. package/lib/hls/hls_parser.js +30 -8
  47. package/lib/media/drm_engine.js +52 -1
  48. package/lib/media/media_source_engine.js +43 -15
  49. package/lib/media/segment_index.js +4 -1
  50. package/lib/media/streaming_engine.js +79 -14
  51. package/lib/offline/storage.js +1 -0
  52. package/lib/player.js +17 -5
  53. package/lib/text/ttml_text_parser.js +6 -0
  54. package/lib/util/platform.js +24 -0
  55. package/lib/util/player_configuration.js +4 -0
  56. package/lib/util/pssh.js +2 -1
  57. package/lib/util/stream_utils.js +2 -1
  58. package/package.json +1 -1
  59. package/test/cea/cea608_memory_unit.js +88 -0
  60. package/test/dash/dash_parser_content_protection_unit.js +1 -0
  61. package/test/dash/dash_parser_live_unit.js +1 -0
  62. package/test/dash/dash_parser_manifest_unit.js +1 -0
  63. package/test/dash/dash_parser_segment_base_unit.js +1 -0
  64. package/test/dash/dash_parser_segment_list_unit.js +1 -0
  65. package/test/dash/dash_parser_segment_template_unit.js +1 -0
  66. package/test/hls/hls_live_unit.js +169 -247
  67. package/test/hls/hls_parser_unit.js +60 -2
  68. package/test/media/drm_engine_unit.js +61 -0
  69. package/test/media/media_source_engine_integration.js +36 -0
  70. package/test/media/media_source_engine_unit.js +118 -1
  71. package/test/media/segment_index_unit.js +28 -2
  72. package/test/media/streaming_engine_integration.js +9 -7
  73. package/test/media/streaming_engine_unit.js +29 -0
  74. package/test/offline/offline_integration.js +3 -3
  75. package/test/player_integration.js +2 -2
  76. package/test/test/util/dash_parser_util.js +2 -0
  77. package/test/test/util/ttml_utils.js +0 -2
  78. package/test/text/ttml_text_parser_unit.js +46 -0
  79. package/test/ui/text_displayer_layout_unit.js +17 -2
  80. package/ui/controls.js +0 -7
@@ -3572,7 +3572,7 @@ declare namespace shaka.extern.ManifestParser {
3572
3572
  }
3573
3573
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest_parser.js
3574
3574
  declare namespace shaka.extern.ManifestParser {
3575
- type PlayerInterface = { enableLowLatencyMode : ( ) => any , filter : (a : shaka.extern.Manifest ) => Promise < any > , isAutoLowLatencyMode : ( ) => boolean , isLowLatencyMode : ( ) => boolean , makeTextStreamsForClosedCaptions : (a : shaka.extern.Manifest ) => any , modifyManifestRequest : (a : shaka.extern.Request , b : shaka.util.CmcdManager.ManifestInfo ) => any , modifySegmentRequest : (a : shaka.extern.Request , b : shaka.util.CmcdManager.SegmentInfo ) => any , networkingEngine : shaka.net.NetworkingEngine , onError : (a : shaka.util.Error ) => any , onEvent : shaka.util.EventManager.ListenerType , onTimelineRegionAdded : (a : shaka.extern.TimelineRegionInfo ) => any } ;
3575
+ type PlayerInterface = { enableLowLatencyMode : ( ) => any , filter : (a : shaka.extern.Manifest ) => Promise < any > , isAutoLowLatencyMode : ( ) => boolean , isLowLatencyMode : ( ) => boolean , makeTextStreamsForClosedCaptions : (a : shaka.extern.Manifest ) => any , modifyManifestRequest : (a : shaka.extern.Request , b : shaka.util.CmcdManager.ManifestInfo ) => any , modifySegmentRequest : (a : shaka.extern.Request , b : shaka.util.CmcdManager.SegmentInfo ) => any , networkingEngine : shaka.net.NetworkingEngine , onError : (a : shaka.util.Error ) => any , onEvent : shaka.util.EventManager.ListenerType , onTimelineRegionAdded : (a : shaka.extern.TimelineRegionInfo ) => any , updateDuration : ( ) => any } ;
3576
3576
  }
3577
3577
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/mp4_parser.js
3578
3578
  declare namespace shaka.extern {
@@ -3869,7 +3869,7 @@ declare namespace shaka.extern {
3869
3869
  }
3870
3870
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
3871
3871
  declare namespace shaka.extern {
3872
- 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 , preferredKeySystems : string [] , retryParameters : shaka.extern.RetryParameters , servers : { [ key: string ]: string } , updateExpirationTime : number } ;
3872
+ 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 } ;
3873
3873
  }
3874
3874
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
3875
3875
  declare namespace shaka.extern {
@@ -3572,7 +3572,7 @@ declare namespace shaka.extern.ManifestParser {
3572
3572
  }
3573
3573
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest_parser.js
3574
3574
  declare namespace shaka.extern.ManifestParser {
3575
- type PlayerInterface = { enableLowLatencyMode : ( ) => any , filter : (a : shaka.extern.Manifest ) => Promise < any > , isAutoLowLatencyMode : ( ) => boolean , isLowLatencyMode : ( ) => boolean , makeTextStreamsForClosedCaptions : (a : shaka.extern.Manifest ) => any , modifyManifestRequest : (a : shaka.extern.Request , b : shaka.util.CmcdManager.ManifestInfo ) => any , modifySegmentRequest : (a : shaka.extern.Request , b : shaka.util.CmcdManager.SegmentInfo ) => any , networkingEngine : shaka.net.NetworkingEngine , onError : (a : shaka.util.Error ) => any , onEvent : shaka.util.EventManager.ListenerType , onTimelineRegionAdded : (a : shaka.extern.TimelineRegionInfo ) => any } ;
3575
+ type PlayerInterface = { enableLowLatencyMode : ( ) => any , filter : (a : shaka.extern.Manifest ) => Promise < any > , isAutoLowLatencyMode : ( ) => boolean , isLowLatencyMode : ( ) => boolean , makeTextStreamsForClosedCaptions : (a : shaka.extern.Manifest ) => any , modifyManifestRequest : (a : shaka.extern.Request , b : shaka.util.CmcdManager.ManifestInfo ) => any , modifySegmentRequest : (a : shaka.extern.Request , b : shaka.util.CmcdManager.SegmentInfo ) => any , networkingEngine : shaka.net.NetworkingEngine , onError : (a : shaka.util.Error ) => any , onEvent : shaka.util.EventManager.ListenerType , onTimelineRegionAdded : (a : shaka.extern.TimelineRegionInfo ) => any , updateDuration : ( ) => any } ;
3576
3576
  }
3577
3577
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/mp4_parser.js
3578
3578
  declare namespace shaka.extern {
@@ -3869,7 +3869,7 @@ declare namespace shaka.extern {
3869
3869
  }
3870
3870
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
3871
3871
  declare namespace shaka.extern {
3872
- 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 , preferredKeySystems : string [] , retryParameters : shaka.extern.RetryParameters , servers : { [ key: string ]: string } , updateExpirationTime : number } ;
3872
+ 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 } ;
3873
3873
  }
3874
3874
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
3875
3875
  declare namespace shaka.extern {
@@ -1427,30 +1427,6 @@ shaka.util.EventManager = class {
1427
1427
  * @typedef {function(!Event)}
1428
1428
  */
1429
1429
  shaka.util.EventManager.ListenerType;
1430
- /**
1431
- * @summary An interface to register manifest parsers.
1432
- */
1433
- shaka.media.ManifestParser = class {
1434
- /**
1435
- * Registers a manifest parser by file extension.
1436
- * @param {string} extension The file extension of the manifest.
1437
- * @param {shaka.extern.ManifestParser.Factory} parserFactory The factory
1438
- * used to create parser instances.
1439
- */
1440
- static registerParserByExtension(extension, parserFactory) {}
1441
- /**
1442
- * Registers a manifest parser by MIME type.
1443
- * @param {string} mimeType The MIME type of the manifest.
1444
- * @param {shaka.extern.ManifestParser.Factory} parserFactory The factory
1445
- * used to create parser instances.
1446
- */
1447
- static registerParserByMime(mimeType, parserFactory) {}
1448
- /**
1449
- * Unregisters a manifest parser by MIME type.
1450
- * @param {string} mimeType The MIME type of the manifest.
1451
- */
1452
- static unregisterParserByMime(mimeType) {}
1453
- };
1454
1430
  /**
1455
1431
  * @summary DataViewReader abstracts a DataView object.
1456
1432
  */
@@ -1621,6 +1597,30 @@ shaka.util.Mp4Parser = class {
1621
1597
  * @typedef {function(!shaka.extern.ParsedBox)}
1622
1598
  */
1623
1599
  shaka.util.Mp4Parser.CallbackType;
1600
+ /**
1601
+ * @summary An interface to register manifest parsers.
1602
+ */
1603
+ shaka.media.ManifestParser = class {
1604
+ /**
1605
+ * Registers a manifest parser by file extension.
1606
+ * @param {string} extension The file extension of the manifest.
1607
+ * @param {shaka.extern.ManifestParser.Factory} parserFactory The factory
1608
+ * used to create parser instances.
1609
+ */
1610
+ static registerParserByExtension(extension, parserFactory) {}
1611
+ /**
1612
+ * Registers a manifest parser by MIME type.
1613
+ * @param {string} mimeType The MIME type of the manifest.
1614
+ * @param {shaka.extern.ManifestParser.Factory} parserFactory The factory
1615
+ * used to create parser instances.
1616
+ */
1617
+ static registerParserByMime(mimeType, parserFactory) {}
1618
+ /**
1619
+ * Unregisters a manifest parser by MIME type.
1620
+ * @param {string} mimeType The MIME type of the manifest.
1621
+ */
1622
+ static unregisterParserByMime(mimeType) {}
1623
+ };
1624
1624
  /**
1625
1625
  * Creates an InitSegmentReference, which provides the location to an
1626
1626
  * initialization segment.