@amazon/vinyl 2.0.4 → 3.0.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 (167) hide show
  1. package/dist/index.cjs +603 -317
  2. package/dist/index.cjs.map +4 -4
  3. package/dist/index.js +622 -329
  4. package/dist/index.js.map +4 -4
  5. package/dist/test/benchmark.es5.js +8 -5
  6. package/dist/test/benchmark.js +228 -0
  7. package/dist/test/benchmark.js.map +4 -4
  8. package/dist/test/integ.es5.js +182 -156
  9. package/dist/test/integ.js +1853 -796
  10. package/dist/test/integ.js.map +4 -4
  11. package/dist/types/current/index.d.ts +4 -0
  12. package/dist/types/current/index.d.ts.map +1 -1
  13. package/dist/types/current/index.js +4 -0
  14. package/dist/types/current/streaming/AudioOptions.d.ts +39 -0
  15. package/dist/types/current/streaming/AudioOptions.d.ts.map +1 -0
  16. package/dist/types/current/streaming/AudioOptions.js +15 -0
  17. package/dist/types/current/streaming/createDefaultMediaTimelineTransformer.d.ts +2 -2
  18. package/dist/types/current/streaming/createDefaultMediaTimelineTransformer.d.ts.map +1 -1
  19. package/dist/types/current/streaming/createDefaultMediaTimelineTransformer.js +5 -5
  20. package/dist/types/current/text/HtmlTextTrackRenderer.d.ts +60 -0
  21. package/dist/types/current/text/HtmlTextTrackRenderer.d.ts.map +1 -0
  22. package/dist/types/current/text/HtmlTextTrackRenderer.js +231 -0
  23. package/dist/types/current/text/SidecarTextTrackController.d.ts +65 -53
  24. package/dist/types/current/text/SidecarTextTrackController.d.ts.map +1 -1
  25. package/dist/types/current/text/SidecarTextTrackController.js +167 -154
  26. package/dist/types/current/text/SidecarTextTrackLoader.d.ts +5 -0
  27. package/dist/types/current/text/SidecarTextTrackLoader.d.ts.map +1 -1
  28. package/dist/types/current/text/SidecarTextTrackLoader.js +13 -7
  29. package/dist/types/current/text/TextTrack.d.ts +74 -20
  30. package/dist/types/current/text/TextTrack.d.ts.map +1 -1
  31. package/dist/types/current/text/TextTrack.js +20 -0
  32. package/dist/types/current/text/TextTrackRenderer.d.ts +24 -0
  33. package/dist/types/current/text/TextTrackRenderer.d.ts.map +1 -0
  34. package/dist/types/current/text/TextTrackRenderer.js +5 -0
  35. package/dist/types/current/text/mediaTextTrackProvider.d.ts +34 -0
  36. package/dist/types/current/text/mediaTextTrackProvider.d.ts.map +1 -0
  37. package/dist/types/current/text/mediaTextTrackProvider.js +42 -0
  38. package/dist/types/current/text/parseWebVtt.d.ts +16 -2
  39. package/dist/types/current/text/parseWebVtt.d.ts.map +1 -1
  40. package/dist/types/current/text/parseWebVtt.js +176 -48
  41. package/dist/types/current/text/pickPreferredTextTrack.d.ts +2 -1
  42. package/dist/types/current/text/pickPreferredTextTrack.d.ts.map +1 -1
  43. package/dist/types/current/text/pickPreferredTextTrack.js +6 -3
  44. package/dist/types/current/track/Track.d.ts +1 -1
  45. package/dist/types/current/track/dash/createDashFactories.d.ts +21 -10
  46. package/dist/types/current/track/dash/createDashFactories.d.ts.map +1 -1
  47. package/dist/types/current/track/dash/createDashFactories.js +9 -21
  48. package/dist/types/current/track/hls/createHlsFactories.d.ts +21 -10
  49. package/dist/types/current/track/hls/createHlsFactories.d.ts.map +1 -1
  50. package/dist/types/current/track/hls/createHlsFactories.js +9 -21
  51. package/dist/types/current/track/mse/MseTrack.d.ts +1 -2
  52. package/dist/types/current/track/mse/MseTrack.d.ts.map +1 -1
  53. package/dist/types/current/track/mse/MseTrack.js +3 -7
  54. package/dist/types/current/tsconfig.tsbuildinfo +1 -1
  55. package/dist/types/current/vinyl/VinylOptions.d.ts +18 -40
  56. package/dist/types/current/vinyl/VinylOptions.d.ts.map +1 -1
  57. package/dist/types/current/vinyl/VinylOptions.js +12 -11
  58. package/dist/types/current/vinyl/VinylPlayer.d.ts +0 -6
  59. package/dist/types/current/vinyl/VinylPlayer.d.ts.map +1 -1
  60. package/dist/types/current/vinyl/VinylPlayer.js +2 -23
  61. package/dist/types/current/vinyl/createVinylFactories.d.ts +32 -18
  62. package/dist/types/current/vinyl/createVinylFactories.d.ts.map +1 -1
  63. package/dist/types/current/vinyl/createVinylFactories.js +6 -0
  64. package/dist/types/ts3.7/index.d.ts +4 -0
  65. package/dist/types/ts3.7/streaming/AudioOptions.d.ts +39 -0
  66. package/dist/types/ts3.7/streaming/createDefaultMediaTimelineTransformer.d.ts +2 -2
  67. package/dist/types/ts3.7/text/HtmlTextTrackRenderer.d.ts +60 -0
  68. package/dist/types/ts3.7/text/SidecarTextTrackController.d.ts +65 -53
  69. package/dist/types/ts3.7/text/SidecarTextTrackLoader.d.ts +5 -0
  70. package/dist/types/ts3.7/text/TextTrack.d.ts +74 -20
  71. package/dist/types/ts3.7/text/TextTrackRenderer.d.ts +24 -0
  72. package/dist/types/ts3.7/text/mediaTextTrackProvider.d.ts +34 -0
  73. package/dist/types/ts3.7/text/parseWebVtt.d.ts +16 -2
  74. package/dist/types/ts3.7/text/pickPreferredTextTrack.d.ts +2 -1
  75. package/dist/types/ts3.7/track/Track.d.ts +1 -1
  76. package/dist/types/ts3.7/track/dash/createDashFactories.d.ts +21 -10
  77. package/dist/types/ts3.7/track/hls/createHlsFactories.d.ts +21 -10
  78. package/dist/types/ts3.7/track/mse/MseTrack.d.ts +1 -2
  79. package/dist/types/ts3.7/vinyl/VinylOptions.d.ts +18 -40
  80. package/dist/types/ts3.7/vinyl/VinylPlayer.d.ts +0 -6
  81. package/dist/types/ts3.7/vinyl/createVinylFactories.d.ts +32 -18
  82. package/dist/types/ts4.1/index.d.ts +4 -0
  83. package/dist/types/ts4.1/streaming/AudioOptions.d.ts +39 -0
  84. package/dist/types/ts4.1/streaming/createDefaultMediaTimelineTransformer.d.ts +2 -2
  85. package/dist/types/ts4.1/text/HtmlTextTrackRenderer.d.ts +60 -0
  86. package/dist/types/ts4.1/text/SidecarTextTrackController.d.ts +65 -53
  87. package/dist/types/ts4.1/text/SidecarTextTrackLoader.d.ts +5 -0
  88. package/dist/types/ts4.1/text/TextTrack.d.ts +74 -20
  89. package/dist/types/ts4.1/text/TextTrackRenderer.d.ts +24 -0
  90. package/dist/types/ts4.1/text/mediaTextTrackProvider.d.ts +34 -0
  91. package/dist/types/ts4.1/text/parseWebVtt.d.ts +16 -2
  92. package/dist/types/ts4.1/text/pickPreferredTextTrack.d.ts +2 -1
  93. package/dist/types/ts4.1/track/Track.d.ts +1 -1
  94. package/dist/types/ts4.1/track/dash/createDashFactories.d.ts +21 -10
  95. package/dist/types/ts4.1/track/hls/createHlsFactories.d.ts +21 -10
  96. package/dist/types/ts4.1/track/mse/MseTrack.d.ts +1 -2
  97. package/dist/types/ts4.1/vinyl/VinylOptions.d.ts +18 -40
  98. package/dist/types/ts4.1/vinyl/VinylPlayer.d.ts +0 -6
  99. package/dist/types/ts4.1/vinyl/createVinylFactories.d.ts +32 -18
  100. package/dist/types/ts4.7/index.d.ts +4 -0
  101. package/dist/types/ts4.7/streaming/AudioOptions.d.ts +39 -0
  102. package/dist/types/ts4.7/streaming/createDefaultMediaTimelineTransformer.d.ts +2 -2
  103. package/dist/types/ts4.7/text/HtmlTextTrackRenderer.d.ts +60 -0
  104. package/dist/types/ts4.7/text/SidecarTextTrackController.d.ts +65 -53
  105. package/dist/types/ts4.7/text/SidecarTextTrackLoader.d.ts +5 -0
  106. package/dist/types/ts4.7/text/TextTrack.d.ts +74 -20
  107. package/dist/types/ts4.7/text/TextTrackRenderer.d.ts +24 -0
  108. package/dist/types/ts4.7/text/mediaTextTrackProvider.d.ts +34 -0
  109. package/dist/types/ts4.7/text/parseWebVtt.d.ts +16 -2
  110. package/dist/types/ts4.7/text/pickPreferredTextTrack.d.ts +2 -1
  111. package/dist/types/ts4.7/track/Track.d.ts +1 -1
  112. package/dist/types/ts4.7/track/dash/createDashFactories.d.ts +21 -10
  113. package/dist/types/ts4.7/track/hls/createHlsFactories.d.ts +21 -10
  114. package/dist/types/ts4.7/track/mse/MseTrack.d.ts +1 -2
  115. package/dist/types/ts4.7/vinyl/VinylOptions.d.ts +18 -40
  116. package/dist/types/ts4.7/vinyl/VinylPlayer.d.ts +0 -6
  117. package/dist/types/ts4.7/vinyl/createVinylFactories.d.ts +32 -18
  118. package/dist/unit/types/current/index.d.ts +2 -0
  119. package/dist/unit/types/current/index.d.ts.map +1 -1
  120. package/dist/unit/types/current/index.js +2 -0
  121. package/dist/unit/types/current/streaming/MseTrack.test.js +13 -7
  122. package/dist/unit/types/current/streaming/createDefaultMediaTimelineTransformer.test.js +8 -4
  123. package/dist/unit/types/current/text/HtmlTextTrackRenderer.test.d.ts +2 -0
  124. package/dist/unit/types/current/text/HtmlTextTrackRenderer.test.d.ts.map +1 -0
  125. package/dist/unit/types/current/text/HtmlTextTrackRenderer.test.js +231 -0
  126. package/dist/unit/types/current/text/SidecarTextTrackController.test.js +432 -333
  127. package/dist/unit/types/current/text/SidecarTextTrackLoader.test.js +29 -0
  128. package/dist/unit/types/current/text/mediaTextTrackProvider.test.d.ts +2 -0
  129. package/dist/unit/types/current/text/mediaTextTrackProvider.test.d.ts.map +1 -0
  130. package/dist/unit/types/current/text/mediaTextTrackProvider.test.js +86 -0
  131. package/dist/unit/types/current/text/parseWebVtt.test.js +187 -6
  132. package/dist/unit/types/current/text/pickPreferredTextTrack.test.js +12 -1
  133. package/dist/unit/types/current/track/dash/createDashFactories.test.js +1 -2
  134. package/dist/unit/types/current/track/hls/buildHlsMediaTimeline.test.js +1 -2
  135. package/dist/unit/types/current/track/hls/createHlsFactories.test.js +1 -2
  136. package/dist/unit/types/current/tsconfig.tsbuildinfo +1 -1
  137. package/dist/unit/types/current/vinyl/VinylPlayerTextTracks.test.js +102 -177
  138. package/dist/unit/types/current/vinyl/createVinylFactories.test.js +2 -0
  139. package/dist/vinylTestUtil/index.js +14 -8
  140. package/dist/vinylTestUtil/index.js.map +2 -2
  141. package/dist/vinylTestUtil/types/current/mock/player/MockVinylPlayerDependencies.d.ts +3 -2
  142. package/dist/vinylTestUtil/types/current/mock/player/MockVinylPlayerDependencies.d.ts.map +1 -1
  143. package/dist/vinylTestUtil/types/current/mock/player/MockVinylPlayerDependencies.js +5 -2
  144. package/dist/vinylTestUtil/types/current/mock/text/MockTextTrackController.d.ts +3 -3
  145. package/dist/vinylTestUtil/types/current/mock/text/MockTextTrackController.d.ts.map +1 -1
  146. package/dist/vinylTestUtil/types/current/mock/text/MockTextTrackController.js +3 -3
  147. package/dist/vinylTestUtil/types/current/mock/track/dash/createMockDashDependencies.d.ts +1 -2
  148. package/dist/vinylTestUtil/types/current/mock/track/dash/createMockDashDependencies.d.ts.map +1 -1
  149. package/dist/vinylTestUtil/types/current/mock/track/dash/createMockDashDependencies.js +3 -2
  150. package/dist/vinylTestUtil/types/current/mock/track/hls/createMockHlsDependencies.d.ts +1 -2
  151. package/dist/vinylTestUtil/types/current/mock/track/hls/createMockHlsDependencies.d.ts.map +1 -1
  152. package/dist/vinylTestUtil/types/current/mock/track/hls/createMockHlsDependencies.js +3 -2
  153. package/dist/vinylTestUtil/types/current/tsconfig.tsbuildinfo +1 -1
  154. package/dist/vinylTestUtil/types/ts3.7/mock/player/MockVinylPlayerDependencies.d.ts +3 -2
  155. package/dist/vinylTestUtil/types/ts3.7/mock/text/MockTextTrackController.d.ts +3 -3
  156. package/dist/vinylTestUtil/types/ts3.7/mock/track/dash/createMockDashDependencies.d.ts +1 -2
  157. package/dist/vinylTestUtil/types/ts3.7/mock/track/hls/createMockHlsDependencies.d.ts +1 -2
  158. package/dist/vinylTestUtil/types/ts4.1/mock/player/MockVinylPlayerDependencies.d.ts +3 -2
  159. package/dist/vinylTestUtil/types/ts4.1/mock/text/MockTextTrackController.d.ts +3 -3
  160. package/dist/vinylTestUtil/types/ts4.1/mock/track/dash/createMockDashDependencies.d.ts +1 -2
  161. package/dist/vinylTestUtil/types/ts4.1/mock/track/hls/createMockHlsDependencies.d.ts +1 -2
  162. package/dist/vinylTestUtil/types/ts4.7/mock/player/MockVinylPlayerDependencies.d.ts +3 -2
  163. package/dist/vinylTestUtil/types/ts4.7/mock/text/MockTextTrackController.d.ts +3 -3
  164. package/dist/vinylTestUtil/types/ts4.7/mock/track/dash/createMockDashDependencies.d.ts +1 -2
  165. package/dist/vinylTestUtil/types/ts4.7/mock/track/hls/createMockHlsDependencies.d.ts +1 -2
  166. package/docs/USAGE.md +82 -31
  167. package/package.json +9 -9
