@amazon/vinyl 1.2.0 → 2.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 (653) hide show
  1. package/dist/index.cjs +9225 -6633
  2. package/dist/index.cjs.map +4 -4
  3. package/dist/index.js +9080 -6435
  4. package/dist/index.js.map +4 -4
  5. package/dist/test/benchmark.es5.js +266 -253
  6. package/dist/test/benchmark.js +3256 -3190
  7. package/dist/test/benchmark.js.map +4 -4
  8. package/dist/test/integ.es5.js +1404 -1093
  9. package/dist/test/integ.js +45924 -33873
  10. package/dist/test/integ.js.map +4 -4
  11. package/dist/types/current/ad/AdBreakInfo.d.ts +160 -0
  12. package/dist/types/current/ad/AdBreakInfo.d.ts.map +1 -0
  13. package/dist/types/current/ad/AdController.d.ts +229 -0
  14. package/dist/types/current/ad/AdController.d.ts.map +1 -0
  15. package/dist/types/current/ad/AdController.js +19 -0
  16. package/dist/types/current/ad/AdControllerImpl.d.ts +146 -0
  17. package/dist/types/current/ad/AdControllerImpl.d.ts.map +1 -0
  18. package/dist/types/current/ad/AdControllerImpl.js +705 -0
  19. package/dist/types/current/ad/AdError.d.ts +6 -0
  20. package/dist/types/current/ad/AdError.d.ts.map +1 -0
  21. package/dist/types/current/ad/AdError.js +14 -0
  22. package/dist/types/current/ad/AdsProvider.d.ts +28 -0
  23. package/dist/types/current/ad/AdsProvider.d.ts.map +1 -0
  24. package/dist/types/current/ad/AdsProvider.js +5 -0
  25. package/dist/types/current/ad/defaultAdLoadOptionsResolver.d.ts +12 -0
  26. package/dist/types/current/ad/defaultAdLoadOptionsResolver.d.ts.map +1 -0
  27. package/dist/types/current/ad/defaultAdLoadOptionsResolver.js +26 -0
  28. package/dist/types/current/ad/discoverHlsInterstitials.d.ts +22 -0
  29. package/dist/types/current/ad/discoverHlsInterstitials.d.ts.map +1 -0
  30. package/dist/types/current/ad/discoverHlsInterstitials.js +246 -0
  31. package/dist/types/current/drm/DrmController.d.ts +29 -4
  32. package/dist/types/current/drm/DrmController.d.ts.map +1 -1
  33. package/dist/types/current/drm/DrmControllerImpl.d.ts +13 -4
  34. package/dist/types/current/drm/DrmControllerImpl.d.ts.map +1 -1
  35. package/dist/types/current/drm/DrmControllerImpl.js +85 -14
  36. package/dist/types/current/drm/util/unpackPlayReadyChallenge.d.ts +5 -0
  37. package/dist/types/current/drm/util/unpackPlayReadyChallenge.d.ts.map +1 -1
  38. package/dist/types/current/drm/util/unpackPlayReadyChallenge.js +5 -0
  39. package/dist/types/current/index.d.ts +151 -126
  40. package/dist/types/current/index.d.ts.map +1 -1
  41. package/dist/types/current/index.js +151 -126
  42. package/dist/types/current/playback/PlaybackControllerImpl.d.ts +1 -0
  43. package/dist/types/current/playback/PlaybackControllerImpl.d.ts.map +1 -1
  44. package/dist/types/current/playback/PlaybackControllerImpl.js +44 -5
  45. package/dist/types/current/playback/PlaybackSource.d.ts +1 -1
  46. package/dist/types/current/playback/ReadonlyPlaybackController.d.ts +6 -1
  47. package/dist/types/current/playback/ReadonlyPlaybackController.d.ts.map +1 -1
  48. package/dist/types/current/playback/ReadonlyPlaybackController.js +1 -0
  49. package/dist/types/current/streaming/ContentStream.d.ts +8 -1
  50. package/dist/types/current/streaming/ContentStream.d.ts.map +1 -1
  51. package/dist/types/current/streaming/ContentStream.js +19 -2
  52. package/dist/types/current/streaming/LoadMetric.d.ts +58 -0
  53. package/dist/types/current/streaming/LoadMetric.d.ts.map +1 -0
  54. package/dist/types/current/streaming/LoadMetric.js +5 -0
  55. package/dist/types/current/streaming/ManifestController.d.ts +16 -1
  56. package/dist/types/current/streaming/ManifestController.d.ts.map +1 -1
  57. package/dist/types/current/streaming/ManifestControllerImpl.d.ts +43 -0
  58. package/dist/types/current/streaming/ManifestControllerImpl.d.ts.map +1 -0
  59. package/dist/types/current/streaming/ManifestControllerImpl.js +104 -0
  60. package/dist/types/current/streaming/MediaQualityMetadata.d.ts +16 -0
  61. package/dist/types/current/streaming/MediaQualityMetadata.d.ts.map +1 -1
  62. package/dist/types/current/streaming/MediaQualityMetadata.js +6 -0
  63. package/dist/types/current/streaming/MediaTimeline.d.ts +6 -0
  64. package/dist/types/current/streaming/MediaTimeline.d.ts.map +1 -1
  65. package/dist/types/current/streaming/SegmentController.d.ts +5 -0
  66. package/dist/types/current/streaming/SegmentController.d.ts.map +1 -1
  67. package/dist/types/current/streaming/SegmentControllerImpl.d.ts +12 -0
  68. package/dist/types/current/streaming/SegmentControllerImpl.d.ts.map +1 -1
  69. package/dist/types/current/streaming/SegmentControllerImpl.js +67 -10
  70. package/dist/types/current/streaming/StreamingEventMap.d.ts +38 -1
  71. package/dist/types/current/streaming/StreamingEventMap.d.ts.map +1 -1
  72. package/dist/types/current/streaming/StreamingEventMap.js +4 -0
  73. package/dist/types/current/streaming/abr/QualitySelectorImpl.d.ts +28 -0
  74. package/dist/types/current/streaming/abr/QualitySelectorImpl.d.ts.map +1 -1
  75. package/dist/types/current/streaming/abr/QualitySelectorImpl.js +39 -4
  76. package/dist/types/current/streaming/buffering/BufferingController.d.ts +37 -0
  77. package/dist/types/current/streaming/buffering/BufferingController.d.ts.map +1 -1
  78. package/dist/types/current/streaming/buffering/BufferingController.js +79 -3
  79. package/dist/types/current/streaming/buffering/MediaSourceController.d.ts +16 -11
  80. package/dist/types/current/streaming/buffering/MediaSourceController.d.ts.map +1 -1
  81. package/dist/types/current/streaming/buffering/MediaSourceController.js +76 -51
  82. package/dist/types/current/streaming/buffering/SourceBufferController.d.ts.map +1 -1
  83. package/dist/types/current/streaming/buffering/SourceBufferController.js +5 -2
  84. package/dist/types/current/streaming/buffering/codecDenylist.d.ts +23 -0
  85. package/dist/types/current/streaming/buffering/codecDenylist.d.ts.map +1 -0
  86. package/dist/types/current/streaming/buffering/codecDenylist.js +62 -0
  87. package/dist/types/current/streaming/createAllowedContentTypesValue.d.ts +30 -0
  88. package/dist/types/current/streaming/createAllowedContentTypesValue.d.ts.map +1 -0
  89. package/dist/types/current/streaming/createAllowedContentTypesValue.js +43 -0
  90. package/dist/types/current/streaming/createDefaultMediaTimelineTransformer.d.ts +4 -1
  91. package/dist/types/current/streaming/createDefaultMediaTimelineTransformer.d.ts.map +1 -1
  92. package/dist/types/current/streaming/createDefaultMediaTimelineTransformer.js +32 -1
  93. package/dist/types/current/streaming/mediaTimelineAccessibilityFilter.d.ts +35 -0
  94. package/dist/types/current/streaming/mediaTimelineAccessibilityFilter.d.ts.map +1 -0
  95. package/dist/types/current/streaming/mediaTimelineAccessibilityFilter.js +75 -0
  96. package/dist/types/current/streaming/mediaTimelineLanguageFilter.d.ts +24 -6
  97. package/dist/types/current/streaming/mediaTimelineLanguageFilter.d.ts.map +1 -1
  98. package/dist/types/current/streaming/mediaTimelineLanguageFilter.js +61 -16
  99. package/dist/types/current/text/SidecarTextTrackController.d.ts +91 -0
  100. package/dist/types/current/text/SidecarTextTrackController.d.ts.map +1 -0
  101. package/dist/types/current/text/SidecarTextTrackController.js +237 -0
  102. package/dist/types/current/text/SidecarTextTrackLoader.d.ts +60 -0
  103. package/dist/types/current/text/SidecarTextTrackLoader.d.ts.map +1 -0
  104. package/dist/types/current/text/SidecarTextTrackLoader.js +144 -0
  105. package/dist/types/current/text/TextTrack.d.ts +125 -0
  106. package/dist/types/current/text/TextTrack.d.ts.map +1 -0
  107. package/dist/types/current/text/TextTrack.js +9 -0
  108. package/dist/types/current/text/VttCueStyle.d.ts +41 -0
  109. package/dist/types/current/text/VttCueStyle.d.ts.map +1 -0
  110. package/dist/types/current/text/VttCueStyle.js +45 -0
  111. package/dist/types/current/text/discoverDashTextTracks.d.ts +24 -0
  112. package/dist/types/current/text/discoverDashTextTracks.d.ts.map +1 -0
  113. package/dist/types/current/text/discoverDashTextTracks.js +109 -0
  114. package/dist/types/current/text/discoverHlsTextTracks.d.ts +19 -0
  115. package/dist/types/current/text/discoverHlsTextTracks.d.ts.map +1 -0
  116. package/dist/types/current/text/discoverHlsTextTracks.js +49 -0
  117. package/dist/types/current/text/parseWebVtt.d.ts +46 -0
  118. package/dist/types/current/text/parseWebVtt.d.ts.map +1 -0
  119. package/dist/types/current/text/parseWebVtt.js +120 -0
  120. package/dist/types/current/text/pickPreferredTextTrack.d.ts +14 -0
  121. package/dist/types/current/text/pickPreferredTextTrack.d.ts.map +1 -0
  122. package/dist/types/current/text/pickPreferredTextTrack.js +68 -0
  123. package/dist/types/current/track/SeekRange.d.ts +9 -0
  124. package/dist/types/current/track/SeekRange.d.ts.map +1 -0
  125. package/dist/types/current/track/SeekRange.js +5 -0
  126. package/dist/types/current/track/Track.d.ts +50 -7
  127. package/dist/types/current/track/Track.d.ts.map +1 -1
  128. package/dist/types/current/track/TrackBase.d.ts +30 -29
  129. package/dist/types/current/track/TrackBase.d.ts.map +1 -1
  130. package/dist/types/current/track/TrackBase.js +68 -16
  131. package/dist/types/current/track/TrackController.d.ts +100 -36
  132. package/dist/types/current/track/TrackController.d.ts.map +1 -1
  133. package/dist/types/current/track/TrackController.js +368 -115
  134. package/dist/types/current/track/TrackFactory.d.ts +23 -3
  135. package/dist/types/current/track/TrackFactory.d.ts.map +1 -1
  136. package/dist/types/current/track/TrackFactory.js +9 -3
  137. package/dist/types/current/track/dash/DashManifestController.d.ts +1 -40
  138. package/dist/types/current/track/dash/DashManifestController.d.ts.map +1 -1
  139. package/dist/types/current/track/dash/DashManifestController.js +1 -79
  140. package/dist/types/current/track/dash/DashMediaQualityMetadataResolver.d.ts.map +1 -1
  141. package/dist/types/current/track/dash/DashMediaQualityMetadataResolver.js +13 -0
  142. package/dist/types/current/track/dash/DashTrack.d.ts +4 -5
  143. package/dist/types/current/track/dash/DashTrack.d.ts.map +1 -1
  144. package/dist/types/current/track/dash/DashTrack.js +3 -5
  145. package/dist/types/current/track/dash/buildDashMediaTimeline.d.ts.map +1 -1
  146. package/dist/types/current/track/dash/buildDashMediaTimeline.js +3 -2
  147. package/dist/types/current/track/dash/createDashContentTypesValue.js +2 -2
  148. package/dist/types/current/track/dash/createDashFactories.d.ts +39 -12
  149. package/dist/types/current/track/dash/createDashFactories.d.ts.map +1 -1
  150. package/dist/types/current/track/dash/createDashFactories.js +33 -5
  151. package/dist/types/current/track/dash/createSegmentControllerFactory.d.ts +0 -5
  152. package/dist/types/current/track/dash/createSegmentControllerFactory.d.ts.map +1 -1
  153. package/dist/types/current/track/dash/timeline/DashRepresentationSegmentProvider.d.ts.map +1 -1
  154. package/dist/types/current/track/dash/timeline/DashRepresentationSegmentProvider.js +2 -1
  155. package/dist/types/current/track/dash/util/mpd.d.ts +10 -0
  156. package/dist/types/current/track/dash/util/mpd.d.ts.map +1 -1
  157. package/dist/types/current/track/dash/util/mpd.js +16 -0
  158. package/dist/types/current/track/hls/HlsManifestController.d.ts +1 -25
  159. package/dist/types/current/track/hls/HlsManifestController.d.ts.map +1 -1
  160. package/dist/types/current/track/hls/HlsManifestController.js +1 -68
  161. package/dist/types/{ts3.7/track/hls/HlsManifestProvider.d.ts → current/track/hls/HlsManifestData.d.ts} +4 -6
  162. package/dist/types/current/track/hls/HlsManifestData.d.ts.map +1 -0
  163. package/dist/types/current/track/hls/HlsManifestData.js +5 -0
  164. package/dist/types/current/track/hls/HlsMediaQualityMetadataResolver.js +9 -6
  165. package/dist/types/current/track/hls/HlsTrack.d.ts +5 -6
  166. package/dist/types/current/track/hls/HlsTrack.d.ts.map +1 -1
  167. package/dist/types/current/track/hls/HlsTrack.js +3 -5
  168. package/dist/types/current/track/hls/buildHlsMediaTimeline.d.ts +8 -1
  169. package/dist/types/current/track/hls/buildHlsMediaTimeline.d.ts.map +1 -1
  170. package/dist/types/current/track/hls/buildHlsMediaTimeline.js +134 -67
  171. package/dist/types/current/track/hls/createDefaultHlsManifestTransformer.d.ts +1 -1
  172. package/dist/types/current/track/hls/createDefaultHlsManifestTransformer.d.ts.map +1 -1
  173. package/dist/types/current/track/hls/createHlsContentTypesValue.d.ts +1 -1
  174. package/dist/types/current/track/hls/createHlsContentTypesValue.d.ts.map +1 -1
  175. package/dist/types/current/track/hls/createHlsFactories.d.ts +40 -13
  176. package/dist/types/current/track/hls/createHlsFactories.d.ts.map +1 -1
  177. package/dist/types/current/track/hls/createHlsFactories.js +35 -6
  178. package/dist/types/current/track/hls/createHlsManifestProvider.d.ts +6 -0
  179. package/dist/types/current/track/hls/createHlsManifestProvider.d.ts.map +1 -0
  180. package/dist/types/current/track/hls/createHlsManifestProvider.js +9 -0
  181. package/dist/types/current/track/hls/createUrlHlsManifestProvider.d.ts +4 -4
  182. package/dist/types/current/track/hls/createUrlHlsManifestProvider.d.ts.map +1 -1
  183. package/dist/types/current/track/hls/createUrlHlsManifestProvider.js +22 -3
  184. package/dist/types/current/track/hls/index.d.ts +1 -1
  185. package/dist/types/current/track/hls/index.d.ts.map +1 -1
  186. package/dist/types/current/track/hls/index.js +1 -1
  187. package/dist/types/current/track/inferLoadOptionsFromUri.d.ts +15 -0
  188. package/dist/types/current/track/inferLoadOptionsFromUri.d.ts.map +1 -0
  189. package/dist/types/current/track/inferLoadOptionsFromUri.js +55 -0
  190. package/dist/types/current/track/mse/MseTrack.d.ts +66 -8
  191. package/dist/types/current/track/mse/MseTrack.d.ts.map +1 -1
  192. package/dist/types/current/track/mse/MseTrack.js +216 -52
  193. package/dist/types/current/track/source/SourceObjectTrack.d.ts +2 -2
  194. package/dist/types/current/track/source/SourceObjectTrack.d.ts.map +1 -1
  195. package/dist/types/current/track/source/SourceTrack.d.ts +2 -2
  196. package/dist/types/current/track/source/SourceTrack.d.ts.map +1 -1
  197. package/dist/types/current/track/source/SourceTrack.js +1 -2
  198. package/dist/types/current/track/source/SourceTrackBase.d.ts +7 -5
  199. package/dist/types/current/track/source/SourceTrackBase.d.ts.map +1 -1
  200. package/dist/types/current/track/source/SourceTrackBase.js +26 -9
  201. package/dist/types/current/tsconfig.tsbuildinfo +1 -1
  202. package/dist/types/current/util/media/codecOverrides.d.ts +33 -0
  203. package/dist/types/current/util/media/codecOverrides.d.ts.map +1 -0
  204. package/dist/types/current/util/media/codecOverrides.js +37 -0
  205. package/dist/types/current/util/media/codecSupport.d.ts +6 -0
  206. package/dist/types/current/util/media/codecSupport.d.ts.map +1 -0
  207. package/dist/types/current/util/media/codecSupport.js +17 -0
  208. package/dist/types/current/util/media/mediaSource.d.ts +5 -0
  209. package/dist/types/current/util/media/mediaSource.d.ts.map +1 -1
  210. package/dist/types/current/util/media/mediaSource.js +6 -1
  211. package/dist/types/current/vinyl/ReadonlyPlaybackStreamingState.d.ts +9 -2
  212. package/dist/types/current/vinyl/ReadonlyPlaybackStreamingState.d.ts.map +1 -1
  213. package/dist/types/current/vinyl/VinylDeps.d.ts +5 -0
  214. package/dist/types/current/vinyl/VinylDeps.d.ts.map +1 -1
  215. package/dist/types/current/vinyl/VinylOptions.d.ts +68 -4
  216. package/dist/types/current/vinyl/VinylOptions.d.ts.map +1 -1
  217. package/dist/types/current/vinyl/VinylOptions.js +17 -2
  218. package/dist/types/current/vinyl/VinylPlayer.d.ts +63 -4
  219. package/dist/types/current/vinyl/VinylPlayer.d.ts.map +1 -1
  220. package/dist/types/current/vinyl/VinylPlayer.js +216 -36
  221. package/dist/types/current/vinyl/createVinylFactories.d.ts +55 -12
  222. package/dist/types/current/vinyl/createVinylFactories.d.ts.map +1 -1
  223. package/dist/types/current/vinyl/createVinylFactories.js +4 -0
  224. package/dist/types/ts3.7/ad/AdBreakInfo.d.ts +160 -0
  225. package/dist/types/ts3.7/ad/AdController.d.ts +243 -0
  226. package/dist/types/ts3.7/ad/AdControllerImpl.d.ts +146 -0
  227. package/dist/types/ts3.7/ad/AdError.d.ts +6 -0
  228. package/dist/types/ts3.7/ad/AdsProvider.d.ts +28 -0
  229. package/dist/types/ts3.7/ad/defaultAdLoadOptionsResolver.d.ts +12 -0
  230. package/dist/types/ts3.7/ad/discoverHlsInterstitials.d.ts +22 -0
  231. package/dist/types/ts3.7/drm/DrmController.d.ts +29 -4
  232. package/dist/types/ts3.7/drm/DrmControllerImpl.d.ts +13 -4
  233. package/dist/types/ts3.7/drm/util/unpackPlayReadyChallenge.d.ts +5 -0
  234. package/dist/types/ts3.7/index.d.ts +151 -126
  235. package/dist/types/ts3.7/playback/PlaybackControllerImpl.d.ts +1 -0
  236. package/dist/types/ts3.7/playback/PlaybackSource.d.ts +1 -1
  237. package/dist/types/ts3.7/playback/ReadonlyPlaybackController.d.ts +6 -0
  238. package/dist/types/ts3.7/streaming/ContentStream.d.ts +8 -1
  239. package/dist/types/ts3.7/streaming/LoadMetric.d.ts +58 -0
  240. package/dist/types/ts3.7/streaming/ManifestController.d.ts +16 -1
  241. package/dist/types/ts3.7/streaming/ManifestControllerImpl.d.ts +40 -0
  242. package/dist/types/ts3.7/streaming/MediaQualityMetadata.d.ts +19 -0
  243. package/dist/types/ts3.7/streaming/MediaTimeline.d.ts +6 -0
  244. package/dist/types/ts3.7/streaming/SegmentController.d.ts +5 -0
  245. package/dist/types/ts3.7/streaming/SegmentControllerImpl.d.ts +12 -0
  246. package/dist/types/ts3.7/streaming/StreamingEventMap.d.ts +42 -1
  247. package/dist/types/ts3.7/streaming/abr/QualitySelectorImpl.d.ts +28 -0
  248. package/dist/types/ts3.7/streaming/buffering/BufferingController.d.ts +37 -0
  249. package/dist/types/ts3.7/streaming/buffering/MediaSourceController.d.ts +16 -11
  250. package/dist/types/ts3.7/streaming/buffering/codecDenylist.d.ts +23 -0
  251. package/dist/types/ts3.7/streaming/createAllowedContentTypesValue.d.ts +30 -0
  252. package/dist/types/ts3.7/streaming/createDefaultMediaTimelineTransformer.d.ts +4 -1
  253. package/dist/types/ts3.7/streaming/mediaTimelineAccessibilityFilter.d.ts +35 -0
  254. package/dist/types/ts3.7/streaming/mediaTimelineLanguageFilter.d.ts +24 -6
  255. package/dist/types/ts3.7/text/SidecarTextTrackController.d.ts +91 -0
  256. package/dist/types/ts3.7/text/SidecarTextTrackLoader.d.ts +60 -0
  257. package/dist/types/ts3.7/text/TextTrack.d.ts +129 -0
  258. package/dist/types/ts3.7/text/VttCueStyle.d.ts +41 -0
  259. package/dist/types/ts3.7/text/discoverDashTextTracks.d.ts +24 -0
  260. package/dist/types/ts3.7/text/discoverHlsTextTracks.d.ts +19 -0
  261. package/dist/types/ts3.7/text/parseWebVtt.d.ts +46 -0
  262. package/dist/types/ts3.7/text/pickPreferredTextTrack.d.ts +14 -0
  263. package/dist/types/ts3.7/track/SeekRange.d.ts +9 -0
  264. package/dist/types/ts3.7/track/Track.d.ts +50 -7
  265. package/dist/types/ts3.7/track/TrackBase.d.ts +21 -29
  266. package/dist/types/ts3.7/track/TrackController.d.ts +102 -37
  267. package/dist/types/ts3.7/track/TrackFactory.d.ts +22 -2
  268. package/dist/types/ts3.7/track/dash/DashManifestController.d.ts +1 -36
  269. package/dist/types/ts3.7/track/dash/DashTrack.d.ts +4 -5
  270. package/dist/types/ts3.7/track/dash/createDashFactories.d.ts +39 -12
  271. package/dist/types/ts3.7/track/dash/createSegmentControllerFactory.d.ts +0 -5
  272. package/dist/types/ts3.7/track/dash/util/mpd.d.ts +10 -0
  273. package/dist/types/ts3.7/track/hls/HlsManifestController.d.ts +1 -22
  274. package/dist/types/{current/track/hls/HlsManifestProvider.d.ts → ts3.7/track/hls/HlsManifestData.d.ts} +4 -6
  275. package/dist/types/ts3.7/track/hls/HlsTrack.d.ts +5 -6
  276. package/dist/types/ts3.7/track/hls/buildHlsMediaTimeline.d.ts +8 -1
  277. package/dist/types/ts3.7/track/hls/createDefaultHlsManifestTransformer.d.ts +1 -1
  278. package/dist/types/ts3.7/track/hls/createHlsContentTypesValue.d.ts +1 -1
  279. package/dist/types/ts3.7/track/hls/createHlsFactories.d.ts +40 -13
  280. package/dist/types/ts3.7/track/hls/createHlsManifestProvider.d.ts +6 -0
  281. package/dist/types/ts3.7/track/hls/createUrlHlsManifestProvider.d.ts +4 -4
  282. package/dist/types/ts3.7/track/hls/index.d.ts +1 -1
  283. package/dist/types/ts3.7/track/inferLoadOptionsFromUri.d.ts +15 -0
  284. package/dist/types/ts3.7/track/mse/MseTrack.d.ts +65 -7
  285. package/dist/types/ts3.7/track/source/SourceObjectTrack.d.ts +2 -2
  286. package/dist/types/ts3.7/track/source/SourceTrack.d.ts +2 -2
  287. package/dist/types/ts3.7/track/source/SourceTrackBase.d.ts +7 -5
  288. package/dist/types/ts3.7/util/media/codecOverrides.d.ts +33 -0
  289. package/dist/types/ts3.7/util/media/codecSupport.d.ts +6 -0
  290. package/dist/types/ts3.7/util/media/mediaSource.d.ts +5 -0
  291. package/dist/types/ts3.7/vinyl/ReadonlyPlaybackStreamingState.d.ts +9 -2
  292. package/dist/types/ts3.7/vinyl/VinylDeps.d.ts +5 -0
  293. package/dist/types/ts3.7/vinyl/VinylOptions.d.ts +68 -4
  294. package/dist/types/ts3.7/vinyl/VinylPlayer.d.ts +33 -4
  295. package/dist/types/ts3.7/vinyl/createVinylFactories.d.ts +55 -12
  296. package/dist/types/ts4.1/ad/AdBreakInfo.d.ts +160 -0
  297. package/dist/types/ts4.1/ad/AdController.d.ts +243 -0
  298. package/dist/types/ts4.1/ad/AdControllerImpl.d.ts +146 -0
  299. package/dist/types/ts4.1/ad/AdError.d.ts +6 -0
  300. package/dist/types/ts4.1/ad/AdsProvider.d.ts +28 -0
  301. package/dist/types/ts4.1/ad/defaultAdLoadOptionsResolver.d.ts +12 -0
  302. package/dist/types/ts4.1/ad/discoverHlsInterstitials.d.ts +22 -0
  303. package/dist/types/ts4.1/drm/DrmController.d.ts +29 -4
  304. package/dist/types/ts4.1/drm/DrmControllerImpl.d.ts +13 -4
  305. package/dist/types/ts4.1/drm/util/unpackPlayReadyChallenge.d.ts +5 -0
  306. package/dist/types/ts4.1/index.d.ts +151 -126
  307. package/dist/types/ts4.1/playback/PlaybackControllerImpl.d.ts +1 -0
  308. package/dist/types/ts4.1/playback/PlaybackSource.d.ts +1 -1
  309. package/dist/types/ts4.1/playback/ReadonlyPlaybackController.d.ts +6 -0
  310. package/dist/types/ts4.1/streaming/ContentStream.d.ts +8 -1
  311. package/dist/types/ts4.1/streaming/LoadMetric.d.ts +58 -0
  312. package/dist/types/ts4.1/streaming/ManifestController.d.ts +16 -1
  313. package/dist/types/ts4.1/streaming/ManifestControllerImpl.d.ts +40 -0
  314. package/dist/types/ts4.1/streaming/MediaQualityMetadata.d.ts +19 -0
  315. package/dist/types/ts4.1/streaming/MediaTimeline.d.ts +6 -0
  316. package/dist/types/ts4.1/streaming/SegmentController.d.ts +5 -0
  317. package/dist/types/ts4.1/streaming/SegmentControllerImpl.d.ts +12 -0
  318. package/dist/types/ts4.1/streaming/StreamingEventMap.d.ts +42 -1
  319. package/dist/types/ts4.1/streaming/abr/QualitySelectorImpl.d.ts +28 -0
  320. package/dist/types/ts4.1/streaming/buffering/BufferingController.d.ts +37 -0
  321. package/dist/types/ts4.1/streaming/buffering/MediaSourceController.d.ts +16 -11
  322. package/dist/types/ts4.1/streaming/buffering/codecDenylist.d.ts +23 -0
  323. package/dist/types/ts4.1/streaming/createAllowedContentTypesValue.d.ts +30 -0
  324. package/dist/types/ts4.1/streaming/createDefaultMediaTimelineTransformer.d.ts +4 -1
  325. package/dist/types/ts4.1/streaming/mediaTimelineAccessibilityFilter.d.ts +35 -0
  326. package/dist/types/ts4.1/streaming/mediaTimelineLanguageFilter.d.ts +24 -6
  327. package/dist/types/ts4.1/text/SidecarTextTrackController.d.ts +92 -0
  328. package/dist/types/ts4.1/text/SidecarTextTrackLoader.d.ts +60 -0
  329. package/dist/types/ts4.1/text/TextTrack.d.ts +129 -0
  330. package/dist/types/ts4.1/text/VttCueStyle.d.ts +41 -0
  331. package/dist/types/ts4.1/text/discoverDashTextTracks.d.ts +24 -0
  332. package/dist/types/ts4.1/text/discoverHlsTextTracks.d.ts +19 -0
  333. package/dist/types/ts4.1/text/parseWebVtt.d.ts +46 -0
  334. package/dist/types/ts4.1/text/pickPreferredTextTrack.d.ts +14 -0
  335. package/dist/types/ts4.1/track/SeekRange.d.ts +9 -0
  336. package/dist/types/ts4.1/track/Track.d.ts +50 -7
  337. package/dist/types/ts4.1/track/TrackBase.d.ts +21 -29
  338. package/dist/types/ts4.1/track/TrackController.d.ts +102 -37
  339. package/dist/types/ts4.1/track/TrackFactory.d.ts +22 -2
  340. package/dist/types/ts4.1/track/dash/DashManifestController.d.ts +1 -36
  341. package/dist/types/ts4.1/track/dash/DashTrack.d.ts +4 -5
  342. package/dist/types/ts4.1/track/dash/createDashFactories.d.ts +39 -12
  343. package/dist/types/ts4.1/track/dash/createSegmentControllerFactory.d.ts +0 -5
  344. package/dist/types/ts4.1/track/dash/util/mpd.d.ts +10 -0
  345. package/dist/types/ts4.1/track/hls/HlsManifestController.d.ts +1 -22
  346. package/dist/types/ts4.1/track/hls/{HlsManifestProvider.d.ts → HlsManifestData.d.ts} +4 -6
  347. package/dist/types/ts4.1/track/hls/HlsTrack.d.ts +5 -6
  348. package/dist/types/ts4.1/track/hls/buildHlsMediaTimeline.d.ts +8 -1
  349. package/dist/types/ts4.1/track/hls/createDefaultHlsManifestTransformer.d.ts +1 -1
  350. package/dist/types/ts4.1/track/hls/createHlsContentTypesValue.d.ts +1 -1
  351. package/dist/types/ts4.1/track/hls/createHlsFactories.d.ts +41 -13
  352. package/dist/types/ts4.1/track/hls/createHlsManifestProvider.d.ts +6 -0
  353. package/dist/types/ts4.1/track/hls/createUrlHlsManifestProvider.d.ts +4 -4
  354. package/dist/types/ts4.1/track/hls/index.d.ts +1 -1
  355. package/dist/types/ts4.1/track/inferLoadOptionsFromUri.d.ts +15 -0
  356. package/dist/types/ts4.1/track/mse/MseTrack.d.ts +65 -7
  357. package/dist/types/ts4.1/track/source/SourceObjectTrack.d.ts +2 -2
  358. package/dist/types/ts4.1/track/source/SourceTrack.d.ts +2 -2
  359. package/dist/types/ts4.1/track/source/SourceTrackBase.d.ts +7 -5
  360. package/dist/types/ts4.1/util/media/codecOverrides.d.ts +33 -0
  361. package/dist/types/ts4.1/util/media/codecSupport.d.ts +6 -0
  362. package/dist/types/ts4.1/util/media/mediaSource.d.ts +5 -0
  363. package/dist/types/ts4.1/vinyl/ReadonlyPlaybackStreamingState.d.ts +9 -2
  364. package/dist/types/ts4.1/vinyl/VinylDeps.d.ts +5 -0
  365. package/dist/types/ts4.1/vinyl/VinylOptions.d.ts +68 -4
  366. package/dist/types/ts4.1/vinyl/VinylPlayer.d.ts +33 -4
  367. package/dist/types/ts4.1/vinyl/createVinylFactories.d.ts +56 -12
  368. package/dist/types/ts4.7/ad/AdBreakInfo.d.ts +160 -0
  369. package/dist/types/ts4.7/ad/AdController.d.ts +243 -0
  370. package/dist/types/ts4.7/ad/AdControllerImpl.d.ts +146 -0
  371. package/dist/types/ts4.7/ad/AdError.d.ts +6 -0
  372. package/dist/types/ts4.7/ad/AdsProvider.d.ts +28 -0
  373. package/dist/types/ts4.7/ad/defaultAdLoadOptionsResolver.d.ts +12 -0
  374. package/dist/types/ts4.7/ad/discoverHlsInterstitials.d.ts +22 -0
  375. package/dist/types/ts4.7/drm/DrmController.d.ts +29 -4
  376. package/dist/types/ts4.7/drm/DrmControllerImpl.d.ts +13 -4
  377. package/dist/types/ts4.7/drm/util/unpackPlayReadyChallenge.d.ts +5 -0
  378. package/dist/types/ts4.7/index.d.ts +151 -126
  379. package/dist/types/ts4.7/playback/PlaybackControllerImpl.d.ts +1 -0
  380. package/dist/types/ts4.7/playback/PlaybackSource.d.ts +1 -1
  381. package/dist/types/ts4.7/playback/ReadonlyPlaybackController.d.ts +6 -0
  382. package/dist/types/ts4.7/streaming/ContentStream.d.ts +8 -1
  383. package/dist/types/ts4.7/streaming/LoadMetric.d.ts +58 -0
  384. package/dist/types/ts4.7/streaming/ManifestController.d.ts +16 -1
  385. package/dist/types/ts4.7/streaming/ManifestControllerImpl.d.ts +43 -0
  386. package/dist/types/ts4.7/streaming/MediaQualityMetadata.d.ts +19 -0
  387. package/dist/types/ts4.7/streaming/MediaTimeline.d.ts +6 -0
  388. package/dist/types/ts4.7/streaming/SegmentController.d.ts +5 -0
  389. package/dist/types/ts4.7/streaming/SegmentControllerImpl.d.ts +12 -0
  390. package/dist/types/ts4.7/streaming/StreamingEventMap.d.ts +42 -1
  391. package/dist/types/ts4.7/streaming/abr/QualitySelectorImpl.d.ts +28 -0
  392. package/dist/types/ts4.7/streaming/buffering/BufferingController.d.ts +37 -0
  393. package/dist/types/ts4.7/streaming/buffering/MediaSourceController.d.ts +16 -11
  394. package/dist/types/ts4.7/streaming/buffering/codecDenylist.d.ts +23 -0
  395. package/dist/types/ts4.7/streaming/createAllowedContentTypesValue.d.ts +30 -0
  396. package/dist/types/ts4.7/streaming/createDefaultMediaTimelineTransformer.d.ts +4 -1
  397. package/dist/types/ts4.7/streaming/mediaTimelineAccessibilityFilter.d.ts +35 -0
  398. package/dist/types/ts4.7/streaming/mediaTimelineLanguageFilter.d.ts +24 -6
  399. package/dist/types/ts4.7/text/SidecarTextTrackController.d.ts +91 -0
  400. package/dist/types/ts4.7/text/SidecarTextTrackLoader.d.ts +60 -0
  401. package/dist/types/ts4.7/text/TextTrack.d.ts +129 -0
  402. package/dist/types/ts4.7/text/VttCueStyle.d.ts +41 -0
  403. package/dist/types/ts4.7/text/discoverDashTextTracks.d.ts +24 -0
  404. package/dist/types/ts4.7/text/discoverHlsTextTracks.d.ts +19 -0
  405. package/dist/types/ts4.7/text/parseWebVtt.d.ts +46 -0
  406. package/dist/types/ts4.7/text/pickPreferredTextTrack.d.ts +14 -0
  407. package/dist/types/ts4.7/track/SeekRange.d.ts +9 -0
  408. package/dist/types/ts4.7/track/Track.d.ts +50 -7
  409. package/dist/types/ts4.7/track/TrackBase.d.ts +30 -29
  410. package/dist/types/ts4.7/track/TrackController.d.ts +102 -37
  411. package/dist/types/ts4.7/track/TrackFactory.d.ts +23 -3
  412. package/dist/types/ts4.7/track/dash/DashManifestController.d.ts +1 -40
  413. package/dist/types/ts4.7/track/dash/DashTrack.d.ts +4 -5
  414. package/dist/types/ts4.7/track/dash/createDashFactories.d.ts +39 -12
  415. package/dist/types/ts4.7/track/dash/createSegmentControllerFactory.d.ts +0 -5
  416. package/dist/types/ts4.7/track/dash/util/mpd.d.ts +10 -0
  417. package/dist/types/ts4.7/track/hls/HlsManifestController.d.ts +1 -25
  418. package/dist/types/ts4.7/track/hls/{HlsManifestProvider.d.ts → HlsManifestData.d.ts} +4 -6
  419. package/dist/types/ts4.7/track/hls/HlsTrack.d.ts +5 -6
  420. package/dist/types/ts4.7/track/hls/buildHlsMediaTimeline.d.ts +8 -1
  421. package/dist/types/ts4.7/track/hls/createDefaultHlsManifestTransformer.d.ts +1 -1
  422. package/dist/types/ts4.7/track/hls/createHlsContentTypesValue.d.ts +1 -1
  423. package/dist/types/ts4.7/track/hls/createHlsFactories.d.ts +40 -13
  424. package/dist/types/ts4.7/track/hls/createHlsManifestProvider.d.ts +6 -0
  425. package/dist/types/ts4.7/track/hls/createUrlHlsManifestProvider.d.ts +4 -4
  426. package/dist/types/ts4.7/track/hls/index.d.ts +1 -1
  427. package/dist/types/ts4.7/track/inferLoadOptionsFromUri.d.ts +15 -0
  428. package/dist/types/ts4.7/track/mse/MseTrack.d.ts +66 -8
  429. package/dist/types/ts4.7/track/source/SourceObjectTrack.d.ts +2 -2
  430. package/dist/types/ts4.7/track/source/SourceTrack.d.ts +2 -2
  431. package/dist/types/ts4.7/track/source/SourceTrackBase.d.ts +7 -5
  432. package/dist/types/ts4.7/util/media/codecOverrides.d.ts +33 -0
  433. package/dist/types/ts4.7/util/media/codecSupport.d.ts +6 -0
  434. package/dist/types/ts4.7/util/media/mediaSource.d.ts +5 -0
  435. package/dist/types/ts4.7/vinyl/ReadonlyPlaybackStreamingState.d.ts +9 -2
  436. package/dist/types/ts4.7/vinyl/VinylDeps.d.ts +5 -0
  437. package/dist/types/ts4.7/vinyl/VinylOptions.d.ts +68 -4
  438. package/dist/types/ts4.7/vinyl/VinylPlayer.d.ts +63 -4
  439. package/dist/types/ts4.7/vinyl/createVinylFactories.d.ts +55 -12
  440. package/dist/unit/types/current/ad/AdController.test.d.ts +2 -0
  441. package/dist/unit/types/current/ad/AdController.test.d.ts.map +1 -0
  442. package/dist/unit/types/current/ad/AdController.test.js +10 -0
  443. package/dist/unit/types/current/ad/AdControllerImpl.test.d.ts +2 -0
  444. package/dist/unit/types/current/ad/AdControllerImpl.test.d.ts.map +1 -0
  445. package/dist/unit/types/current/ad/AdControllerImpl.test.js +1456 -0
  446. package/dist/unit/types/current/ad/defaultAdLoadOptionsResolver.test.d.ts +2 -0
  447. package/dist/unit/types/current/ad/defaultAdLoadOptionsResolver.test.d.ts.map +1 -0
  448. package/dist/unit/types/current/ad/defaultAdLoadOptionsResolver.test.js +56 -0
  449. package/dist/unit/types/current/ad/discoverHlsInterstitials.test.d.ts +2 -0
  450. package/dist/unit/types/current/ad/discoverHlsInterstitials.test.d.ts.map +1 -0
  451. package/dist/unit/types/current/ad/discoverHlsInterstitials.test.js +756 -0
  452. package/dist/unit/types/current/drm/DrmControllerImpl.test.js +205 -4
  453. package/dist/unit/types/current/index.d.ts +117 -98
  454. package/dist/unit/types/current/index.d.ts.map +1 -1
  455. package/dist/unit/types/current/index.js +117 -98
  456. package/dist/unit/types/current/playback/PlaybackControllerImpl.test.js +92 -3
  457. package/dist/unit/types/current/streaming/ContentStream.test.js +11 -0
  458. package/dist/unit/types/current/streaming/ManifestControllerImpl.test.d.ts +2 -0
  459. package/dist/unit/types/current/streaming/ManifestControllerImpl.test.d.ts.map +1 -0
  460. package/dist/unit/types/current/streaming/ManifestControllerImpl.test.js +197 -0
  461. package/dist/unit/types/current/streaming/MediaTimeline.test.js +2 -0
  462. package/dist/unit/types/current/streaming/MseTrack.test.js +478 -14
  463. package/dist/unit/types/current/streaming/SegmentControllerImpl.test.js +66 -0
  464. package/dist/unit/types/current/streaming/StreamingEventMap.test.js +2 -2
  465. package/dist/unit/types/current/streaming/abr/QualitySelectorImpl.test.js +110 -0
  466. package/dist/unit/types/current/streaming/buffering/BufferingController.test.js +123 -21
  467. package/dist/unit/types/current/streaming/buffering/MediaSourceController.test.js +37 -10
  468. package/dist/unit/types/current/streaming/buffering/SourceBufferController.test.js +4 -0
  469. package/dist/unit/types/current/streaming/buffering/codecDenylist.test.d.ts +2 -0
  470. package/dist/unit/types/current/streaming/buffering/codecDenylist.test.d.ts.map +1 -0
  471. package/dist/unit/types/current/streaming/buffering/codecDenylist.test.js +56 -0
  472. package/dist/unit/types/current/streaming/createAllowedContentTypesValue.test.d.ts +2 -0
  473. package/dist/unit/types/current/streaming/createAllowedContentTypesValue.test.d.ts.map +1 -0
  474. package/dist/unit/types/current/streaming/createAllowedContentTypesValue.test.js +77 -0
  475. package/dist/unit/types/current/streaming/createDefaultMediaTimelineTransformer.test.js +144 -2
  476. package/dist/unit/types/current/streaming/mediaTimelineAccessibilityFilter.test.d.ts +2 -0
  477. package/dist/unit/types/current/streaming/mediaTimelineAccessibilityFilter.test.d.ts.map +1 -0
  478. package/dist/unit/types/current/streaming/mediaTimelineAccessibilityFilter.test.js +99 -0
  479. package/dist/unit/types/current/streaming/mediaTimelineFilter.test.js +9 -0
  480. package/dist/unit/types/current/streaming/mediaTimelineLanguageFilter.test.js +92 -3
  481. package/dist/unit/types/current/text/SidecarTextTrackController.test.d.ts +2 -0
  482. package/dist/unit/types/current/text/SidecarTextTrackController.test.d.ts.map +1 -0
  483. package/dist/unit/types/current/text/SidecarTextTrackController.test.js +587 -0
  484. package/dist/unit/types/current/text/SidecarTextTrackLoader.test.d.ts +2 -0
  485. package/dist/unit/types/current/text/SidecarTextTrackLoader.test.d.ts.map +1 -0
  486. package/dist/unit/types/current/text/SidecarTextTrackLoader.test.js +336 -0
  487. package/dist/unit/types/current/text/VttCueStyle.test.d.ts +2 -0
  488. package/dist/unit/types/current/text/VttCueStyle.test.d.ts.map +1 -0
  489. package/dist/unit/types/current/text/VttCueStyle.test.js +76 -0
  490. package/dist/unit/types/current/text/discoverDashTextTracks.test.d.ts +2 -0
  491. package/dist/unit/types/current/text/discoverDashTextTracks.test.d.ts.map +1 -0
  492. package/dist/unit/types/current/text/discoverDashTextTracks.test.js +199 -0
  493. package/dist/unit/types/current/text/discoverHlsTextTracks.test.d.ts +2 -0
  494. package/dist/unit/types/current/text/discoverHlsTextTracks.test.d.ts.map +1 -0
  495. package/dist/unit/types/current/text/discoverHlsTextTracks.test.js +177 -0
  496. package/dist/unit/types/current/text/parseWebVtt.test.d.ts +2 -0
  497. package/dist/unit/types/current/text/parseWebVtt.test.d.ts.map +1 -0
  498. package/dist/unit/types/current/text/parseWebVtt.test.js +212 -0
  499. package/dist/unit/types/current/text/pickPreferredTextTrack.test.d.ts +2 -0
  500. package/dist/unit/types/current/text/pickPreferredTextTrack.test.d.ts.map +1 -0
  501. package/dist/unit/types/current/text/pickPreferredTextTrack.test.js +67 -0
  502. package/dist/unit/types/current/track/TrackBase.test.js +50 -5
  503. package/dist/unit/types/current/track/TrackController.test.js +712 -109
  504. package/dist/unit/types/current/track/TrackFactory.test.js +13 -25
  505. package/dist/unit/types/current/track/dash/createDashContentStreamFactories.test.js +1 -0
  506. package/dist/unit/types/current/track/dash/createDashFactories.test.js +63 -2
  507. package/dist/unit/types/current/track/dash/createSegmentControllerFactory.test.js +1 -0
  508. package/dist/unit/types/current/track/dash/util/mpd.test.js +24 -1
  509. package/dist/unit/types/current/track/hls/HlsManifestController.test.js +4 -4
  510. package/dist/unit/types/current/track/hls/HlsMediaQualityMetadataResolver.test.js +4 -2
  511. package/dist/unit/types/current/track/hls/buildHlsMediaTimeline.test.js +260 -14
  512. package/dist/unit/types/current/track/hls/createHlsContentStreamFactories.test.js +1 -0
  513. package/dist/unit/types/current/track/hls/createHlsFactories.test.js +182 -4
  514. package/dist/unit/types/current/track/hls/createUrlHlsManifestProvider.test.js +19 -0
  515. package/dist/unit/types/current/track/inferLoadOptionsFromUri.test.d.ts +2 -0
  516. package/dist/unit/types/current/track/inferLoadOptionsFromUri.test.d.ts.map +1 -0
  517. package/dist/unit/types/current/track/inferLoadOptionsFromUri.test.js +165 -0
  518. package/dist/unit/types/current/track/source/SourceTrack.test.js +5 -0
  519. package/dist/unit/types/current/track/source/SourceTrackBase.test.js +24 -3
  520. package/dist/unit/types/current/tsconfig.tsbuildinfo +1 -1
  521. package/dist/unit/types/current/util/media/codecOverrides.test.d.ts +2 -0
  522. package/dist/unit/types/current/util/media/codecOverrides.test.d.ts.map +1 -0
  523. package/dist/unit/types/current/util/media/codecOverrides.test.js +42 -0
  524. package/dist/unit/types/current/util/media/codecSupport.test.d.ts +2 -0
  525. package/dist/unit/types/current/util/media/codecSupport.test.d.ts.map +1 -0
  526. package/dist/unit/types/current/util/media/codecSupport.test.js +26 -0
  527. package/dist/unit/types/current/util/media/mediaSource.test.js +6 -0
  528. package/dist/unit/types/current/vinyl/VinylPlayer.test.js +177 -75
  529. package/dist/unit/types/current/vinyl/VinylPlayerAdBreaks.test.d.ts +2 -0
  530. package/dist/unit/types/current/vinyl/VinylPlayerAdBreaks.test.d.ts.map +1 -0
  531. package/dist/unit/types/current/vinyl/VinylPlayerAdBreaks.test.js +142 -0
  532. package/dist/unit/types/current/vinyl/VinylPlayerTextTracks.test.d.ts +2 -0
  533. package/dist/unit/types/current/vinyl/VinylPlayerTextTracks.test.d.ts.map +1 -0
  534. package/dist/unit/types/current/vinyl/VinylPlayerTextTracks.test.js +263 -0
  535. package/dist/vinylTestUtil/index.js +2393 -2232
  536. package/dist/vinylTestUtil/index.js.map +4 -4
  537. package/dist/vinylTestUtil/types/current/assets/vinylTestAssets.d.ts +14 -0
  538. package/dist/vinylTestUtil/types/current/assets/vinylTestAssets.d.ts.map +1 -1
  539. package/dist/vinylTestUtil/types/current/assets/vinylTestAssets.js +49 -30
  540. package/dist/vinylTestUtil/types/current/index.d.ts +53 -51
  541. package/dist/vinylTestUtil/types/current/index.d.ts.map +1 -1
  542. package/dist/vinylTestUtil/types/current/index.js +53 -51
  543. package/dist/vinylTestUtil/types/current/mock/ad/MockAdController.d.ts +15 -0
  544. package/dist/vinylTestUtil/types/current/mock/ad/MockAdController.d.ts.map +1 -0
  545. package/dist/vinylTestUtil/types/current/mock/ad/MockAdController.js +26 -0
  546. package/dist/vinylTestUtil/types/current/mock/dash/MockDashManifestController.d.ts +8 -1
  547. package/dist/vinylTestUtil/types/current/mock/dash/MockDashManifestController.d.ts.map +1 -1
  548. package/dist/vinylTestUtil/types/current/mock/dash/MockDashManifestController.js +15 -0
  549. package/dist/vinylTestUtil/types/current/mock/dash/mockDashManifest.d.ts +12 -12
  550. package/dist/vinylTestUtil/types/current/mock/drm/MockDrmController.d.ts +2 -2
  551. package/dist/vinylTestUtil/types/current/mock/drm/MockDrmController.d.ts.map +1 -1
  552. package/dist/vinylTestUtil/types/current/mock/hls/MockHlsManifestController.d.ts +7 -1
  553. package/dist/vinylTestUtil/types/current/mock/hls/MockHlsManifestController.d.ts.map +1 -1
  554. package/dist/vinylTestUtil/types/current/mock/hls/MockHlsManifestController.js +12 -0
  555. package/dist/vinylTestUtil/types/current/mock/hls/mockHlsManifest.d.ts +3 -3
  556. package/dist/vinylTestUtil/types/current/mock/hls/mockHlsManifest.d.ts.map +1 -1
  557. package/dist/vinylTestUtil/types/current/mock/hls/mockHlsManifest.js +1 -0
  558. package/dist/vinylTestUtil/types/current/mock/player/MockVinylPlayerDependencies.d.ts +8 -0
  559. package/dist/vinylTestUtil/types/current/mock/player/MockVinylPlayerDependencies.d.ts.map +1 -1
  560. package/dist/vinylTestUtil/types/current/mock/player/MockVinylPlayerDependencies.js +17 -1
  561. package/dist/vinylTestUtil/types/current/mock/streaming/MockContentStream.d.ts +2 -1
  562. package/dist/vinylTestUtil/types/current/mock/streaming/MockContentStream.d.ts.map +1 -1
  563. package/dist/vinylTestUtil/types/current/mock/streaming/MockContentStream.js +1 -0
  564. package/dist/vinylTestUtil/types/current/mock/streaming/buffering/MockBufferingController.d.ts +1 -0
  565. package/dist/vinylTestUtil/types/current/mock/streaming/buffering/MockBufferingController.d.ts.map +1 -1
  566. package/dist/vinylTestUtil/types/current/mock/streaming/buffering/MockBufferingController.js +1 -0
  567. package/dist/vinylTestUtil/types/current/mock/streaming/buffering/MockMediaSourceController.d.ts +2 -1
  568. package/dist/vinylTestUtil/types/current/mock/streaming/buffering/MockMediaSourceController.d.ts.map +1 -1
  569. package/dist/vinylTestUtil/types/current/mock/streaming/buffering/MockMediaSourceController.js +2 -1
  570. package/dist/vinylTestUtil/types/current/mock/text/MockTextTrackController.d.ts +10 -0
  571. package/dist/vinylTestUtil/types/current/mock/text/MockTextTrackController.d.ts.map +1 -0
  572. package/dist/vinylTestUtil/types/current/mock/text/MockTextTrackController.js +14 -0
  573. package/dist/vinylTestUtil/types/current/mock/track/MockTrack.d.ts +13 -4
  574. package/dist/vinylTestUtil/types/current/mock/track/MockTrack.d.ts.map +1 -1
  575. package/dist/vinylTestUtil/types/current/mock/track/MockTrack.js +11 -0
  576. package/dist/vinylTestUtil/types/current/mock/track/MockTrackController.d.ts +3 -2
  577. package/dist/vinylTestUtil/types/current/mock/track/MockTrackController.d.ts.map +1 -1
  578. package/dist/vinylTestUtil/types/current/mock/track/MockTrackController.js +2 -1
  579. package/dist/vinylTestUtil/types/current/mock/track/dash/createMockDashDependencies.d.ts +6 -0
  580. package/dist/vinylTestUtil/types/current/mock/track/dash/createMockDashDependencies.d.ts.map +1 -1
  581. package/dist/vinylTestUtil/types/current/mock/track/dash/createMockDashDependencies.js +8 -1
  582. package/dist/vinylTestUtil/types/current/mock/track/hls/createMockHlsDependencies.d.ts +4 -0
  583. package/dist/vinylTestUtil/types/current/mock/track/hls/createMockHlsDependencies.d.ts.map +1 -1
  584. package/dist/vinylTestUtil/types/current/mock/track/hls/createMockHlsDependencies.js +6 -1
  585. package/dist/vinylTestUtil/types/current/player/createVinylSuite.d.ts.map +1 -1
  586. package/dist/vinylTestUtil/types/current/player/createVinylSuite.js +18 -7
  587. package/dist/vinylTestUtil/types/current/tsconfig.tsbuildinfo +1 -1
  588. package/dist/vinylTestUtil/types/current/util/playback/eventPromises.d.ts.map +1 -1
  589. package/dist/vinylTestUtil/types/current/util/playback/eventPromises.js +1 -1
  590. package/dist/vinylTestUtil/types/current/util/playback/expectTrackCanSeek.d.ts.map +1 -1
  591. package/dist/vinylTestUtil/types/current/util/playback/expectTrackCanSeek.js +5 -2
  592. package/dist/vinylTestUtil/types/current/util/playback/expectTrackPlays.js +3 -3
  593. package/dist/vinylTestUtil/types/current/util/playback/expectTrackPlaysUntil.d.ts.map +1 -1
  594. package/dist/vinylTestUtil/types/current/util/playback/expectTrackPlaysUntil.js +11 -7
  595. package/dist/vinylTestUtil/types/ts3.7/assets/vinylTestAssets.d.ts +14 -0
  596. package/dist/vinylTestUtil/types/ts3.7/index.d.ts +53 -51
  597. package/dist/vinylTestUtil/types/ts3.7/mock/ad/MockAdController.d.ts +15 -0
  598. package/dist/vinylTestUtil/types/ts3.7/mock/dash/MockDashManifestController.d.ts +8 -1
  599. package/dist/vinylTestUtil/types/ts3.7/mock/dash/mockDashManifest.d.ts +12 -12
  600. package/dist/vinylTestUtil/types/ts3.7/mock/drm/MockDrmController.d.ts +2 -2
  601. package/dist/vinylTestUtil/types/ts3.7/mock/hls/MockHlsManifestController.d.ts +7 -1
  602. package/dist/vinylTestUtil/types/ts3.7/mock/hls/mockHlsManifest.d.ts +3 -3
  603. package/dist/vinylTestUtil/types/ts3.7/mock/player/MockVinylPlayerDependencies.d.ts +8 -0
  604. package/dist/vinylTestUtil/types/ts3.7/mock/streaming/MockContentStream.d.ts +2 -1
  605. package/dist/vinylTestUtil/types/ts3.7/mock/streaming/buffering/MockBufferingController.d.ts +1 -0
  606. package/dist/vinylTestUtil/types/ts3.7/mock/streaming/buffering/MockMediaSourceController.d.ts +2 -1
  607. package/dist/vinylTestUtil/types/ts3.7/mock/text/MockTextTrackController.d.ts +10 -0
  608. package/dist/vinylTestUtil/types/ts3.7/mock/track/MockTrack.d.ts +13 -4
  609. package/dist/vinylTestUtil/types/ts3.7/mock/track/MockTrackController.d.ts +3 -2
  610. package/dist/vinylTestUtil/types/ts3.7/mock/track/dash/createMockDashDependencies.d.ts +6 -0
  611. package/dist/vinylTestUtil/types/ts3.7/mock/track/hls/createMockHlsDependencies.d.ts +4 -0
  612. package/dist/vinylTestUtil/types/ts4.1/assets/vinylTestAssets.d.ts +14 -0
  613. package/dist/vinylTestUtil/types/ts4.1/index.d.ts +53 -51
  614. package/dist/vinylTestUtil/types/ts4.1/mock/ad/MockAdController.d.ts +15 -0
  615. package/dist/vinylTestUtil/types/ts4.1/mock/dash/MockDashManifestController.d.ts +8 -1
  616. package/dist/vinylTestUtil/types/ts4.1/mock/dash/mockDashManifest.d.ts +12 -12
  617. package/dist/vinylTestUtil/types/ts4.1/mock/drm/MockDrmController.d.ts +2 -2
  618. package/dist/vinylTestUtil/types/ts4.1/mock/hls/MockHlsManifestController.d.ts +7 -1
  619. package/dist/vinylTestUtil/types/ts4.1/mock/hls/mockHlsManifest.d.ts +3 -3
  620. package/dist/vinylTestUtil/types/ts4.1/mock/player/MockVinylPlayerDependencies.d.ts +8 -0
  621. package/dist/vinylTestUtil/types/ts4.1/mock/streaming/MockContentStream.d.ts +2 -1
  622. package/dist/vinylTestUtil/types/ts4.1/mock/streaming/buffering/MockBufferingController.d.ts +1 -0
  623. package/dist/vinylTestUtil/types/ts4.1/mock/streaming/buffering/MockMediaSourceController.d.ts +2 -1
  624. package/dist/vinylTestUtil/types/ts4.1/mock/text/MockTextTrackController.d.ts +10 -0
  625. package/dist/vinylTestUtil/types/ts4.1/mock/track/MockTrack.d.ts +13 -4
  626. package/dist/vinylTestUtil/types/ts4.1/mock/track/MockTrackController.d.ts +3 -2
  627. package/dist/vinylTestUtil/types/ts4.1/mock/track/dash/createMockDashDependencies.d.ts +6 -0
  628. package/dist/vinylTestUtil/types/ts4.1/mock/track/hls/createMockHlsDependencies.d.ts +4 -0
  629. package/dist/vinylTestUtil/types/ts4.7/assets/vinylTestAssets.d.ts +14 -0
  630. package/dist/vinylTestUtil/types/ts4.7/index.d.ts +53 -51
  631. package/dist/vinylTestUtil/types/ts4.7/mock/ad/MockAdController.d.ts +15 -0
  632. package/dist/vinylTestUtil/types/ts4.7/mock/dash/MockDashManifestController.d.ts +8 -1
  633. package/dist/vinylTestUtil/types/ts4.7/mock/dash/mockDashManifest.d.ts +12 -12
  634. package/dist/vinylTestUtil/types/ts4.7/mock/drm/MockDrmController.d.ts +2 -2
  635. package/dist/vinylTestUtil/types/ts4.7/mock/hls/MockHlsManifestController.d.ts +7 -1
  636. package/dist/vinylTestUtil/types/ts4.7/mock/hls/mockHlsManifest.d.ts +3 -3
  637. package/dist/vinylTestUtil/types/ts4.7/mock/player/MockVinylPlayerDependencies.d.ts +8 -0
  638. package/dist/vinylTestUtil/types/ts4.7/mock/streaming/MockContentStream.d.ts +2 -1
  639. package/dist/vinylTestUtil/types/ts4.7/mock/streaming/buffering/MockBufferingController.d.ts +1 -0
  640. package/dist/vinylTestUtil/types/ts4.7/mock/streaming/buffering/MockMediaSourceController.d.ts +2 -1
  641. package/dist/vinylTestUtil/types/ts4.7/mock/text/MockTextTrackController.d.ts +10 -0
  642. package/dist/vinylTestUtil/types/ts4.7/mock/track/MockTrack.d.ts +13 -4
  643. package/dist/vinylTestUtil/types/ts4.7/mock/track/MockTrackController.d.ts +3 -2
  644. package/dist/vinylTestUtil/types/ts4.7/mock/track/dash/createMockDashDependencies.d.ts +6 -0
  645. package/dist/vinylTestUtil/types/ts4.7/mock/track/hls/createMockHlsDependencies.d.ts +4 -0
  646. package/docs/ADS.md +264 -0
  647. package/docs/USAGE.md +142 -9
  648. package/package.json +16 -16
  649. package/dist/types/current/track/hls/HlsManifestProvider.d.ts.map +0 -1
  650. package/dist/unit/types/current/track/dash/DashManifestController.test.d.ts +0 -2
  651. package/dist/unit/types/current/track/dash/DashManifestController.test.d.ts.map +0 -1
  652. package/dist/unit/types/current/track/dash/DashManifestController.test.js +0 -186
  653. /package/dist/types/current/{track/hls/HlsManifestProvider.js → ad/AdBreakInfo.js} +0 -0
