shaka-player 4.2.1 → 4.2.3

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 (97) hide show
  1. package/.github/workflows/build-and-test.yaml +42 -22
  2. package/.github/workflows/compute-incremental-coverage.py +14 -3
  3. package/.github/workflows/custom-actions/set-commit-status/action.yaml +1 -5
  4. package/.github/workflows/deflake.yaml +28 -0
  5. package/.github/workflows/demo-version-index.yaml +1 -1
  6. package/.github/workflows/nightly-demo.yaml +1 -1
  7. package/.github/workflows/release-please.yaml +5 -5
  8. package/.github/workflows/report-incremental-coverage.yaml +1 -1
  9. package/.github/workflows/selenium-lab-tests.yaml +21 -10
  10. package/AUTHORS +4 -0
  11. package/CHANGELOG.md +36 -0
  12. package/CONTRIBUTORS +4 -0
  13. package/demo/common/message_ids.js +1 -0
  14. package/demo/config.js +3 -1
  15. package/demo/locales/en.json +1 -0
  16. package/demo/locales/source.json +4 -0
  17. package/dist/demo.compiled.debug.js +7 -6
  18. package/dist/demo.compiled.debug.map +3 -3
  19. package/dist/demo.compiled.js +7 -6
  20. package/dist/demo.compiled.map +3 -3
  21. package/dist/deps.js +4 -4
  22. package/dist/locales.js +32 -32
  23. package/dist/receiver.compiled.debug.js +4 -3
  24. package/dist/receiver.compiled.debug.map +3 -3
  25. package/dist/receiver.compiled.js +4 -3
  26. package/dist/receiver.compiled.map +3 -3
  27. package/dist/shaka-player.compiled.d.ts +3 -2
  28. package/dist/shaka-player.compiled.debug.d.ts +3 -2
  29. package/dist/shaka-player.compiled.debug.externs.js +25 -24
  30. package/dist/shaka-player.compiled.debug.js +268 -259
  31. package/dist/shaka-player.compiled.debug.map +4 -4
  32. package/dist/shaka-player.compiled.externs.js +25 -24
  33. package/dist/shaka-player.compiled.js +749 -746
  34. package/dist/shaka-player.compiled.map +4 -4
  35. package/dist/shaka-player.ui.d.ts +3 -2
  36. package/dist/shaka-player.ui.debug.d.ts +3 -2
  37. package/dist/shaka-player.ui.debug.externs.js +25 -24
  38. package/dist/shaka-player.ui.debug.js +243 -234
  39. package/dist/shaka-player.ui.debug.map +4 -4
  40. package/dist/shaka-player.ui.externs.js +25 -24
  41. package/dist/shaka-player.ui.js +908 -904
  42. package/dist/shaka-player.ui.map +4 -4
  43. package/docs/jsdoc-template/publish.js +33 -0
  44. package/docs/jsdoc-template/tmpl/container.tmpl +4 -1
  45. package/docs/jsdoc.conf.json +1 -0
  46. package/docs/tutorials/welcome.md +2 -2
  47. package/externs/shaka/manifest_parser.js +4 -1
  48. package/externs/shaka/player.js +7 -1
  49. package/lib/ads/client_side_ad_manager.js +12 -2
  50. package/lib/cast/cast_sender.js +39 -14
  51. package/lib/cea/cea608_memory.js +4 -0
  52. package/lib/hls/hls_parser.js +48 -15
  53. package/lib/media/drm_engine.js +59 -7
  54. package/lib/media/media_source_engine.js +43 -15
  55. package/lib/media/playhead.js +1 -1
  56. package/lib/media/segment_index.js +4 -1
  57. package/lib/media/streaming_engine.js +79 -14
  58. package/lib/offline/indexeddb/storage_mechanism.js +24 -0
  59. package/lib/offline/storage.js +1 -0
  60. package/lib/player.js +17 -5
  61. package/lib/polyfill/media_capabilities.js +7 -6
  62. package/lib/text/ttml_text_parser.js +69 -87
  63. package/lib/text/vtt_text_parser.js +1 -1
  64. package/lib/util/error.js +7 -0
  65. package/lib/util/periods.js +9 -9
  66. package/lib/util/platform.js +19 -5
  67. package/lib/util/player_configuration.js +4 -0
  68. package/lib/util/pssh.js +2 -1
  69. package/lib/util/stream_utils.js +2 -1
  70. package/lib/util/xml_utils.js +45 -6
  71. package/package.json +1 -1
  72. package/test/cea/cea608_memory_unit.js +88 -0
  73. package/test/dash/dash_parser_content_protection_unit.js +1 -0
  74. package/test/dash/dash_parser_live_unit.js +1 -0
  75. package/test/dash/dash_parser_manifest_unit.js +1 -0
  76. package/test/dash/dash_parser_segment_base_unit.js +1 -0
  77. package/test/dash/dash_parser_segment_list_unit.js +1 -0
  78. package/test/dash/dash_parser_segment_template_unit.js +1 -0
  79. package/test/hls/hls_live_unit.js +169 -247
  80. package/test/hls/hls_parser_unit.js +60 -2
  81. package/test/media/drm_engine_unit.js +61 -0
  82. package/test/media/media_source_engine_integration.js +36 -0
  83. package/test/media/media_source_engine_unit.js +118 -1
  84. package/test/media/segment_index_unit.js +28 -2
  85. package/test/media/streaming_engine_integration.js +9 -7
  86. package/test/media/streaming_engine_unit.js +29 -0
  87. package/test/offline/offline_integration.js +3 -3
  88. package/test/offline/storage_integration.js +30 -0
  89. package/test/player_integration.js +2 -2
  90. package/test/test/util/dash_parser_util.js +2 -0
  91. package/test/test/util/ttml_utils.js +0 -2
  92. package/test/text/ttml_text_parser_unit.js +46 -0
  93. package/test/text/vtt_text_parser_unit.js +23 -1
  94. package/test/ui/text_displayer_layout_unit.js +17 -2
  95. package/test/util/periods_unit.js +149 -11
  96. package/test/util/xml_utils_unit.js +64 -0
  97. package/ui/controls.js +0 -7
