shaka-player 3.3.2 → 3.3.5

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 (339) hide show
  1. package/.csslintrc +11 -1
  2. package/.github/ISSUE_TEMPLATE/bug_report.md +1 -1
  3. package/.github/pull_request_template.md +6 -34
  4. package/.github/workflows/build-and-test.yaml +129 -0
  5. package/.github/workflows/custom-actions/prep-for-appspot/action.yaml +56 -0
  6. package/.github/workflows/custom-actions/set-commit-status/action.yaml +41 -0
  7. package/.github/workflows/demo-version-index.yaml +29 -0
  8. package/.github/workflows/nightly-demo.yaml +42 -0
  9. package/.github/workflows/release-please.yaml +147 -0
  10. package/.github/workflows/safari-homedir-launcher.sh +18 -0
  11. package/.github/workflows/selenium-lab-tests.yaml +92 -0
  12. package/AUTHORS +2 -0
  13. package/CHANGELOG.md +1718 -1675
  14. package/CONTRIBUTING.md +2 -2
  15. package/CONTRIBUTORS +2 -0
  16. package/README.md +7 -7
  17. package/app-engine/README.md +9 -0
  18. package/app-engine/demo-version-index/README.md +14 -0
  19. package/app-engine/demo-version-index/app.yaml +2 -0
  20. package/app-engine/demo-version-index/main.py +162 -0
  21. package/app-engine/demo-version-index/requirements.txt +6 -0
  22. package/app-engine/demo-version-index/templates/index.html +114 -0
  23. package/app-engine/shaka-player-demo/README.md +18 -0
  24. package/app-engine/shaka-player-demo/app.yaml +61 -0
  25. package/app-engine/shaka-player-demo/main.py +95 -0
  26. package/app-engine/shaka-player-demo/posters/10yo.png +0 -0
  27. package/app-engine/shaka-player-demo/posters/10yo.xcf +0 -0
  28. package/app-engine/shaka-player-demo/posters/1yo.jpg +0 -0
  29. package/app-engine/shaka-player-demo/posters/2yo.png +0 -0
  30. package/app-engine/shaka-player-demo/posters/2yo.xcf +0 -0
  31. package/app-engine/shaka-player-demo/posters/3yo.png +0 -0
  32. package/app-engine/shaka-player-demo/posters/3yo.xcf +0 -0
  33. package/app-engine/shaka-player-demo/posters/4yo.png +0 -0
  34. package/app-engine/shaka-player-demo/posters/4yo.xcf +0 -0
  35. package/app-engine/shaka-player-demo/posters/5yo.png +0 -0
  36. package/app-engine/shaka-player-demo/posters/5yo.xcf +0 -0
  37. package/app-engine/shaka-player-demo/posters/6yo.png +0 -0
  38. package/app-engine/shaka-player-demo/posters/6yo.xcf +0 -0
  39. package/app-engine/shaka-player-demo/posters/7yo.png +0 -0
  40. package/app-engine/shaka-player-demo/posters/7yo.xcf +0 -0
  41. package/app-engine/shaka-player-demo/posters/8yo.png +0 -0
  42. package/app-engine/shaka-player-demo/posters/8yo.xcf +0 -0
  43. package/app-engine/shaka-player-demo/posters/9yo.png +0 -0
  44. package/app-engine/shaka-player-demo/posters/9yo.xcf +0 -0
  45. package/app-engine/shaka-player-demo/posters/audioOnly.gif +0 -0
  46. package/app-engine/shaka-player-demo/posters/audioRickRoll.gif +0 -0
  47. package/app-engine/shaka-player-demo/posters/colorbars.gif +0 -0
  48. package/app-engine/shaka-player-demo/posters/fireworks.jpg +0 -0
  49. package/app-engine/shaka-player-demo/posters/party-hat.png +0 -0
  50. package/app-engine/shaka-player-demo/posters/sources.txt +46 -0
  51. package/app-engine/shaka-player-demo/posters/standard.png +0 -0
  52. package/app-engine/shaka-player-demo/posters/trek.jpg +0 -0
  53. package/app-engine/shaka-player-demo/posters/valentines.png +0 -0
  54. package/app-engine/shaka-player-demo/posters/zombie.jpg +0 -0
  55. package/app-engine/shaka-player-demo/posters.py +110 -0
  56. package/app-engine/shaka-player-demo/requirements.txt +5 -0
  57. package/app-engine/shaka-player-demo/time.txt +1 -0
  58. package/build/README.md +3 -3
  59. package/build/checkversion.py +2 -2
  60. package/build/conformance.textproto +13 -0
  61. package/build/docker/Dockerfile +20 -0
  62. package/build/docker/docker-compose.yml +10 -0
  63. package/build/gendeps.py +18 -15
  64. package/build/shaka-lab.yaml +163 -0
  65. package/build/shakaBuildHelpers.py +4 -29
  66. package/build/test.py +94 -29
  67. package/build/types/core +0 -1
  68. package/build/types/polyfill +1 -0
  69. package/build/wrapper.template.js +2 -2
  70. package/demo/TengwarTelcontar.woff2 +0 -0
  71. package/demo/asset_card.js +1 -2
  72. package/demo/cast_receiver/index.html +1 -1
  73. package/demo/cast_receiver/receiver_app.css +14 -14
  74. package/demo/common/assets.js +2 -0
  75. package/demo/config.js +0 -1
  76. package/demo/custom.js +0 -1
  77. package/demo/customWarning.txt +2 -2
  78. package/demo/demo.less +29 -18
  79. package/demo/demo_uncompiled.js +1 -13
  80. package/demo/index.html +1 -1
  81. package/demo/main.js +3 -3
  82. package/dist/controls.css +3 -3
  83. package/dist/controls.css.map +1 -1
  84. package/dist/demo.compiled.debug.js +191 -194
  85. package/dist/demo.compiled.debug.map +4 -4
  86. package/dist/demo.compiled.js +191 -194
  87. package/dist/demo.compiled.map +4 -4
  88. package/dist/demo.css +1 -1
  89. package/dist/demo.css.map +1 -1
  90. package/dist/deps.js +232 -226
  91. package/dist/locales.js +30 -30
  92. package/dist/receiver.compiled.debug.js +43 -45
  93. package/dist/receiver.compiled.debug.map +4 -4
  94. package/dist/receiver.compiled.js +43 -45
  95. package/dist/receiver.compiled.map +4 -4
  96. package/dist/shaka-player.compiled.d.ts +247 -236
  97. package/dist/shaka-player.compiled.debug.d.ts +247 -236
  98. package/dist/shaka-player.compiled.debug.externs.js +15 -3
  99. package/dist/shaka-player.compiled.debug.js +284 -290
  100. package/dist/shaka-player.compiled.debug.map +4 -4
  101. package/dist/shaka-player.compiled.externs.js +15 -3
  102. package/dist/shaka-player.compiled.js +855 -859
  103. package/dist/shaka-player.compiled.map +4 -4
  104. package/dist/shaka-player.ui.d.ts +291 -280
  105. package/dist/shaka-player.ui.debug.d.ts +291 -280
  106. package/dist/shaka-player.ui.debug.externs.js +15 -3
  107. package/dist/shaka-player.ui.debug.js +296 -302
  108. package/dist/shaka-player.ui.debug.map +4 -4
  109. package/dist/shaka-player.ui.externs.js +15 -3
  110. package/dist/shaka-player.ui.js +1005 -1009
  111. package/dist/shaka-player.ui.map +4 -4
  112. package/docs/design/REDESIGN.md +33 -33
  113. package/docs/design/bg-fetch.md +2 -2
  114. package/docs/design/codec_preferences.md +1 -1
  115. package/docs/design/dash-audio-channels.md +3 -3
  116. package/docs/design/dash-manifests.md +1 -1
  117. package/docs/design/gap-jumping.md +3 -3
  118. package/docs/design/preload.md +2 -2
  119. package/docs/tutorials/faq.md +8 -8
  120. package/docs/tutorials/index.json +1 -0
  121. package/docs/tutorials/plugins.md +3 -3
  122. package/docs/tutorials/selenium-grid-config.md +122 -0
  123. package/docs/tutorials/welcome.md +10 -2
  124. package/externs/cmcd.js +1 -1
  125. package/karma.conf.js +141 -30
  126. package/lib/abr/simple_abr_manager.js +12 -6
  127. package/lib/cast/cast_proxy.js +3 -4
  128. package/lib/cea/cea608_data_channel.js +2 -2
  129. package/lib/cea/cea708_service.js +5 -4
  130. package/lib/cea/mp4_cea_parser.js +11 -5
  131. package/lib/cea/sei_processor.js +6 -3
  132. package/lib/dash/dash_parser.js +11 -14
  133. package/lib/dash/mpd_utils.js +4 -5
  134. package/lib/dash/segment_list.js +1 -2
  135. package/lib/dash/segment_template.js +3 -3
  136. package/lib/hls/hls_parser.js +34 -20
  137. package/lib/hls/manifest_text_parser.js +3 -3
  138. package/lib/media/adaptation_set.js +1 -2
  139. package/lib/media/content_workarounds.js +2 -2
  140. package/lib/media/drm_engine.js +3 -2
  141. package/lib/media/media_source_engine.js +10 -3
  142. package/lib/media/mp4_segment_index_parser.js +1 -4
  143. package/lib/media/playhead.js +2 -2
  144. package/lib/media/presentation_timeline.js +18 -8
  145. package/lib/media/streaming_engine.js +6 -6
  146. package/lib/media/time_ranges_utils.js +1 -3
  147. package/lib/media/video_wrapper.js +1 -1
  148. package/lib/net/networking_engine.js +1 -1
  149. package/lib/offline/indexeddb/storage_mechanism.js +4 -2
  150. package/lib/offline/storage.js +96 -95
  151. package/lib/player.js +190 -114
  152. package/lib/polyfill/all.js +2 -3
  153. package/lib/polyfill/encryption_scheme.js +1 -1
  154. package/lib/polyfill/media_capabilities.js +3 -3
  155. package/lib/polyfill/mediasource.js +1 -1
  156. package/lib/polyfill/symbol.js +46 -0
  157. package/lib/text/cue.js +1 -1
  158. package/lib/text/simple_text_displayer.js +2 -1
  159. package/lib/text/ttml_text_parser.js +8 -5
  160. package/lib/text/ui_text_displayer.js +1 -1
  161. package/lib/util/buffer_utils.js +1 -3
  162. package/lib/util/config_utils.js +25 -0
  163. package/lib/util/ebml_parser.js +3 -3
  164. package/lib/util/error.js +8 -1
  165. package/lib/util/iterables.js +0 -46
  166. package/lib/util/manifest_parser_utils.js +1 -1
  167. package/lib/util/mime_utils.js +48 -1
  168. package/lib/util/mp4_box_parsers.js +1 -4
  169. package/lib/util/mp4_parser.js +5 -7
  170. package/lib/util/periods.js +15 -15
  171. package/lib/util/platform.js +3 -3
  172. package/lib/util/player_configuration.js +9 -14
  173. package/lib/util/pssh.js +1 -4
  174. package/lib/util/stream_utils.js +8 -5
  175. package/lib/util/string_utils.js +3 -5
  176. package/lib/util/uint8array_utils.js +3 -5
  177. package/lib/util/xml_utils.js +15 -7
  178. package/package.json +61 -36
  179. package/roadmap.md +17 -17
  180. package/shaka-player.uncompiled.js +1 -0
  181. package/test/abr/simple_abr_manager_unit.js +3 -8
  182. package/test/ads/ad_manager_unit.js +0 -6
  183. package/test/cast/cast_proxy_unit.js +0 -8
  184. package/test/cast/cast_receiver_integration.js +1 -18
  185. package/test/cast/cast_receiver_unit.js +1 -9
  186. package/test/cast/cast_sender_unit.js +0 -6
  187. package/test/cast/cast_utils_unit.js +1 -13
  188. package/test/cea/cea608_memory_unit.js +0 -5
  189. package/test/cea/cea708_service_unit.js +0 -7
  190. package/test/cea/cea708_window_unit.js +0 -5
  191. package/test/cea/cea_decoder_unit.js +0 -6
  192. package/test/cea/dtvcc_packet_builder_unit.js +0 -3
  193. package/test/cea/dtvcc_packet_unit.js +0 -5
  194. package/test/cea/mp4_cea_parser_unit.js +0 -4
  195. package/test/dash/dash_parser_content_protection_unit.js +1 -10
  196. package/test/dash/dash_parser_live_unit.js +2 -15
  197. package/test/dash/dash_parser_manifest_unit.js +2 -40
  198. package/test/dash/dash_parser_segment_base_unit.js +1 -8
  199. package/test/dash/dash_parser_segment_list_unit.js +1 -7
  200. package/test/dash/dash_parser_segment_template_unit.js +0 -9
  201. package/test/dash/mpd_utils_unit.js +3 -11
  202. package/test/demo/demo_unit.js +0 -5
  203. package/test/deprecate/enforcer_unit.js +0 -4
  204. package/test/deprecate/version_unit.js +0 -2
  205. package/test/hls/hls_live_unit.js +28 -14
  206. package/test/hls/hls_parser_unit.js +2 -15
  207. package/test/hls/manifest_text_parser_unit.js +19 -10
  208. package/test/media/adaptation_set_criteria_unit.js +3 -7
  209. package/test/media/adaptation_set_unit.js +0 -2
  210. package/test/media/buffering_observer_unit.js +1 -4
  211. package/test/media/closed_caption_parser_unit.js +0 -3
  212. package/test/media/drm_engine_integration.js +2 -15
  213. package/test/media/drm_engine_unit.js +4 -24
  214. package/test/media/manifest_parser_unit.js +0 -4
  215. package/test/media/media_source_engine_integration.js +1 -7
  216. package/test/media/media_source_engine_unit.js +5 -18
  217. package/test/media/mp4_segment_index_parser_unit.js +0 -4
  218. package/test/media/play_rate_controller_unit.js +0 -4
  219. package/test/media/playhead_unit.js +8 -16
  220. package/test/media/presentation_timeline_unit.js +4 -7
  221. package/test/media/quality_observer_unit.js +0 -4
  222. package/test/media/region_observer_unit.js +1 -6
  223. package/test/media/region_timeline_unit.js +0 -3
  224. package/test/media/segment_index_unit.js +0 -6
  225. package/test/media/segment_reference_unit.js +0 -3
  226. package/test/media/stall_detector_unit.js +0 -5
  227. package/test/media/streaming_engine_integration.js +11 -36
  228. package/test/media/streaming_engine_unit.js +11 -35
  229. package/test/media/time_ranges_utils_unit.js +0 -2
  230. package/test/media/transmuxer_integration.js +0 -6
  231. package/test/media/webm_segment_index_parser_unit.js +0 -4
  232. package/test/net/data_uri_plugin_unit.js +0 -7
  233. package/test/net/http_plugin_unit.js +0 -9
  234. package/test/net/networking_engine_unit.js +0 -11
  235. package/test/offline/download_progress_estimator_unit.js +0 -2
  236. package/test/offline/indexeddb_storage_unit.js +1 -7
  237. package/test/offline/manifest_convert_unit.js +0 -8
  238. package/test/offline/offline_integration.js +1 -10
  239. package/test/offline/offline_manifest_parser_unit.js +0 -6
  240. package/test/offline/offline_scheme_unit.js +0 -8
  241. package/test/offline/offline_uri_unit.js +0 -2
  242. package/test/offline/storage_compatibility_unit.js +2 -15
  243. package/test/offline/storage_integration.js +1 -27
  244. package/test/player_external.js +9 -11
  245. package/test/player_integration.js +28 -38
  246. package/test/player_load_graph_integration.js +1 -6
  247. package/test/player_src_equals_external.js +3 -9
  248. package/test/player_src_equals_integration.js +81 -90
  249. package/test/player_unit.js +150 -38
  250. package/test/routing/walker_unit.js +0 -8
  251. package/test/test/assets/large_file.mpd +1 -1
  252. package/test/test/boot.js +84 -22
  253. package/test/test/externs/filters.js +4 -0
  254. package/test/test/externs/jasmine.js +2 -2
  255. package/test/test/externs/karma.js +4 -0
  256. package/test/test/namespace.js +10 -0
  257. package/test/test/util/canned_idb.js +0 -8
  258. package/test/test/util/cea_utils.js +0 -6
  259. package/test/test/util/dash_parser_util.js +0 -13
  260. package/test/test/util/fake_ad.js +0 -3
  261. package/test/test/util/fake_ad_manager.js +0 -9
  262. package/test/test/util/fake_demo_main.js +0 -5
  263. package/test/test/util/fake_drm_engine.js +0 -6
  264. package/test/test/util/fake_media_source_engine.js +0 -7
  265. package/test/test/util/fake_networking_engine.js +0 -5
  266. package/test/test/util/fake_text_displayer.js +0 -5
  267. package/test/test/util/indexeddb_utils.js +1 -10
  268. package/test/test/util/jasmine_fetch.js +0 -1
  269. package/test/test/util/loader.js +0 -18
  270. package/test/test/util/manifest_generator.js +9 -14
  271. package/test/test/util/manifest_parser_util.js +0 -6
  272. package/test/test/util/offline_utils.js +0 -5
  273. package/test/test/util/simple_fakes.js +40 -28
  274. package/test/test/util/stream_generator.js +0 -14
  275. package/test/test/util/streaming_engine_util.js +0 -15
  276. package/test/test/util/test_scheme.js +1 -19
  277. package/test/test/util/ttml_utils.js +0 -2
  278. package/test/test/util/ui_utils.js +0 -9
  279. package/test/test/util/util.js +5 -19
  280. package/test/test/util/waiter.js +84 -43
  281. package/test/text/cue_integration.js +0 -4
  282. package/test/text/lrc_text_parser_unit.js +0 -4
  283. package/test/text/mp4_ttml_parser_unit.js +0 -6
  284. package/test/text/mp4_vtt_parser_unit.js +1 -7
  285. package/test/text/sbv_text_parser_unit.js +0 -4
  286. package/test/text/simple_text_displayer_unit.js +1 -8
  287. package/test/text/srt_text_parser_unit.js +0 -4
  288. package/test/text/ssa_text_parser_unit.js +0 -5
  289. package/test/text/text_engine_unit.js +2 -7
  290. package/test/text/text_track_integration.js +0 -2
  291. package/test/text/ttml_text_parser_unit.js +2 -11
  292. package/test/text/ui_text_displayer_unit.js +44 -41
  293. package/test/text/vtt_text_parser_unit.js +0 -9
  294. package/test/text/web_vtt_generator_unit.js +0 -3
  295. package/test/ui/ad_ui_unit.js +0 -11
  296. package/test/ui/localization_unit.js +0 -3
  297. package/test/ui/text_displayer_layout_unit.js +1 -12
  298. package/test/ui/ui_customization_unit.js +0 -6
  299. package/test/ui/ui_integration.js +0 -16
  300. package/test/ui/ui_unit.js +1 -17
  301. package/test/util/abortable_operation_unit.js +4 -9
  302. package/test/util/array_utils_unit.js +0 -2
  303. package/test/util/buffer_utils_unit.js +0 -2
  304. package/test/util/cmcd_manager_unit.js +0 -3
  305. package/test/util/data_view_reader_unit.js +0 -4
  306. package/test/util/ebml_parser_unit.js +0 -4
  307. package/test/util/event_manager_unit.js +0 -3
  308. package/test/util/fake_event_target_unit.js +0 -5
  309. package/test/util/functional_unit.js +1 -1
  310. package/test/util/iterables_unit.js +0 -64
  311. package/test/util/language_utils_unit.js +0 -3
  312. package/test/util/manifest_parser_utils_unit.js +0 -2
  313. package/test/util/mime_utils_unit.js +54 -0
  314. package/test/util/mp4_box_parsers_unit.js +0 -5
  315. package/test/util/mp4_parser_unit.js +0 -4
  316. package/test/util/multi_map_unit.js +0 -3
  317. package/test/util/object_utils_unit.js +0 -2
  318. package/test/util/periods_unit.js +93 -7
  319. package/test/util/pssh_unit.js +0 -5
  320. package/test/util/state_history_unit.js +0 -2
  321. package/test/util/stream_utils_unit.js +3 -8
  322. package/test/util/string_utils_unit.js +0 -6
  323. package/test/util/text_parser_unit.js +0 -2
  324. package/test/util/xml_utils_unit.js +0 -4
  325. package/ui/less/ad_controls.less +6 -6
  326. package/ui/less/buttons.less +6 -6
  327. package/ui/less/containers.less +13 -15
  328. package/ui/less/overflow_menu.less +4 -4
  329. package/ui/less/range_elements.less +7 -2
  330. package/ui/less/tooltip.less +4 -4
  331. package/ui/locales/sjn-translations.yaml +257 -0
  332. package/ui/locales/sjn.json +42 -0
  333. package/ui/seek_bar.js +2 -1
  334. package/.github/workflows/build_and_test.yaml +0 -73
  335. package/.github/workflows/release.yaml +0 -53
  336. package/docs/tutorials/gsoc-ideas-list.md +0 -3
  337. package/externs/svgelement.js +0 -18
  338. package/externs/webcrypto.js +0 -18
  339. package/lib/util/mutex.js +0 -52