@@ -530,7 +530,8 @@ function createDashProtectionXmlRules(contentProtectionRules){var withProtection
530
530
  var PLAY_READY_NAMESPACE_URI="urn:microsoft:playready";// ../vinyl-mpd-parser/src/manifest/ext/drm/playreadyXmlRules.ts
531
531
  var playreadyXmlRules={pro:element({_content:charactersString},{namespaceUri:PLAY_READY_NAMESPACE_URI})};// ../vinyl-mpd-parser/src/manifest/dashParser.ts
532
532
  var dashDrmRules=mergeXmlRules(dashManifestXmlRules(),createDashProtectionXmlRules(cencXmlRules),createDashProtectionXmlRules(playreadyXmlRules));var dashDrmRulesMapped=mapXmlRules(dashDrmRules);function dashManifestHandler(){return new ParseXmlHandlerImpl(dashDrmRulesMapped)}function parseDashManifest(manifest){return parseXml(manifest,dashManifestHandler())}// test/vinylTestUtil/assets/dash_segmentListMediaRange.ts
533
- var dash_segmentListMediaRange="<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<MPD minBufferTime=\"PT2S\" type=\"static\" mediaPresentationDuration=\"PT400.0133056640625S\" profiles=\"urn:mpeg:dash:profile:isoff-on-demand:2011\" xmlns=\"urn:mpeg:dash:schema:mpd:2011\" xmlns:amz-music=\"urn:amazon:music:drm:2019\" xmlns:cenc=\"urn:mpeg:cenc:2013\" xmlns:mspr=\"urn:microsoft:playready\">\n <Period id=\"0\">\n <AdaptationSet id=\"1\" contentType=\"audio\" selectionPriority=\"2000\">\n <ContentProtection schemeIdUri=\"urn:mpeg:dash:mp4protection:2011\" cenc:default_KID=\"53443d2c-a548-037d-dfca-b6873a3b16a7\" value=\"cenc\"/>\n <ContentProtection schemeIdUri=\"urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed\">\n <cenc:pssh>AAAAXXBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAAD0SEFNEPSylSAN938q2hzo7FqcaC0FtYXpvbk11c2ljIhxjaWQ6VTBROUxLVklBMzNmeXJhSE9qc1dwdz09</cenc:pssh>\n </ContentProtection>\n <SupplementalProperty schemeIdUri=\"urn:mpeg:mpegB:cicp:ProgramLoudness\" value=\"-13.5 LUFS\"/>\n <SupplementalProperty schemeIdUri=\"amz-music:trackType\" value=\"HD\"/>\n <SupplementalProperty schemeIdUri=\"urn:mpeg:dash:adaptation-set-switching:2016\" value=\"2\"/>\n <SupplementalProperty schemeIdUri=\"urn:mpeg:mpegB:cicp:AnchorLoudness\" value=\"-11.7 LUFS\"/>\n <Representation id=\"1\" qualityRanking=\"4\" codecs=\"flac\" audioSamplingRate=\"44100\" bandwidth=\"1021104\" mimeType=\"audio/mp4\">\n <AudioChannelConfiguration schemeIdUri=\"urn:mpeg:dash:23003:3:audio_channel_configuration:2011\" value=\"2\"/>\n <SupplementalProperty schemeIdUri=\"amz-music:bitDepth\" value=\"16\"/>\n <BaseURL>https://d17vo8z6jop21h.cloudfront.net/94bd1ece-d200000391583662/a3ce7553-e9a3-3ca6-8fda-8f354b8cee0f.mp4?r=2e86bfd7-93aa-48a0-9d32-7bee6d2897a4&amp;rs=NA&amp;mt=US&amp;ql=HD_44&amp;dtype=A16ZV8BU3SN1N3</BaseURL>\n <SegmentList timescale=\"44100\" duration=\"441000\">\n <Initialization range=\"0-1067\"/>\n <SegmentURL mediaRange=\"1580-1124387\"/>\n <SegmentURL mediaRange=\"1124388-2301681\"/>\n <SegmentURL mediaRange=\"2301682-3413884\"/>\n <SegmentURL mediaRange=\"3413885-4563668\"/>\n <SegmentURL mediaRange=\"4563669-5789595\"/>\n <SegmentURL mediaRange=\"5789596-7027203\"/>\n <SegmentURL mediaRange=\"7027204-8258589\"/>\n <SegmentURL mediaRange=\"8258590-9476689\"/>\n <SegmentURL mediaRange=\"9476690-10663879\"/>\n <SegmentURL mediaRange=\"10663880-11801656\"/>\n <SegmentURL mediaRange=\"11801657-13028295\"/>\n <SegmentURL mediaRange=\"13028296-14259035\"/>\n <SegmentURL mediaRange=\"14259036-15501034\"/>\n <SegmentURL mediaRange=\"15501035-16715074\"/>\n <SegmentURL mediaRange=\"16715075-17945696\"/>\n <SegmentURL mediaRange=\"17945697-19181760\"/>\n <SegmentURL mediaRange=\"19181761-20430664\"/>\n <SegmentURL mediaRange=\"20430665-21668186\"/>\n <SegmentURL mediaRange=\"21668187-22889588\"/>\n <SegmentURL mediaRange=\"22889589-24105876\"/>\n <SegmentURL mediaRange=\"24105877-25286931\"/>\n <SegmentURL mediaRange=\"25286932-26474293\"/>\n <SegmentURL mediaRange=\"26474294-27717336\"/>\n <SegmentURL mediaRange=\"27717337-28944000\"/>\n <SegmentURL mediaRange=\"28944001-30217943\"/>\n <SegmentURL mediaRange=\"30217944-31494322\"/>\n <SegmentURL mediaRange=\"31494323-32753722\"/>\n <SegmentURL mediaRange=\"32753723-33819438\"/>\n <SegmentURL mediaRange=\"33819439-34871800\"/>\n <SegmentURL mediaRange=\"34871801-35987451\"/>\n <SegmentURL mediaRange=\"35987452-37198633\"/>\n <SegmentURL mediaRange=\"37198634-38400513\"/>\n <SegmentURL mediaRange=\"38400514-39590378\"/>\n <SegmentURL mediaRange=\"39590379-40775418\"/>\n <SegmentURL mediaRange=\"40775419-42023162\"/>\n <SegmentURL mediaRange=\"42023163-43262782\"/>\n <SegmentURL mediaRange=\"43262783-44466388\"/>\n <SegmentURL mediaRange=\"44466389-45664349\"/>\n <SegmentURL mediaRange=\"45664350-46838625\"/>\n <SegmentURL mediaRange=\"46838626-47421889\"/>\n </SegmentList>\n </Representation>\n <Representation id=\"2\" qualityRanking=\"3\" codecs=\"flac\" audioSamplingRate=\"48000\" bandwidth=\"1855801\" mimeType=\"audio/mp4\">\n <AudioChannelConfiguration schemeIdUri=\"urn:mpeg:dash:23003:3:audio_channel_configuration:2011\" value=\"2\"/>\n <SupplementalProperty schemeIdUri=\"amz-music:bitDepth\" value=\"24\"/>\n <BaseURL>https://d17vo8z6jop21h.cloudfront.net/94bd1ece-d200000391583662/f5b706c9-5892-3a17-9d01-4da362cfad35.mp4?r=2e86bfd7-93aa-48a0-9d32-7bee6d2897a4&amp;rs=NA&amp;mt=US&amp;ql=UHD_48&amp;dtype=A16ZV8BU3SN1N3</BaseURL>\n <SegmentList timescale=\"48000\" duration=\"480000\">\n <Initialization range=\"0-1067\"/>\n <SegmentURL mediaRange=\"1580-2140301\"/>\n <SegmentURL mediaRange=\"2140302-4352961\"/>\n <SegmentURL mediaRange=\"4352962-6499834\"/>\n <SegmentURL mediaRange=\"6499835-8687556\"/>\n <SegmentURL mediaRange=\"8687557-10955471\"/>\n <SegmentURL mediaRange=\"10955472-13235819\"/>\n <SegmentURL mediaRange=\"13235820-15509496\"/>\n <SegmentURL mediaRange=\"15509497-17768731\"/>\n <SegmentURL mediaRange=\"17768732-19993372\"/>\n <SegmentURL mediaRange=\"19993373-22167125\"/>\n <SegmentURL mediaRange=\"22167126-24434254\"/>\n <SegmentURL mediaRange=\"24434255-26706557\"/>\n <SegmentURL mediaRange=\"26706558-28990196\"/>\n <SegmentURL mediaRange=\"28990197-31245239\"/>\n <SegmentURL mediaRange=\"31245240-33516976\"/>\n <SegmentURL mediaRange=\"33516977-35793411\"/>\n <SegmentURL mediaRange=\"35793412-38083225\"/>\n <SegmentURL mediaRange=\"38083226-40361780\"/>\n <SegmentURL mediaRange=\"40361781-42623154\"/>\n <SegmentURL mediaRange=\"42623155-44879987\"/>\n <SegmentURL mediaRange=\"44879988-47098315\"/>\n <SegmentURL mediaRange=\"47098316-49322904\"/>\n <SegmentURL mediaRange=\"49322905-51607367\"/>\n <SegmentURL mediaRange=\"51607368-53874862\"/>\n <SegmentURL mediaRange=\"53874863-56192866\"/>\n <SegmentURL mediaRange=\"56192867-58512617\"/>\n <SegmentURL mediaRange=\"58512618-60815181\"/>\n <SegmentURL mediaRange=\"60815182-62914181\"/>\n <SegmentURL mediaRange=\"62914182-65000611\"/>\n <SegmentURL mediaRange=\"65000612-67150839\"/>\n <SegmentURL mediaRange=\"67150840-69402495\"/>\n <SegmentURL mediaRange=\"69402496-71643660\"/>\n <SegmentURL mediaRange=\"71643661-73870974\"/>\n <SegmentURL mediaRange=\"73870975-76093618\"/>\n <SegmentURL mediaRange=\"76093619-78383457\"/>\n <SegmentURL mediaRange=\"78383458-80665083\"/>\n <SegmentURL mediaRange=\"80665084-82909593\"/>\n <SegmentURL mediaRange=\"82909594-85145972\"/>\n <SegmentURL mediaRange=\"85145973-87356513\"/>\n <SegmentURL mediaRange=\"87356514-88804457\"/>\n </SegmentList>\n </Representation>\n <Representation id=\"3\" qualityRanking=\"2\" codecs=\"flac\" audioSamplingRate=\"96000\" bandwidth=\"3278164\" mimeType=\"audio/mp4\">\n <AudioChannelConfiguration schemeIdUri=\"urn:mpeg:dash:23003:3:audio_channel_configuration:2011\" value=\"2\"/>\n <SupplementalProperty schemeIdUri=\"amz-music:bitDepth\" value=\"24\"/>\n <BaseURL>https://d17vo8z6jop21h.cloudfront.net/94bd1ece-d200000391583662/02b134c4-8144-3ab1-b125-5af2d0133d5b.mp4?r=2e86bfd7-93aa-48a0-9d32-7bee6d2897a4&amp;rs=NA&amp;mt=US&amp;ql=UHD_96&amp;dtype=A16ZV8BU3SN1N3</BaseURL>\n <SegmentList timescale=\"96000\" duration=\"960000\">\n <Initialization range=\"0-1067\"/>\n <SegmentURL mediaRange=\"1580-3813567\"/>\n <SegmentURL mediaRange=\"3813568-7746339\"/>\n <SegmentURL mediaRange=\"7746340-11599579\"/>\n <SegmentURL mediaRange=\"11599580-15505023\"/>\n <SegmentURL mediaRange=\"15505024-19519493\"/>\n <SegmentURL mediaRange=\"19519494-23556777\"/>\n <SegmentURL mediaRange=\"23556778-27581158\"/>\n <SegmentURL mediaRange=\"27581159-31586807\"/>\n <SegmentURL mediaRange=\"31586808-35549718\"/>\n <SegmentURL mediaRange=\"35549719-39435585\"/>\n <SegmentURL mediaRange=\"39435586-43443650\"/>\n <SegmentURL mediaRange=\"43443651-47467685\"/>\n <SegmentURL mediaRange=\"47467686-51498910\"/>\n <SegmentURL mediaRange=\"51498911-55496614\"/>\n <SegmentURL mediaRange=\"55496615-59513566\"/>\n <SegmentURL mediaRange=\"59513567-63538385\"/>\n <SegmentURL mediaRange=\"63538386-67582593\"/>\n <SegmentURL mediaRange=\"67582594-71608871\"/>\n <SegmentURL mediaRange=\"71608872-75612860\"/>\n <SegmentURL mediaRange=\"75612861-79601033\"/>\n <SegmentURL mediaRange=\"79601034-83549776\"/>\n <SegmentURL mediaRange=\"83549777-87488907\"/>\n <SegmentURL mediaRange=\"87488908-91534801\"/>\n <SegmentURL mediaRange=\"91534802-95552040\"/>\n <SegmentURL mediaRange=\"95552041-99649744\"/>\n <SegmentURL mediaRange=\"99649745-103743373\"/>\n <SegmentURL mediaRange=\"103743374-107815594\"/>\n <SegmentURL mediaRange=\"107815595-111613915\"/>\n <SegmentURL mediaRange=\"111613916-115390443\"/>\n <SegmentURL mediaRange=\"115390444-119249732\"/>\n <SegmentURL mediaRange=\"119249733-123233807\"/>\n <SegmentURL mediaRange=\"123233808-127209398\"/>\n <SegmentURL mediaRange=\"127209399-131167116\"/>\n <SegmentURL mediaRange=\"131167117-135119879\"/>\n <SegmentURL mediaRange=\"135119880-139163685\"/>\n <SegmentURL mediaRange=\"139163686-143201079\"/>\n <SegmentURL mediaRange=\"143201080-147195194\"/>\n <SegmentURL mediaRange=\"147195195-151164220\"/>\n <SegmentURL mediaRange=\"151164221-155096800\"/>\n <SegmentURL mediaRange=\"155096801-157757393\"/>\n </SegmentList>\n </Representation>\n <Representation id=\"4\" qualityRanking=\"1\" codecs=\"flac\" audioSamplingRate=\"192000\" bandwidth=\"5666448\" mimeType=\"audio/mp4\">\n <AudioChannelConfiguration schemeIdUri=\"urn:mpeg:dash:23003:3:audio_channel_configuration:2011\" value=\"2\"/>\n <SupplementalProperty schemeIdUri=\"amz-music:bitDepth\" value=\"24\"/>\n <BaseURL>https://d17vo8z6jop21h.cloudfront.net/94bd1ece-d200000391583662/edf9f9cb-46ce-33bd-96e1-8456547fbef4.mp4?r=2e86bfd7-93aa-48a0-9d32-7bee6d2897a4&amp;rs=NA&amp;mt=US&amp;ql=UHD_192&amp;dtype=A16ZV8BU3SN1N3</BaseURL>\n <SegmentList timescale=\"192000\" duration=\"1920000\">\n <Initialization range=\"0-1067\"/>\n <SegmentURL mediaRange=\"1580-6720450\"/>\n <SegmentURL mediaRange=\"6720451-13610816\"/>\n <SegmentURL mediaRange=\"13610817-20415282\"/>\n <SegmentURL mediaRange=\"20415283-27272412\"/>\n <SegmentURL mediaRange=\"27272413-34250251\"/>\n <SegmentURL mediaRange=\"34250252-41260291\"/>\n <SegmentURL mediaRange=\"41260292-48255248\"/>\n <SegmentURL mediaRange=\"48255249-55224355\"/>\n <SegmentURL mediaRange=\"55224356-62157463\"/>\n <SegmentURL mediaRange=\"62157464-68996670\"/>\n <SegmentURL mediaRange=\"68996671-75970335\"/>\n <SegmentURL mediaRange=\"75970336-82964531\"/>\n <SegmentURL mediaRange=\"82964532-89965755\"/>\n <SegmentURL mediaRange=\"89965756-96928368\"/>\n <SegmentURL mediaRange=\"96928369-103911265\"/>\n <SegmentURL mediaRange=\"103911266-110903999\"/>\n <SegmentURL mediaRange=\"110904000-117921608\"/>\n <SegmentURL mediaRange=\"117921609-124920837\"/>\n <SegmentURL mediaRange=\"124920838-131897214\"/>\n <SegmentURL mediaRange=\"131897215-138848614\"/>\n <SegmentURL mediaRange=\"138848615-145764349\"/>\n <SegmentURL mediaRange=\"145764350-152655256\"/>\n <SegmentURL mediaRange=\"152655257-159680382\"/>\n <SegmentURL mediaRange=\"159680383-166667521\"/>\n <SegmentURL mediaRange=\"166667522-173750581\"/>\n <SegmentURL mediaRange=\"173750582-180827932\"/>\n <SegmentURL mediaRange=\"180827933-187877145\"/>\n <SegmentURL mediaRange=\"187877146-194626820\"/>\n <SegmentURL mediaRange=\"194626821-201345524\"/>\n <SegmentURL mediaRange=\"201345525-208145573\"/>\n <SegmentURL mediaRange=\"208145574-215088653\"/>\n <SegmentURL mediaRange=\"215088654-222022478\"/>\n <SegmentURL mediaRange=\"222022479-228934595\"/>\n <SegmentURL mediaRange=\"228934596-235844464\"/>\n <SegmentURL mediaRange=\"235844465-242852767\"/>\n <SegmentURL mediaRange=\"242852768-249863893\"/>\n <SegmentURL mediaRange=\"249863894-256824103\"/>\n <SegmentURL mediaRange=\"256824104-263749124\"/>\n <SegmentURL mediaRange=\"263749125-270634182\"/>\n <SegmentURL mediaRange=\"270634183-275673081\"/>\n </SegmentList>\n </Representation>\n </AdaptationSet>\n <AdaptationSet id=\"2\" contentType=\"audio\" selectionPriority=\"1000\">\n <ContentProtection schemeIdUri=\"urn:mpeg:dash:mp4protection:2011\" cenc:default_KID=\"f65d52c1-4de5-e5b6-7296-2f48eddf7378\" value=\"cenc\"/>\n <ContentProtection schemeIdUri=\"urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed\">\n <cenc:pssh>AAAAXXBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAAD0SEPZdUsFN5eW2cpYvSO3fc3gaC0FtYXpvbk11c2ljIhxjaWQ6OWwxU3dVM2w1Ylp5bGk5STdkOXplQT09</cenc:pssh>\n </ContentProtection>\n <SupplementalProperty schemeIdUri=\"urn:mpeg:mpegB:cicp:ProgramLoudness\" value=\"-13.5 LUFS\"/>\n <SupplementalProperty schemeIdUri=\"amz-music:trackType\" value=\"SD\"/>\n <SupplementalProperty schemeIdUri=\"urn:mpeg:dash:adaptation-set-switching:2016\" value=\"1\"/>\n <SupplementalProperty schemeIdUri=\"urn:mpeg:mpegB:cicp:AnchorLoudness\" value=\"-11.7 LUFS\"/>\n <Representation id=\"5\" qualityRanking=\"3\" codecs=\"opus\" audioSamplingRate=\"48000\" bandwidth=\"52950\" mimeType=\"audio/mp4\">\n <AudioChannelConfiguration schemeIdUri=\"urn:mpeg:dash:23003:3:audio_channel_configuration:2011\" value=\"2\"/>\n <BaseURL>https://d17vo8z6jop21h.cloudfront.net/94bd1ece-d200000391583662/7e2d628d-7666-3ad5-a9df-8ba4e1c6391c.mp4?r=2e86bfd7-93aa-48a0-9d32-7bee6d2897a4&amp;rs=NA&amp;mt=US&amp;ql=SD_LOW&amp;dtype=A16ZV8BU3SN1N3</BaseURL>\n <SegmentList timescale=\"48000\" duration=\"480000\">\n <Initialization range=\"0-1031\"/>\n <SegmentURL mediaRange=\"1544-61799\"/>\n <SegmentURL mediaRange=\"61800-121935\"/>\n <SegmentURL mediaRange=\"121936-182071\"/>\n <SegmentURL mediaRange=\"182072-246260\"/>\n <SegmentURL mediaRange=\"246261-310449\"/>\n <SegmentURL mediaRange=\"310450-374638\"/>\n <SegmentURL mediaRange=\"374639-438827\"/>\n <SegmentURL mediaRange=\"438828-503016\"/>\n <SegmentURL mediaRange=\"503017-567205\"/>\n <SegmentURL mediaRange=\"567206-631394\"/>\n <SegmentURL mediaRange=\"631395-695583\"/>\n <SegmentURL mediaRange=\"695584-759772\"/>\n <SegmentURL mediaRange=\"759773-823961\"/>\n <SegmentURL mediaRange=\"823962-888150\"/>\n <SegmentURL mediaRange=\"888151-952339\"/>\n <SegmentURL mediaRange=\"952340-1016528\"/>\n <SegmentURL mediaRange=\"1016529-1080717\"/>\n <SegmentURL mediaRange=\"1080718-1144906\"/>\n <SegmentURL mediaRange=\"1144907-1209095\"/>\n <SegmentURL mediaRange=\"1209096-1273284\"/>\n <SegmentURL mediaRange=\"1273285-1337473\"/>\n <SegmentURL mediaRange=\"1337474-1401662\"/>\n <SegmentURL mediaRange=\"1401663-1465851\"/>\n <SegmentURL mediaRange=\"1465852-1530040\"/>\n <SegmentURL mediaRange=\"1530041-1594229\"/>\n <SegmentURL mediaRange=\"1594230-1658418\"/>\n <SegmentURL mediaRange=\"1658419-1722607\"/>\n <SegmentURL mediaRange=\"1722608-1786796\"/>\n <SegmentURL mediaRange=\"1786797-1850985\"/>\n <SegmentURL mediaRange=\"1850986-1915174\"/>\n <SegmentURL mediaRange=\"1915175-1979363\"/>\n <SegmentURL mediaRange=\"1979364-2043552\"/>\n <SegmentURL mediaRange=\"2043553-2107741\"/>\n <SegmentURL mediaRange=\"2107742-2171930\"/>\n <SegmentURL mediaRange=\"2171931-2236119\"/>\n <SegmentURL mediaRange=\"2236120-2300308\"/>\n <SegmentURL mediaRange=\"2300309-2364497\"/>\n <SegmentURL mediaRange=\"2364498-2428686\"/>\n <SegmentURL mediaRange=\"2428687-2492875\"/>\n <SegmentURL mediaRange=\"2492876-2559060\"/>\n </SegmentList>\n </Representation>\n <Representation id=\"6\" qualityRanking=\"2\" codecs=\"opus\" audioSamplingRate=\"48000\" bandwidth=\"196953\" mimeType=\"audio/mp4\">\n <AudioChannelConfiguration schemeIdUri=\"urn:mpeg:dash:23003:3:audio_channel_configuration:2011\" value=\"2\"/>\n <BaseURL>https://d17vo8z6jop21h.cloudfront.net/94bd1ece-d200000391583662/8e453bd1-9428-30fa-940f-fa85911368c2.mp4?r=2e86bfd7-93aa-48a0-9d32-7bee6d2897a4&amp;rs=NA&amp;mt=US&amp;ql=SD_MEDIUM&amp;dtype=A16ZV8BU3SN1N3</BaseURL>\n <SegmentList timescale=\"48000\" duration=\"480000\">\n <Initialization range=\"0-1031\"/>\n <SegmentURL mediaRange=\"1544-242159\"/>\n <SegmentURL mediaRange=\"242160-482295\"/>\n <SegmentURL mediaRange=\"482296-722431\"/>\n <SegmentURL mediaRange=\"722432-966620\"/>\n <SegmentURL mediaRange=\"966621-1210809\"/>\n <SegmentURL mediaRange=\"1210810-1454998\"/>\n <SegmentURL mediaRange=\"1454999-1699187\"/>\n <SegmentURL mediaRange=\"1699188-1943376\"/>\n <SegmentURL mediaRange=\"1943377-2187565\"/>\n <SegmentURL mediaRange=\"2187566-2431754\"/>\n <SegmentURL mediaRange=\"2431755-2675943\"/>\n <SegmentURL mediaRange=\"2675944-2920132\"/>\n <SegmentURL mediaRange=\"2920133-3164321\"/>\n <SegmentURL mediaRange=\"3164322-3408510\"/>\n <SegmentURL mediaRange=\"3408511-3652699\"/>\n <SegmentURL mediaRange=\"3652700-3896888\"/>\n <SegmentURL mediaRange=\"3896889-4141077\"/>\n <SegmentURL mediaRange=\"4141078-4385266\"/>\n <SegmentURL mediaRange=\"4385267-4629455\"/>\n <SegmentURL mediaRange=\"4629456-4873644\"/>\n <SegmentURL mediaRange=\"4873645-5117833\"/>\n <SegmentURL mediaRange=\"5117834-5362022\"/>\n <SegmentURL mediaRange=\"5362023-5606211\"/>\n <SegmentURL mediaRange=\"5606212-5850400\"/>\n <SegmentURL mediaRange=\"5850401-6094589\"/>\n <SegmentURL mediaRange=\"6094590-6338778\"/>\n <SegmentURL mediaRange=\"6338779-6582967\"/>\n <SegmentURL mediaRange=\"6582968-6827156\"/>\n <SegmentURL mediaRange=\"6827157-7071345\"/>\n <SegmentURL mediaRange=\"7071346-7315534\"/>\n <SegmentURL mediaRange=\"7315535-7559723\"/>\n <SegmentURL mediaRange=\"7559724-7803912\"/>\n <SegmentURL mediaRange=\"7803913-8048101\"/>\n <SegmentURL mediaRange=\"8048102-8292290\"/>\n <SegmentURL mediaRange=\"8292291-8536479\"/>\n <SegmentURL mediaRange=\"8536480-8780668\"/>\n <SegmentURL mediaRange=\"8780669-9024857\"/>\n <SegmentURL mediaRange=\"9024858-9269046\"/>\n <SegmentURL mediaRange=\"9269047-9513235\"/>\n <SegmentURL mediaRange=\"9513236-9759420\"/>\n </SegmentList>\n </Representation>\n <Representation id=\"7\" qualityRanking=\"1\" codecs=\"opus\" audioSamplingRate=\"48000\" bandwidth=\"324955\" mimeType=\"audio/mp4\">\n <AudioChannelConfiguration schemeIdUri=\"urn:mpeg:dash:23003:3:audio_channel_configuration:2011\" value=\"2\"/>\n <BaseURL>https://d17vo8z6jop21h.cloudfront.net/94bd1ece-d200000391583662/40ba3a06-d285-3130-838f-0c1508c1d18b.mp4?r=2e86bfd7-93aa-48a0-9d32-7bee6d2897a4&amp;rs=NA&amp;mt=US&amp;ql=SD_HIGH&amp;dtype=A16ZV8BU3SN1N3</BaseURL>\n <SegmentList timescale=\"48000\" duration=\"480000\">\n <Initialization range=\"0-1031\"/>\n <SegmentURL mediaRange=\"1544-402479\"/>\n <SegmentURL mediaRange=\"402480-802615\"/>\n <SegmentURL mediaRange=\"802616-1202751\"/>\n <SegmentURL mediaRange=\"1202752-1606940\"/>\n <SegmentURL mediaRange=\"1606941-2011129\"/>\n <SegmentURL mediaRange=\"2011130-2415318\"/>\n <SegmentURL mediaRange=\"2415319-2819507\"/>\n <SegmentURL mediaRange=\"2819508-3223696\"/>\n <SegmentURL mediaRange=\"3223697-3627885\"/>\n <SegmentURL mediaRange=\"3627886-4032074\"/>\n <SegmentURL mediaRange=\"4032075-4436263\"/>\n <SegmentURL mediaRange=\"4436264-4840452\"/>\n <SegmentURL mediaRange=\"4840453-5244641\"/>\n <SegmentURL mediaRange=\"5244642-5648830\"/>\n <SegmentURL mediaRange=\"5648831-6053019\"/>\n <SegmentURL mediaRange=\"6053020-6457208\"/>\n <SegmentURL mediaRange=\"6457209-6861397\"/>\n <SegmentURL mediaRange=\"6861398-7265586\"/>\n <SegmentURL mediaRange=\"7265587-7669775\"/>\n <SegmentURL mediaRange=\"7669776-8073964\"/>\n <SegmentURL mediaRange=\"8073965-8478153\"/>\n <SegmentURL mediaRange=\"8478154-8882342\"/>\n <SegmentURL mediaRange=\"8882343-9286531\"/>\n <SegmentURL mediaRange=\"9286532-9690720\"/>\n <SegmentURL mediaRange=\"9690721-10094909\"/>\n <SegmentURL mediaRange=\"10094910-10499098\"/>\n <SegmentURL mediaRange=\"10499099-10903287\"/>\n <SegmentURL mediaRange=\"10903288-11307476\"/>\n <SegmentURL mediaRange=\"11307477-11711665\"/>\n <SegmentURL mediaRange=\"11711666-12115854\"/>\n <SegmentURL mediaRange=\"12115855-12520043\"/>\n <SegmentURL mediaRange=\"12520044-12924232\"/>\n <SegmentURL mediaRange=\"12924233-13328421\"/>\n <SegmentURL mediaRange=\"13328422-13732610\"/>\n <SegmentURL mediaRange=\"13732611-14136799\"/>\n <SegmentURL mediaRange=\"14136800-14540988\"/>\n <SegmentURL mediaRange=\"14540989-14945177\"/>\n <SegmentURL mediaRange=\"14945178-15349366\"/>\n <SegmentURL mediaRange=\"15349367-15753555\"/>\n <SegmentURL mediaRange=\"15753556-16159740\"/>\n </SegmentList>\n </Representation>\n </AdaptationSet>\n <AdaptationSet id=\"3\" contentType=\"audio\" selectionPriority=\"500\">\n <ContentProtection schemeIdUri=\"urn:mpeg:dash:mp4protection:2011\" cenc:default_KID=\"4e4c6e3a-d760-ffd5-78b0-3824890da09d\" value=\"cenc\"/>\n <ContentProtection schemeIdUri=\"urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed\">\n <cenc:pssh>AAAAXXBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAAD0SEE5MbjrXYP/VeLA4JIkNoJ0aC0FtYXpvbk11c2ljIhxjaWQ6VGt4dU90ZGcvOVY0c0Rna2lRMmduUT09</cenc:pssh>\n </ContentProtection>\n <SupplementalProperty schemeIdUri=\"urn:mpeg:mpegB:cicp:ProgramLoudness\" value=\"-13.5 LUFS\"/>\n <SupplementalProperty schemeIdUri=\"amz-music:trackType\" value=\"LD\"/>\n <SupplementalProperty schemeIdUri=\"urn:mpeg:mpegB:cicp:AnchorLoudness\" value=\"-11.7 LUFS\"/>\n <Representation id=\"8\" qualityRanking=\"2000\" codecs=\"opus\" audioSamplingRate=\"48000\" bandwidth=\"52950\" mimeType=\"audio/mp4\">\n <AudioChannelConfiguration schemeIdUri=\"urn:mpeg:dash:23003:3:audio_channel_configuration:2011\" value=\"2\"/>\n <BaseURL>https://d17vo8z6jop21h.cloudfront.net/94bd1ece-d200000391583662/748096ab-6991-368b-b9ca-5477bf90ba5a.mp4?r=2e86bfd7-93aa-48a0-9d32-7bee6d2897a4&amp;rs=NA&amp;mt=US&amp;ql=LD_LOW&amp;dtype=A16ZV8BU3SN1N3</BaseURL>\n <SegmentList timescale=\"48000\" duration=\"480000\">\n <Initialization range=\"0-1031\"/>\n <SegmentURL mediaRange=\"1544-61799\"/>\n <SegmentURL mediaRange=\"61800-121935\"/>\n <SegmentURL mediaRange=\"121936-182071\"/>\n <SegmentURL mediaRange=\"182072-246260\"/>\n <SegmentURL mediaRange=\"246261-310449\"/>\n <SegmentURL mediaRange=\"310450-374638\"/>\n <SegmentURL mediaRange=\"374639-438827\"/>\n <SegmentURL mediaRange=\"438828-503016\"/>\n <SegmentURL mediaRange=\"503017-567205\"/>\n <SegmentURL mediaRange=\"567206-631394\"/>\n <SegmentURL mediaRange=\"631395-695583\"/>\n <SegmentURL mediaRange=\"695584-759772\"/>\n <SegmentURL mediaRange=\"759773-823961\"/>\n <SegmentURL mediaRange=\"823962-888150\"/>\n <SegmentURL mediaRange=\"888151-952339\"/>\n <SegmentURL mediaRange=\"952340-1016528\"/>\n <SegmentURL mediaRange=\"1016529-1080717\"/>\n <SegmentURL mediaRange=\"1080718-1144906\"/>\n <SegmentURL mediaRange=\"1144907-1209095\"/>\n <SegmentURL mediaRange=\"1209096-1273284\"/>\n <SegmentURL mediaRange=\"1273285-1337473\"/>\n <SegmentURL mediaRange=\"1337474-1401662\"/>\n <SegmentURL mediaRange=\"1401663-1465851\"/>\n <SegmentURL mediaRange=\"1465852-1530040\"/>\n <SegmentURL mediaRange=\"1530041-1594229\"/>\n <SegmentURL mediaRange=\"1594230-1658418\"/>\n <SegmentURL mediaRange=\"1658419-1722607\"/>\n <SegmentURL mediaRange=\"1722608-1786796\"/>\n <SegmentURL mediaRange=\"1786797-1850985\"/>\n <SegmentURL mediaRange=\"1850986-1915174\"/>\n <SegmentURL mediaRange=\"1915175-1979363\"/>\n <SegmentURL mediaRange=\"1979364-2043552\"/>\n <SegmentURL mediaRange=\"2043553-2107741\"/>\n <SegmentURL mediaRange=\"2107742-2171930\"/>\n <SegmentURL mediaRange=\"2171931-2236119\"/>\n <SegmentURL mediaRange=\"2236120-2300308\"/>\n <SegmentURL mediaRange=\"2300309-2364497\"/>\n <SegmentURL mediaRange=\"2364498-2428686\"/>\n <SegmentURL mediaRange=\"2428687-2492875\"/>\n <SegmentURL mediaRange=\"2492876-2559060\"/>\n </SegmentList>\n </Representation>\n <Representation id=\"9\" qualityRanking=\"1000\" codecs=\"opus\" audioSamplingRate=\"48000\" bandwidth=\"164952\" mimeType=\"audio/mp4\">\n <AudioChannelConfiguration schemeIdUri=\"urn:mpeg:dash:23003:3:audio_channel_configuration:2011\" value=\"2\"/>\n <BaseURL>https://d17vo8z6jop21h.cloudfront.net/94bd1ece-d200000391583662/8be307d6-71ea-3111-a869-40720e08a6f9.mp4?r=2e86bfd7-93aa-48a0-9d32-7bee6d2897a4&amp;rs=NA&amp;mt=US&amp;ql=LD_MEDIUM&amp;dtype=A16ZV8BU3SN1N3</BaseURL>\n <SegmentList timescale=\"48000\" duration=\"480000\">\n <Initialization range=\"0-1031\"/>\n <SegmentURL mediaRange=\"1544-202079\"/>\n <SegmentURL mediaRange=\"202080-402215\"/>\n <SegmentURL mediaRange=\"402216-602351\"/>\n <SegmentURL mediaRange=\"602352-806540\"/>\n <SegmentURL mediaRange=\"806541-1010729\"/>\n <SegmentURL mediaRange=\"1010730-1214918\"/>\n <SegmentURL mediaRange=\"1214919-1419107\"/>\n <SegmentURL mediaRange=\"1419108-1623296\"/>\n <SegmentURL mediaRange=\"1623297-1827485\"/>\n <SegmentURL mediaRange=\"1827486-2031674\"/>\n <SegmentURL mediaRange=\"2031675-2235863\"/>\n <SegmentURL mediaRange=\"2235864-2440052\"/>\n <SegmentURL mediaRange=\"2440053-2644241\"/>\n <SegmentURL mediaRange=\"2644242-2848430\"/>\n <SegmentURL mediaRange=\"2848431-3052619\"/>\n <SegmentURL mediaRange=\"3052620-3256808\"/>\n <SegmentURL mediaRange=\"3256809-3460997\"/>\n <SegmentURL mediaRange=\"3460998-3665186\"/>\n <SegmentURL mediaRange=\"3665187-3869375\"/>\n <SegmentURL mediaRange=\"3869376-4073564\"/>\n <SegmentURL mediaRange=\"4073565-4277753\"/>\n <SegmentURL mediaRange=\"4277754-4481942\"/>\n <SegmentURL mediaRange=\"4481943-4686131\"/>\n <SegmentURL mediaRange=\"4686132-4890320\"/>\n <SegmentURL mediaRange=\"4890321-5094509\"/>\n <SegmentURL mediaRange=\"5094510-5298698\"/>\n <SegmentURL mediaRange=\"5298699-5502887\"/>\n <SegmentURL mediaRange=\"5502888-5707076\"/>\n <SegmentURL mediaRange=\"5707077-5911265\"/>\n <SegmentURL mediaRange=\"5911266-6115454\"/>\n <SegmentURL mediaRange=\"6115455-6319643\"/>\n <SegmentURL mediaRange=\"6319644-6523832\"/>\n <SegmentURL mediaRange=\"6523833-6728021\"/>\n <SegmentURL mediaRange=\"6728022-6932210\"/>\n <SegmentURL mediaRange=\"6932211-7136399\"/>\n <SegmentURL mediaRange=\"7136400-7340588\"/>\n <SegmentURL mediaRange=\"7340589-7544777\"/>\n <SegmentURL mediaRange=\"7544778-7748966\"/>\n <SegmentURL mediaRange=\"7748967-7953155\"/>\n <SegmentURL mediaRange=\"7953156-8159340\"/>\n </SegmentList>\n </Representation>\n </AdaptationSet>\n </Period>\n</MPD>";// test/vinylTestUtil/player/mediaRef.ts
533
+ var dash_segmentListMediaRange="<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<MPD minBufferTime=\"PT2S\" type=\"static\" mediaPresentationDuration=\"PT400.0133056640625S\" profiles=\"urn:mpeg:dash:profile:isoff-on-demand:2011\" xmlns=\"urn:mpeg:dash:schema:mpd:2011\" xmlns:amz-music=\"urn:amazon:music:drm:2019\" xmlns:cenc=\"urn:mpeg:cenc:2013\" xmlns:mspr=\"urn:microsoft:playready\">\n <Period id=\"0\">\n <AdaptationSet id=\"1\" contentType=\"audio\" selectionPriority=\"2000\">\n <ContentProtection schemeIdUri=\"urn:mpeg:dash:mp4protection:2011\" cenc:default_KID=\"53443d2c-a548-037d-dfca-b6873a3b16a7\" value=\"cenc\"/>\n <ContentProtection schemeIdUri=\"urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed\">\n <cenc:pssh>AAAAXXBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAAD0SEFNEPSylSAN938q2hzo7FqcaC0FtYXpvbk11c2ljIhxjaWQ6VTBROUxLVklBMzNmeXJhSE9qc1dwdz09</cenc:pssh>\n </ContentProtection>\n <SupplementalProperty schemeIdUri=\"urn:mpeg:mpegB:cicp:ProgramLoudness\" value=\"-13.5 LUFS\"/>\n <SupplementalProperty schemeIdUri=\"amz-music:trackType\" value=\"HD\"/>\n <SupplementalProperty schemeIdUri=\"urn:mpeg:dash:adaptation-set-switching:2016\" value=\"2\"/>\n <SupplementalProperty schemeIdUri=\"urn:mpeg:mpegB:cicp:AnchorLoudness\" value=\"-11.7 LUFS\"/>\n <Representation id=\"1\" qualityRanking=\"4\" codecs=\"flac\" audioSamplingRate=\"44100\" bandwidth=\"1021104\" mimeType=\"audio/mp4\">\n <AudioChannelConfiguration schemeIdUri=\"urn:mpeg:dash:23003:3:audio_channel_configuration:2011\" value=\"2\"/>\n <SupplementalProperty schemeIdUri=\"amz-music:bitDepth\" value=\"16\"/>\n <BaseURL>https://d17vo8z6jop21h.cloudfront.net/94bd1ece-d200000391583662/a3ce7553-e9a3-3ca6-8fda-8f354b8cee0f.mp4?r=2e86bfd7-93aa-48a0-9d32-7bee6d2897a4&amp;rs=NA&amp;mt=US&amp;ql=HD_44&amp;dtype=A16ZV8BU3SN1N3</BaseURL>\n <SegmentList timescale=\"44100\" duration=\"441000\">\n <Initialization range=\"0-1067\"/>\n <SegmentURL mediaRange=\"1580-1124387\"/>\n <SegmentURL mediaRange=\"1124388-2301681\"/>\n <SegmentURL mediaRange=\"2301682-3413884\"/>\n <SegmentURL mediaRange=\"3413885-4563668\"/>\n <SegmentURL mediaRange=\"4563669-5789595\"/>\n <SegmentURL mediaRange=\"5789596-7027203\"/>\n <SegmentURL mediaRange=\"7027204-8258589\"/>\n <SegmentURL mediaRange=\"8258590-9476689\"/>\n <SegmentURL mediaRange=\"9476690-10663879\"/>\n <SegmentURL mediaRange=\"10663880-11801656\"/>\n <SegmentURL mediaRange=\"11801657-13028295\"/>\n <SegmentURL mediaRange=\"13028296-14259035\"/>\n <SegmentURL mediaRange=\"14259036-15501034\"/>\n <SegmentURL mediaRange=\"15501035-16715074\"/>\n <SegmentURL mediaRange=\"16715075-17945696\"/>\n <SegmentURL mediaRange=\"17945697-19181760\"/>\n <SegmentURL mediaRange=\"19181761-20430664\"/>\n <SegmentURL mediaRange=\"20430665-21668186\"/>\n <SegmentURL mediaRange=\"21668187-22889588\"/>\n <SegmentURL mediaRange=\"22889589-24105876\"/>\n <SegmentURL mediaRange=\"24105877-25286931\"/>\n <SegmentURL mediaRange=\"25286932-26474293\"/>\n <SegmentURL mediaRange=\"26474294-27717336\"/>\n <SegmentURL mediaRange=\"27717337-28944000\"/>\n <SegmentURL mediaRange=\"28944001-30217943\"/>\n <SegmentURL mediaRange=\"30217944-31494322\"/>\n <SegmentURL mediaRange=\"31494323-32753722\"/>\n <SegmentURL mediaRange=\"32753723-33819438\"/>\n <SegmentURL mediaRange=\"33819439-34871800\"/>\n <SegmentURL mediaRange=\"34871801-35987451\"/>\n <SegmentURL mediaRange=\"35987452-37198633\"/>\n <SegmentURL mediaRange=\"37198634-38400513\"/>\n <SegmentURL mediaRange=\"38400514-39590378\"/>\n <SegmentURL mediaRange=\"39590379-40775418\"/>\n <SegmentURL mediaRange=\"40775419-42023162\"/>\n <SegmentURL mediaRange=\"42023163-43262782\"/>\n <SegmentURL mediaRange=\"43262783-44466388\"/>\n <SegmentURL mediaRange=\"44466389-45664349\"/>\n <SegmentURL mediaRange=\"45664350-46838625\"/>\n <SegmentURL mediaRange=\"46838626-47421889\"/>\n </SegmentList>\n </Representation>\n <Representation id=\"2\" qualityRanking=\"3\" codecs=\"flac\" audioSamplingRate=\"48000\" bandwidth=\"1855801\" mimeType=\"audio/mp4\">\n <AudioChannelConfiguration schemeIdUri=\"urn:mpeg:dash:23003:3:audio_channel_configuration:2011\" value=\"2\"/>\n <SupplementalProperty schemeIdUri=\"amz-music:bitDepth\" value=\"24\"/>\n <BaseURL>https://d17vo8z6jop21h.cloudfront.net/94bd1ece-d200000391583662/f5b706c9-5892-3a17-9d01-4da362cfad35.mp4?r=2e86bfd7-93aa-48a0-9d32-7bee6d2897a4&amp;rs=NA&amp;mt=US&amp;ql=UHD_48&amp;dtype=A16ZV8BU3SN1N3</BaseURL>\n <SegmentList timescale=\"48000\" duration=\"480000\">\n <Initialization range=\"0-1067\"/>\n <SegmentURL mediaRange=\"1580-2140301\"/>\n <SegmentURL mediaRange=\"2140302-4352961\"/>\n <SegmentURL mediaRange=\"4352962-6499834\"/>\n <SegmentURL mediaRange=\"6499835-8687556\"/>\n <SegmentURL mediaRange=\"8687557-10955471\"/>\n <SegmentURL mediaRange=\"10955472-13235819\"/>\n <SegmentURL mediaRange=\"13235820-15509496\"/>\n <SegmentURL mediaRange=\"15509497-17768731\"/>\n <SegmentURL mediaRange=\"17768732-19993372\"/>\n <SegmentURL mediaRange=\"19993373-22167125\"/>\n <SegmentURL mediaRange=\"22167126-24434254\"/>\n <SegmentURL mediaRange=\"24434255-26706557\"/>\n <SegmentURL mediaRange=\"26706558-28990196\"/>\n <SegmentURL mediaRange=\"28990197-31245239\"/>\n <SegmentURL mediaRange=\"31245240-33516976\"/>\n <SegmentURL mediaRange=\"33516977-35793411\"/>\n <SegmentURL mediaRange=\"35793412-38083225\"/>\n <SegmentURL mediaRange=\"38083226-40361780\"/>\n <SegmentURL mediaRange=\"40361781-42623154\"/>\n <SegmentURL mediaRange=\"42623155-44879987\"/>\n <SegmentURL mediaRange=\"44879988-47098315\"/>\n <SegmentURL mediaRange=\"47098316-49322904\"/>\n <SegmentURL mediaRange=\"49322905-51607367\"/>\n <SegmentURL mediaRange=\"51607368-53874862\"/>\n <SegmentURL mediaRange=\"53874863-56192866\"/>\n <SegmentURL mediaRange=\"56192867-58512617\"/>\n <SegmentURL mediaRange=\"58512618-60815181\"/>\n <SegmentURL mediaRange=\"60815182-62914181\"/>\n <SegmentURL mediaRange=\"62914182-65000611\"/>\n <SegmentURL mediaRange=\"65000612-67150839\"/>\n <SegmentURL mediaRange=\"67150840-69402495\"/>\n <SegmentURL mediaRange=\"69402496-71643660\"/>\n <SegmentURL mediaRange=\"71643661-73870974\"/>\n <SegmentURL mediaRange=\"73870975-76093618\"/>\n <SegmentURL mediaRange=\"76093619-78383457\"/>\n <SegmentURL mediaRange=\"78383458-80665083\"/>\n <SegmentURL mediaRange=\"80665084-82909593\"/>\n <SegmentURL mediaRange=\"82909594-85145972\"/>\n <SegmentURL mediaRange=\"85145973-87356513\"/>\n <SegmentURL mediaRange=\"87356514-88804457\"/>\n </SegmentList>\n </Representation>\n <Representation id=\"3\" qualityRanking=\"2\" codecs=\"flac\" audioSamplingRate=\"96000\" bandwidth=\"3278164\" mimeType=\"audio/mp4\">\n <AudioChannelConfiguration schemeIdUri=\"urn:mpeg:dash:23003:3:audio_channel_configuration:2011\" value=\"2\"/>\n <SupplementalProperty schemeIdUri=\"amz-music:bitDepth\" value=\"24\"/>\n <BaseURL>https://d17vo8z6jop21h.cloudfront.net/94bd1ece-d200000391583662/02b134c4-8144-3ab1-b125-5af2d0133d5b.mp4?r=2e86bfd7-93aa-48a0-9d32-7bee6d2897a4&amp;rs=NA&amp;mt=US&amp;ql=UHD_96&amp;dtype=A16ZV8BU3SN1N3</BaseURL>\n <SegmentList timescale=\"96000\" duration=\"960000\">\n <Initialization range=\"0-1067\"/>\n <SegmentURL mediaRange=\"1580-3813567\"/>\n <SegmentURL mediaRange=\"3813568-7746339\"/>\n <SegmentURL mediaRange=\"7746340-11599579\"/>\n <SegmentURL mediaRange=\"11599580-15505023\"/>\n <SegmentURL mediaRange=\"15505024-19519493\"/>\n <SegmentURL mediaRange=\"19519494-23556777\"/>\n <SegmentURL mediaRange=\"23556778-27581158\"/>\n <SegmentURL mediaRange=\"27581159-31586807\"/>\n <SegmentURL mediaRange=\"31586808-35549718\"/>\n <SegmentURL mediaRange=\"35549719-39435585\"/>\n <SegmentURL mediaRange=\"39435586-43443650\"/>\n <SegmentURL mediaRange=\"43443651-47467685\"/>\n <SegmentURL mediaRange=\"47467686-51498910\"/>\n <SegmentURL mediaRange=\"51498911-55496614\"/>\n <SegmentURL mediaRange=\"55496615-59513566\"/>\n <SegmentURL mediaRange=\"59513567-63538385\"/>\n <SegmentURL mediaRange=\"63538386-67582593\"/>\n <SegmentURL mediaRange=\"67582594-71608871\"/>\n <SegmentURL mediaRange=\"71608872-75612860\"/>\n <SegmentURL mediaRange=\"75612861-79601033\"/>\n <SegmentURL mediaRange=\"79601034-83549776\"/>\n <SegmentURL mediaRange=\"83549777-87488907\"/>\n <SegmentURL mediaRange=\"87488908-91534801\"/>\n <SegmentURL mediaRange=\"91534802-95552040\"/>\n <SegmentURL mediaRange=\"95552041-99649744\"/>\n <SegmentURL mediaRange=\"99649745-103743373\"/>\n <SegmentURL mediaRange=\"103743374-107815594\"/>\n <SegmentURL mediaRange=\"107815595-111613915\"/>\n <SegmentURL mediaRange=\"111613916-115390443\"/>\n <SegmentURL mediaRange=\"115390444-119249732\"/>\n <SegmentURL mediaRange=\"119249733-123233807\"/>\n <SegmentURL mediaRange=\"123233808-127209398\"/>\n <SegmentURL mediaRange=\"127209399-131167116\"/>\n <SegmentURL mediaRange=\"131167117-135119879\"/>\n <SegmentURL mediaRange=\"135119880-139163685\"/>\n <SegmentURL mediaRange=\"139163686-143201079\"/>\n <SegmentURL mediaRange=\"143201080-147195194\"/>\n <SegmentURL mediaRange=\"147195195-151164220\"/>\n <SegmentURL mediaRange=\"151164221-155096800\"/>\n <SegmentURL mediaRange=\"155096801-157757393\"/>\n </SegmentList>\n </Representation>\n <Representation id=\"4\" qualityRanking=\"1\" codecs=\"flac\" audioSamplingRate=\"192000\" bandwidth=\"5666448\" mimeType=\"audio/mp4\">\n <AudioChannelConfiguration schemeIdUri=\"urn:mpeg:dash:23003:3:audio_channel_configuration:2011\" value=\"2\"/>\n <SupplementalProperty schemeIdUri=\"amz-music:bitDepth\" value=\"24\"/>\n <BaseURL>https://d17vo8z6jop21h.cloudfront.net/94bd1ece-d200000391583662/edf9f9cb-46ce-33bd-96e1-8456547fbef4.mp4?r=2e86bfd7-93aa-48a0-9d32-7bee6d2897a4&amp;rs=NA&amp;mt=US&amp;ql=UHD_192&amp;dtype=A16ZV8BU3SN1N3</BaseURL>\n <SegmentList timescale=\"192000\" duration=\"1920000\">\n <Initialization range=\"0-1067\"/>\n <SegmentURL mediaRange=\"1580-6720450\"/>\n <SegmentURL mediaRange=\"6720451-13610816\"/>\n <SegmentURL mediaRange=\"13610817-20415282\"/>\n <SegmentURL mediaRange=\"20415283-27272412\"/>\n <SegmentURL mediaRange=\"27272413-34250251\"/>\n <SegmentURL mediaRange=\"34250252-41260291\"/>\n <SegmentURL mediaRange=\"41260292-48255248\"/>\n <SegmentURL mediaRange=\"48255249-55224355\"/>\n <SegmentURL mediaRange=\"55224356-62157463\"/>\n <SegmentURL mediaRange=\"62157464-68996670\"/>\n <SegmentURL mediaRange=\"68996671-75970335\"/>\n <SegmentURL mediaRange=\"75970336-82964531\"/>\n <SegmentURL mediaRange=\"82964532-89965755\"/>\n <SegmentURL mediaRange=\"89965756-96928368\"/>\n <SegmentURL mediaRange=\"96928369-103911265\"/>\n <SegmentURL mediaRange=\"103911266-110903999\"/>\n <SegmentURL mediaRange=\"110904000-117921608\"/>\n <SegmentURL mediaRange=\"117921609-124920837\"/>\n <SegmentURL mediaRange=\"124920838-131897214\"/>\n <SegmentURL mediaRange=\"131897215-138848614\"/>\n <SegmentURL mediaRange=\"138848615-145764349\"/>\n <SegmentURL mediaRange=\"145764350-152655256\"/>\n <SegmentURL mediaRange=\"152655257-159680382\"/>\n <SegmentURL mediaRange=\"159680383-166667521\"/>\n <SegmentURL mediaRange=\"166667522-173750581\"/>\n <SegmentURL mediaRange=\"173750582-180827932\"/>\n <SegmentURL mediaRange=\"180827933-187877145\"/>\n <SegmentURL mediaRange=\"187877146-194626820\"/>\n <SegmentURL mediaRange=\"194626821-201345524\"/>\n <SegmentURL mediaRange=\"201345525-208145573\"/>\n <SegmentURL mediaRange=\"208145574-215088653\"/>\n <SegmentURL mediaRange=\"215088654-222022478\"/>\n <SegmentURL mediaRange=\"222022479-228934595\"/>\n <SegmentURL mediaRange=\"228934596-235844464\"/>\n <SegmentURL mediaRange=\"235844465-242852767\"/>\n <SegmentURL mediaRange=\"242852768-249863893\"/>\n <SegmentURL mediaRange=\"249863894-256824103\"/>\n <SegmentURL mediaRange=\"256824104-263749124\"/>\n <SegmentURL mediaRange=\"263749125-270634182\"/>\n <SegmentURL mediaRange=\"270634183-275673081\"/>\n </SegmentList>\n </Representation>\n </AdaptationSet>\n <AdaptationSet id=\"2\" contentType=\"audio\" selectionPriority=\"1000\">\n <ContentProtection schemeIdUri=\"urn:mpeg:dash:mp4protection:2011\" cenc:default_KID=\"f65d52c1-4de5-e5b6-7296-2f48eddf7378\" value=\"cenc\"/>\n <ContentProtection schemeIdUri=\"urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed\">\n <cenc:pssh>AAAAXXBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAAD0SEPZdUsFN5eW2cpYvSO3fc3gaC0FtYXpvbk11c2ljIhxjaWQ6OWwxU3dVM2w1Ylp5bGk5STdkOXplQT09</cenc:pssh>\n </ContentProtection>\n <SupplementalProperty schemeIdUri=\"urn:mpeg:mpegB:cicp:ProgramLoudness\" value=\"-13.5 LUFS\"/>\n <SupplementalProperty schemeIdUri=\"amz-music:trackType\" value=\"SD\"/>\n <SupplementalProperty schemeIdUri=\"urn:mpeg:dash:adaptation-set-switching:2016\" value=\"1\"/>\n <SupplementalProperty schemeIdUri=\"urn:mpeg:mpegB:cicp:AnchorLoudness\" value=\"-11.7 LUFS\"/>\n <Representation id=\"5\" qualityRanking=\"3\" codecs=\"opus\" audioSamplingRate=\"48000\" bandwidth=\"52950\" mimeType=\"audio/mp4\">\n <AudioChannelConfiguration schemeIdUri=\"urn:mpeg:dash:23003:3:audio_channel_configuration:2011\" value=\"2\"/>\n <BaseURL>https://d17vo8z6jop21h.cloudfront.net/94bd1ece-d200000391583662/7e2d628d-7666-3ad5-a9df-8ba4e1c6391c.mp4?r=2e86bfd7-93aa-48a0-9d32-7bee6d2897a4&amp;rs=NA&amp;mt=US&amp;ql=SD_LOW&amp;dtype=A16ZV8BU3SN1N3</BaseURL>\n <SegmentList timescale=\"48000\" duration=\"480000\">\n <Initialization range=\"0-1031\"/>\n <SegmentURL mediaRange=\"1544-61799\"/>\n <SegmentURL mediaRange=\"61800-121935\"/>\n <SegmentURL mediaRange=\"121936-182071\"/>\n <SegmentURL mediaRange=\"182072-246260\"/>\n <SegmentURL mediaRange=\"246261-310449\"/>\n <SegmentURL mediaRange=\"310450-374638\"/>\n <SegmentURL mediaRange=\"374639-438827\"/>\n <SegmentURL mediaRange=\"438828-503016\"/>\n <SegmentURL mediaRange=\"503017-567205\"/>\n <SegmentURL mediaRange=\"567206-631394\"/>\n <SegmentURL mediaRange=\"631395-695583\"/>\n <SegmentURL mediaRange=\"695584-759772\"/>\n <SegmentURL mediaRange=\"759773-823961\"/>\n <SegmentURL mediaRange=\"823962-888150\"/>\n <SegmentURL mediaRange=\"888151-952339\"/>\n <SegmentURL mediaRange=\"952340-1016528\"/>\n <SegmentURL mediaRange=\"1016529-1080717\"/>\n <SegmentURL mediaRange=\"1080718-1144906\"/>\n <SegmentURL mediaRange=\"1144907-1209095\"/>\n <SegmentURL mediaRange=\"1209096-1273284\"/>\n <SegmentURL mediaRange=\"1273285-1337473\"/>\n <SegmentURL mediaRange=\"1337474-1401662\"/>\n <SegmentURL mediaRange=\"1401663-1465851\"/>\n <SegmentURL mediaRange=\"1465852-1530040\"/>\n <SegmentURL mediaRange=\"1530041-1594229\"/>\n <SegmentURL mediaRange=\"1594230-1658418\"/>\n <SegmentURL mediaRange=\"1658419-1722607\"/>\n <SegmentURL mediaRange=\"1722608-1786796\"/>\n <SegmentURL mediaRange=\"1786797-1850985\"/>\n <SegmentURL mediaRange=\"1850986-1915174\"/>\n <SegmentURL mediaRange=\"1915175-1979363\"/>\n <SegmentURL mediaRange=\"1979364-2043552\"/>\n <SegmentURL mediaRange=\"2043553-2107741\"/>\n <SegmentURL mediaRange=\"2107742-2171930\"/>\n <SegmentURL mediaRange=\"2171931-2236119\"/>\n <SegmentURL mediaRange=\"2236120-2300308\"/>\n <SegmentURL mediaRange=\"2300309-2364497\"/>\n <SegmentURL mediaRange=\"2364498-2428686\"/>\n <SegmentURL mediaRange=\"2428687-2492875\"/>\n <SegmentURL mediaRange=\"2492876-2559060\"/>\n </SegmentList>\n </Representation>\n <Representation id=\"6\" qualityRanking=\"2\" codecs=\"opus\" audioSamplingRate=\"48000\" bandwidth=\"196953\" mimeType=\"audio/mp4\">\n <AudioChannelConfiguration schemeIdUri=\"urn:mpeg:dash:23003:3:audio_channel_configuration:2011\" value=\"2\"/>\n <BaseURL>https://d17vo8z6jop21h.cloudfront.net/94bd1ece-d200000391583662/8e453bd1-9428-30fa-940f-fa85911368c2.mp4?r=2e86bfd7-93aa-48a0-9d32-7bee6d2897a4&amp;rs=NA&amp;mt=US&amp;ql=SD_MEDIUM&amp;dtype=A16ZV8BU3SN1N3</BaseURL>\n <SegmentList timescale=\"48000\" duration=\"480000\">\n <Initialization range=\"0-1031\"/>\n <SegmentURL mediaRange=\"1544-242159\"/>\n <SegmentURL mediaRange=\"242160-482295\"/>\n <SegmentURL mediaRange=\"482296-722431\"/>\n <SegmentURL mediaRange=\"722432-966620\"/>\n <SegmentURL mediaRange=\"966621-1210809\"/>\n <SegmentURL mediaRange=\"1210810-1454998\"/>\n <SegmentURL mediaRange=\"1454999-1699187\"/>\n <SegmentURL mediaRange=\"1699188-1943376\"/>\n <SegmentURL mediaRange=\"1943377-2187565\"/>\n <SegmentURL mediaRange=\"2187566-2431754\"/>\n <SegmentURL mediaRange=\"2431755-2675943\"/>\n <SegmentURL mediaRange=\"2675944-2920132\"/>\n <SegmentURL mediaRange=\"2920133-3164321\"/>\n <SegmentURL mediaRange=\"3164322-3408510\"/>\n <SegmentURL mediaRange=\"3408511-3652699\"/>\n <SegmentURL mediaRange=\"3652700-3896888\"/>\n <SegmentURL mediaRange=\"3896889-4141077\"/>\n <SegmentURL mediaRange=\"4141078-4385266\"/>\n <SegmentURL mediaRange=\"4385267-4629455\"/>\n <SegmentURL mediaRange=\"4629456-4873644\"/>\n <SegmentURL mediaRange=\"4873645-5117833\"/>\n <SegmentURL mediaRange=\"5117834-5362022\"/>\n <SegmentURL mediaRange=\"5362023-5606211\"/>\n <SegmentURL mediaRange=\"5606212-5850400\"/>\n <SegmentURL mediaRange=\"5850401-6094589\"/>\n <SegmentURL mediaRange=\"6094590-6338778\"/>\n <SegmentURL mediaRange=\"6338779-6582967\"/>\n <SegmentURL mediaRange=\"6582968-6827156\"/>\n <SegmentURL mediaRange=\"6827157-7071345\"/>\n <SegmentURL mediaRange=\"7071346-7315534\"/>\n <SegmentURL mediaRange=\"7315535-7559723\"/>\n <SegmentURL mediaRange=\"7559724-7803912\"/>\n <SegmentURL mediaRange=\"7803913-8048101\"/>\n <SegmentURL mediaRange=\"8048102-8292290\"/>\n <SegmentURL mediaRange=\"8292291-8536479\"/>\n <SegmentURL mediaRange=\"8536480-8780668\"/>\n <SegmentURL mediaRange=\"8780669-9024857\"/>\n <SegmentURL mediaRange=\"9024858-9269046\"/>\n <SegmentURL mediaRange=\"9269047-9513235\"/>\n <SegmentURL mediaRange=\"9513236-9759420\"/>\n </SegmentList>\n </Representation>\n <Representation id=\"7\" qualityRanking=\"1\" codecs=\"opus\" audioSamplingRate=\"48000\" bandwidth=\"324955\" mimeType=\"audio/mp4\">\n <AudioChannelConfiguration schemeIdUri=\"urn:mpeg:dash:23003:3:audio_channel_configuration:2011\" value=\"2\"/>\n <BaseURL>https://d17vo8z6jop21h.cloudfront.net/94bd1ece-d200000391583662/40ba3a06-d285-3130-838f-0c1508c1d18b.mp4?r=2e86bfd7-93aa-48a0-9d32-7bee6d2897a4&amp;rs=NA&amp;mt=US&amp;ql=SD_HIGH&amp;dtype=A16ZV8BU3SN1N3</BaseURL>\n <SegmentList timescale=\"48000\" duration=\"480000\">\n <Initialization range=\"0-1031\"/>\n <SegmentURL mediaRange=\"1544-402479\"/>\n <SegmentURL mediaRange=\"402480-802615\"/>\n <SegmentURL mediaRange=\"802616-1202751\"/>\n <SegmentURL mediaRange=\"1202752-1606940\"/>\n <SegmentURL mediaRange=\"1606941-2011129\"/>\n <SegmentURL mediaRange=\"2011130-2415318\"/>\n <SegmentURL mediaRange=\"2415319-2819507\"/>\n <SegmentURL mediaRange=\"2819508-3223696\"/>\n <SegmentURL mediaRange=\"3223697-3627885\"/>\n <SegmentURL mediaRange=\"3627886-4032074\"/>\n <SegmentURL mediaRange=\"4032075-4436263\"/>\n <SegmentURL mediaRange=\"4436264-4840452\"/>\n <SegmentURL mediaRange=\"4840453-5244641\"/>\n <SegmentURL mediaRange=\"5244642-5648830\"/>\n <SegmentURL mediaRange=\"5648831-6053019\"/>\n <SegmentURL mediaRange=\"6053020-6457208\"/>\n <SegmentURL mediaRange=\"6457209-6861397\"/>\n <SegmentURL mediaRange=\"6861398-7265586\"/>\n <SegmentURL mediaRange=\"7265587-7669775\"/>\n <SegmentURL mediaRange=\"7669776-8073964\"/>\n <SegmentURL mediaRange=\"8073965-8478153\"/>\n <SegmentURL mediaRange=\"8478154-8882342\"/>\n <SegmentURL mediaRange=\"8882343-9286531\"/>\n <SegmentURL mediaRange=\"9286532-9690720\"/>\n <SegmentURL mediaRange=\"9690721-10094909\"/>\n <SegmentURL mediaRange=\"10094910-10499098\"/>\n <SegmentURL mediaRange=\"10499099-10903287\"/>\n <SegmentURL mediaRange=\"10903288-11307476\"/>\n <SegmentURL mediaRange=\"11307477-11711665\"/>\n <SegmentURL mediaRange=\"11711666-12115854\"/>\n <SegmentURL mediaRange=\"12115855-12520043\"/>\n <SegmentURL mediaRange=\"12520044-12924232\"/>\n <SegmentURL mediaRange=\"12924233-13328421\"/>\n <SegmentURL mediaRange=\"13328422-13732610\"/>\n <SegmentURL mediaRange=\"13732611-14136799\"/>\n <SegmentURL mediaRange=\"14136800-14540988\"/>\n <SegmentURL mediaRange=\"14540989-14945177\"/>\n <SegmentURL mediaRange=\"14945178-15349366\"/>\n <SegmentURL mediaRange=\"15349367-15753555\"/>\n <SegmentURL mediaRange=\"15753556-16159740\"/>\n </SegmentList>\n </Representation>\n </AdaptationSet>\n <AdaptationSet id=\"3\" contentType=\"audio\" selectionPriority=\"500\">\n <ContentProtection schemeIdUri=\"urn:mpeg:dash:mp4protection:2011\" cenc:default_KID=\"4e4c6e3a-d760-ffd5-78b0-3824890da09d\" value=\"cenc\"/>\n <ContentProtection schemeIdUri=\"urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed\">\n <cenc:pssh>AAAAXXBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAAD0SEE5MbjrXYP/VeLA4JIkNoJ0aC0FtYXpvbk11c2ljIhxjaWQ6VGt4dU90ZGcvOVY0c0Rna2lRMmduUT09</cenc:pssh>\n </ContentProtection>\n <SupplementalProperty schemeIdUri=\"urn:mpeg:mpegB:cicp:ProgramLoudness\" value=\"-13.5 LUFS\"/>\n <SupplementalProperty schemeIdUri=\"amz-music:trackType\" value=\"LD\"/>\n <SupplementalProperty schemeIdUri=\"urn:mpeg:mpegB:cicp:AnchorLoudness\" value=\"-11.7 LUFS\"/>\n <Representation id=\"8\" qualityRanking=\"2000\" codecs=\"opus\" audioSamplingRate=\"48000\" bandwidth=\"52950\" mimeType=\"audio/mp4\">\n <AudioChannelConfiguration schemeIdUri=\"urn:mpeg:dash:23003:3:audio_channel_configuration:2011\" value=\"2\"/>\n <BaseURL>https://d17vo8z6jop21h.cloudfront.net/94bd1ece-d200000391583662/748096ab-6991-368b-b9ca-5477bf90ba5a.mp4?r=2e86bfd7-93aa-48a0-9d32-7bee6d2897a4&amp;rs=NA&amp;mt=US&amp;ql=LD_LOW&amp;dtype=A16ZV8BU3SN1N3</BaseURL>\n <SegmentList timescale=\"48000\" duration=\"480000\">\n <Initialization range=\"0-1031\"/>\n <SegmentURL mediaRange=\"1544-61799\"/>\n <SegmentURL mediaRange=\"61800-121935\"/>\n <SegmentURL mediaRange=\"121936-182071\"/>\n <SegmentURL mediaRange=\"182072-246260\"/>\n <SegmentURL mediaRange=\"246261-310449\"/>\n <SegmentURL mediaRange=\"310450-374638\"/>\n <SegmentURL mediaRange=\"374639-438827\"/>\n <SegmentURL mediaRange=\"438828-503016\"/>\n <SegmentURL mediaRange=\"503017-567205\"/>\n <SegmentURL mediaRange=\"567206-631394\"/>\n <SegmentURL mediaRange=\"631395-695583\"/>\n <SegmentURL mediaRange=\"695584-759772\"/>\n <SegmentURL mediaRange=\"759773-823961\"/>\n <SegmentURL mediaRange=\"823962-888150\"/>\n <SegmentURL mediaRange=\"888151-952339\"/>\n <SegmentURL mediaRange=\"952340-1016528\"/>\n <SegmentURL mediaRange=\"1016529-1080717\"/>\n <SegmentURL mediaRange=\"1080718-1144906\"/>\n <SegmentURL mediaRange=\"1144907-1209095\"/>\n <SegmentURL mediaRange=\"1209096-1273284\"/>\n <SegmentURL mediaRange=\"1273285-1337473\"/>\n <SegmentURL mediaRange=\"1337474-1401662\"/>\n <SegmentURL mediaRange=\"1401663-1465851\"/>\n <SegmentURL mediaRange=\"1465852-1530040\"/>\n <SegmentURL mediaRange=\"1530041-1594229\"/>\n <SegmentURL mediaRange=\"1594230-1658418\"/>\n <SegmentURL mediaRange=\"1658419-1722607\"/>\n <SegmentURL mediaRange=\"1722608-1786796\"/>\n <SegmentURL mediaRange=\"1786797-1850985\"/>\n <SegmentURL mediaRange=\"1850986-1915174\"/>\n <SegmentURL mediaRange=\"1915175-1979363\"/>\n <SegmentURL mediaRange=\"1979364-2043552\"/>\n <SegmentURL mediaRange=\"2043553-2107741\"/>\n <SegmentURL mediaRange=\"2107742-2171930\"/>\n <SegmentURL mediaRange=\"2171931-2236119\"/>\n <SegmentURL mediaRange=\"2236120-2300308\"/>\n <SegmentURL mediaRange=\"2300309-2364497\"/>\n <SegmentURL mediaRange=\"2364498-2428686\"/>\n <SegmentURL mediaRange=\"2428687-2492875\"/>\n <SegmentURL mediaRange=\"2492876-2559060\"/>\n </SegmentList>\n </Representation>\n <Representation id=\"9\" qualityRanking=\"1000\" codecs=\"opus\" audioSamplingRate=\"48000\" bandwidth=\"164952\" mimeType=\"audio/mp4\">\n <AudioChannelConfiguration schemeIdUri=\"urn:mpeg:dash:23003:3:audio_channel_configuration:2011\" value=\"2\"/>\n <BaseURL>https://d17vo8z6jop21h.cloudfront.net/94bd1ece-d200000391583662/8be307d6-71ea-3111-a869-40720e08a6f9.mp4?r=2e86bfd7-93aa-48a0-9d32-7bee6d2897a4&amp;rs=NA&amp;mt=US&amp;ql=LD_MEDIUM&amp;dtype=A16ZV8BU3SN1N3</BaseURL>\n <SegmentList timescale=\"48000\" duration=\"480000\">\n <Initialization range=\"0-1031\"/>\n <SegmentURL mediaRange=\"1544-202079\"/>\n <SegmentURL mediaRange=\"202080-402215\"/>\n <SegmentURL mediaRange=\"402216-602351\"/>\n <SegmentURL mediaRange=\"602352-806540\"/>\n <SegmentURL mediaRange=\"806541-1010729\"/>\n <SegmentURL mediaRange=\"1010730-1214918\"/>\n <SegmentURL mediaRange=\"1214919-1419107\"/>\n <SegmentURL mediaRange=\"1419108-1623296\"/>\n <SegmentURL mediaRange=\"1623297-1827485\"/>\n <SegmentURL mediaRange=\"1827486-2031674\"/>\n <SegmentURL mediaRange=\"2031675-2235863\"/>\n <SegmentURL mediaRange=\"2235864-2440052\"/>\n <SegmentURL mediaRange=\"2440053-2644241\"/>\n <SegmentURL mediaRange=\"2644242-2848430\"/>\n <SegmentURL mediaRange=\"2848431-3052619\"/>\n <SegmentURL mediaRange=\"3052620-3256808\"/>\n <SegmentURL mediaRange=\"3256809-3460997\"/>\n <SegmentURL mediaRange=\"3460998-3665186\"/>\n <SegmentURL mediaRange=\"3665187-3869375\"/>\n <SegmentURL mediaRange=\"3869376-4073564\"/>\n <SegmentURL mediaRange=\"4073565-4277753\"/>\n <SegmentURL mediaRange=\"4277754-4481942\"/>\n <SegmentURL mediaRange=\"4481943-4686131\"/>\n <SegmentURL mediaRange=\"4686132-4890320\"/>\n <SegmentURL mediaRange=\"4890321-5094509\"/>\n <SegmentURL mediaRange=\"5094510-5298698\"/>\n <SegmentURL mediaRange=\"5298699-5502887\"/>\n <SegmentURL mediaRange=\"5502888-5707076\"/>\n <SegmentURL mediaRange=\"5707077-5911265\"/>\n <SegmentURL mediaRange=\"5911266-6115454\"/>\n <SegmentURL mediaRange=\"6115455-6319643\"/>\n <SegmentURL mediaRange=\"6319644-6523832\"/>\n <SegmentURL mediaRange=\"6523833-6728021\"/>\n <SegmentURL mediaRange=\"6728022-6932210\"/>\n <SegmentURL mediaRange=\"6932211-7136399\"/>\n <SegmentURL mediaRange=\"7136400-7340588\"/>\n <SegmentURL mediaRange=\"7340589-7544777\"/>\n <SegmentURL mediaRange=\"7544778-7748966\"/>\n <SegmentURL mediaRange=\"7748967-7953155\"/>\n <SegmentURL mediaRange=\"7953156-8159340\"/>\n </SegmentList>\n </Representation>\n </AdaptationSet>\n </Period>\n</MPD>";// src/text/parseWebVtt.ts
534
+ var WEBVTT_HEADER="WEBVTT";var TIMESTAMP_RE=/^(?:(\d+):)?([0-5]\d):([0-5]\d)\.(\d{3})/;function parseWebVtt(input){if(typeof input!=="string"){throw new ValidationError("WebVTT input must be a string",ErrorOrigin.MEDIA)}var text=input;if(text.charCodeAt(0)===65279)text=text.slice(1);var lines=text.split(/\r\n|\r|\n/);if(lines.length===0||!isWebVttHeader(lines[0])){throw new ValidationError("WebVTT must begin with a WEBVTT header",ErrorOrigin.MEDIA)}var cues=[];var styles=[];var i=1;while(i<lines.length&&lines[i]!=="")i++;while(i<lines.length){if(lines[i]===""){i++;continue}if(lines[i]==="NOTE"||lines[i].startsWith("NOTE ")||lines[i].startsWith("NOTE\t")||lines[i]==="REGION"){i++;while(i<lines.length&&lines[i]!=="")i++;continue}if(lines[i]==="STYLE"){i++;var start=i;while(i<lines.length&&lines[i]!=="")i++;var css=lines.slice(start,i).join("\n").trim();if(css)styles.push(css);continue}var id=null;if(!lines[i].includes("-->")){id=lines[i];i++;if(i>=lines.length)break}var timing=parseTiming(lines[i]);i++;if(!timing){while(i<lines.length&&lines[i]!=="")i++;continue}var payloadLines=[];while(i<lines.length&&lines[i]!==""){payloadLines.push(lines[i]);i++}var text2=payloadLines.join("\n");cues.push(timing.settings===void 0?{id:id,startTime:timing.startTime,endTime:timing.endTime,text:text2}:{id:id,startTime:timing.startTime,endTime:timing.endTime,text:text2,settings:timing.settings})}return{cues:cues,styles:styles}}function parseTiming(line){var arrow=line.indexOf("-->");if(arrow<0)return null;var before=line.slice(0,arrow).trim();var start=TIMESTAMP_RE.exec(before);if(!start||start[0].length!==before.length)return null;var rest=line.slice(arrow+3).trim();var end=TIMESTAMP_RE.exec(rest);if(!end)return null;return{startTime:toSeconds(start[1],start[2],start[3],start[4]),endTime:toSeconds(end[1],end[2],end[3],end[4]),settings:parseCueSettings(rest.slice(end[0].length))}}function toSeconds(hours,minutes,seconds,millis){return(hours?Number(hours)*3600:0)+Number(minutes)*60+Number(seconds)+Number(millis)/1e3}function isWebVttHeader(line){if(!line.startsWith(WEBVTT_HEADER))return false;if(line.length===WEBVTT_HEADER.length)return true;var next=line.charCodeAt(WEBVTT_HEADER.length);return next===32||next===9}var ALIGN=/* @__PURE__ */new Set(["start","center","end","left","right"]);var LINE_ALIGN=/* @__PURE__ */new Set(["start","center","end"]);var POSITION_ALIGN=/* @__PURE__ */new Set(["line-left","center","line-right","auto"]);var VERTICAL=/* @__PURE__ */new Set(["rl","lr"]);function parseCueSettings(text){if(!text)return void 0;var settings={};var _iterator13=_createForOfIteratorHelper(text.trim().split(/\s+/)),_step13;try{for(_iterator13.s();!(_step13=_iterator13.n()).done;){var token=_step13.value;var colon=token.indexOf(":");if(colon<=0)continue;var key=token.slice(0,colon);var value=token.slice(colon+1);switch(key){case"align":{var align=value==="middle"?"center":value;if(ALIGN.has(align))settings.align=align;break}case"vertical":if(VERTICAL.has(value))settings.vertical=value;break;case"size":{var size=parsePercent(value);if(size!=null)settings.size=size;break}case"line":parseLine(value,settings);break;case"position":parsePosition(value,settings);break}}}catch(err){_iterator13.e(err)}finally{_iterator13.f()}return Object.keys(settings).length>0?settings:void 0}function parseLine(value,settings){var _value$split=value.split(","),_value$split2=_slicedToArray(_value$split,2),pos=_value$split2[0],align=_value$split2[1];if(pos.endsWith("%")){var percent=parsePercent(pos);if(percent==null)return;settings.line=percent;settings.snapToLines=false}else{var n=Number(pos);if(!Number.isInteger(n))return;settings.line=n;settings.snapToLines=true}var lineAlign=align==="middle"?"center":align;if(lineAlign&&LINE_ALIGN.has(lineAlign))settings.lineAlign=lineAlign}function parsePosition(value,settings){var _value$split3=value.split(","),_value$split4=_slicedToArray(_value$split3,2),pos=_value$split4[0],align=_value$split4[1];var percent=parsePercent(pos);if(percent==null)return;settings.position=percent;var positionAlign=align==="middle"?"center":align;if(positionAlign&&POSITION_ALIGN.has(positionAlign))settings.positionAlign=positionAlign}function parsePercent(value){if(!value.endsWith("%"))return null;var n=Number(value.slice(0,-1));return Number.isFinite(n)?n:null}// test/vinylTestUtil/player/mediaRef.ts
534
535
  var mediaRef=lazy(function(){var media=document.createElement("video");media.muted=true;media.playsInline=true;media.disableRemotePlayback=true;return media});afterEach(function(){if(mediaRef.constructed){var media=mediaRef.value;media.removeAttribute("src");media.load()}});// test/vinylTestUtil/media/FrequencyAnalyzer.ts
535
536
  var _a2;var shouldCheckAudio=parseBoolean(((_a2=getSearchParams().get("checkAudio"))!=null?_a2:"0").toLowerCase());// ../vinyl-util/test/testUtil/mock/logging/MockLogger.ts
536
537
  var spyFactory=createSpyFactory();// ../vinyl-util/test/testUtil/mock/network/emptyRequestInfo.ts
@@ -570,7 +571,9 @@ var spyFactory30=createSpyFactory();// test/vinylTestUtil/mock/streaming/MockSeg
570
571
  var spyFactory31=createSpyFactory();// test/vinylTestUtil/mock/track/hls/createMockHlsDependencies.ts
571
572
  var spyFactory32=createSpyFactory();// test/vinylTestUtil/mock/track/MockTrack.ts
572
573
  var spyFactory33=createSpyFactory();// test/benchmark/manifest/dash/parseDashManifest.bench.ts
573
- describe("parseDashManifest",function(){setupBenchmark();it("Parse Dash",/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(){var _t;return _regenerator().w(function(_context5){while(1)switch(_context5.n){case 0:_t=addBenchmarks;_context5.n=1;return benchmark("SAX",function(){return parseDashManifest(dash_segmentListMediaRange)});case 1:_t("Parse Dash - isoff on demand",_context5.v);case 2:return _context5.a(2)}},_callee5)})))});// test/benchmark/util/collection/LinkedList.bench.ts
574
- describe("LinkedList",function(){setupBenchmark();function createList(n){var list=new LinkedList;for(var i=0;i<n;i++){list.push({r:0,a:Math.random(),b:Math.random()})}return list}function createArray(n){var arr=[];for(var i=0;i<n;i++){arr.push({r:0,a:Math.random(),b:Math.random()})}return arr};[100,1e3].forEach(function(size){var list=createList(size);var arr=createArray(size);describe("size: ".concat(size),function(){it("forEach",/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6(){var name,listResults,arrayResults;return _regenerator().w(function(_context6){while(1)switch(_context6.n){case 0:name="forEach ".concat(size);_context6.n=1;return benchmark("LinkedList ".concat(name),function(){list.forEach(function(e){return e.r=e.a+e.b})});case 1:listResults=_context6.v;_context6.n=2;return benchmark("Array ".concat(name),function(){arr.forEach(function(e){return e.r=e.a+e.b})});case 2:arrayResults=_context6.v;addBenchmarks(name,listResults,arrayResults);case 3:return _context6.a(2)}},_callee6)})));it("unshift",/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7(){var name,e,listResults,arrayResults;return _regenerator().w(function(_context7){while(1)switch(_context7.n){case 0:name="unshift/shift ".concat(size);e={r:0,a:0,b:0};_context7.n=1;return benchmark("LinkedList ".concat(name),function(){list.unshift(e);list.shift()});case 1:listResults=_context7.v;_context7.n=2;return benchmark("Array ".concat(name),function(){arr.unshift(e);arr.shift()});case 2:arrayResults=_context7.v;addBenchmarks(name,listResults,arrayResults);case 3:return _context7.a(2)}},_callee7)})));it("push",/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee8(){var name,e,listResults,arrayResults;return _regenerator().w(function(_context8){while(1)switch(_context8.n){case 0:name="push/pop ".concat(size);e={r:0,a:0,b:0};_context8.n=1;return benchmark("LinkedList ".concat(name),function(){list.push(e);list.pop()});case 1:listResults=_context8.v;_context8.n=2;return benchmark("Array ".concat(name),function(){arr.push(e);arr.pop()});case 2:arrayResults=_context8.v;addBenchmarks(name,listResults,arrayResults);case 3:return _context8.a(2)}},_callee8)})));it("for of",/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee9(){var name,listResults,arrayResults;return _regenerator().w(function(_context9){while(1)switch(_context9.n){case 0:name="for of ".concat(size);_context9.n=1;return benchmark("LinkedList ".concat(name),function(){var _iterator13=_createForOfIteratorHelper(list),_step13;try{for(_iterator13.s();!(_step13=_iterator13.n()).done;){var e=_step13.value;e.r=e.a+e.b}}catch(err){_iterator13.e(err)}finally{_iterator13.f()}});case 1:listResults=_context9.v;_context9.n=2;return benchmark("Array ".concat(name),function(){var _iterator14=_createForOfIteratorHelper(arr),_step14;try{for(_iterator14.s();!(_step14=_iterator14.n()).done;){var e=_step14.value;e.r=e.a+e.b}}catch(err){_iterator14.e(err)}finally{_iterator14.f()}});case 2:arrayResults=_context9.v;addBenchmarks(name,listResults,arrayResults);case 3:return _context9.a(2)}},_callee9)})))})})});// test/benchmark/util/object/mergeDeep.bench.ts
575
- describe("mergeDeep",function(){setupBenchmark();it("object merge",/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee0(){var a,b,mergeDeepResults;return _regenerator().w(function(_context0){while(1)switch(_context0.n){case 0:a={b:{c:3,d:4,e:"test"},f:{g:5,h:true,i:false},j:{k:{m:5}}};b={b:{d:4,f2:"test2"},f:{g:5,h:true,i:false},j:{k:{m:5}}};_context0.n=1;return benchmark("mergeDeep",function(){mergeDeep([a,b])});case 1:mergeDeepResults=_context0.v;addBenchmarks("merge deep",mergeDeepResults);case 2:return _context0.a(2)}},_callee0)})))});// test/benchmark/util/serialization/toJson.bench.ts
576
- describe("json",function(){setupBenchmark();it("toJson",/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee1(){var results;return _regenerator().w(function(_context1){while(1)switch(_context1.n){case 0:_context1.n=1;return benchmark("toJson",function(){toJson({requestInfo:{fetchId:"lgn9lrwaid8o3utd5r",init:{method:"POST",headers:{"Content-Encoding":"amz-1.0","Content-Type":"application/json","X-Amz-Target":"com.amazon.digitalmusiclocator.DigitalMusicLocatorServiceExternal.getStreamingURLs"},body:"{\"contentIdList\":[{\"identifier\":\"d9e4e337-97ba-41a9-9f31-84a8bf99f1dc\",\"identifierType\":\"COID\"}],\"bitRate\":\"HIGH\",\"deviceToken\":{\"deviceId\":\"lg4msezd1e355heuc5b\",\"deviceTypeId\":\"A16ZV8BU3SN1N3\"},\"appMetadata\":{\"appId\":\"WebCP\",\"https\":true,\"appVersion\":\"1.0.0\"},\"clientMetadata\":{\"clientId\":\"WebCP\",\"clientRequestId\":\"lgn9lrw623mgvi7k3et\"}}",signal:"[object AbortSignal]"},input:"https://example.com/bar/",maxRetries:1,timestamp:/* @__PURE__ */new Date("2023-04-19T05:40:17.914Z"),requestOptions:{serviceId:null,readErrorBody:1}},attemptInfo:{currentTry:1,timestamp:/* @__PURE__ */new Date("2023-04-19T05:40:17.914Z")},target:"[object FetchProviderImpl]"})});case 1:results=_context1.v;addBenchmarks("toJson",results);case 2:return _context1.a(2)}},_callee1)})))})})();
574
+ describe("parseDashManifest",function(){setupBenchmark();it("Parse Dash",/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(){var _t;return _regenerator().w(function(_context5){while(1)switch(_context5.n){case 0:_t=addBenchmarks;_context5.n=1;return benchmark("SAX",function(){return parseDashManifest(dash_segmentListMediaRange)});case 1:_t("Parse Dash - isoff on demand",_context5.v);case 2:return _context5.a(2)}},_callee5)})))});// test/benchmark/text/sampleVtt.ts
575
+ var PAYLOADS=["<c.emphasis>The quick brown fox jumps</c>","<c.emphasis>over the lazy dog.</c>","<c.emphasis>A sentence that wraps\nacross two lines of caption.</c>","-<c.emphasis>First speaker line.</c>\n-Second speaker replies.","-Line one of dialogue.\n-Line two of dialogue.","<i>Italic emphasis here</i>\n<b>and bold on the next line.</b>","<v Speaker>A line attributed to a voice.</v>","Lorem ipsum dolor sit amet."];var SETTINGS=[" align:middle line:85%,start position:50%,middle"," align:start line:80% position:20%,line-left size:80%",""];function buildSampleVtt(cueCount){var blocks=["WEBVTT","X-TIMESTAMP-MAP=MPEGTS:900000,LOCAL:00:00:00.000","","STYLE","::cue(.emphasis) { font-style:italic }",""];for(var i=0;i<cueCount;i++){blocks.push(String(i+1),"".concat(formatTs(i*3)," --> ").concat(formatTs(i*3+2)).concat(SETTINGS[i%SETTINGS.length]),PAYLOADS[i%PAYLOADS.length],"")}return blocks.join("\n")}function formatTs(totalSeconds){var h=Math.floor(totalSeconds/3600);var m=Math.floor(totalSeconds%3600/60);var s=totalSeconds%60;var pad=function pad(n){return n.toString().padStart(2,"0")};return"".concat(pad(h),":").concat(pad(m),":").concat(pad(s),".000")}var sampleVtt=buildSampleVtt(4e3);// test/benchmark/text/parseWebVtt.bench.ts
576
+ describe("parseWebVtt",function(){setupBenchmark();it("parses a large document",/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6(){var _t2;return _regenerator().w(function(_context6){while(1)switch(_context6.n){case 0:_t2=addBenchmarks;_context6.n=1;return benchmark("parseWebVtt",function(){return parseWebVtt(sampleVtt)});case 1:_t2("parseWebVtt - large document",_context6.v);case 2:return _context6.a(2)}},_callee6)})))});// test/benchmark/util/collection/LinkedList.bench.ts
577
+ describe("LinkedList",function(){setupBenchmark();function createList(n){var list=new LinkedList;for(var i=0;i<n;i++){list.push({r:0,a:Math.random(),b:Math.random()})}return list}function createArray(n){var arr=[];for(var i=0;i<n;i++){arr.push({r:0,a:Math.random(),b:Math.random()})}return arr};[100,1e3].forEach(function(size){var list=createList(size);var arr=createArray(size);describe("size: ".concat(size),function(){it("forEach",/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7(){var name,listResults,arrayResults;return _regenerator().w(function(_context7){while(1)switch(_context7.n){case 0:name="forEach ".concat(size);_context7.n=1;return benchmark("LinkedList ".concat(name),function(){list.forEach(function(e){return e.r=e.a+e.b})});case 1:listResults=_context7.v;_context7.n=2;return benchmark("Array ".concat(name),function(){arr.forEach(function(e){return e.r=e.a+e.b})});case 2:arrayResults=_context7.v;addBenchmarks(name,listResults,arrayResults);case 3:return _context7.a(2)}},_callee7)})));it("unshift",/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee8(){var name,e,listResults,arrayResults;return _regenerator().w(function(_context8){while(1)switch(_context8.n){case 0:name="unshift/shift ".concat(size);e={r:0,a:0,b:0};_context8.n=1;return benchmark("LinkedList ".concat(name),function(){list.unshift(e);list.shift()});case 1:listResults=_context8.v;_context8.n=2;return benchmark("Array ".concat(name),function(){arr.unshift(e);arr.shift()});case 2:arrayResults=_context8.v;addBenchmarks(name,listResults,arrayResults);case 3:return _context8.a(2)}},_callee8)})));it("push",/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee9(){var name,e,listResults,arrayResults;return _regenerator().w(function(_context9){while(1)switch(_context9.n){case 0:name="push/pop ".concat(size);e={r:0,a:0,b:0};_context9.n=1;return benchmark("LinkedList ".concat(name),function(){list.push(e);list.pop()});case 1:listResults=_context9.v;_context9.n=2;return benchmark("Array ".concat(name),function(){arr.push(e);arr.pop()});case 2:arrayResults=_context9.v;addBenchmarks(name,listResults,arrayResults);case 3:return _context9.a(2)}},_callee9)})));it("for of",/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee0(){var name,listResults,arrayResults;return _regenerator().w(function(_context0){while(1)switch(_context0.n){case 0:name="for of ".concat(size);_context0.n=1;return benchmark("LinkedList ".concat(name),function(){var _iterator14=_createForOfIteratorHelper(list),_step14;try{for(_iterator14.s();!(_step14=_iterator14.n()).done;){var e=_step14.value;e.r=e.a+e.b}}catch(err){_iterator14.e(err)}finally{_iterator14.f()}});case 1:listResults=_context0.v;_context0.n=2;return benchmark("Array ".concat(name),function(){var _iterator15=_createForOfIteratorHelper(arr),_step15;try{for(_iterator15.s();!(_step15=_iterator15.n()).done;){var e=_step15.value;e.r=e.a+e.b}}catch(err){_iterator15.e(err)}finally{_iterator15.f()}});case 2:arrayResults=_context0.v;addBenchmarks(name,listResults,arrayResults);case 3:return _context0.a(2)}},_callee0)})))})})});// test/benchmark/util/object/mergeDeep.bench.ts
578
+ describe("mergeDeep",function(){setupBenchmark();it("object merge",/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee1(){var a,b,mergeDeepResults;return _regenerator().w(function(_context1){while(1)switch(_context1.n){case 0:a={b:{c:3,d:4,e:"test"},f:{g:5,h:true,i:false},j:{k:{m:5}}};b={b:{d:4,f2:"test2"},f:{g:5,h:true,i:false},j:{k:{m:5}}};_context1.n=1;return benchmark("mergeDeep",function(){mergeDeep([a,b])});case 1:mergeDeepResults=_context1.v;addBenchmarks("merge deep",mergeDeepResults);case 2:return _context1.a(2)}},_callee1)})))});// test/benchmark/util/serialization/toJson.bench.ts
579
+ describe("json",function(){setupBenchmark();it("toJson",/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee10(){var results;return _regenerator().w(function(_context10){while(1)switch(_context10.n){case 0:_context10.n=1;return benchmark("toJson",function(){toJson({requestInfo:{fetchId:"lgn9lrwaid8o3utd5r",init:{method:"POST",headers:{"Content-Encoding":"amz-1.0","Content-Type":"application/json","X-Amz-Target":"com.amazon.digitalmusiclocator.DigitalMusicLocatorServiceExternal.getStreamingURLs"},body:"{\"contentIdList\":[{\"identifier\":\"d9e4e337-97ba-41a9-9f31-84a8bf99f1dc\",\"identifierType\":\"COID\"}],\"bitRate\":\"HIGH\",\"deviceToken\":{\"deviceId\":\"lg4msezd1e355heuc5b\",\"deviceTypeId\":\"A16ZV8BU3SN1N3\"},\"appMetadata\":{\"appId\":\"WebCP\",\"https\":true,\"appVersion\":\"1.0.0\"},\"clientMetadata\":{\"clientId\":\"WebCP\",\"clientRequestId\":\"lgn9lrw623mgvi7k3et\"}}",signal:"[object AbortSignal]"},input:"https://example.com/bar/",maxRetries:1,timestamp:/* @__PURE__ */new Date("2023-04-19T05:40:17.914Z"),requestOptions:{serviceId:null,readErrorBody:1}},attemptInfo:{currentTry:1,timestamp:/* @__PURE__ */new Date("2023-04-19T05:40:17.914Z")},target:"[object FetchProviderImpl]"})});case 1:results=_context10.v;addBenchmarks("toJson",results);case 2:return _context10.a(2)}},_callee10)})))})})();
@@ -4465,6 +4465,175 @@ ${this.lastInitStack}` : "";
4465
4465
  </Period>
4466
4466
  </MPD>`;