@@ -1,12 +1,10 @@
1
- import type { ReadonlyAbort } from '@amazon/vinyl-util';
2
- import type { MainPlaylist, MediaPlaylist } from '@amazon/vinyl-hls-parser';
3
- export type HlsManifestProvider = (abort?: ReadonlyAbort) => Promise<HlsManifestData>;
1
+ import type { HlsMainPlaylist, HlsMediaPlaylist } from '@amazon/vinyl-hls-parser';
4
2
  export interface HlsManifestData {
5
3
  /**
6
4
  * The main HLS playlist manifest.
7
5
  * Use getMediaPlaylist to resolve bitrate manifests.
8
6
  */
9
- readonly mainPlaylist: MainPlaylist;
7
+ readonly mainPlaylist: HlsMainPlaylist;
10
8
  /**
11
9
  * The URL to be used for relative requests. Guaranteed to be absolute.
12
10
  *
@@ -16,6 +14,6 @@ export interface HlsManifestData {
16
14
  /**
17
15
  * Lazily fetches and caches a media playlist by variant URI.
18
16
  */
19
- readonly getMediaPlaylist: (uri: string) => Promise<MediaPlaylist>;
17
+ readonly getMediaPlaylist: (uri: string) => Promise<HlsMediaPlaylist>;
20
18
  }