@@ -8,7 +8,6 @@ goog.provide('shaka.util.Uint8ArrayUtils');
8
8
 
9
9
  goog.require('shaka.Deprecate');
10
10
  goog.require('shaka.util.BufferUtils');
11
- goog.require('shaka.util.Iterables');
12
11
  goog.require('shaka.util.StringUtils');
13
12
 
14
13
 
@@ -74,9 +73,8 @@ shaka.util.Uint8ArrayUtils = class {
74
73
  // byte.
75
74
  const bytes = window.atob(str.replace(/-/g, '+').replace(/_/g, '/'));
76
75
  const result = new Uint8Array(bytes.length);
77
- const enumerate = (it) => shaka.util.Iterables.enumerate(it);
78
- for (const {i, item} of enumerate(bytes)) {
79
- result[i] = item.charCodeAt(0);
76
+ for (let i = 0; i < bytes.length; ++i) {
77
+ result[i] = bytes.charCodeAt(i);
80
78
  }
81
79
  return result;
82
80
  }
@@ -91,7 +89,7 @@ shaka.util.Uint8ArrayUtils = class {
91
89
  static fromHex(str) {
92
90
  const size = str.length / 2;
93
91
  const arr = new Uint8Array(size);
94
- for (const i of shaka.util.Iterables.range(size)) {
92
+ for (let i = 0; i < size; i++) {
95
93
  arr[i] = window.parseInt(str.substr(i * 2, 2), 16);
96
94
  }
97
95
  return arr;
@@ -57,9 +57,13 @@ shaka.util.XmlUtils = class {
57
57
  * @return {!Array.<!Element>} The child XML elements.
58
58
  */
59
59
  static findChildren(elem, name) {
60
- return Array.from(elem.childNodes).filter((child) => {
61
- return child instanceof Element && child.tagName == name;
62
- });
60
+ const found = [];
61
+ for (const child of elem.childNodes) {
62
+ if (child instanceof Element && child.tagName == name) {
63
+ found.push(child);
64
+ }
65
+ }
66
+ return found;
63
67
  }
64
68
 
65
69
 
@@ -82,10 +86,14 @@ shaka.util.XmlUtils = class {
82
86
  * @return {!Array.<!Element>} The child XML elements.
83
87
  */
84
88
  static findChildrenNS(elem, ns, name) {
85
- return Array.from(elem.childNodes).filter((child) => {
86
- return child instanceof Element && child.localName == name &&
87
- child.namespaceURI == ns;
88
- });
89
+ const found = [];
90
+ for (const child of elem.childNodes) {
91
+ if (child instanceof Element && child.localName == name &&
92
+ child.namespaceURI == ns) {
93
+ found.push(child);
94
+ }
95
+ }
96
+ return found;
89
97
  }
90
98
 
91
99
 
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "shaka-player",
3
3
  "description": "DASH/EME video player library",
4
- "version": "3.3.2",
5
- "homepage": "https://github.com/google/shaka-player",
4
+ "version": "3.3.5",
5
+ "homepage": "https://github.com/shaka-project/shaka-player",
6
6
  "author": "Google",
7
7
  "maintainers": [
8
8
  {
@@ -11,60 +11,85 @@
11
11
  }
12
12
  ],
13
13
  "devDependencies": {
14
+ "@babel/core": "^7.17.5",
15
+ "@babel/polyfill": "^7.12.1",
16
+ "@babel/preset-env": "^7.16.11",
14
17
  "@teppeis/clutz": "^1.0.29-4c95e12.v20190929",
15
- "awesomplete": "^1.1.4",
16
- "babel-core": "^6.26.3",
17
- "babel-plugin-istanbul": "^4.1.6",
18
- "babel-polyfill": "^6.26.0",
19
- "babel-preset-env": "^1.7.0",
18
+ "awesomplete": "^1.1.5",
19
+ "babel-plugin-istanbul": "^6.1.1",
20
20
  "cajon": "^0.4.4",
21
- "core-js": "^3.6.5",
22
- "dialog-polyfill": "^0.5.0",
21
+ "code-prettify": "^0.1.0",
22
+ "color-themes-for-google-code-prettify": "^2.0.4",
23
+ "core-js": "^3.21.1",
24
+ "dialog-polyfill": "^0.5.6",
23
25
  "es6-promise-polyfill": "^1.2.0",
24
- "eslint": "^7.18.0",
25
- "eslint-config-google": "^0.13.0",
26
+ "eslint": "^8.9.0",
27
+ "eslint-config-google": "^0.14.0",
26
28
  "eslint-plugin-shaka-rules": "file:./build/eslint-plugin-shaka-rules",
27
29
  "esprima": "^4.0.1",
28
30
  "fastestsmallesttextencoderdecoder": "^1.0.22",
29
31
  "fontfaceonload": "^1.0.2",
30
- "google-closure-compiler-java": "^20210505.0.0",
31
- "google-closure-library": "^20210406.0.0",
32
- "htmlhint": "^0.11.0",
32
+ "google-closure-compiler-java": "^20220301.0.0",
33
+ "google-closure-deps": "https://gitpkg.now.sh/google/closure-library/closure-deps?d7736da6",
34
+ "google-closure-library": "^20220301.0.0",
35
+ "htmlhint": "^1.1.3",
33
36
  "jasmine-ajax": "^4.0.0",
34
- "jimp": "^0.11.0",
35
- "jsdoc": "github:joeyparrish/jsdoc#45c271fa",
36
- "karma": "^6.2.0",
37
- "karma-babel-preprocessor": "^7.0.0",
38
- "karma-coverage": "^1.1.2",
39
- "karma-ie-launcher": "^1.0.0",
40
- "karma-jasmine": "^3.3.1",
37
+ "jimp": "^0.16.1",
38
+ "js-yaml": "^4.1.0",
39
+ "jsdoc": "github:joeyparrish/jsdoc#2ca85bb6",
40
+ "karma": "^6.3.16",
41
+ "karma-babel-preprocessor": "^8.0.2",
42
+ "karma-coverage": "^2.2.0",
43
+ "karma-jasmine": "^4.0.1",
41
44
  "karma-jasmine-ajax": "^0.1.13",
42
- "karma-local-wd-launcher": "^1.4.1",
45
+ "karma-local-wd-launcher": "^1.6.1",
43
46
  "karma-opera-launcher": "^1.0.0",
44
- "karma-sourcemap-loader": "^0.3.7",
45
- "karma-spec-reporter": "0.0.32",
47
+ "karma-sourcemap-loader": "^0.3.8",
48
+ "karma-spec-reporter": "^0.0.34",
46
49
  "karma-webdriver-launcher": "^1.0.8",
47
- "less": "^3.13.1",
48
- "less-plugin-clean-css": "^1.5.1",
50
+ "less": "https://gitpkg.now.sh/joeyparrish/less.js/packages/less?28c63a43",
51
+ "less-plugin-clean-css": "github:austingardner/less-plugin-clean-css#4e9e77bf",
49
52
  "material-design-lite": "^1.3.0",
50
- "mux.js": "^5.7.0",
51
- "pwacompat": "^2.0.10",
52
- "rimraf": "^2.6.3",
53
+ "mux.js": "^5.14.1",
54
+ "open-sans-fonts": "^1.6.2",
55
+ "postcss-less": "^6.0.0",
56
+ "pwacompat": "^2.0.17",
57
+ "rimraf": "^3.0.2",
53
58
  "sprintf-js": "^1.1.2",
54
59
  "ssim.js": "^3.5.0",
55
- "stylelint": "^13.8.0",
56
- "stylelint-config-standard": "^20.0.0",
57
- "tippy.js": "^4.3.1",
58
- "ua-parser-js": "^0.7.24",
59
- "which": "^1.3.1"
60
+ "stylelint": "^14.5.1",
61
+ "stylelint-config-standard": "^25.0.0",
62
+ "tippy.js": "^4.3.5",
63
+ "which": "^2.0.2"
64
+ },
65
+ "shakaCustom": {
66
+ "purposeOfDemoDeps": "These are the files from node_modules that need to be deployed with the demo app.",
67
+ "demoDeps": [
68
+ "awesomplete/awesomplete.css",
69
+ "awesomplete/awesomplete.min.js",
70
+ "dialog-polyfill/dialog-polyfill.css",
71
+ "dialog-polyfill/dist/dialog-polyfill.js",
72
+ "eme-encryption-scheme-polyfill/index.js",
73
+ "es6-promise-polyfill/promise.min.js",
74
+ "fastestsmallesttextencoderdecoder/EncoderDecoderTogether.min.js",
75
+ "google-closure-library/closure/goog/base.js",
76
+ "less/dist/less.js",
77
+ "material-design-lite/dist/material.indigo-blue.min.css",
78
+ "material-design-lite/dist/material.min.js",
79
+ "mux.js/dist/mux.min.js",
80
+ "popper.js/dist/umd/popper.min.js",
81
+ "pwacompat/pwacompat.min.js",
82
+ "tippy.js/umd/index.min.js",
83
+ "tippy.js/index.css"
84
+ ]
60
85
  },
61
86
  "main": "dist/shaka-player.compiled.js",
62
87
  "repository": {
63
88
  "type": "git",
64
- "url": "https://github.com/google/shaka-player.git"
89
+ "url": "https://github.com/shaka-project/shaka-player.git"
65
90
  },
66
91
  "bugs": {
67
- "url": "https://github.com/google/shaka-player/issues"
92
+ "url": "https://github.com/shaka-project/shaka-player/issues"
68
93
  },
69
94
  "license": "Apache-2.0",
70
95
  "scripts": {
package/roadmap.md CHANGED
@@ -10,49 +10,49 @@ so the exact milestone for future features is not pre-determined.
10
10
 
11
11
  Priority features up next:
12
12
  - Support containerless formats
13
- https://github.com/google/shaka-player/issues/2337
13
+ https://github.com/shaka-project/shaka-player/issues/2337
14
14
  - Preload API
15
- https://github.com/google/shaka-player/issues/880
15
+ https://github.com/shaka-project/shaka-player/issues/880
16
16
  - Codec-switching and order preference
17
- https://github.com/google/shaka-player/issues/1528
18
- https://github.com/google/shaka-player/issues/2179
17
+ https://github.com/shaka-project/shaka-player/issues/1528
18
+ https://github.com/shaka-project/shaka-player/issues/2179
19
19
 
20
20
  Candidate features for future release cycles:
21
21
  - HLS interstitial support
22
- https://github.com/google/shaka-player/issues/3364
22
+ https://github.com/shaka-project/shaka-player/issues/3364
23
23
  - Support ID3 tags in mp4
24
- https://github.com/google/shaka-player/issues/3351
24
+ https://github.com/shaka-project/shaka-player/issues/3351
25
25
  - MSE support for FairPlay
26
- https://github.com/google/shaka-player/issues/3346
26
+ https://github.com/shaka-project/shaka-player/issues/3346
27
27
  - Smaller, more modular binary
28
28
  - Official TypeScript defs, generated from source
29
- https://github.com/google/shaka-player/issues/1030
29
+ https://github.com/shaka-project/shaka-player/issues/1030
30
30
  - Shaka Analytics Component and an integration with BigQuery Analytics
31
- https://github.com/google/shaka-player/issues/3359
31
+ https://github.com/shaka-project/shaka-player/issues/3359
32
32
  - Integration with Google Video ML/Cloud AI
33
33
 
34
34
  v3.3 - 2021 Q3 or Q4
35
35
  - Background fetch for offline storage
36
- https://github.com/google/shaka-player/issues/879
36
+ https://github.com/shaka-project/shaka-player/issues/879
37
37
  - HLS performance improvements
38
- https://github.com/google/shaka-player/issues/3363
38
+ https://github.com/shaka-project/shaka-player/issues/3363
39
39
 
40
40
  =====
41
41
 
42
42
  v3.2 - 2021 Q3
43
43
  - MediaCapabilities to make performance-based decisions
44
- https://github.com/google/shaka-player/issues/1391
44
+ https://github.com/shaka-project/shaka-player/issues/1391
45
45
  - Configurable key-system priority
46
- https://github.com/google/shaka-player/issues/3002
46
+ https://github.com/shaka-project/shaka-player/issues/3002
47
47
 
48
48
  v3.1 - 2021 Q2
49
49
  - Low-latency live (LL-HLS, LL-DASH)
50
- https://github.com/google/shaka-player/issues/1525
50
+ https://github.com/shaka-project/shaka-player/issues/1525
51
51
  - Own CEA parser, use mux.js only for TS
52
- https://github.com/google/shaka-player/issues/2648
52
+ https://github.com/shaka-project/shaka-player/issues/2648
53
53
  - Thumbnail tracks
54
- DASH: https://github.com/google/shaka-player/issues/559
55
- HLS: https://github.com/google/shaka-player/issues/2429
54
+ DASH: https://github.com/shaka-project/shaka-player/issues/559
55
+ HLS: https://github.com/shaka-project/shaka-player/issues/2429
56
56
 
57
57
  v3.0 - 2020 Q2
58
58
  - Code health improvements
@@ -45,6 +45,7 @@ goog.require('shaka.polyfill.PatchedMediaKeysNop');
45
45
  goog.require('shaka.polyfill.PatchedMediaKeysWebkit');
46
46
  goog.require('shaka.polyfill.PiPWebkit');
47
47
  goog.require('shaka.polyfill.RandomUUID');
48
+ goog.require('shaka.polyfill.Symbol');
48
49
  goog.require('shaka.polyfill.VTTCue');
49
50
  goog.require('shaka.polyfill.VideoPlayPromise');
50
51
  goog.require('shaka.polyfill.VideoPlaybackQuality');
@@ -4,11 +4,6 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
 
7
- goog.require('shaka.abr.SimpleAbrManager');
8
- goog.require('shaka.test.ManifestGenerator');
9
- goog.require('shaka.test.Util');
10
- goog.require('shaka.util.PlayerConfiguration');
11
-
12
7
  describe('SimpleAbrManager', () => {
13
8
  const sufficientBWMultiplier = 1.06;
14
9
  const defaultBandwidthEstimate = 500e3; // 500kbps
@@ -91,7 +86,7 @@ describe('SimpleAbrManager', () => {
91
86
  config.defaultBandwidthEstimate = 3e6;
92
87
  abrManager.configure(config);
93
88
  const chosen = abrManager.chooseVariant();
94
- expect(chosen.id).toBe(104);
89
+ expect(chosen.id).toBe(103);
95
90
  });
96
91
 
97
92
  it('can handle empty variants', () => {
@@ -170,7 +165,7 @@ describe('SimpleAbrManager', () => {
170
165
  it('can handle 0 duration segments', () => {
171
166
  // Makes sure bandwidth estimate doesn't get set to NaN
172
167
  // when a 0 duration segment is encountered.
173
- // https://github.com/google/shaka-player/issues/582
168
+ // https://github.com/shaka-project/shaka-player/issues/582
174
169
  const bandwidth = 5e5;
175
170
  const bytesPerSecond = sufficientBWMultiplier * bandwidth / 8.0;
176
171
 
@@ -208,7 +203,7 @@ describe('SimpleAbrManager', () => {
208
203
  abrManager.segmentDownloaded(1000, bytesPerSecond);
209
204
 
210
205
  // Expect variants 4 to be chosen
211
- const expectedVariant = variants[4];
206
+ const expectedVariant = variants[3];
212
207
 
213
208
  expect(switchCallback).toHaveBeenCalledWith(expectedVariant);
214
209
  });
@@ -4,12 +4,6 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
 
7
- goog.require('shaka.Player');
8
- goog.require('shaka.ads.AdManager');
9
- goog.require('shaka.test.FakeVideo');
10
- goog.require('shaka.test.Util');
11
- goog.require('shaka.util.Error');
12
-
13
7
  describe('Ad manager', () => {
14
8
  /** @type {!shaka.test.FakeVideo} */
15
9
  let mockVideo;
@@ -4,14 +4,6 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
 
7
- goog.require('shaka.cast.CastProxy');
8
- goog.require('shaka.cast.CastSender');
9
- goog.require('shaka.test.FakeVideo');
10
- goog.require('shaka.test.Util');
11
- goog.require('shaka.util.Error');
12
- goog.require('shaka.util.FakeEvent');
13
- goog.require('shaka.util.PublicPromise');
14
-
15
7
  describe('CastProxy', () => {
16
8
  const CastProxy = shaka.cast.CastProxy;
17
9
  const FakeEvent = shaka.util.FakeEvent;
@@ -4,22 +4,6 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
 
7
- goog.require('shaka.Player');
8
- goog.require('shaka.cast.CastReceiver');
9
- goog.require('shaka.cast.CastUtils');
10
- goog.require('shaka.log');
11
- goog.require('shaka.media.DrmEngine');
12
- goog.require('shaka.media.ManifestParser');
13
- goog.require('shaka.media.StreamingEngine');
14
- goog.require('shaka.net.NetworkingEngine');
15
- goog.require('shaka.test.TestScheme');
16
- goog.require('shaka.test.UiUtils');
17
- goog.require('shaka.util.EventManager');
18
- goog.require('shaka.util.Functional');
19
- goog.require('shaka.util.Iterables');
20
- goog.require('shaka.util.Platform');
21
- goog.require('shaka.util.PublicPromise');
22
-
23
7
  // The receiver is only meant to run on the Chromecast, so we have the
24
8
  // ability to use modern APIs there that may not be available on all of the
25
9
  // browsers our library supports. Because of this, CastReceiver tests will
@@ -198,8 +182,7 @@ filterDescribe('CastReceiver', castReceiverIntegrationSupport, () => {
198
182
  // the average length is expected to be lower than the length of the first
199
183
  // update message.
200
184
  let totalLength = 0;
201
- for (const _ of shaka.util.Iterables.range(50)) {
202
- shaka.util.Functional.ignored(_);
185
+ for (let i = 0; i < 50; i++) {
203
186
  // eslint-disable-next-line no-await-in-loop
204
187
  const message = await waitForUpdateMessage();
205
188
  totalLength += message.length;
@@ -4,14 +4,6 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
 
7
- goog.require('shaka.cast.CastReceiver');
8
- goog.require('shaka.cast.CastUtils');
9
- goog.require('shaka.test.FakeVideo');
10
- goog.require('shaka.test.Util');
11
- goog.require('shaka.util.Error');
12
- goog.require('shaka.util.Platform');
13
- goog.require('shaka.util.PublicPromise');
14
-
15
7
  // The receiver is only meant to run on the Chromecast, so we have the
16
8
  // ability to use modern APIs there that may not be available on all of the
17
9
  // browsers our library supports. Because of this, CastReceiver tests will
@@ -756,7 +748,7 @@ filterDescribe('CastReceiver', castReceiverSupport, () => {
756
748
  expect(mockGenericMessageBus.broadcast).toHaveBeenCalledTimes(1);
757
749
 
758
750
  // This covers the lack of scrubber in the Google Home app, as described
759
- // in https://github.com/google/shaka-player/issues/2606
751
+ // in https://github.com/shaka-project/shaka-player/issues/2606
760
752
  expectMediaInfo('URI A', 1);
761
753
  });
762
754
 
@@ -4,12 +4,6 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
 
7
- goog.require('shaka.cast.CastSender');
8
- goog.require('shaka.cast.CastUtils');
9
- goog.require('shaka.test.StatusPromise');
10
- goog.require('shaka.test.Util');
11
- goog.require('shaka.util.Error');
12
-
13
7
  describe('CastSender', () => {
14
8
  const CastSender = shaka.cast.CastSender;
15
9
  const CastUtils = shaka.cast.CastUtils;
@@ -4,19 +4,6 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
 
7
- goog.require('shaka.Player');
8
- goog.require('shaka.cast.CastUtils');
9
- goog.require('shaka.media.MediaSourceEngine');
10
- goog.require('shaka.media.TimeRangesUtils');
11
- goog.require('shaka.test.FakeClosedCaptionParser');
12
- goog.require('shaka.test.FakeTextDisplayer');
13
- goog.require('shaka.test.UiUtils');
14
- goog.require('shaka.test.Util');
15
- goog.require('shaka.util.EventManager');
16
- goog.require('shaka.util.FakeEvent');
17
- goog.require('shaka.util.FakeEventTarget');
18
- goog.require('shaka.util.ManifestParserUtils');
19
-
20
7
  describe('CastUtils', () => {
21
8
  const CastUtils = shaka.cast.CastUtils;
22
9
  const FakeEvent = shaka.util.FakeEvent;
@@ -202,6 +189,7 @@ describe('CastUtils', () => {
202
189
  const fakeVideoStream = {
203
190
  mimeType: 'video/mp4',
204
191
  codecs: 'avc1.42c01e',
192
+ drmInfos: [],
205
193
  };
206
194
  const initSegmentUrl = '/base/test/test/assets/sintel-video-init.mp4';
207
195
  const videoSegmentUrl =
@@ -4,11 +4,6 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
 
7
- goog.require('shaka.cea.Cea608Memory');
8
- goog.require('shaka.cea.CeaUtils');
9
- goog.require('shaka.test.CeaUtils');
10
- goog.require('shaka.text.Cue');
11
-
12
7
  describe('Cea608Memory', () => {
13
8
  const CeaUtils = shaka.test.CeaUtils;
14
9
 
@@ -4,13 +4,6 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
 
7
- goog.require('shaka.cea.Cea708Service');
8
- goog.require('shaka.cea.CeaUtils');
9
- goog.require('shaka.cea.DtvccPacket');
10
- goog.require('shaka.cea.DtvccPacketBuilder');
11
- goog.require('shaka.test.CeaUtils');
12
- goog.require('shaka.text.Cue');
13
-
14
7
  describe('Cea708Service', () => {
15
8
  const CeaUtils = shaka.test.CeaUtils;
16
9
 
@@ -4,11 +4,6 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
 
7
- goog.require('shaka.cea.Cea708Window');
8
- goog.require('shaka.cea.CeaUtils');
9
- goog.require('shaka.test.CeaUtils');
10
- goog.require('shaka.text.Cue');
11
-
12
7
  describe('Cea708Window', () => {
13
8
  const CeaUtils = shaka.test.CeaUtils;
14
9
 
@@ -4,12 +4,6 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
 
7
- goog.require('shaka.cea.CeaDecoder');
8
- goog.require('shaka.cea.CeaUtils');
9
- goog.require('shaka.log');
10
- goog.require('shaka.test.CeaUtils');
11
- goog.require('shaka.text.Cue');
12
-
13
7
  describe('CeaDecoder', () => {
14
8
  const CeaUtils = shaka.test.CeaUtils;
15
9
 
@@ -4,9 +4,6 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
 
7
- goog.require('shaka.cea.DtvccPacket');
8
- goog.require('shaka.cea.DtvccPacketBuilder');
9
-
10
7
  describe('DtvccPacketBuilder', () => {
11
8
  /** @type {!shaka.cea.DtvccPacketBuilder} */
12
9
  let dtvccPacketBuilder;
@@ -4,11 +4,6 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
 
7
- goog.require('shaka.cea.DtvccPacket');
8
- goog.require('shaka.cea.DtvccPacketBuilder');
9
- goog.require('shaka.test.Util');
10
- goog.require('shaka.util.Error');
11
-
12
7
  describe('DtvccPacket', () => {
13
8
  /** @type {!shaka.cea.DtvccPacket} */
14
9
  let dtvccPacket;
@@ -4,10 +4,6 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
 
7
- goog.require('shaka.cea.Mp4CeaParser');
8
- goog.require('shaka.test.Util');
9
- goog.require('shaka.util.Error');
10
-
11
7
  describe('Mp4CeaParser', () => {
12
8
  const ceaInitSegmentUri = '/base/test/test/assets/cea-init.mp4';
13
9
  const ceaSegmentUri = '/base/test/test/assets/cea-segment.mp4';
@@ -4,15 +4,6 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
 
7
- goog.require('shaka.dash.ContentProtection');
8
- goog.require('shaka.dash.DashParser');
9
- goog.require('shaka.test.Dash');
10
- goog.require('shaka.test.FakeNetworkingEngine');
11
- goog.require('shaka.util.Error');
12
- goog.require('shaka.util.Iterables');
13
- goog.require('shaka.util.PlayerConfiguration');
14
- goog.require('shaka.util.Uint8ArrayUtils');
15
-
16
7
  // Test DRM-related parsing.
17
8
  describe('DashParser ContentProtection', () => {
18
9
  const Dash = shaka.test.Dash;
@@ -142,7 +133,7 @@ describe('DashParser ContentProtection', () => {
142
133
 
143
134
  const variants = [];
144
135
  const numVariants = 2;
145
- for (const i of shaka.util.Iterables.range(numVariants)) {
136
+ for (let i = 0; i < numVariants; i++) {
146
137
  const variant = jasmine.objectContaining({
147
138
  video: jasmine.objectContaining({
148
139
  keyIds: new Set(keyIds[i] ? [keyIds[i]] : []),
@@ -4,19 +4,6 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
 
7
- goog.require('goog.asserts');
8
- goog.require('shaka.dash.DashParser');
9
- goog.require('shaka.media.SegmentReference');
10
- goog.require('shaka.net.NetworkingEngine');
11
- goog.require('shaka.test.FakeNetworkingEngine');
12
- goog.require('shaka.test.ManifestParser');
13
- goog.require('shaka.test.Util');
14
- goog.require('shaka.util.AbortableOperation');
15
- goog.require('shaka.util.Error');
16
- goog.require('shaka.util.PlayerConfiguration');
17
- goog.require('shaka.util.StringUtils');
18
- goog.requireType('shaka.util.PublicPromise');
19
-
20
7
  describe('DashParser Live', () => {
21
8
  const Util = shaka.test.Util;
22
9
  const ManifestParser = shaka.test.ManifestParser;
@@ -1228,8 +1215,8 @@ describe('DashParser Live', () => {
1228
1215
  const liveEdge =
1229
1216
  manifest.presentationTimeline.getSegmentAvailabilityEnd();
1230
1217
 
1231
- // In https://github.com/google/shaka-player/issues/1204, a get on the
1232
- // final segment failed an assertion and returned endTime == 0.
1218
+ // In https://github.com/shaka-project/shaka-player/issues/1204, a get on
1219
+ // the final segment failed an assertion and returned endTime == 0.
1233
1220
  // Find the last segment by looking just before the live edge. Looking
1234
1221
  // right on the live edge creates test flake, and the segments are 2
1235
1222
  // seconds in duration.
@@ -4,21 +4,6 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
 
7
- goog.require('goog.asserts');
8
- goog.require('shaka.media.SegmentReference');
9
- goog.require('shaka.net.NetworkingEngine');
10
- goog.require('shaka.test.Dash');
11
- goog.require('shaka.test.FakeNetworkingEngine');
12
- goog.require('shaka.test.ManifestGenerator');
13
- goog.require('shaka.test.Util');
14
- goog.require('shaka.util.AbortableOperation');
15
- goog.require('shaka.util.Error');
16
- goog.require('shaka.util.LanguageUtils');
17
- goog.require('shaka.util.ManifestParserUtils');
18
- goog.require('shaka.util.PlayerConfiguration');
19
- goog.require('shaka.util.StringUtils');
20
- goog.requireType('shaka.dash.DashParser');
21
-
22
7
  // Test basic manifest parsing functionality.
23
8
  describe('DashParser Manifest', () => {
24
9
  const ContentType = shaka.util.ManifestParserUtils.ContentType;
@@ -462,30 +447,6 @@ describe('DashParser Manifest', () => {
462
447
  expect(stream.closedCaptions).toEqual(expectedClosedCaptions);
463
448
  });
464
449
 
465
- it('Detects E-AC3 JOC content by SupplementalProperty', async () => {
466
- const idUri = 'tag:dolby.com,2018:dash:EC3_ExtensionType:2018';
467
- const source = [
468
- '<MPD>',
469
- ' <Period duration="PT30M">',
470
- ' <AdaptationSet mimeType="audio/mp4" lang="\u2603">',
471
- ' <Representation bandwidth="500">',
472
- ' <SupplementalProperty schemeIdUri="' + idUri + '" value="JOC"/>',
473
- ' <BaseURL>http://example.com</BaseURL>',
474
- ' <SegmentTemplate media="2.mp4" duration="1" />',
475
- ' </Representation>',
476
- ' </AdaptationSet>',
477
- ' </Period>',
478
- '</MPD>',
479
- ].join('\n');
480
-
481
- fakeNetEngine.setResponseText('dummy://foo', source);
482
-
483
- /** @type {shaka.extern.Manifest} */
484
- const manifest = await parser.start('dummy://foo', playerInterface);
485
- const stream = manifest.variants[0].audio;
486
- expect(stream.mimeType).toBe('audio/eac3-joc');
487
- });
488
-
489
450
  it('Detects spatial audio', async () => {
490
451
  const idUri = 'tag:dolby.com,2018:dash:EC3_ExtensionType:2018';
491
452
  const source = [
@@ -1277,7 +1238,8 @@ describe('DashParser Manifest', () => {
1277
1238
  });
1278
1239
 
1279
1240
  it('handles bandwidth of 0 or missing', async () => {
1280
- // Regression test for https://github.com/google/shaka-player/issues/938
1241
+ // Regression test for
1242
+ // https://github.com/shaka-project/shaka-player/issues/938
1281
1243
  const source = [
1282
1244
  '<MPD minBufferTime="PT75S">',
1283
1245
  ' <Period id="1" duration="PT30S">',