@@ -310,6 +310,7 @@ shaka.util.Error.Code = {
310
310
  'STORAGE_LIMIT_REACHED': 9014,
311
311
  'DOWNLOAD_SIZE_CALLBACK_ERROR': 9015,
312
312
  'MODIFY_OPERATION_NOT_SUPPORTED': 9016,
313
+ 'INDEXED_DB_INIT_TIMED_OUT': 9017,
313
314
  'CS_IMA_SDK_MISSING': 10000,
314
315
  'CS_AD_MANAGER_NOT_INITIALIZED': 10001,
315
316
  'SS_IMA_SDK_MISSING': 10002,
@@ -1534,30 +1535,6 @@ shaka.util.EventManager = class {
1534
1535
  * @typedef {function(!Event)}
1535
1536
  */
1536
1537
  shaka.util.EventManager.ListenerType;
1537
- /**
1538
- * @summary An interface to register manifest parsers.
1539
- */
1540
- shaka.media.ManifestParser = class {
1541
- /**
1542
- * Registers a manifest parser by file extension.
1543
- * @param {string} extension The file extension of the manifest.
1544
- * @param {shaka.extern.ManifestParser.Factory} parserFactory The factory
1545
- * used to create parser instances.
1546
- */
1547
- static registerParserByExtension(extension, parserFactory) {}
1548
- /**
1549
- * Registers a manifest parser by MIME type.
1550
- * @param {string} mimeType The MIME type of the manifest.
1551
- * @param {shaka.extern.ManifestParser.Factory} parserFactory The factory
1552
- * used to create parser instances.
1553
- */
1554
- static registerParserByMime(mimeType, parserFactory) {}
1555
- /**
1556
- * Unregisters a manifest parser by MIME type.
1557
- * @param {string} mimeType The MIME type of the manifest.
1558
- */
1559
- static unregisterParserByMime(mimeType) {}
1560
- };
1561
1538
  /**
1562
1539
  * @summary DataViewReader abstracts a DataView object.
1563
1540
  */
@@ -1728,6 +1705,30 @@ shaka.util.Mp4Parser = class {
1728
1705
  * @typedef {function(!shaka.extern.ParsedBox)}
1729
1706
  */
1730
1707
  shaka.util.Mp4Parser.CallbackType;
1708
+ /**
1709
+ * @summary An interface to register manifest parsers.
1710
+ */
1711
+ shaka.media.ManifestParser = class {
1712
+ /**
1713
+ * Registers a manifest parser by file extension.
1714
+ * @param {string} extension The file extension of the manifest.
1715
+ * @param {shaka.extern.ManifestParser.Factory} parserFactory The factory
1716
+ * used to create parser instances.
1717
+ */
1718
+ static registerParserByExtension(extension, parserFactory) {}
1719
+ /**
1720
+ * Registers a manifest parser by MIME type.
1721
+ * @param {string} mimeType The MIME type of the manifest.
1722
+ * @param {shaka.extern.ManifestParser.Factory} parserFactory The factory
1723
+ * used to create parser instances.
1724
+ */
1725
+ static registerParserByMime(mimeType, parserFactory) {}
1726
+ /**
1727
+ * Unregisters a manifest parser by MIME type.
1728
+ * @param {string} mimeType The MIME type of the manifest.
1729
+ */
1730
+ static unregisterParserByMime(mimeType) {}
1731
+ };
1731
1732
  /**
1732
1733
  * Creates an InitSegmentReference, which provides the location to an
1733
1734
  * initialization segment.