21
- //# sourceMappingURL=HlsManifestProvider.d.ts.map
19
+ //# sourceMappingURL=HlsManifestData.d.ts.map
@@ -1,20 +1,19 @@
1
1
  import type { Maybe, RequestInitOptions } from '@amazon/vinyl-util';
2
- import type { TrackLoadOptions, TrackFactory } from '../TrackFactory';
3
- import type { TrackBaseOptions } from '../TrackBase';
4
- import type { HlsManifestProvider } from './HlsManifestProvider';
2
+ import { type TrackConfigOptions, type TrackFactory, type TrackLoadOptions } from '../TrackFactory';
5
3
  import type { HlsManifestController } from './HlsManifestController';
6
- import type { HlsManifestData } from './HlsManifestProvider';
4
+ import type { HlsManifestData } from './HlsManifestData';
7
5
  import type { HlsMediaQualityMetadataResolver } from './HlsMediaQualityMetadataResolver';
8
6
  import type { MseTrackDeps } from '../mse/MseTrack';
9
7
  import type { Factories } from '@amazon/vinyl-di';
10
8
  import type { ObservableValue } from '@amazon/vinyl-observable';
11
9
  import type { MediaTimeline } from '../../streaming/MediaTimeline';
10
+ import type { ManifestProvider } from '../../streaming/ManifestController';
12
11
  export interface HlsTrackLoadOptions extends TrackLoadOptions {
13
12
  readonly type: 'hls';
14
- readonly manifestProvider?: Maybe<HlsManifestProvider>;
13
+ readonly manifestProvider?: Maybe<ManifestProvider<HlsManifestData>>;
15
14
  readonly requestInit?: Maybe<RequestInitOptions>;
16
15
  readonly segmentRequestInit?: Maybe<RequestInitOptions>;
17
- readonly config?: Maybe<TrackBaseOptions>;
16
+ readonly config?: Maybe<TrackConfigOptions>;
18
17
  }