4467
4467
 
4468
+ // src/text/parseWebVtt.ts
4469
+ var WEBVTT_HEADER = "WEBVTT";
4470
+ var TIMESTAMP_RE = /^(?:(\d+):)?([0-5]\d):([0-5]\d)\.(\d{3})/;
4471
+ function parseWebVtt(input) {
4472
+ if (typeof input !== "string") {
4473
+ throw new ValidationError(
4474
+ "WebVTT input must be a string",
4475
+ ErrorOrigin.MEDIA
4476
+ );
4477
+ }
4478
+ let text = input;
4479
+ if (text.charCodeAt(0) === 65279) text = text.slice(1);
4480
+ const lines = text.split(/\r\n|\r|\n/);
4481
+ if (lines.length === 0 || !isWebVttHeader(lines[0])) {
4482
+ throw new ValidationError(
4483
+ "WebVTT must begin with a WEBVTT header",
4484
+ ErrorOrigin.MEDIA
4485
+ );
4486
+ }
4487
+ const cues = [];
4488
+ const styles = [];
4489
+ let i = 1;
4490
+ while (i < lines.length && lines[i] !== "") i++;
4491
+ while (i < lines.length) {
4492
+ if (lines[i] === "") {
4493
+ i++;
4494
+ continue;
4495
+ }
4496
+ if (lines[i] === "NOTE" || lines[i].startsWith("NOTE ") || lines[i].startsWith("NOTE ") || lines[i] === "REGION") {
4497
+ i++;
4498
+ while (i < lines.length && lines[i] !== "") i++;
4499
+ continue;
4500
+ }
4501
+ if (lines[i] === "STYLE") {
4502
+ i++;
4503
+ const start = i;
4504
+ while (i < lines.length && lines[i] !== "") i++;
4505
+ const css = lines.slice(start, i).join("\n").trim();
4506
+ if (css) styles.push(css);
4507
+ continue;
4508
+ }
4509
+ let id = null;
4510
+ if (!lines[i].includes("-->")) {
4511
+ id = lines[i];
4512
+ i++;
4513
+ if (i >= lines.length) break;
4514
+ }
4515
+ const timing = parseTiming(lines[i]);
4516
+ i++;
4517
+ if (!timing) {
4518
+ while (i < lines.length && lines[i] !== "") i++;
4519
+ continue;
4520
+ }
4521
+ const payloadLines = [];
4522
+ while (i < lines.length && lines[i] !== "") {
4523
+ payloadLines.push(lines[i]);
4524
+ i++;
4525
+ }
4526
+ const text2 = payloadLines.join("\n");
4527
+ cues.push(
4528
+ timing.settings === void 0 ? {
4529
+ id,
4530
+ startTime: timing.startTime,
4531
+ endTime: timing.endTime,
4532
+ text: text2
4533
+ } : {
4534
+ id,
4535
+ startTime: timing.startTime,
4536
+ endTime: timing.endTime,
4537
+ text: text2,
4538
+ settings: timing.settings
4539
+ }
4540
+ );
4541
+ }
4542
+ return { cues, styles };
4543
+ }
4544
+ function parseTiming(line) {
4545
+ const arrow = line.indexOf("-->");
4546
+ if (arrow < 0) return null;
4547
+ const before = line.slice(0, arrow).trim();
4548
+ const start = TIMESTAMP_RE.exec(before);
4549
+ if (!start || start[0].length !== before.length) return null;
4550
+ const rest = line.slice(arrow + 3).trim();
4551
+ const end = TIMESTAMP_RE.exec(rest);
4552
+ if (!end) return null;
4553
+ return {
4554
+ startTime: toSeconds(start[1], start[2], start[3], start[4]),
4555
+ endTime: toSeconds(end[1], end[2], end[3], end[4]),
4556
+ settings: parseCueSettings(rest.slice(end[0].length))
4557
+ };
4558
+ }
4559
+ function toSeconds(hours, minutes, seconds, millis) {
4560
+ return (hours ? Number(hours) * 3600 : 0) + Number(minutes) * 60 + Number(seconds) + Number(millis) / 1e3;
4561
+ }
4562
+ function isWebVttHeader(line) {
4563
+ if (!line.startsWith(WEBVTT_HEADER)) return false;
4564
+ if (line.length === WEBVTT_HEADER.length) return true;
4565
+ const next = line.charCodeAt(WEBVTT_HEADER.length);
4566
+ return next === 32 || next === 9;
4567
+ }
4568
+ var ALIGN = /* @__PURE__ */ new Set(["start", "center", "end", "left", "right"]);
4569
+ var LINE_ALIGN = /* @__PURE__ */ new Set(["start", "center", "end"]);
4570
+ var POSITION_ALIGN = /* @__PURE__ */ new Set(["line-left", "center", "line-right", "auto"]);
4571
+ var VERTICAL = /* @__PURE__ */ new Set(["rl", "lr"]);
4572
+ function parseCueSettings(text) {
4573
+ if (!text) return void 0;
4574
+ const settings = {};
4575
+ for (const token of text.trim().split(/\s+/)) {
4576
+ const colon = token.indexOf(":");
4577
+ if (colon <= 0) continue;
4578
+ const key = token.slice(0, colon);
4579
+ const value = token.slice(colon + 1);
4580
+ switch (key) {
4581
+ case "align": {
4582
+ const align = value === "middle" ? "center" : value;
4583
+ if (ALIGN.has(align)) settings.align = align;
4584
+ break;
4585
+ }
4586
+ case "vertical":
4587
+ if (VERTICAL.has(value))
4588
+ settings.vertical = value;
4589
+ break;
4590
+ case "size": {
4591
+ const size = parsePercent(value);
4592
+ if (size != null) settings.size = size;
4593
+ break;
4594
+ }
4595
+ case "line":
4596
+ parseLine(value, settings);
4597
+ break;
4598
+ case "position":
4599
+ parsePosition(value, settings);
4600
+ break;
4601
+ }
4602
+ }
4603
+ return Object.keys(settings).length > 0 ? settings : void 0;
4604
+ }
4605
+ function parseLine(value, settings) {
4606
+ const [pos, align] = value.split(",");
4607
+ if (pos.endsWith("%")) {
4608
+ const percent = parsePercent(pos);
4609
+ if (percent == null) return;
4610
+ settings.line = percent;
4611
+ settings.snapToLines = false;
4612
+ } else {
4613
+ const n = Number(pos);
4614
+ if (!Number.isInteger(n)) return;
4615
+ settings.line = n;
4616
+ settings.snapToLines = true;
4617
+ }
4618
+ const lineAlign = align === "middle" ? "center" : align;
4619
+ if (lineAlign && LINE_ALIGN.has(lineAlign))
4620
+ settings.lineAlign = lineAlign;
4621
+ }
4622
+ function parsePosition(value, settings) {
4623
+ const [pos, align] = value.split(",");
4624
+ const percent = parsePercent(pos);
4625
+ if (percent == null) return;
4626
+ settings.position = percent;
4627
+ const positionAlign = align === "middle" ? "center" : align;
4628
+ if (positionAlign && POSITION_ALIGN.has(positionAlign))
4629
+ settings.positionAlign = positionAlign;
4630
+ }
4631
+ function parsePercent(value) {
4632
+ if (!value.endsWith("%")) return null;
4633
+ const n = Number(value.slice(0, -1));
4634
+ return Number.isFinite(n) ? n : null;
4635
+ }
4636
+
4468
4637
  // test/vinylTestUtil/player/mediaRef.ts