19
18
  export interface HlsTrackDeps extends MseTrackDeps {
20
19
  readonly manifestController: HlsManifestController;
@@ -1,4 +1,4 @@
1
- import type { HlsManifestData } from './HlsManifestProvider';
1
+ import type { HlsManifestData } from './HlsManifestData';
2
2
  import type { HlsMediaQualityMetadataResolver } from './HlsMediaQualityMetadataResolver';
3
3
  import type { MediaTimeline } from '../../streaming/MediaTimeline';
4
4
  import { type CreateSegmentDataProviderDeps } from '../createSegmentDataProvider';
@@ -8,6 +8,13 @@ export interface BuildHlsMediaTimelineDeps extends CreateSegmentDataProviderDeps
8
8
  /**
9
9
  * Builds a MediaTimeline from an HLS manifest.
10
10
  * HLS has a single implicit period spanning the full duration.
11
+ *
12
+ * Audio is modeled per source: a variant that carries muxed audio (no separate
13
+ * AUDIO rendition group) contributes an audio quality on its own playlist, while
14
+ * a variant with a demuxed audio group contributes video only — one audio
15
+ * quality is created per AUDIO rendition in the group, each carrying that
16
+ * rendition's language and playlist. Modeling every language as its own audio
17
+ * quality is what lets the timeline's language filter select among them.
11
18
  */
12
19
  export declare function buildHlsMediaTimeline(deps: BuildHlsMediaTimelineDeps, data: HlsManifestData): MediaTimeline;
13
20
  //# sourceMappingURL=buildHlsMediaTimeline.d.ts.map
@@ -1,5 +1,5 @@
1
1
  import type { ObservableValue } from '@amazon/vinyl-observable';
2
- import type { HlsManifestData } from './HlsManifestProvider';
2
+ import type { HlsManifestData } from './HlsManifestData';
3
3
  export interface HlsManifestTransformerDeps {
4
4
  readonly manifestController: ObservableValue<Promise<HlsManifestData>>;
5
5
  }
@@ -1,6 +1,6 @@
1
1
  import type { ContentTypesValue } from '../../streaming/ContentTypesValue';
2
2
  import type { ObservableValue } from '@amazon/vinyl-observable';
3
- import type { HlsManifestData } from './HlsManifestProvider';
3
+ import type { HlsManifestData } from './HlsManifestData';
4
4
  export interface HlsContentTypesValueDeps {
5
5
  readonly manifestTransformed: ObservableValue<Promise<HlsManifestData>>;
6
6
  }
@@ -1,10 +1,11 @@
1
1
  import type { HlsTrackLoadOptions } from './HlsTrack';
2
2
  import type { Maybe, RequestInterceptor } from '@amazon/vinyl-util';
3
+ import type { AdController } from '../../ad/AdController';
3
4
  import { createMediaSource } from '../../util/media/mediaSource';
4
5
  import { MediaSourceControllerImpl, type MediaSourceControllerImplDeps } from '../../streaming/buffering/MediaSourceController';
5
- import { HlsManifestControllerImpl } from './HlsManifestController';
6
6
  import type { ContentStreamingOptions } from '../../streaming/ContentStreamingOptions';
7
7
  import { createHlsContentTypesValue } from './createHlsContentTypesValue';
8
+ import { createAllowedContentTypesValue } from '../../streaming/createAllowedContentTypesValue';
8
9
  import { createContentStreamFactory } from '../../streaming/ContentStream';
9
10
  import type { ObservableValue } from '@amazon/vinyl-observable';
10
11
  import type { PlaybackController } from '../../playback/PlaybackController';
@@ -12,31 +13,41 @@ import type { DrmKeySystemResolver } from '../../drm/DrmKeySystemResolver';
12
13
  import type { DrmController } from '../../drm/DrmController';
13
14
  import type { Capabilities } from '../../client/Capabilities';
14
15
  import type { PlaybackSource } from '../../playback/PlaybackSource';
15
- import type { QualitySelectorImplOptions } from '../../streaming/abr/QualitySelectorImpl';
16
16
  import { QualitySelectorImpl } from '../../streaming/abr/QualitySelectorImpl';
17
17
  import type { VinylOptions } from '../../vinyl/VinylOptions';
18
18
  import { createDefaultHlsManifestTransformer } from './createDefaultHlsManifestTransformer';
19
19
  import { type BuildHlsMediaTimelineDeps } from './buildHlsMediaTimeline';
20
20
  import { createDefaultMediaTimelineTransformer } from '../../streaming/createDefaultMediaTimelineTransformer';
21
- import type { HlsManifestData } from './HlsManifestProvider';
21
+ import type { HlsManifestData } from './HlsManifestData';
22
+ import { SidecarTextTrackController } from '../../text/SidecarTextTrackController';
23
+ import { ManifestControllerImpl, type ManifestControllerImplDeps } from '../../streaming/ManifestControllerImpl';
22
24
  export interface HlsFactoryDeps {
23
- readonly options: ObservableValue<{
24
- readonly abr: QualitySelectorImplOptions;
25
- readonly preferredAudioLanguage: string | null;
26
- }>;
25
+ readonly options: ObservableValue<Pick<VinylOptions, 'abr' | 'preferredAudioLanguage' | 'allowedContentTypes' | 'preferDescriptiveAudio' | 'preferredTextLanguage' | 'textCueStyle'>>;
27
26
  readonly playbackController: PlaybackController;
28
27
  readonly playbackSource: PlaybackSource;
29
28
  readonly drmKeySystemResolver: DrmKeySystemResolver;
30
29
  readonly requestInterceptor: RequestInterceptor;
31
30
  readonly drmController: DrmController;
32
31
  readonly capabilities: Capabilities;
32
+ /**
33
+ * The HTML media element. Required to attach sidecar text tracks via
34
+ * `media.addTextTrack`.
35
+ */
36
+ readonly media: HTMLMediaElement;
37
+ /**
38
+ * The player-level ad controller. MseTrack sets discovered ad breaks on it
39
+ * when the media timeline resolves.
40
+ */
41
+ readonly adController: AdController;
33
42
  }
34
43
  export type HlsInitOptions = {
35
44
  readonly streaming?: Maybe<ContentStreamingOptions>;
36
45
  };
37
46
  export declare function createHlsFactories(options: Maybe<HlsInitOptions>): (deps: HlsFactoryDeps) => (loadOptions: HlsTrackLoadOptions) => {
38
- contentTypesValue: typeof createHlsContentTypesValue;
39
- manifestController: () => HlsManifestControllerImpl;
47
+ baseContentTypesValue: typeof createHlsContentTypesValue;
48
+ contentTypesValue: typeof createAllowedContentTypesValue;
49
+ manifestProvider: () => import("./createHlsManifestProvider").HlsManifestProvider;
50
+ manifestController: (deps: ManifestControllerImplDeps<HlsManifestData>) => ManifestControllerImpl<HlsManifestData>;
40
51
  manifestTransformed: typeof createDefaultHlsManifestTransformer;
41
52
  mediaQualityMetadataResolver: () => import("./HlsMediaQualityMetadataResolver").HlsMediaQualityMetadataResolver;
42
53
  mediaSourceFactory: () => typeof createMediaSource;
@@ -55,19 +66,35 @@ export declare function createHlsFactories(options: Maybe<HlsInitOptions>): (dep
55
66
  qualitySelector: (deps: {
56
67
  options: ObservableValue<Pick<VinylOptions, "abr">>;
57
68
  }) => QualitySelectorImpl;
69
+ preferredAudioLanguage: (deps: {
70
+ options: ObservableValue<Pick<VinylOptions, "preferredAudioLanguage">>;
71
+ }) => ObservableValue<string | readonly string[] | null>;
72
+ allowedContentTypes: (deps: {
73
+ options: ObservableValue<Pick<VinylOptions, "allowedContentTypes">>;
74
+ }) => ObservableValue<readonly import("../..").RestrictableContentType[] | null>;
75
+ preferDescriptiveAudio: (deps: {
76
+ options: ObservableValue<Pick<VinylOptions, "preferDescriptiveAudio">>;
77
+ }) => ObservableValue<boolean>;
78
+ abr: (deps: {
79
+ options: ObservableValue<Pick<VinylOptions, "abr">>;
80
+ }) => ObservableValue<import("../..").QualitySelectorImplOptions>;
58
81
  mediaTimeline: (deps: BuildHlsMediaTimelineDeps & {
59
82
  readonly manifestTransformed: ObservableValue<Promise<HlsManifestData>>;
60
83
  }) => ObservableValue<Promise<import("../..").MediaTimeline>>;
61
84
  mediaTimelineTransformed: typeof createDefaultMediaTimelineTransformer;
62
- options: import("@amazon/vinyl-di").Factory<ObservableValue<{
63
- readonly abr: QualitySelectorImplOptions;
64
- readonly preferredAudioLanguage: string | null;
65
- }>>;
85
+ textTrackController: (deps: {
86
+ readonly media: HTMLMediaElement;
87
+ readonly manifestTransformed: ObservableValue<Promise<HlsManifestData>>;
88
+ readonly options: ObservableValue<Pick<VinylOptions, "preferredTextLanguage" | "textCueStyle">>;
89
+ }) => SidecarTextTrackController;
90
+ options: import("@amazon/vinyl-di").Factory<ObservableValue<Pick<VinylOptions, "abr" | "preferredAudioLanguage" | "preferredTextLanguage" | "preferDescriptiveAudio" | "allowedContentTypes" | "textCueStyle">>>;
66
91
  playbackController: import("@amazon/vinyl-di").Factory<PlaybackController>;
67
92
  playbackSource: import("@amazon/vinyl-di").Factory<PlaybackSource>;
68
93
  drmKeySystemResolver: import("@amazon/vinyl-di").Factory<DrmKeySystemResolver>;
69
94
  requestInterceptor: import("@amazon/vinyl-di").Factory<RequestInterceptor>;
70
95
  drmController: import("@amazon/vinyl-di").Factory<DrmController>;
71
96
  capabilities: import("@amazon/vinyl-di").Factory<Capabilities>;
97
+ media: import("@amazon/vinyl-di").Factory<HTMLMediaElement>;
98
+ adController: import("@amazon/vinyl-di").Factory<AdController>;
72
99
  };
73
100
  //# sourceMappingURL=createHlsFactories.d.ts.map
@@ -0,0 +1,6 @@
1
+ import type { HlsTrackLoadOptions } from './HlsTrack';
2
+ import type { ManifestProvider } from '../../streaming/ManifestController';
3
+ import type { HlsManifestData } from './HlsManifestData';
4
+ export declare function createHlsManifestProvider(loadOptions: HlsTrackLoadOptions): HlsManifestProvider;
5
+ export type HlsManifestProvider = ManifestProvider<HlsManifestData>;
6
+ //# sourceMappingURL=createHlsManifestProvider.d.ts.map
@@ -1,6 +1,6 @@
1
- import type { MainPlaylist, MediaPlaylist } from '@amazon/vinyl-hls-parser';
1
+ import type { HlsMainPlaylist, HlsMediaPlaylist } from '@amazon/vinyl-hls-parser';
2
2
  import type { Maybe, ReadonlyAbort, RequestInitOptions } from '@amazon/vinyl-util';
3
- import type { HlsManifestProvider } from './HlsManifestProvider';
3
+ import type { HlsManifestProvider } from './createHlsManifestProvider';
4
4
  export declare function createUrlHlsManifestProvider(url: string, requestInit?: RequestInitOptions): HlsManifestProvider;
5
5
  export interface FetchMediaPlaylistOptions {
6
6
  /** The variant URI to resolve against the base URL. */
@@ -8,7 +8,7 @@ export interface FetchMediaPlaylistOptions {
8
8
  /** The base URL for resolving relative URIs. */
9
9
  readonly baseUrl: string;
10
10
  /** Variable definitions from the main playlist. */
11
- readonly defines: MainPlaylist['defines'];
11
+ readonly defines: HlsMainPlaylist['defines'];
12
12
  /** Optional request configuration. */
13
13
  readonly requestInit?: Maybe<RequestInitOptions>;
14
14
  /** Optional abort signal. */
@@ -17,5 +17,5 @@ export interface FetchMediaPlaylistOptions {
17
17
  /**
18
18
  * Fetches and parses an HLS media playlist from a variant URI.
19
19
  */
20
- export declare function fetchMediaPlaylist(options: FetchMediaPlaylistOptions): Promise<MediaPlaylist>;
20
+ export declare function fetchMediaPlaylist(options: FetchMediaPlaylistOptions): Promise<HlsMediaPlaylist>;
21
21
  //# sourceMappingURL=createUrlHlsManifestProvider.d.ts.map
@@ -1,4 +1,4 @@
1
- export * from './HlsManifestProvider';
1
+ export * from './HlsManifestData';
2
2
  export * from './createUrlHlsManifestProvider';
3
3
  export * from './HlsManifestController';
4
4
  export * from './HlsMediaQualityMetadataResolver';
@@ -0,0 +1,15 @@
1
+ import type { VinylTrackLoadOptions } from './createVinylTrackFactories';
2
+ /**
3
+ * The built-in track types Vinyl can infer from a URI.
4
+ */
5
+ export type TrackType = 'hls' | 'dash' | 'src';
6
+ /**
7
+ * Infers the track type from a URI based first on its file extension
8
+ * then mime type.
9
+ *
10
+ * Returns null if the type cannot be determined.
11
+ */
12
+ export declare function inferTrackTypeFromUrl(url: string): Promise<TrackType | null>;
13
+ export declare function inferTrackTypeFromUrlPath(url: string): TrackType | null;
14
+ export declare function createTrackLoadOptionsFromUrl(url: string): Promise<VinylTrackLoadOptions | null>;
15
+ //# sourceMappingURL=inferLoadOptionsFromUri.d.ts.map
@@ -1,5 +1,5 @@
1
- import { TrackBase, type TrackBaseDeps, type TrackBaseOptions } from '../TrackBase';
2
- import { type ReadonlyRanges, type ReadonlySet } from '@amazon/vinyl-util';
1
+ import { TrackBase, type TrackBaseDeps } from '../TrackBase';
2
+ import { type Maybe, type ReadonlyRanges, type ReadonlySet } from '@amazon/vinyl-util';
3
3
  import type { TrackPreloadOptions, TrackTypeId, TrackUri } from '../Track';
4
4
  import type { ContentType, MediaQualityMetadata } from '../../streaming/MediaQualityMetadata';
5
5
  import { type Factories } from '@amazon/vinyl-di';
@@ -9,7 +9,20 @@ import type { PlaybackSource } from '../../playback/PlaybackSource';
9
9
  import type { ContentTypesValue } from '../../streaming/ContentTypesValue';
10
10
  import type { ManifestController } from '../../streaming/ManifestController';
11
11
  import type { ObservableValue } from '@amazon/vinyl-observable';
12
- import type { MediaTimeline } from '../../streaming/MediaTimeline';
12
+ import { type MediaTimeline } from '../../streaming/MediaTimeline';
13
+ import type { TextTrackController } from '../../text/TextTrack';
14
+ import type { TrackConfigOptions } from '../TrackFactory';
15
+ import type { TrackAds } from '../../ad/AdBreakInfo';
16
+ import type { VinylOptions } from '../../vinyl/VinylOptions';
17
+ /**
18
+ * How long to wait after all streams have data before checking whether a seek
19
+ * is still stuck, in seconds.
20
+ */
21
+ export declare const SEEKING_STALL_TIME_CHECK = 0.1;
22
+ /**
23
+ * How far to nudge the playhead, in seconds, to recover a stuck seek.
24
+ */
25
+ export declare const PLAYHEAD_NUDGE = 0.05;
13
26
  export type MseTrackDeps = TrackBaseDeps & {
14
27
  readonly contentTypesValue: ContentTypesValue;
15
28
  readonly contentStreamFactory: (contentType: ContentType) => ContentStream;
@@ -18,6 +31,21 @@ export type MseTrackDeps = TrackBaseDeps & {
18
31
  readonly playbackSource: PlaybackSource;
19
32
  readonly mediaTimeline: ObservableValue<Promise<MediaTimeline>>;
20
33
  readonly mediaTimelineTransformed: ObservableValue<Promise<MediaTimeline>>;
34
+ /**
35
+ * Optional sidecar text track controller for this track. When provided,
36
+ * the controller is exposed via {@link MseTrack.textTrackController} and
37
+ * disposed when the track itself is disposed.
38
+ */
39
+ readonly textTrackController?: TextTrackController | null;
40
+ /**
41
+ * Player options that re-select this track's audio/streams. A change (not
42
+ * the initial value) is applied to this track immediately so it takes
43
+ * effect without waiting for the buffered media to drain.
44
+ */
45
+ readonly preferredAudioLanguage: ObservableValue<VinylOptions['preferredAudioLanguage']>;
46
+ readonly allowedContentTypes: ObservableValue<VinylOptions['allowedContentTypes']>;
47
+ readonly preferDescriptiveAudio: ObservableValue<VinylOptions['preferDescriptiveAudio']>;
48
+ readonly abr: ObservableValue<VinylOptions['abr']>;
21
49
  };
22
50
  /**
23
51
  * An MseTrack uses media source extensions for streaming.
@@ -25,10 +53,11 @@ export type MseTrackDeps = TrackBaseDeps & {
25
53
  export declare class MseTrack extends TrackBase {
26
54
  get [Symbol.toStringTag](): string;
27
55
  protected readonly deps: MseTrackDeps;
56
+ get textTrackController(): TextTrackController | null;
28
57
  private readonly streams;
58
+ private stallNudgeTimer;
29
59
  private readonly disposeAbort;
30
60
  private lastPreloadOptions;
31
- private activateOptions;
32
61
  private readonly allFetchedRanges;
33
62
  private readonly _fetchedRanges;
34
63
  private _contentTypes;
@@ -37,23 +66,44 @@ export declare class MseTrack extends TrackBase {
37
66
  private timeUpdateSub;
38
67
  private _cachedPeriod;
39
68
  constructor(uri: TrackUri, type: TrackTypeId, dependencyFactories: Factories<MseTrackDeps>);
69
+ /**
70
+ * Clears this track's buffers and rebuilds its streams so a changed
71
+ * audio/language/content-type selection applies immediately.
72
+ * {@link reset} with `hard` safely no-ops the rebuild for an inactive
73
+ * (cached) track.
74
+ */
75
+ private reloadStreams;
76
+ /**
77
+ * Re-dispatches a sub-controller's load span stamped with this track's uri,
78
+ * so the span attributes to the track that owns it at the source.
79
+ */
80
+ private dispatchLoadSpan;
40
81
  /**
41
82
  * Updates the cached qualities list from the transformed timeline for the current period.
42
83
  */
43
84
  private updateQualities;
85
+ getAds(): Promise<TrackAds>;
44
86
  /**
45
87
  * Updates the cached unfiltered qualities list from the raw timeline for the current period.
46
88
  */
47
89
  private updateQualitiesUnfiltered;
90
+ private updateSeekRanges;
91
+ /**
92
+ * Invokes a callback when the given timeline promise resolves and was not
93
+ * interrupted by that timeline changing or the track being disposed.
94
+ *
95
+ * Pass `mediaTimelineTransformed` for the playable (filtered) view or
96
+ * `mediaTimeline` for the raw, unfiltered view.
97
+ */
98
+ private withTimeline;
48
99
  /**
49
100
  * Creates and adds a content stream for the given content type.
50
101
  *
51
102
  * @param contentType
52
103
  */
53
104
  protected createStream(contentType: ContentType): void;
54
- preload(trackOptions: TrackPreloadOptions, loadOptions: TrackBaseOptions): void;
105
+ preload(trackOptions: TrackPreloadOptions, loadOptions: Maybe<TrackConfigOptions>): void;
55
106
  get contentTypes(): ReadonlySet<ContentType>;
56
- set contentTypes(value: ReadonlySet<ContentType>);
57
107
  get qualities(): readonly MediaQualityMetadata[] | null;
58
108
  get qualitiesUnfiltered(): readonly MediaQualityMetadata[] | null;
59
109
  get fetchedRanges(): ReadonlyRanges;
@@ -67,8 +117,8 @@ export declare class MseTrack extends TrackBase {
67
117
  * Resets the track to recover from error states.
68
118
  * Resets both the segment controller and buffering controller to clear failed segments and error conditions.
69
119
  */
70
- reset(): void;
71
- onActivated(loadOptions: TrackBaseOptions): void;
120
+ reset(hard?: boolean): void;
121
+ onActivated(loadOptions: Maybe<TrackConfigOptions>): void;
72
122
  onDeactivated(): void;
73
123
  getStreamingQuality(contentType: ContentType): MediaQualityMetadata | null;
74
124
  getBufferingQuality(contentType: ContentType): MediaQualityMetadata | null;
@@ -80,6 +130,14 @@ export declare class MseTrack extends TrackBase {
80
130
  private getStream;
81
131
  private clearStreams;
82
132
  get bufferingEnded(): boolean;
133
+ /**
134
+ * A seek only completes once every stream has data at the target, but on
135
+ * some platforms the element can stay stuck `seeking` even after that. Once
136
+ * all streams hold data, if we're still seeking a moment later, nudge the
137
+ * playhead to prod the element into completing the seek.
138
+ */
139
+ private checkStalledSeek;
140
+ private setContentTypes;
83
141
  dispose(): void;
84
142
  }
85
143
  //# sourceMappingURL=MseTrack.d.ts.map
@@ -3,7 +3,7 @@ import type { TrackTypeId, TrackUri } from '../Track';
3
3
  import { type TrackBaseDeps } from '../TrackBase';
4
4
  import { type TrackFactory, type TrackLoadOptions } from '../TrackFactory';
5
5
  import { type Maybe } from '@amazon/vinyl-util';
6
- import { SourceTrackBase, type SourceTrackBaseOptions } from './SourceTrackBase';
6
+ import { SourceTrackBase, type SourceTrackConfigOptions } from './SourceTrackBase';
7
7
  /**
8
8
  * Dependencies for a SourceObjectTrack.
9
9
  */
@@ -20,7 +20,7 @@ export interface SourceObjectTrackLoadOptions extends TrackLoadOptions {
20
20
  * Configuration options for the SourceObjectTrack.
21
21
  * Will be provided on preload and activate.
22
22
  */
23
- readonly config?: Maybe<SourceTrackBaseOptions>;
23
+ readonly config?: Maybe<SourceTrackConfigOptions>;
24
24
  }
25
25
  export declare function createSourceObjectTrackFactory(deps: SourceObjectTrackDeps): TrackFactory<SourceObjectTrackLoadOptions>;
26
26
  export declare class SourceObjectTrack extends SourceTrackBase<MediaStream> {
@@ -2,7 +2,7 @@ import type { TrackTypeId, TrackUri } from '../Track';
2
2
  import { type TrackBaseDeps } from '../TrackBase';
3
3
  import { type TrackFactory, type TrackLoadOptions } from '../TrackFactory';
4
4
  import { type Maybe } from '@amazon/vinyl-util';
5
- import { SourceTrackBase, type SourceTrackBaseOptions } from './SourceTrackBase';
5
+ import { SourceTrackBase, type SourceTrackConfigOptions } from './SourceTrackBase';
6
6
  import type { PlaybackSource } from '../../playback/PlaybackSource';
7
7
  /**
8
8
  * Dependencies for a SourceTrack.
@@ -21,7 +21,7 @@ export interface SourceTrackLoadOptions extends TrackLoadOptions {
21
21
  * Configuration options for the SourceTrack.
22
22
  * Will be provided on preload and activate.
23
23
  */
24
- readonly config?: Maybe<SourceTrackBaseOptions>;
24
+ readonly config?: Maybe<SourceTrackConfigOptions>;
25
25
  }
26
26
  export declare function createSourceTrackFactory(deps: SourceTrackDeps): TrackFactory<SourceTrackLoadOptions>;
27
27
  export declare class SourceTrack extends SourceTrackBase<string> {
@@ -1,23 +1,25 @@
1
- import { TrackBase, type TrackBaseDeps, type TrackBaseOptions } from '../TrackBase';
1
+ import { TrackBase, type TrackBaseDeps } from '../TrackBase';
2
2
  import type { TrackEventMap, TrackPreloadOptions, TrackTypeId, TrackUri } from '../Track';
3
3
  import { type Maybe, type ReadonlySet } from '@amazon/vinyl-util';
4
4
  import { type ContentType, type MediaQualityMetadata } from '../../streaming/MediaQualityMetadata';
5
5
  import type { ObjectSchema } from '@amazon/vinyl-validation';
6
- export interface SourceTrackBaseOptions extends TrackBaseOptions {
6
+ import { type TrackConfigOptions } from '../TrackFactory';
7
+ export interface SourceTrackConfigOptions extends TrackConfigOptions {
7
8
  /**
8
9
  * Quality metadata.
9
10
  * May be used to configure DRM (for native HLS), codec, or other track metadata.
10
11
  */
11
12
  readonly qualityMetadata?: Maybe<Partial<MediaQualityMetadata>>;
12
13
  }
13
- export declare const sourceTrackBaseOptionsValidator: ObjectSchema<SourceTrackBaseOptions>;
14
- export declare abstract class SourceTrackBase<SrcType, EventMap extends TrackEventMap = TrackEventMap, LoadOptionsType extends SourceTrackBaseOptions = SourceTrackBaseOptions> extends TrackBase<EventMap, LoadOptionsType> {
14
+ export declare const sourceTrackBaseOptionsValidator: ObjectSchema<SourceTrackConfigOptions>;
15
+ export declare abstract class SourceTrackBase<SrcType, EventMap extends TrackEventMap = TrackEventMap, TrackConfigOptions extends SourceTrackConfigOptions = SourceTrackConfigOptions> extends TrackBase<EventMap, TrackConfigOptions> {
15
16
  readonly src: Promise<SrcType>;
16
17
  protected readonly deps: TrackBaseDeps;
17
18
  private readonly fixedPlaybackQuality;
18
19
  private _resolvedSrc;
20
+ private activeSub;
19
21
  protected constructor(uri: TrackUri, type: TrackTypeId, src: Promise<SrcType>, deps: TrackBaseDeps);
20
- preload(trackOptions: TrackPreloadOptions, loadOptions: LoadOptionsType): void;
22
+ preload(trackOptions: TrackPreloadOptions, loadOptions: Maybe<TrackConfigOptions>): void;
21
23
  get contentTypes(): ReadonlySet<ContentType>;
22
24
  get qualities(): readonly MediaQualityMetadata[] | null;
23
25
  get qualitiesUnfiltered(): readonly MediaQualityMetadata[] | null;
@@ -0,0 +1,33 @@
1
+ /**
2
+ * An explicit application-provided decision to allow or deny a codec,
3
+ * bypassing the browser's support detection.
4
+ *
5
+ * - `'allow'` forces the codec to be treated as supported even if the browser
6
+ * reports it unsupported (e.g. to opt in to a codec the app knows the
7
+ * platform can decode via an external path).
8
+ * - `'deny'` forces the codec to be treated as unsupported even if the browser
9
+ * reports it supported (e.g. to work around a browser that falsely claims
10
+ * support, or to exclude a codec by policy).
11
+ */
12
+ export type CodecOverride = 'allow' | 'deny';
13
+ /**
14
+ * Explicit codec allow/deny overrides. Keys are RFC 6381 codec strings or
15
+ * prefixes (matched case-insensitively against the start of each codec in a
16
+ * mimeType's `codecs=` list, so `"hvc1"` matches `"hvc1.2.20000000.L123.B0"`).
17
+ *
18
+ * An override supersedes the browser's support detection entirely. When a
19
+ * mimeType contains multiple codecs, a `'deny'` on any of them denies the
20
+ * mimeType; an `'allow'` applies only when no codec is denied.
21
+ */
22
+ export type CodecOverrides = Readonly<Record<string, CodecOverride>>;
23
+ /**
24
+ * Resolves the effective override decision for a mimeType against a set of
25
+ * {@link CodecOverrides}, or undefined when no override applies (in which case
26
+ * the caller should fall back to normal support detection).
27
+ *
28
+ * A `'deny'` on any contained codec wins over an `'allow'` on another, so an
29
+ * explicit deny is never silently overridden by an allow elsewhere in the
30
+ * mimeType.
31
+ */
32
+ export declare function resolveCodecOverride(mimeType: string, overrides: CodecOverrides | undefined): CodecOverride | undefined;
33
+ //# sourceMappingURL=codecOverrides.d.ts.map
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Extracts the individual codec strings from a mimeType's `codecs=` parameter.
3
+ * Returns an empty array when no codecs parameter is present.
4
+ */
5
+ export declare function extractCodecs(mimeType: string): string[];
6
+ //# sourceMappingURL=codecSupport.d.ts.map
@@ -9,6 +9,11 @@ declare global {
9
9
  export declare function supportsMse(): boolean;
10
10
  /**
11
11
  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource/isTypeSupported_static)
12
+ *
13
+ * Delegates to the browser's native support check. False-positive codecs
14
+ * (where the browser reports support but decode fails at runtime) are handled
15
+ * by the decode-failure recovery path rather than a static denylist, so this
16
+ * function reflects the browser's own answer.
12
17
  */
13
18
  export declare function isTypeSupported(type: string): boolean;
14
19
  /**
@@ -1,5 +1,7 @@
1
1
  import type { ReadonlyEventHost } from '@amazon/vinyl-util';
2
- import type { TrackEventMap, ReadonlyStreamingState } from '../track/Track';
2
+ import type { ReadonlyStreamingState } from '../track/Track';
3
+ import type { SeekRange } from '../track/SeekRange';
4
+ import type { StreamingEventMap } from '../streaming/StreamingEventMap';
3
5
  /**
4
6
  * Represents the streaming state of the currently active track.
5
7
  *
@@ -15,7 +17,7 @@ import type { TrackEventMap, ReadonlyStreamingState } from '../track/Track';
15
17
  * - `bufferingQualityChange`
16
18
  * - `playbackQualityChange`
17
19
  */
18
- export interface ReadonlyPlaybackStreamingState extends ReadonlyEventHost<TrackEventMap>, ReadonlyStreamingState {
20
+ export interface ReadonlyPlaybackStreamingState extends ReadonlyEventHost<StreamingEventMap>, ReadonlyStreamingState {
19
21
  /**
20
22
  * Returns the time of the prefetch end.
21
23
  * If no data has been prefetched for the current track, 0 will be returned.
@@ -30,5 +32,10 @@ export interface ReadonlyPlaybackStreamingState extends ReadonlyEventHost<TrackE
30
32
  * @return A number between 0-1
31
33
  */
32
34
  readonly fetchedTimePercent: number;
35
+ /**
36
+ * The seekable range on the media timeline for the current track, or null
37
+ * when no track is loaded or the timeline is not yet resolved.
38
+ */
39
+ readonly seekRange: SeekRange | null;
33
40
  }
34
41
  //# sourceMappingURL=ReadonlyPlaybackStreamingState.d.ts.map
@@ -8,6 +8,7 @@ import type { DrmController } from '../drm/DrmController';
8
8
  import type { AutoResetController } from '../track/AutoResetController';
9
9
  import type { MutableValue } from '@amazon/vinyl-observable';
10
10
  import type { VinylOptions } from './VinylOptions';
11
+ import type { AdController } from '../ad/AdController';
11
12
  export interface VinylDeps<TrackLoadOptionsType extends TrackLoadOptions = VinylTrackLoadOptions, OptionsType = VinylOptions> {
12
13
  /**
13
14
  * A mutable provider for configuration options.
@@ -37,5 +38,9 @@ export interface VinylDeps<TrackLoadOptionsType extends TrackLoadOptions = Vinyl
37
38
  * Notifies when playback can automatically reset after a failure.
38
39
  */
39
40
  readonly autoResetController: AutoResetController;
41
+ /**
42
+ * Manages ad break state and playback sequencing.
43
+ */
44
+ readonly adController: AdController;
40
45
  }
41
46
  //# sourceMappingURL=VinylDeps.d.ts.map