4469
4638
  var mediaRef = lazy(() => {
4470
4639
  const media = document.createElement("video");
@@ -4692,6 +4861,65 @@ ${this.lastInitStack}` : "";
4692
4861
  });
4693
4862
  });
4694
4863
 
4864
+ // test/benchmark/text/sampleVtt.ts
4865
+ var PAYLOADS = [
4866
+ `<c.emphasis>The quick brown fox jumps</c>`,
4867
+ `<c.emphasis>over the lazy dog.</c>`,
4868
+ `<c.emphasis>A sentence that wraps
4869
+ across two lines of caption.</c>`,
4870
+ `-<c.emphasis>First speaker line.</c>
4871
+ -Second speaker replies.`,
4872
+ `-Line one of dialogue.
4873
+ -Line two of dialogue.`,
4874
+ `<i>Italic emphasis here</i>
4875
+ <b>and bold on the next line.</b>`,
4876
+ `<v Speaker>A line attributed to a voice.</v>`,
4877
+ `Lorem ipsum dolor sit amet.`
4878
+ ];
4879
+ var SETTINGS = [
4880
+ " align:middle line:85%,start position:50%,middle",
4881
+ " align:start line:80% position:20%,line-left size:80%",
4882
+ ""
4883
+ ];
4884
+ function buildSampleVtt(cueCount) {
4885
+ const blocks = [
4886
+ "WEBVTT",
4887
+ "X-TIMESTAMP-MAP=MPEGTS:900000,LOCAL:00:00:00.000",
4888
+ "",
4889
+ "STYLE",
4890
+ "::cue(.emphasis) { font-style:italic }",
4891
+ ""
4892
+ ];
4893
+ for (let i = 0; i < cueCount; i++) {
4894
+ blocks.push(
4895
+ String(i + 1),
4896
+ `${formatTs(i * 3)} --> ${formatTs(i * 3 + 2)}${SETTINGS[i % SETTINGS.length]}`,
4897
+ PAYLOADS[i % PAYLOADS.length],
4898
+ ""
4899
+ );
4900
+ }
4901
+ return blocks.join("\n");
4902
+ }
4903
+ function formatTs(totalSeconds) {
4904
+ const h = Math.floor(totalSeconds / 3600);
4905
+ const m = Math.floor(totalSeconds % 3600 / 60);
4906
+ const s = totalSeconds % 60;
4907
+ const pad = (n) => n.toString().padStart(2, "0");
4908
+ return `${pad(h)}:${pad(m)}:${pad(s)}.000`;
4909
+ }
4910
+ var sampleVtt = buildSampleVtt(4e3);
4911
+
4912
+ // test/benchmark/text/parseWebVtt.bench.ts
4913
+ describe("parseWebVtt", () => {
4914
+ setupBenchmark();
4915
+ it("parses a large document", async () => {
4916
+ addBenchmarks(
4917
+ "parseWebVtt - large document",
4918
+ await benchmark("parseWebVtt", () => parseWebVtt(sampleVtt))
4919
+ );
4920
+ });
4921
+ });
4922
+
4695
4923
  // test/benchmark/util/collection/LinkedList.bench.ts
4696
4924
  describe("LinkedList", () => {
4697
4925
  setupBenchmark();