@amazon/vinyl 1.1.1 → 1.2.1
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.
- package/dist/index.cjs +286 -201
- package/dist/index.cjs.map +4 -4
- package/dist/index.js +294 -206
- package/dist/index.js.map +4 -4
- package/dist/test/benchmark.es5.js +169 -232
- package/dist/test/benchmark.js +1475 -1933
- package/dist/test/benchmark.js.map +4 -4
- package/dist/test/integ.es5.js +771 -394
- package/dist/test/integ.js +5996 -5138
- package/dist/test/integ.js.map +4 -4
- package/dist/test/jasmineHtml.es5.js +8 -8
- package/dist/test/jasmineHtml.js +8 -4
- package/dist/test/jasmineHtml.js.map +3 -3
- package/dist/types/current/ad/AdBreakInfo.d.ts +160 -0
- package/dist/types/current/ad/AdBreakInfo.d.ts.map +1 -0
- package/dist/types/current/ad/AdBreakInfo.js +5 -0
- package/dist/types/current/ad/AdController.d.ts +229 -0
- package/dist/types/current/ad/AdController.d.ts.map +1 -0
- package/dist/types/current/ad/AdController.js +19 -0
- package/dist/types/current/ad/AdControllerImpl.d.ts +146 -0
- package/dist/types/current/ad/AdControllerImpl.d.ts.map +1 -0
- package/dist/types/current/ad/AdControllerImpl.js +705 -0
- package/dist/types/current/ad/AdError.d.ts +6 -0
- package/dist/types/current/ad/AdError.d.ts.map +1 -0
- package/dist/types/current/ad/AdError.js +14 -0
- package/dist/types/current/ad/AdsProvider.d.ts +28 -0
- package/dist/types/current/ad/AdsProvider.d.ts.map +1 -0
- package/dist/types/current/ad/AdsProvider.js +5 -0
- package/dist/types/current/ad/defaultAdLoadOptionsResolver.d.ts +12 -0
- package/dist/types/current/ad/defaultAdLoadOptionsResolver.d.ts.map +1 -0
- package/dist/types/current/ad/defaultAdLoadOptionsResolver.js +26 -0
- package/dist/types/current/ad/discoverHlsInterstitials.d.ts +22 -0
- package/dist/types/current/ad/discoverHlsInterstitials.d.ts.map +1 -0
- package/dist/types/current/ad/discoverHlsInterstitials.js +246 -0
- package/dist/types/current/client/Capabilities.d.ts.map +1 -1
- package/dist/types/current/client/CapabilitiesImpl.d.ts.map +1 -1
- package/dist/types/current/drm/DrmController.d.ts +2 -2
- package/dist/types/current/drm/DrmController.d.ts.map +1 -1
- package/dist/types/current/drm/DrmControllerImpl.d.ts +3 -3
- package/dist/types/current/drm/DrmControllerImpl.d.ts.map +1 -1
- package/dist/types/current/drm/DrmControllerImpl.js +18 -8
- package/dist/types/current/drm/DrmKeySystemResolver.d.ts +1 -1
- package/dist/types/current/drm/DrmKeySystemResolver.d.ts.map +1 -1
- package/dist/types/current/drm/DrmKeySystemResolver.js +1 -1
- package/dist/types/current/drm/DrmOptions.d.ts +1 -1
- package/dist/types/current/drm/DrmOptions.d.ts.map +1 -1
- package/dist/types/current/drm/DrmOptions.js +1 -1
- package/dist/types/current/drm/commonEme/CommonEme.d.ts +2 -2
- package/dist/types/current/drm/commonEme/CommonEme.d.ts.map +1 -1
- package/dist/types/current/drm/commonEme/CommonEmeFactory.d.ts +1 -1
- package/dist/types/current/drm/commonEme/CommonEmeFactory.d.ts.map +1 -1
- package/dist/types/current/drm/commonEme/MsCommonEme.d.ts +1 -1
- package/dist/types/current/drm/commonEme/MsCommonEme.d.ts.map +1 -1
- package/dist/types/current/drm/commonEme/MsCommonEme.js +1 -1
- package/dist/types/current/drm/commonEme/StandardCommonEme.d.ts +1 -1
- package/dist/types/current/drm/commonEme/StandardCommonEme.d.ts.map +1 -1
- package/dist/types/current/drm/commonEme/WebKitCommonEme.d.ts +2 -2
- package/dist/types/current/drm/commonEme/WebKitCommonEme.d.ts.map +1 -1
- package/dist/types/current/drm/commonEme/WebKitCommonEme.js +1 -1
- package/dist/types/current/drm/commonEme/createDrmErrorHandler.js +1 -1
- package/dist/types/current/drm/licenseProvider/LicenseProvider.d.ts +1 -1
- package/dist/types/current/drm/licenseProvider/LicenseProvider.d.ts.map +1 -1
- package/dist/types/current/global/environment.d.ts +6 -2
- package/dist/types/current/global/environment.d.ts.map +1 -1
- package/dist/types/current/global/environment.js +4 -3
- package/dist/types/current/global/initializeVinylGlobal.js +1 -1
- package/dist/types/current/patch/media/MediaElementPatchOptions.js +1 -1
- package/dist/types/current/patch/media/patchMediaElement.js +1 -1
- package/dist/types/current/patch/media/patches/createPreventStallsPatch.d.ts +1 -1
- package/dist/types/current/patch/media/patches/createPreventStallsPatch.d.ts.map +1 -1
- package/dist/types/current/patch/media/patches/createUnreliablePlaybackEventsPatch.d.ts +1 -1
- package/dist/types/current/patch/media/patches/createUnreliablePlaybackEventsPatch.d.ts.map +1 -1
- package/dist/types/current/playback/PlaybackControllerImpl.d.ts +2 -2
- package/dist/types/current/playback/PlaybackControllerImpl.d.ts.map +1 -1
- package/dist/types/current/playback/PlaybackControllerImpl.js +4 -4
- package/dist/types/current/playback/ReadonlyPlaybackController.d.ts.map +1 -1
- package/dist/types/current/playback/error/ReportableMediaError.js +1 -1
- package/dist/types/current/playback/logging/playbackStateLoggingHandler.d.ts +1 -1
- package/dist/types/current/playback/logging/playbackStateLoggingHandler.d.ts.map +1 -1
- package/dist/types/current/playback/logging/playbackStateLoggingHandler.js +1 -1
- package/dist/types/current/playback/nextHasMetadata.d.ts +1 -1
- package/dist/types/current/playback/nextHasMetadata.d.ts.map +1 -1
- package/dist/types/current/streaming/AudioOptions.d.ts +39 -0
- package/dist/types/current/streaming/AudioOptions.d.ts.map +1 -0
- package/dist/types/current/streaming/AudioOptions.js +15 -0
- package/dist/types/current/streaming/ContentStream.d.ts +4 -4
- package/dist/types/current/streaming/ContentStream.d.ts.map +1 -1
- package/dist/types/current/streaming/ContentStreamingOptions.d.ts +2 -2
- package/dist/types/current/streaming/ContentStreamingOptions.d.ts.map +1 -1
- package/dist/types/current/streaming/LoadMetric.d.ts +58 -0
- package/dist/types/current/streaming/LoadMetric.d.ts.map +1 -0
- package/dist/types/current/streaming/LoadMetric.js +5 -0
- package/dist/types/current/streaming/ManifestControllerImpl.d.ts +43 -0
- package/dist/types/current/streaming/ManifestControllerImpl.d.ts.map +1 -0
- package/dist/types/current/streaming/ManifestControllerImpl.js +104 -0
- package/dist/types/current/streaming/MediaQualityMetadata.d.ts +2 -2
- package/dist/types/current/streaming/MediaQualityMetadata.d.ts.map +1 -1
- package/dist/types/current/streaming/MediaQualityMetadata.js +1 -1
- package/dist/types/current/streaming/MediaTimeline.d.ts +6 -5
- package/dist/types/current/streaming/MediaTimeline.d.ts.map +1 -1
- package/dist/types/current/streaming/SegmentController.d.ts +2 -7
- package/dist/types/current/streaming/SegmentController.d.ts.map +1 -1
- package/dist/types/current/streaming/SegmentControllerImpl.d.ts +5 -6
- package/dist/types/current/streaming/SegmentControllerImpl.d.ts.map +1 -1
- package/dist/types/current/streaming/SegmentControllerImpl.js +5 -15
- package/dist/types/current/streaming/SegmentReference.d.ts +1 -1
- package/dist/types/current/streaming/SegmentReference.d.ts.map +1 -1
- package/dist/types/current/streaming/StreamingEventMap.d.ts +1 -1
- package/dist/types/current/streaming/StreamingEventMap.d.ts.map +1 -1
- package/dist/types/current/streaming/abr/QualitySelector.d.ts +1 -1
- package/dist/types/current/streaming/abr/QualitySelector.d.ts.map +1 -1
- package/dist/types/current/streaming/abr/QualitySelectorImpl.d.ts +18 -3
- package/dist/types/current/streaming/abr/QualitySelectorImpl.d.ts.map +1 -1
- package/dist/types/current/streaming/abr/QualitySelectorImpl.js +8 -2
- package/dist/types/current/streaming/buffering/BufferingController.d.ts +3 -13
- package/dist/types/current/streaming/buffering/BufferingController.d.ts.map +1 -1
- package/dist/types/current/streaming/buffering/BufferingController.js +1 -24
- package/dist/types/current/streaming/buffering/MediaSourceController.d.ts +41 -15
- package/dist/types/current/streaming/buffering/MediaSourceController.d.ts.map +1 -1
- package/dist/types/current/streaming/buffering/MediaSourceController.js +74 -17
- package/dist/types/current/streaming/buffering/SourceBufferController.d.ts +1 -1
- package/dist/types/current/streaming/buffering/SourceBufferController.d.ts.map +1 -1
- package/dist/types/current/streaming/buffering/codecDenylist.d.ts +23 -0
- package/dist/types/current/streaming/buffering/codecDenylist.d.ts.map +1 -0
- package/dist/types/current/streaming/buffering/codecDenylist.js +62 -0
- package/dist/types/current/streaming/createAllowedContentTypesValue.d.ts +30 -0
- package/dist/types/current/streaming/createAllowedContentTypesValue.d.ts.map +1 -0
- package/dist/types/current/streaming/createAllowedContentTypesValue.js +43 -0
- package/dist/types/current/streaming/createDefaultMediaTimelineTransformer.d.ts +1 -1
- package/dist/types/current/streaming/createDefaultMediaTimelineTransformer.d.ts.map +1 -1
- package/dist/types/current/streaming/createDefaultMediaTimelineTransformer.js +2 -2
- package/dist/types/current/streaming/mediaTimelineAccessibilityFilter.d.ts +35 -0
- package/dist/types/current/streaming/mediaTimelineAccessibilityFilter.d.ts.map +1 -0
- package/dist/types/current/streaming/mediaTimelineAccessibilityFilter.js +75 -0
- package/dist/types/current/streaming/mediaTimelineFilter.d.ts +3 -3
- package/dist/types/current/streaming/mediaTimelineFilter.d.ts.map +1 -1
- package/dist/types/current/streaming/mediaTimelineFilter.js +1 -1
- package/dist/types/current/streaming/mediaTimelineLanguageFilter.d.ts +1 -1
- package/dist/types/current/streaming/mediaTimelineLanguageFilter.d.ts.map +1 -1
- package/dist/types/current/streaming/util/segment.d.ts +1 -1
- package/dist/types/current/streaming/util/segment.d.ts.map +1 -1
- package/dist/types/current/text/HtmlTextTrackRenderer.d.ts +60 -0
- package/dist/types/current/text/HtmlTextTrackRenderer.d.ts.map +1 -0
- package/dist/types/current/text/HtmlTextTrackRenderer.js +231 -0
- package/dist/types/current/text/SidecarTextTrackController.d.ts +103 -0
- package/dist/types/current/text/SidecarTextTrackController.d.ts.map +1 -0
- package/dist/types/current/text/SidecarTextTrackController.js +250 -0
- package/dist/types/current/text/SidecarTextTrackLoader.d.ts +65 -0
- package/dist/types/current/text/SidecarTextTrackLoader.d.ts.map +1 -0
- package/dist/types/current/text/SidecarTextTrackLoader.js +150 -0
- package/dist/types/current/text/TextTrack.d.ts +179 -0
- package/dist/types/current/text/TextTrack.d.ts.map +1 -0
- package/dist/types/current/text/TextTrack.js +29 -0
- package/dist/types/current/text/TextTrackRenderer.d.ts +24 -0
- package/dist/types/current/text/TextTrackRenderer.d.ts.map +1 -0
- package/dist/types/current/text/TextTrackRenderer.js +5 -0
- package/dist/types/current/text/VttCueStyle.d.ts +41 -0
- package/dist/types/current/text/VttCueStyle.d.ts.map +1 -0
- package/dist/types/current/text/VttCueStyle.js +45 -0
- package/dist/types/current/text/discoverDashTextTracks.d.ts +24 -0
- package/dist/types/current/text/discoverDashTextTracks.d.ts.map +1 -0
- package/dist/types/current/text/discoverDashTextTracks.js +109 -0
- package/dist/types/current/text/discoverHlsTextTracks.d.ts +19 -0
- package/dist/types/current/text/discoverHlsTextTracks.d.ts.map +1 -0
- package/dist/types/current/text/discoverHlsTextTracks.js +49 -0
- package/dist/types/current/text/mediaTextTrackProvider.d.ts +34 -0
- package/dist/types/current/text/mediaTextTrackProvider.d.ts.map +1 -0
- package/dist/types/current/text/mediaTextTrackProvider.js +42 -0
- package/dist/types/current/text/parseWebVtt.d.ts +60 -0
- package/dist/types/current/text/parseWebVtt.d.ts.map +1 -0
- package/dist/types/current/text/parseWebVtt.js +248 -0
- package/dist/types/current/text/pickPreferredTextTrack.d.ts +15 -0
- package/dist/types/current/text/pickPreferredTextTrack.d.ts.map +1 -0
- package/dist/types/current/text/pickPreferredTextTrack.js +71 -0
- package/dist/types/current/track/AutoResetController.d.ts +37 -12
- package/dist/types/current/track/AutoResetController.d.ts.map +1 -1
- package/dist/types/current/track/AutoResetController.js +38 -28
- package/dist/types/current/track/SeekRange.d.ts +9 -0
- package/dist/types/current/track/SeekRange.d.ts.map +1 -0
- package/dist/types/current/track/SeekRange.js +5 -0
- package/dist/types/current/track/Track.d.ts.map +1 -1
- package/dist/types/current/track/TrackBase.d.ts.map +1 -1
- package/dist/types/current/track/TrackController.d.ts +2 -2
- package/dist/types/current/track/TrackController.d.ts.map +1 -1
- package/dist/types/current/track/TrackFactory.d.ts +1 -1
- package/dist/types/current/track/TrackFactory.d.ts.map +1 -1
- package/dist/types/current/track/createSegmentDataProvider.d.ts.map +1 -1
- package/dist/types/current/track/createVinylTrackFactories.d.ts +5 -5
- package/dist/types/current/track/createVinylTrackFactories.d.ts.map +1 -1
- package/dist/types/current/track/createVinylTrackFactories.js +4 -4
- package/dist/types/current/track/dash/DashManifestController.d.ts +1 -1
- package/dist/types/current/track/dash/DashManifestController.d.ts.map +1 -1
- package/dist/types/current/track/dash/DashMediaQualityMetadataResolver.d.ts.map +1 -1
- package/dist/types/current/track/dash/DashMediaQualityMetadataResolver.js +1 -1
- package/dist/types/current/track/dash/DashTrack.d.ts +4 -4
- package/dist/types/current/track/dash/DashTrack.d.ts.map +1 -1
- package/dist/types/current/track/dash/DashTrack.js +2 -2
- package/dist/types/current/track/dash/buildDashMediaTimeline.d.ts +2 -2
- package/dist/types/current/track/dash/buildDashMediaTimeline.d.ts.map +1 -1
- package/dist/types/current/track/dash/buildDashMediaTimeline.js +2 -2
- package/dist/types/current/track/dash/createDashContentStreamFactories.d.ts.map +1 -1
- package/dist/types/current/track/dash/createDashContentTypesValue.d.ts +2 -2
- package/dist/types/current/track/dash/createDashContentTypesValue.d.ts.map +1 -1
- package/dist/types/current/track/dash/createDashContentTypesValue.js +1 -1
- package/dist/types/current/track/dash/createDashFactories.d.ts +12 -12
- package/dist/types/current/track/dash/createDashFactories.d.ts.map +1 -1
- package/dist/types/current/track/dash/createDashFactories.js +8 -8
- package/dist/types/current/track/dash/createDashManifestProvider.d.ts +1 -1
- package/dist/types/current/track/dash/createDashManifestProvider.d.ts.map +1 -1
- package/dist/types/current/track/dash/createDashManifestProvider.js +1 -1
- package/dist/types/current/track/dash/createDefaultDashManifestTransformer.d.ts +1 -1
- package/dist/types/current/track/dash/createDefaultDashManifestTransformer.d.ts.map +1 -1
- package/dist/types/current/track/dash/createDefaultDashManifestTransformer.js +1 -1
- package/dist/types/current/track/dash/createSegmentControllerFactory.d.ts.map +1 -1
- package/dist/types/current/track/dash/manifestTransformUtils.d.ts +1 -1
- package/dist/types/current/track/dash/manifestTransformUtils.d.ts.map +1 -1
- package/dist/types/current/track/dash/timeline/DashRepresentationSegmentProvider.d.ts +3 -3
- package/dist/types/current/track/dash/timeline/DashRepresentationSegmentProvider.d.ts.map +1 -1
- package/dist/types/current/track/dash/timeline/DashRepresentationSegmentProvider.js +3 -3
- package/dist/types/current/track/dash/urlDashManifestProvider.d.ts +1 -1
- package/dist/types/current/track/dash/urlDashManifestProvider.d.ts.map +1 -1
- package/dist/types/current/track/dash/util/mimeType.d.ts.map +1 -1
- package/dist/types/current/track/dash/util/mimeType.js +1 -1
- package/dist/types/current/track/dash/util/mpd.d.ts +3 -2
- package/dist/types/current/track/dash/util/mpd.d.ts.map +1 -1
- package/dist/types/current/track/dash/util/mpd.js +13 -3
- package/dist/types/current/track/dash/util/uriResolution.js +1 -1
- package/dist/types/current/track/filters/keySystemFilter.d.ts.map +1 -1
- package/dist/types/current/track/filters/resourceTypeFilter.d.ts.map +1 -1
- package/dist/types/current/track/filters/sampleRateFilter.d.ts.map +1 -1
- package/dist/types/current/track/hls/HlsManifestData.d.ts +19 -0
- package/dist/types/current/track/hls/HlsManifestData.d.ts.map +1 -0
- package/dist/types/current/track/hls/HlsManifestData.js +5 -0
- package/dist/types/current/track/hls/HlsTrack.d.ts.map +1 -1
- package/dist/types/current/track/hls/buildHlsMediaTimeline.d.ts +3 -3
- package/dist/types/current/track/hls/buildHlsMediaTimeline.d.ts.map +1 -1
- package/dist/types/current/track/hls/buildHlsMediaTimeline.js +16 -14
- package/dist/types/current/track/hls/createDefaultHlsManifestTransformer.d.ts +1 -1
- package/dist/types/current/track/hls/createDefaultHlsManifestTransformer.d.ts.map +1 -1
- package/dist/types/current/track/hls/createHlsContentStreamFactories.d.ts.map +1 -1
- package/dist/types/current/track/hls/createHlsManifestProvider.d.ts +6 -0
- package/dist/types/current/track/hls/createHlsManifestProvider.d.ts.map +1 -0
- package/dist/types/current/track/hls/createHlsManifestProvider.js +9 -0
- package/dist/types/current/track/hls/util/hlsSegmentTime.d.ts +1 -1
- package/dist/types/current/track/hls/util/hlsSegmentTime.d.ts.map +1 -1
- package/dist/types/current/track/hls/util/hlsSegmentTime.js +1 -1
- package/dist/types/current/track/inferLoadOptionsFromUri.d.ts +15 -0
- package/dist/types/current/track/inferLoadOptionsFromUri.d.ts.map +1 -0
- package/dist/types/current/track/inferLoadOptionsFromUri.js +55 -0
- package/dist/types/current/track/mse/MseTrack.d.ts +2 -2
- package/dist/types/current/track/mse/MseTrack.d.ts.map +1 -1
- package/dist/types/current/track/mse/MseTrack.js +2 -1
- package/dist/types/current/track/mse/codec.d.ts.map +1 -1
- package/dist/types/current/track/source/FixedPlaybackQuality.d.ts +1 -1
- package/dist/types/current/track/source/FixedPlaybackQuality.d.ts.map +1 -1
- package/dist/types/current/track/source/SourceObjectTrack.d.ts +4 -4
- package/dist/types/current/track/source/SourceObjectTrack.d.ts.map +1 -1
- package/dist/types/current/track/source/SourceObjectTrack.js +2 -2
- package/dist/types/current/track/source/SourceTrack.d.ts +4 -4
- package/dist/types/current/track/source/SourceTrack.d.ts.map +1 -1
- package/dist/types/current/track/source/SourceTrack.js +2 -2
- package/dist/types/current/track/source/SourceTrackBase.d.ts +2 -2
- package/dist/types/current/track/source/SourceTrackBase.d.ts.map +1 -1
- package/dist/types/current/track/source/SourceTrackBase.js +2 -2
- package/dist/types/current/tsconfig.tsbuildinfo +1 -1
- package/dist/types/current/util/media/codecOverrides.d.ts +33 -0
- package/dist/types/current/util/media/codecOverrides.d.ts.map +1 -0
- package/dist/types/current/util/media/codecOverrides.js +37 -0
- package/dist/types/current/util/media/codecSupport.d.ts +6 -0
- package/dist/types/current/util/media/codecSupport.d.ts.map +1 -0
- package/dist/types/current/util/media/codecSupport.js +17 -0
- package/dist/types/current/util/media/mimeType.d.ts +8 -0
- package/dist/types/current/util/media/mimeType.d.ts.map +1 -0
- package/dist/types/current/util/media/mimeType.js +13 -0
- package/dist/types/current/vinyl/ReadonlyPlaybackStreamingState.d.ts.map +1 -1
- package/dist/types/current/vinyl/VinylDeps.d.ts +1 -1
- package/dist/types/current/vinyl/VinylDeps.d.ts.map +1 -1
- package/dist/types/current/vinyl/VinylOptions.d.ts.map +1 -1
- package/dist/types/current/vinyl/VinylPatchOptions.d.ts.map +1 -1
- package/dist/types/current/vinyl/VinylPlayer.d.ts +26 -2
- package/dist/types/current/vinyl/VinylPlayer.d.ts.map +1 -1
- package/dist/types/current/vinyl/VinylPlayer.js +18 -3
- package/dist/types/current/vinyl/createVinylFactories.d.ts +9 -11
- package/dist/types/current/vinyl/createVinylFactories.d.ts.map +1 -1
- package/dist/types/current/vinyl/createVinylFactories.js +2 -2
- package/dist/types/ts3.7/ad/AdBreakInfo.d.ts +160 -0
- package/dist/types/ts3.7/ad/AdController.d.ts +243 -0
- package/dist/types/ts3.7/ad/AdControllerImpl.d.ts +146 -0
- package/dist/types/ts3.7/ad/AdError.d.ts +6 -0
- package/dist/types/ts3.7/ad/AdsProvider.d.ts +28 -0
- package/dist/types/ts3.7/ad/defaultAdLoadOptionsResolver.d.ts +12 -0
- package/dist/types/ts3.7/ad/discoverHlsInterstitials.d.ts +22 -0
- package/dist/types/ts3.7/drm/DrmController.d.ts +2 -2
- package/dist/types/ts3.7/drm/DrmControllerImpl.d.ts +3 -3
- package/dist/types/ts3.7/drm/DrmKeySystemResolver.d.ts +1 -1
- package/dist/types/ts3.7/drm/DrmOptions.d.ts +1 -1
- package/dist/types/ts3.7/drm/commonEme/CommonEme.d.ts +2 -2
- package/dist/types/ts3.7/drm/commonEme/CommonEmeFactory.d.ts +1 -1
- package/dist/types/ts3.7/drm/commonEme/MsCommonEme.d.ts +1 -1
- package/dist/types/ts3.7/drm/commonEme/StandardCommonEme.d.ts +1 -1
- package/dist/types/ts3.7/drm/commonEme/WebKitCommonEme.d.ts +2 -2
- package/dist/types/ts3.7/drm/licenseProvider/LicenseProvider.d.ts +1 -1
- package/dist/types/ts3.7/global/environment.d.ts +6 -2
- package/dist/types/ts3.7/patch/media/patches/createPreventStallsPatch.d.ts +1 -1
- package/dist/types/ts3.7/patch/media/patches/createUnreliablePlaybackEventsPatch.d.ts +1 -1
- package/dist/types/ts3.7/playback/PlaybackControllerImpl.d.ts +2 -2
- package/dist/types/ts3.7/playback/logging/playbackStateLoggingHandler.d.ts +1 -1
- package/dist/types/ts3.7/playback/nextHasMetadata.d.ts +1 -1
- package/dist/types/ts3.7/streaming/AudioOptions.d.ts +39 -0
- package/dist/types/ts3.7/streaming/ContentStream.d.ts +4 -4
- package/dist/types/ts3.7/streaming/ContentStreamingOptions.d.ts +2 -2
- package/dist/types/ts3.7/streaming/LoadMetric.d.ts +58 -0
- package/dist/types/ts3.7/streaming/ManifestControllerImpl.d.ts +40 -0
- package/dist/types/ts3.7/streaming/MediaQualityMetadata.d.ts +2 -2
- package/dist/types/ts3.7/streaming/MediaTimeline.d.ts +6 -5
- package/dist/types/ts3.7/streaming/SegmentController.d.ts +2 -7
- package/dist/types/ts3.7/streaming/SegmentControllerImpl.d.ts +5 -6
- package/dist/types/ts3.7/streaming/SegmentReference.d.ts +1 -1
- package/dist/types/ts3.7/streaming/StreamingEventMap.d.ts +1 -1
- package/dist/types/ts3.7/streaming/abr/QualitySelector.d.ts +1 -1
- package/dist/types/ts3.7/streaming/abr/QualitySelectorImpl.d.ts +18 -3
- package/dist/types/ts3.7/streaming/buffering/BufferingController.d.ts +3 -13
- package/dist/types/ts3.7/streaming/buffering/MediaSourceController.d.ts +41 -15
- package/dist/types/ts3.7/streaming/buffering/SourceBufferController.d.ts +1 -1
- package/dist/types/ts3.7/streaming/buffering/codecDenylist.d.ts +23 -0
- package/dist/types/ts3.7/streaming/createAllowedContentTypesValue.d.ts +30 -0
- package/dist/types/ts3.7/streaming/createDefaultMediaTimelineTransformer.d.ts +1 -1
- package/dist/types/ts3.7/streaming/mediaTimelineAccessibilityFilter.d.ts +35 -0
- package/dist/types/ts3.7/streaming/mediaTimelineFilter.d.ts +3 -3
- package/dist/types/ts3.7/streaming/mediaTimelineLanguageFilter.d.ts +1 -1
- package/dist/types/ts3.7/streaming/util/segment.d.ts +1 -1
- package/dist/types/ts3.7/text/HtmlTextTrackRenderer.d.ts +60 -0
- package/dist/types/ts3.7/text/SidecarTextTrackController.d.ts +103 -0
- package/dist/types/ts3.7/text/SidecarTextTrackLoader.d.ts +65 -0
- package/dist/types/ts3.7/text/TextTrack.d.ts +183 -0
- package/dist/types/ts3.7/text/TextTrackRenderer.d.ts +24 -0
- package/dist/types/ts3.7/text/VttCueStyle.d.ts +41 -0
- package/dist/types/ts3.7/text/discoverDashTextTracks.d.ts +24 -0
- package/dist/types/ts3.7/text/discoverHlsTextTracks.d.ts +19 -0
- package/dist/types/ts3.7/text/mediaTextTrackProvider.d.ts +34 -0
- package/dist/types/ts3.7/text/parseWebVtt.d.ts +60 -0
- package/dist/types/ts3.7/text/pickPreferredTextTrack.d.ts +15 -0
- package/dist/types/ts3.7/track/AutoResetController.d.ts +37 -12
- package/dist/types/ts3.7/track/SeekRange.d.ts +9 -0
- package/dist/types/ts3.7/track/TrackController.d.ts +2 -2
- package/dist/types/ts3.7/track/TrackFactory.d.ts +1 -1
- package/dist/types/ts3.7/track/createVinylTrackFactories.d.ts +5 -5
- package/dist/types/ts3.7/track/dash/DashManifestController.d.ts +1 -1
- package/dist/types/ts3.7/track/dash/DashTrack.d.ts +4 -4
- package/dist/types/ts3.7/track/dash/buildDashMediaTimeline.d.ts +2 -2
- package/dist/types/ts3.7/track/dash/createDashContentTypesValue.d.ts +2 -2
- package/dist/types/ts3.7/track/dash/createDashFactories.d.ts +12 -12
- package/dist/types/ts3.7/track/dash/createDashManifestProvider.d.ts +1 -1
- package/dist/types/ts3.7/track/dash/createDefaultDashManifestTransformer.d.ts +1 -1
- package/dist/types/ts3.7/track/dash/manifestTransformUtils.d.ts +1 -1
- package/dist/types/ts3.7/track/dash/timeline/DashRepresentationSegmentProvider.d.ts +3 -3
- package/dist/types/ts3.7/track/dash/urlDashManifestProvider.d.ts +1 -1
- package/dist/types/ts3.7/track/dash/util/mpd.d.ts +3 -2
- package/dist/types/ts3.7/track/hls/HlsManifestData.d.ts +19 -0
- package/dist/types/ts3.7/track/hls/buildHlsMediaTimeline.d.ts +3 -3
- package/dist/types/ts3.7/track/hls/createDefaultHlsManifestTransformer.d.ts +1 -1
- package/dist/types/ts3.7/track/hls/createHlsManifestProvider.d.ts +6 -0
- package/dist/types/ts3.7/track/hls/util/hlsSegmentTime.d.ts +1 -1
- package/dist/types/ts3.7/track/inferLoadOptionsFromUri.d.ts +15 -0
- package/dist/types/ts3.7/track/mse/MseTrack.d.ts +2 -2
- package/dist/types/ts3.7/track/source/FixedPlaybackQuality.d.ts +1 -1
- package/dist/types/ts3.7/track/source/SourceObjectTrack.d.ts +4 -4
- package/dist/types/ts3.7/track/source/SourceTrack.d.ts +4 -4
- package/dist/types/ts3.7/track/source/SourceTrackBase.d.ts +2 -2
- package/dist/types/ts3.7/util/media/codecOverrides.d.ts +33 -0
- package/dist/types/ts3.7/util/media/codecSupport.d.ts +6 -0
- package/dist/types/ts3.7/util/media/mimeType.d.ts +8 -0
- package/dist/types/ts3.7/vinyl/VinylDeps.d.ts +1 -1
- package/dist/types/ts3.7/vinyl/VinylPlayer.d.ts +18 -2
- package/dist/types/ts3.7/vinyl/createVinylFactories.d.ts +9 -11
- package/dist/types/ts4.1/ad/AdBreakInfo.d.ts +160 -0
- package/dist/types/ts4.1/ad/AdController.d.ts +243 -0
- package/dist/types/ts4.1/ad/AdControllerImpl.d.ts +146 -0
- package/dist/types/ts4.1/ad/AdError.d.ts +6 -0
- package/dist/types/ts4.1/ad/AdsProvider.d.ts +28 -0
- package/dist/types/ts4.1/ad/defaultAdLoadOptionsResolver.d.ts +12 -0
- package/dist/types/ts4.1/ad/discoverHlsInterstitials.d.ts +22 -0
- package/dist/types/ts4.1/drm/DrmController.d.ts +2 -2
- package/dist/types/ts4.1/drm/DrmControllerImpl.d.ts +3 -3
- package/dist/types/ts4.1/drm/DrmKeySystemResolver.d.ts +1 -1
- package/dist/types/ts4.1/drm/DrmOptions.d.ts +1 -1
- package/dist/types/ts4.1/drm/commonEme/CommonEme.d.ts +2 -2
- package/dist/types/ts4.1/drm/commonEme/CommonEmeFactory.d.ts +1 -1
- package/dist/types/ts4.1/drm/commonEme/MsCommonEme.d.ts +1 -1
- package/dist/types/ts4.1/drm/commonEme/StandardCommonEme.d.ts +1 -1
- package/dist/types/ts4.1/drm/commonEme/WebKitCommonEme.d.ts +2 -2
- package/dist/types/ts4.1/drm/licenseProvider/LicenseProvider.d.ts +1 -1
- package/dist/types/ts4.1/global/environment.d.ts +6 -2
- package/dist/types/ts4.1/patch/media/patches/createPreventStallsPatch.d.ts +1 -1
- package/dist/types/ts4.1/patch/media/patches/createUnreliablePlaybackEventsPatch.d.ts +1 -1
- package/dist/types/ts4.1/playback/PlaybackControllerImpl.d.ts +2 -2
- package/dist/types/ts4.1/playback/logging/playbackStateLoggingHandler.d.ts +1 -1
- package/dist/types/ts4.1/playback/nextHasMetadata.d.ts +1 -1
- package/dist/types/ts4.1/streaming/AudioOptions.d.ts +39 -0
- package/dist/types/ts4.1/streaming/ContentStream.d.ts +4 -4
- package/dist/types/ts4.1/streaming/ContentStreamingOptions.d.ts +2 -2
- package/dist/types/ts4.1/streaming/LoadMetric.d.ts +58 -0
- package/dist/types/ts4.1/streaming/ManifestControllerImpl.d.ts +40 -0
- package/dist/types/ts4.1/streaming/MediaQualityMetadata.d.ts +2 -2
- package/dist/types/ts4.1/streaming/MediaTimeline.d.ts +6 -5
- package/dist/types/ts4.1/streaming/SegmentController.d.ts +2 -7
- package/dist/types/ts4.1/streaming/SegmentControllerImpl.d.ts +5 -6
- package/dist/types/ts4.1/streaming/SegmentReference.d.ts +1 -1
- package/dist/types/ts4.1/streaming/StreamingEventMap.d.ts +1 -1
- package/dist/types/ts4.1/streaming/abr/QualitySelector.d.ts +1 -1
- package/dist/types/ts4.1/streaming/abr/QualitySelectorImpl.d.ts +18 -3
- package/dist/types/ts4.1/streaming/buffering/BufferingController.d.ts +3 -13
- package/dist/types/ts4.1/streaming/buffering/MediaSourceController.d.ts +41 -15
- package/dist/types/ts4.1/streaming/buffering/SourceBufferController.d.ts +1 -1
- package/dist/types/ts4.1/streaming/buffering/codecDenylist.d.ts +23 -0
- package/dist/types/ts4.1/streaming/createAllowedContentTypesValue.d.ts +30 -0
- package/dist/types/ts4.1/streaming/createDefaultMediaTimelineTransformer.d.ts +1 -1
- package/dist/types/ts4.1/streaming/mediaTimelineAccessibilityFilter.d.ts +35 -0
- package/dist/types/ts4.1/streaming/mediaTimelineFilter.d.ts +3 -3
- package/dist/types/ts4.1/streaming/mediaTimelineLanguageFilter.d.ts +1 -1
- package/dist/types/ts4.1/streaming/util/segment.d.ts +1 -1
- package/dist/types/ts4.1/text/HtmlTextTrackRenderer.d.ts +60 -0
- package/dist/types/ts4.1/text/SidecarTextTrackController.d.ts +104 -0
- package/dist/types/ts4.1/text/SidecarTextTrackLoader.d.ts +65 -0
- package/dist/types/ts4.1/text/TextTrack.d.ts +183 -0
- package/dist/types/ts4.1/text/TextTrackRenderer.d.ts +24 -0
- package/dist/types/ts4.1/text/VttCueStyle.d.ts +41 -0
- package/dist/types/ts4.1/text/discoverDashTextTracks.d.ts +24 -0
- package/dist/types/ts4.1/text/discoverHlsTextTracks.d.ts +19 -0
- package/dist/types/ts4.1/text/mediaTextTrackProvider.d.ts +34 -0
- package/dist/types/ts4.1/text/parseWebVtt.d.ts +60 -0
- package/dist/types/ts4.1/text/pickPreferredTextTrack.d.ts +15 -0
- package/dist/types/ts4.1/track/AutoResetController.d.ts +37 -12
- package/dist/types/ts4.1/track/SeekRange.d.ts +9 -0
- package/dist/types/ts4.1/track/TrackController.d.ts +2 -2
- package/dist/types/ts4.1/track/TrackFactory.d.ts +1 -1
- package/dist/types/ts4.1/track/createVinylTrackFactories.d.ts +5 -5
- package/dist/types/ts4.1/track/dash/DashManifestController.d.ts +1 -1
- package/dist/types/ts4.1/track/dash/DashTrack.d.ts +4 -4
- package/dist/types/ts4.1/track/dash/buildDashMediaTimeline.d.ts +2 -2
- package/dist/types/ts4.1/track/dash/createDashContentTypesValue.d.ts +2 -2
- package/dist/types/ts4.1/track/dash/createDashFactories.d.ts +12 -12
- package/dist/types/ts4.1/track/dash/createDashManifestProvider.d.ts +1 -1
- package/dist/types/ts4.1/track/dash/createDefaultDashManifestTransformer.d.ts +1 -1
- package/dist/types/ts4.1/track/dash/manifestTransformUtils.d.ts +1 -1
- package/dist/types/ts4.1/track/dash/timeline/DashRepresentationSegmentProvider.d.ts +3 -3
- package/dist/types/ts4.1/track/dash/urlDashManifestProvider.d.ts +1 -1
- package/dist/types/ts4.1/track/dash/util/mpd.d.ts +3 -2
- package/dist/types/ts4.1/track/hls/HlsManifestData.d.ts +19 -0
- package/dist/types/ts4.1/track/hls/buildHlsMediaTimeline.d.ts +3 -3
- package/dist/types/ts4.1/track/hls/createDefaultHlsManifestTransformer.d.ts +1 -1
- package/dist/types/ts4.1/track/hls/createHlsManifestProvider.d.ts +6 -0
- package/dist/types/ts4.1/track/hls/util/hlsSegmentTime.d.ts +1 -1
- package/dist/types/ts4.1/track/inferLoadOptionsFromUri.d.ts +15 -0
- package/dist/types/ts4.1/track/mse/MseTrack.d.ts +3 -3
- package/dist/types/ts4.1/track/source/FixedPlaybackQuality.d.ts +1 -1
- package/dist/types/ts4.1/track/source/SourceObjectTrack.d.ts +5 -5
- package/dist/types/ts4.1/track/source/SourceTrack.d.ts +5 -5
- package/dist/types/ts4.1/track/source/SourceTrackBase.d.ts +3 -3
- package/dist/types/ts4.1/util/media/codecOverrides.d.ts +33 -0
- package/dist/types/ts4.1/util/media/codecSupport.d.ts +6 -0
- package/dist/types/ts4.1/util/media/mimeType.d.ts +8 -0
- package/dist/types/ts4.1/vinyl/VinylDeps.d.ts +1 -1
- package/dist/types/ts4.1/vinyl/VinylPlayer.d.ts +18 -2
- package/dist/types/ts4.1/vinyl/createVinylFactories.d.ts +9 -11
- package/dist/types/ts4.7/ad/AdBreakInfo.d.ts +160 -0
- package/dist/types/ts4.7/ad/AdController.d.ts +243 -0
- package/dist/types/ts4.7/ad/AdControllerImpl.d.ts +146 -0
- package/dist/types/ts4.7/ad/AdError.d.ts +6 -0
- package/dist/types/ts4.7/ad/AdsProvider.d.ts +28 -0
- package/dist/types/ts4.7/ad/defaultAdLoadOptionsResolver.d.ts +12 -0
- package/dist/types/ts4.7/ad/discoverHlsInterstitials.d.ts +22 -0
- package/dist/types/ts4.7/drm/DrmController.d.ts +2 -2
- package/dist/types/ts4.7/drm/DrmControllerImpl.d.ts +3 -3
- package/dist/types/ts4.7/drm/DrmKeySystemResolver.d.ts +1 -1
- package/dist/types/ts4.7/drm/DrmOptions.d.ts +1 -1
- package/dist/types/ts4.7/drm/commonEme/CommonEme.d.ts +2 -2
- package/dist/types/ts4.7/drm/commonEme/CommonEmeFactory.d.ts +1 -1
- package/dist/types/ts4.7/drm/commonEme/MsCommonEme.d.ts +1 -1
- package/dist/types/ts4.7/drm/commonEme/StandardCommonEme.d.ts +1 -1
- package/dist/types/ts4.7/drm/commonEme/WebKitCommonEme.d.ts +2 -2
- package/dist/types/ts4.7/drm/licenseProvider/LicenseProvider.d.ts +1 -1
- package/dist/types/ts4.7/global/environment.d.ts +6 -2
- package/dist/types/ts4.7/patch/media/patches/createPreventStallsPatch.d.ts +1 -1
- package/dist/types/ts4.7/patch/media/patches/createUnreliablePlaybackEventsPatch.d.ts +1 -1
- package/dist/types/ts4.7/playback/PlaybackControllerImpl.d.ts +2 -2
- package/dist/types/ts4.7/playback/logging/playbackStateLoggingHandler.d.ts +1 -1
- package/dist/types/ts4.7/playback/nextHasMetadata.d.ts +1 -1
- package/dist/types/ts4.7/streaming/AudioOptions.d.ts +39 -0
- package/dist/types/ts4.7/streaming/ContentStream.d.ts +4 -4
- package/dist/types/ts4.7/streaming/ContentStreamingOptions.d.ts +2 -2
- package/dist/types/ts4.7/streaming/LoadMetric.d.ts +58 -0
- package/dist/types/ts4.7/streaming/ManifestControllerImpl.d.ts +43 -0
- package/dist/types/ts4.7/streaming/MediaQualityMetadata.d.ts +2 -2
- package/dist/types/ts4.7/streaming/MediaTimeline.d.ts +6 -5
- package/dist/types/ts4.7/streaming/SegmentController.d.ts +2 -7
- package/dist/types/ts4.7/streaming/SegmentControllerImpl.d.ts +5 -6
- package/dist/types/ts4.7/streaming/SegmentReference.d.ts +1 -1
- package/dist/types/ts4.7/streaming/StreamingEventMap.d.ts +1 -1
- package/dist/types/ts4.7/streaming/abr/QualitySelector.d.ts +1 -1
- package/dist/types/ts4.7/streaming/abr/QualitySelectorImpl.d.ts +18 -3
- package/dist/types/ts4.7/streaming/buffering/BufferingController.d.ts +3 -13
- package/dist/types/ts4.7/streaming/buffering/MediaSourceController.d.ts +41 -15
- package/dist/types/ts4.7/streaming/buffering/SourceBufferController.d.ts +1 -1
- package/dist/types/ts4.7/streaming/buffering/codecDenylist.d.ts +23 -0
- package/dist/types/ts4.7/streaming/createAllowedContentTypesValue.d.ts +30 -0
- package/dist/types/ts4.7/streaming/createDefaultMediaTimelineTransformer.d.ts +1 -1
- package/dist/types/ts4.7/streaming/mediaTimelineAccessibilityFilter.d.ts +35 -0
- package/dist/types/ts4.7/streaming/mediaTimelineFilter.d.ts +3 -3
- package/dist/types/ts4.7/streaming/mediaTimelineLanguageFilter.d.ts +1 -1
- package/dist/types/ts4.7/streaming/util/segment.d.ts +1 -1
- package/dist/types/ts4.7/text/HtmlTextTrackRenderer.d.ts +60 -0
- package/dist/types/ts4.7/text/SidecarTextTrackController.d.ts +103 -0
- package/dist/types/ts4.7/text/SidecarTextTrackLoader.d.ts +65 -0
- package/dist/types/ts4.7/text/TextTrack.d.ts +183 -0
- package/dist/types/ts4.7/text/TextTrackRenderer.d.ts +24 -0
- package/dist/types/ts4.7/text/VttCueStyle.d.ts +41 -0
- package/dist/types/ts4.7/text/discoverDashTextTracks.d.ts +24 -0
- package/dist/types/ts4.7/text/discoverHlsTextTracks.d.ts +19 -0
- package/dist/types/ts4.7/text/mediaTextTrackProvider.d.ts +34 -0
- package/dist/types/ts4.7/text/parseWebVtt.d.ts +60 -0
- package/dist/types/ts4.7/text/pickPreferredTextTrack.d.ts +15 -0
- package/dist/types/ts4.7/track/AutoResetController.d.ts +37 -12
- package/dist/types/ts4.7/track/SeekRange.d.ts +9 -0
- package/dist/types/ts4.7/track/TrackController.d.ts +2 -2
- package/dist/types/ts4.7/track/TrackFactory.d.ts +1 -1
- package/dist/types/ts4.7/track/createVinylTrackFactories.d.ts +5 -5
- package/dist/types/ts4.7/track/dash/DashManifestController.d.ts +1 -1
- package/dist/types/ts4.7/track/dash/DashTrack.d.ts +4 -4
- package/dist/types/ts4.7/track/dash/buildDashMediaTimeline.d.ts +2 -2
- package/dist/types/ts4.7/track/dash/createDashContentTypesValue.d.ts +2 -2
- package/dist/types/ts4.7/track/dash/createDashFactories.d.ts +12 -12
- package/dist/types/ts4.7/track/dash/createDashManifestProvider.d.ts +1 -1
- package/dist/types/ts4.7/track/dash/createDefaultDashManifestTransformer.d.ts +1 -1
- package/dist/types/ts4.7/track/dash/manifestTransformUtils.d.ts +1 -1
- package/dist/types/ts4.7/track/dash/timeline/DashRepresentationSegmentProvider.d.ts +3 -3
- package/dist/types/ts4.7/track/dash/urlDashManifestProvider.d.ts +1 -1
- package/dist/types/ts4.7/track/dash/util/mpd.d.ts +3 -2
- package/dist/types/ts4.7/track/hls/HlsManifestData.d.ts +19 -0
- package/dist/types/ts4.7/track/hls/buildHlsMediaTimeline.d.ts +3 -3
- package/dist/types/ts4.7/track/hls/createDefaultHlsManifestTransformer.d.ts +1 -1
- package/dist/types/ts4.7/track/hls/createHlsManifestProvider.d.ts +6 -0
- package/dist/types/ts4.7/track/hls/util/hlsSegmentTime.d.ts +1 -1
- package/dist/types/ts4.7/track/inferLoadOptionsFromUri.d.ts +15 -0
- package/dist/types/ts4.7/track/mse/MseTrack.d.ts +2 -2
- package/dist/types/ts4.7/track/source/FixedPlaybackQuality.d.ts +1 -1
- package/dist/types/ts4.7/track/source/SourceObjectTrack.d.ts +4 -4
- package/dist/types/ts4.7/track/source/SourceTrack.d.ts +4 -4
- package/dist/types/ts4.7/track/source/SourceTrackBase.d.ts +2 -2
- package/dist/types/ts4.7/util/media/codecOverrides.d.ts +33 -0
- package/dist/types/ts4.7/util/media/codecSupport.d.ts +6 -0
- package/dist/types/ts4.7/util/media/mimeType.d.ts +8 -0
- package/dist/types/ts4.7/vinyl/VinylDeps.d.ts +1 -1
- package/dist/types/ts4.7/vinyl/VinylPlayer.d.ts +26 -2
- package/dist/types/ts4.7/vinyl/createVinylFactories.d.ts +9 -11
- package/dist/unit/types/current/ad/AdController.test.d.ts +2 -0
- package/dist/unit/types/current/ad/AdController.test.d.ts.map +1 -0
- package/dist/unit/types/current/ad/AdController.test.js +10 -0
- package/dist/unit/types/current/ad/AdControllerImpl.test.d.ts +2 -0
- package/dist/unit/types/current/ad/AdControllerImpl.test.d.ts.map +1 -0
- package/dist/unit/types/current/ad/AdControllerImpl.test.js +1456 -0
- package/dist/unit/types/current/ad/defaultAdLoadOptionsResolver.test.d.ts +2 -0
- package/dist/unit/types/current/ad/defaultAdLoadOptionsResolver.test.d.ts.map +1 -0
- package/dist/unit/types/current/ad/defaultAdLoadOptionsResolver.test.js +56 -0
- package/dist/unit/types/current/ad/discoverHlsInterstitials.test.d.ts +2 -0
- package/dist/unit/types/current/ad/discoverHlsInterstitials.test.d.ts.map +1 -0
- package/dist/unit/types/current/ad/discoverHlsInterstitials.test.js +756 -0
- package/dist/unit/types/current/drm/DrmControllerImpl.test.js +66 -1
- package/dist/unit/types/current/streaming/ManifestControllerImpl.test.d.ts +2 -0
- package/dist/unit/types/current/streaming/ManifestControllerImpl.test.d.ts.map +1 -0
- package/dist/unit/types/current/streaming/ManifestControllerImpl.test.js +197 -0
- package/dist/unit/types/current/streaming/MediaTimeline.test.js +6 -1
- package/dist/unit/types/current/streaming/MseTrack.test.js +4 -0
- package/dist/unit/types/current/streaming/SegmentControllerImpl.test.js +3 -33
- package/dist/unit/types/current/streaming/abr/QualitySelectorImpl.test.js +73 -0
- package/dist/unit/types/current/streaming/buffering/BufferingController.test.js +1 -41
- package/dist/unit/types/current/streaming/buffering/MediaSourceController.test.js +97 -17
- package/dist/unit/types/current/streaming/buffering/codecDenylist.test.d.ts +2 -0
- package/dist/unit/types/current/streaming/buffering/codecDenylist.test.d.ts.map +1 -0
- package/dist/unit/types/current/streaming/buffering/codecDenylist.test.js +56 -0
- package/dist/unit/types/current/streaming/createAllowedContentTypesValue.test.d.ts +2 -0
- package/dist/unit/types/current/streaming/createAllowedContentTypesValue.test.d.ts.map +1 -0
- package/dist/unit/types/current/streaming/createAllowedContentTypesValue.test.js +77 -0
- package/dist/unit/types/current/streaming/createDefaultMediaTimelineTransformer.test.js +6 -0
- package/dist/unit/types/current/streaming/mediaTimelineAccessibilityFilter.test.d.ts +2 -0
- package/dist/unit/types/current/streaming/mediaTimelineAccessibilityFilter.test.d.ts.map +1 -0
- package/dist/unit/types/current/streaming/mediaTimelineAccessibilityFilter.test.js +99 -0
- package/dist/unit/types/current/streaming/mediaTimelineFilter.test.js +2 -0
- package/dist/unit/types/current/streaming/mediaTimelineLanguageFilter.test.js +7 -0
- package/dist/unit/types/current/text/HtmlTextTrackRenderer.test.d.ts +2 -0
- package/dist/unit/types/current/text/HtmlTextTrackRenderer.test.d.ts.map +1 -0
- package/dist/unit/types/current/text/HtmlTextTrackRenderer.test.js +231 -0
- package/dist/unit/types/current/text/SidecarTextTrackController.test.d.ts +2 -0
- package/dist/unit/types/current/text/SidecarTextTrackController.test.d.ts.map +1 -0
- package/dist/unit/types/current/text/SidecarTextTrackController.test.js +686 -0
- package/dist/unit/types/current/text/SidecarTextTrackLoader.test.d.ts +2 -0
- package/dist/unit/types/current/text/SidecarTextTrackLoader.test.d.ts.map +1 -0
- package/dist/unit/types/current/text/SidecarTextTrackLoader.test.js +365 -0
- package/dist/unit/types/current/text/VttCueStyle.test.d.ts +2 -0
- package/dist/unit/types/current/text/VttCueStyle.test.d.ts.map +1 -0
- package/dist/unit/types/current/text/VttCueStyle.test.js +76 -0
- package/dist/unit/types/current/text/discoverDashTextTracks.test.d.ts +2 -0
- package/dist/unit/types/current/text/discoverDashTextTracks.test.d.ts.map +1 -0
- package/dist/unit/types/current/text/discoverDashTextTracks.test.js +199 -0
- package/dist/unit/types/current/text/discoverHlsTextTracks.test.d.ts +2 -0
- package/dist/unit/types/current/text/discoverHlsTextTracks.test.d.ts.map +1 -0
- package/dist/unit/types/current/text/discoverHlsTextTracks.test.js +177 -0
- package/dist/unit/types/current/text/mediaTextTrackProvider.test.d.ts +2 -0
- package/dist/unit/types/current/text/mediaTextTrackProvider.test.d.ts.map +1 -0
- package/dist/unit/types/current/text/mediaTextTrackProvider.test.js +86 -0
- package/dist/unit/types/current/text/parseWebVtt.test.d.ts +2 -0
- package/dist/unit/types/current/text/parseWebVtt.test.d.ts.map +1 -0
- package/dist/unit/types/current/text/parseWebVtt.test.js +393 -0
- package/dist/unit/types/current/text/pickPreferredTextTrack.test.d.ts +2 -0
- package/dist/unit/types/current/text/pickPreferredTextTrack.test.d.ts.map +1 -0
- package/dist/unit/types/current/text/pickPreferredTextTrack.test.js +78 -0
- package/dist/unit/types/current/track/AutoResetController.test.js +134 -22
- package/dist/unit/types/current/track/dash/createDashContentStreamFactories.test.js +5 -1
- package/dist/unit/types/current/track/dash/createSegmentControllerFactory.test.js +5 -1
- package/dist/unit/types/current/track/dash/util/mpd.test.js +29 -0
- package/dist/unit/types/current/track/hls/buildHlsMediaTimeline.test.js +16 -8
- package/dist/unit/types/current/track/hls/createHlsContentStreamFactories.test.js +5 -1
- package/dist/unit/types/current/track/inferLoadOptionsFromUri.test.d.ts +2 -0
- package/dist/unit/types/current/track/inferLoadOptionsFromUri.test.d.ts.map +1 -0
- package/dist/unit/types/current/track/inferLoadOptionsFromUri.test.js +165 -0
- package/dist/unit/types/current/tsconfig.tsbuildinfo +1 -1
- package/dist/unit/types/current/util/media/codecOverrides.test.d.ts +2 -0
- package/dist/unit/types/current/util/media/codecOverrides.test.d.ts.map +1 -0
- package/dist/unit/types/current/util/media/codecOverrides.test.js +42 -0
- package/dist/unit/types/current/util/media/codecSupport.test.d.ts +2 -0
- package/dist/unit/types/current/util/media/codecSupport.test.d.ts.map +1 -0
- package/dist/unit/types/current/util/media/codecSupport.test.js +26 -0
- package/dist/unit/types/current/util/media/mimeType.test.d.ts +2 -0
- package/dist/unit/types/current/util/media/mimeType.test.d.ts.map +1 -0
- package/dist/unit/types/current/util/media/mimeType.test.js +22 -0
- package/dist/unit/types/current/vinyl/VinylPlayer.test.js +35 -0
- package/dist/unit/types/current/vinyl/VinylPlayerAdBreaks.test.d.ts +2 -0
- package/dist/unit/types/current/vinyl/VinylPlayerAdBreaks.test.d.ts.map +1 -0
- package/dist/unit/types/current/vinyl/VinylPlayerAdBreaks.test.js +142 -0
- package/dist/unit/types/current/vinyl/VinylPlayerTextTracks.test.d.ts +2 -0
- package/dist/unit/types/current/vinyl/VinylPlayerTextTracks.test.d.ts.map +1 -0
- package/dist/unit/types/current/vinyl/VinylPlayerTextTracks.test.js +188 -0
- package/dist/vinylTestUtil/index.js +20 -14
- package/dist/vinylTestUtil/index.js.map +2 -2
- package/dist/vinylTestUtil/types/current/media/FrequencyAnalyzer.js +1 -1
- package/dist/vinylTestUtil/types/current/mediaSource/ControlledMediaSource.d.ts.map +1 -1
- package/dist/vinylTestUtil/types/current/mock/ad/MockAdController.d.ts +15 -0
- package/dist/vinylTestUtil/types/current/mock/ad/MockAdController.d.ts.map +1 -0
- package/dist/vinylTestUtil/types/current/mock/ad/MockAdController.js +26 -0
- package/dist/vinylTestUtil/types/current/mock/dash/mockDashManifest.d.ts +72 -72
- package/dist/vinylTestUtil/types/current/mock/dom/ms/MockMSMediaKeySession.d.ts +2 -2
- package/dist/vinylTestUtil/types/current/mock/dom/webkit/MockWebKitMediaKeySession.d.ts +2 -2
- package/dist/vinylTestUtil/types/current/mock/player/MockVinylPlayerDependencies.d.ts +6 -6
- package/dist/vinylTestUtil/types/current/mock/player/MockVinylPlayerDependencies.d.ts.map +1 -1
- package/dist/vinylTestUtil/types/current/mock/player/MockVinylPlayerDependencies.js +7 -7
- package/dist/vinylTestUtil/types/current/mock/streaming/MockSegmentController.d.ts +0 -1
- package/dist/vinylTestUtil/types/current/mock/streaming/MockSegmentController.d.ts.map +1 -1
- package/dist/vinylTestUtil/types/current/mock/streaming/MockSegmentController.js +0 -1
- package/dist/vinylTestUtil/types/current/mock/streaming/buffering/MockMediaSourceController.d.ts +0 -1
- package/dist/vinylTestUtil/types/current/mock/streaming/buffering/MockMediaSourceController.d.ts.map +1 -1
- package/dist/vinylTestUtil/types/current/mock/streaming/buffering/MockMediaSourceController.js +0 -1
- package/dist/vinylTestUtil/types/current/mock/text/MockTextTrackController.d.ts +10 -0
- package/dist/vinylTestUtil/types/current/mock/text/MockTextTrackController.d.ts.map +1 -0
- package/dist/vinylTestUtil/types/current/mock/text/MockTextTrackController.js +14 -0
- package/dist/vinylTestUtil/types/current/mock/track/MockAutoResetController.d.ts +1 -0
- package/dist/vinylTestUtil/types/current/mock/track/MockAutoResetController.d.ts.map +1 -1
- package/dist/vinylTestUtil/types/current/mock/track/MockAutoResetController.js +1 -0
- package/dist/vinylTestUtil/types/current/mock/track/dash/createMockDashDependencies.d.ts +5 -5
- package/dist/vinylTestUtil/types/current/mock/track/dash/createMockDashDependencies.d.ts.map +1 -1
- package/dist/vinylTestUtil/types/current/mock/track/dash/createMockDashDependencies.js +11 -7
- package/dist/vinylTestUtil/types/current/mock/track/hls/createMockHlsDependencies.d.ts +5 -5
- package/dist/vinylTestUtil/types/current/mock/track/hls/createMockHlsDependencies.d.ts.map +1 -1
- package/dist/vinylTestUtil/types/current/mock/track/hls/createMockHlsDependencies.js +11 -7
- package/dist/vinylTestUtil/types/current/player/createVinylSuite.js +1 -1
- package/dist/vinylTestUtil/types/current/tsconfig.tsbuildinfo +1 -1
- package/dist/vinylTestUtil/types/current/util/playback/expectTrackCanSeek.js +1 -1
- package/dist/vinylTestUtil/types/current/util/playback/expectTrackPlays.js +2 -2
- package/dist/vinylTestUtil/types/current/util/playback/expectTrackPlaysUntil.d.ts.map +1 -1
- package/dist/vinylTestUtil/types/current/util/playback/expectTrackPlaysUntil.js +1 -2
- package/dist/vinylTestUtil/types/ts3.7/mock/ad/MockAdController.d.ts +15 -0
- package/dist/vinylTestUtil/types/ts3.7/mock/dash/mockDashManifest.d.ts +72 -72
- package/dist/vinylTestUtil/types/ts3.7/mock/dom/ms/MockMSMediaKeySession.d.ts +2 -2
- package/dist/vinylTestUtil/types/ts3.7/mock/dom/webkit/MockWebKitMediaKeySession.d.ts +2 -2
- package/dist/vinylTestUtil/types/ts3.7/mock/player/MockVinylPlayerDependencies.d.ts +6 -6
- package/dist/vinylTestUtil/types/ts3.7/mock/streaming/MockSegmentController.d.ts +0 -1
- package/dist/vinylTestUtil/types/ts3.7/mock/streaming/buffering/MockMediaSourceController.d.ts +0 -1
- package/dist/vinylTestUtil/types/ts3.7/mock/text/MockTextTrackController.d.ts +10 -0
- package/dist/vinylTestUtil/types/ts3.7/mock/track/MockAutoResetController.d.ts +1 -0
- package/dist/vinylTestUtil/types/ts3.7/mock/track/dash/createMockDashDependencies.d.ts +5 -5
- package/dist/vinylTestUtil/types/ts3.7/mock/track/hls/createMockHlsDependencies.d.ts +5 -5
- package/dist/vinylTestUtil/types/ts4.1/mock/ad/MockAdController.d.ts +15 -0
- package/dist/vinylTestUtil/types/ts4.1/mock/dash/mockDashManifest.d.ts +72 -72
- package/dist/vinylTestUtil/types/ts4.1/mock/dom/ms/MockMSMediaKeySession.d.ts +2 -2
- package/dist/vinylTestUtil/types/ts4.1/mock/dom/webkit/MockWebKitMediaKeySession.d.ts +2 -2
- package/dist/vinylTestUtil/types/ts4.1/mock/player/MockVinylPlayerDependencies.d.ts +6 -6
- package/dist/vinylTestUtil/types/ts4.1/mock/streaming/MockSegmentController.d.ts +0 -1
- package/dist/vinylTestUtil/types/ts4.1/mock/streaming/buffering/MockMediaSourceController.d.ts +0 -1
- package/dist/vinylTestUtil/types/ts4.1/mock/text/MockTextTrackController.d.ts +10 -0
- package/dist/vinylTestUtil/types/ts4.1/mock/track/MockAutoResetController.d.ts +1 -0
- package/dist/vinylTestUtil/types/ts4.1/mock/track/dash/createMockDashDependencies.d.ts +5 -5
- package/dist/vinylTestUtil/types/ts4.1/mock/track/hls/createMockHlsDependencies.d.ts +5 -5
- package/dist/vinylTestUtil/types/ts4.7/mock/ad/MockAdController.d.ts +15 -0
- package/dist/vinylTestUtil/types/ts4.7/mock/dash/mockDashManifest.d.ts +72 -72
- package/dist/vinylTestUtil/types/ts4.7/mock/dom/ms/MockMSMediaKeySession.d.ts +2 -2
- package/dist/vinylTestUtil/types/ts4.7/mock/dom/webkit/MockWebKitMediaKeySession.d.ts +2 -2
- package/dist/vinylTestUtil/types/ts4.7/mock/player/MockVinylPlayerDependencies.d.ts +6 -6
- package/dist/vinylTestUtil/types/ts4.7/mock/streaming/MockSegmentController.d.ts +0 -1
- package/dist/vinylTestUtil/types/ts4.7/mock/streaming/buffering/MockMediaSourceController.d.ts +0 -1
- package/dist/vinylTestUtil/types/ts4.7/mock/text/MockTextTrackController.d.ts +10 -0
- package/dist/vinylTestUtil/types/ts4.7/mock/track/MockAutoResetController.d.ts +1 -0
- package/dist/vinylTestUtil/types/ts4.7/mock/track/dash/createMockDashDependencies.d.ts +5 -5
- package/dist/vinylTestUtil/types/ts4.7/mock/track/hls/createMockHlsDependencies.d.ts +5 -5
- package/docs/USAGE.md +33 -0
- package/package.json +13 -16
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
import type { TrackUri } from '../track/Track';
|
|
2
|
+
import type { ValueProvider } from '@amazon/vinyl-util';
|
|
3
|
+
export interface TrackAds {
|
|
4
|
+
/**
|
|
5
|
+
* The URI of the parent track.
|
|
6
|
+
*/
|
|
7
|
+
readonly trackUri: TrackUri;
|
|
8
|
+
/**
|
|
9
|
+
* An array of the ad breaks for this track.
|
|
10
|
+
*/
|
|
11
|
+
readonly adBreaks: AdBreakList;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Where an ad break is scheduled relative to the main content.
|
|
15
|
+
*
|
|
16
|
+
* - `preroll` - before content playback begins (start time at or near 0).
|
|
17
|
+
* - `midroll` - during content playback.
|
|
18
|
+
* - `postroll` - at the end of content playback.
|
|
19
|
+
*/
|
|
20
|
+
export type AdBreakPlacement = 'preroll' | 'midroll' | 'postroll';
|
|
21
|
+
/**
|
|
22
|
+
* Restrictions on user interaction during an ad break.
|
|
23
|
+
*/
|
|
24
|
+
export interface AdRestriction {
|
|
25
|
+
/**
|
|
26
|
+
* When true, the user should not be allowed to skip this ad.
|
|
27
|
+
*
|
|
28
|
+
* This is not enforced by the player; the application is expected
|
|
29
|
+
* to respect this flag when showing ad skip controls.
|
|
30
|
+
*/
|
|
31
|
+
readonly skip?: boolean;
|
|
32
|
+
/**
|
|
33
|
+
* When true, the user should not be allowed to seek past this ad.
|
|
34
|
+
*/
|
|
35
|
+
readonly jump?: boolean;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* A provider-agnostic description of a single ad break on the media timeline.
|
|
39
|
+
*
|
|
40
|
+
* An ad break is a span of the presentation that carries advertising rather
|
|
41
|
+
* than primary content. The same shape is produced from HLS Interstitials
|
|
42
|
+
* (EXT-X-DATERANGE with `CLASS="com.apple.hls.interstitial"`) and, in the
|
|
43
|
+
* future, from DASH SCTE-35 splice signals, so applications observe one
|
|
44
|
+
* interface regardless of the streaming protocol.
|
|
45
|
+
*
|
|
46
|
+
* Times are expressed on the player's media timeline, in seconds, so they can
|
|
47
|
+
* be compared directly against the media's current time.
|
|
48
|
+
*/
|
|
49
|
+
export interface AdBreakInfo {
|
|
50
|
+
/**
|
|
51
|
+
* A stable identifier for this ad break, unique within the current media
|
|
52
|
+
* presentation. Derived from the source signal (e.g. the HLS DATERANGE ID).
|
|
53
|
+
*/
|
|
54
|
+
readonly id: string;
|
|
55
|
+
/**
|
|
56
|
+
* The start time of the ad break on the media timeline, in seconds.
|
|
57
|
+
*/
|
|
58
|
+
readonly startTime: number;
|
|
59
|
+
/**
|
|
60
|
+
* The duration of the ad break in seconds, or null when unknown (e.g. a
|
|
61
|
+
* still-open live break that has not yet resolved its end).
|
|
62
|
+
*/
|
|
63
|
+
readonly duration: number | null;
|
|
64
|
+
/**
|
|
65
|
+
* The scheduled placement of the break relative to primary content.
|
|
66
|
+
*/
|
|
67
|
+
readonly placement: AdBreakPlacement;
|
|
68
|
+
/**
|
|
69
|
+
* The individual ad assets that make up this break, in playback order.
|
|
70
|
+
*/
|
|
71
|
+
readonly ads: ValueProvider<AdList>;
|
|
72
|
+
/**
|
|
73
|
+
* Restrictions on user interaction during this ad break.
|
|
74
|
+
*/
|
|
75
|
+
readonly restrict: AdRestriction;
|
|
76
|
+
/**
|
|
77
|
+
* When true, this break plays at most once for the presentation and is not
|
|
78
|
+
* replayed even if the playhead re-crosses it (e.g. after a seek back). When
|
|
79
|
+
* false, the break may replay each time the playhead re-enters its region.
|
|
80
|
+
*
|
|
81
|
+
* (An HLS interstitial sets this from a `CUE=ONCE` hint.)
|
|
82
|
+
*/
|
|
83
|
+
readonly once: boolean;
|
|
84
|
+
/**
|
|
85
|
+
* The offset, in seconds, from this break's scheduled {@link startTime} at
|
|
86
|
+
* which primary content resumes after the break. A signed value: 0 resumes
|
|
87
|
+
* in place (the break is purely additive). `null` means no resume offset was
|
|
88
|
+
* specified, in which case content resumes advanced by the break's actual
|
|
89
|
+
* playout duration (i.e. the break replaces that much primary content) —
|
|
90
|
+
* this is distinct from an explicit 0.
|
|
91
|
+
*
|
|
92
|
+
* (An HLS interstitial sets this from `X-RESUME-OFFSET`.)
|
|
93
|
+
*/
|
|
94
|
+
readonly resumeOffset: number | null;
|
|
95
|
+
/**
|
|
96
|
+
* The maximum total playout time of the whole break, in seconds, summed
|
|
97
|
+
* across all of its ads, or `null` when the break's playout is uncapped.
|
|
98
|
+
* Distinct from {@link duration} (the break's timeline span) and from an
|
|
99
|
+
* individual {@link AdInfo.duration}.
|
|
100
|
+
*
|
|
101
|
+
* (An HLS interstitial sets this from `X-PLAYOUT-LIMIT`.)
|
|
102
|
+
*/
|
|
103
|
+
readonly playoutLimit: number | null;
|
|
104
|
+
/**
|
|
105
|
+
* How far ahead of this break's {@link startTime}, in seconds, the player
|
|
106
|
+
* should resolve and preload the break's ad assets so they are ready when
|
|
107
|
+
* the playhead reaches it. `null` when the source specifies no offset, in
|
|
108
|
+
* which case the controller falls back to its `preloadAheadTime` option.
|
|
109
|
+
* Applies to midroll and postroll breaks; prerolls are preloaded up front.
|
|
110
|
+
*
|
|
111
|
+
* (An HLS interstitial sets this from `X-RESOLUTION-TIME-OFFSET`.)
|
|
112
|
+
*/
|
|
113
|
+
readonly resolutionTimeOffset: number | null;
|
|
114
|
+
/**
|
|
115
|
+
* The window during which the user may skip this break, or a provider
|
|
116
|
+
* resolving to `null` when the break carries no skip window (skippability is
|
|
117
|
+
* then governed by {@link AdRestriction.skip}). Resolved lazily because, like
|
|
118
|
+
* {@link ads}, it may require fetching the break's asset list.
|
|
119
|
+
*
|
|
120
|
+
* (An HLS interstitial sets this from the `X-ASSET-LIST` `SKIP-CONTROL`.)
|
|
121
|
+
*/
|
|
122
|
+
readonly skipControl: ValueProvider<SkipControl | null>;
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Describes when a user may skip an ad break: skipping becomes available
|
|
126
|
+
* {@link offset} seconds into the break and remains offered for {@link duration}
|
|
127
|
+
* seconds (or the rest of the break when null).
|
|
128
|
+
*/
|
|
129
|
+
export interface SkipControl {
|
|
130
|
+
/** Seconds from the break start at which skipping becomes available. */
|
|
131
|
+
readonly offset: number;
|
|
132
|
+
/**
|
|
133
|
+
* Seconds the skip control remains offered after {@link offset}, or `null`
|
|
134
|
+
* to offer it for the remainder of the break.
|
|
135
|
+
*/
|
|
136
|
+
readonly duration: number | null;
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* An ad break list, sorted by start time ascendingly.
|
|
140
|
+
*/
|
|
141
|
+
export type AdBreakList = readonly AdBreakInfo[];
|
|
142
|
+
/**
|
|
143
|
+
* A single ad within an {@link AdBreakInfo}.
|
|
144
|
+
*/
|
|
145
|
+
export interface AdInfo {
|
|
146
|
+
/** A stable identifier for this ad within its break. */
|
|
147
|
+
readonly id: string;
|
|
148
|
+
/** The start time of this ad on the media timeline, in seconds. */
|
|
149
|
+
readonly startTime: number;
|
|
150
|
+
/** The duration of this ad in seconds, or null when unknown. */
|
|
151
|
+
readonly duration: number | null;
|
|
152
|
+
/**
|
|
153
|
+
* The URI of the ad asset, when the source signal provides one directly
|
|
154
|
+
* (e.g. an HLS interstitial `X-ASSET-URI`). Null when the ad is described
|
|
155
|
+
* only indirectly.
|
|
156
|
+
*/
|
|
157
|
+
readonly uri: TrackUri | null;
|
|
158
|
+
}
|
|
159
|
+
export type AdList = readonly AdInfo[];
|
|
160
|
+
//# sourceMappingURL=AdBreakInfo.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AdBreakInfo.d.ts","sourceRoot":"","sources":["../../../../src/ad/AdBreakInfo.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAEvD,MAAM,WAAW,QAAQ;IACrB;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAA;IAE3B;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAA;CACjC;AAED;;;;;;GAMG;AACH,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,CAAA;AAEjE;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B;;;;;OAKG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAA;IAEvB;;OAEG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAC1B;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,WAAW;IACxB;;;OAGG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IAEnB;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAE1B;;;OAGG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IAEhC;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAA;IAEpC;;OAEG;IACH,QAAQ,CAAC,GAAG,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;IAEnC;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAA;IAEhC;;;;;;OAMG;IACH,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;IAEtB;;;;;;;;;OASG;IACH,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAEpC;;;;;;;OAOG;IACH,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAEpC;;;;;;;;OAQG;IACH,QAAQ,CAAC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAA;IAE5C;;;;;;;OAOG;IACH,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,WAAW,GAAG,IAAI,CAAC,CAAA;CAC1D;AAED;;;;GAIG;AACH,MAAM,WAAW,WAAW;IACxB,wEAAwE;IACxE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IAEvB;;;OAGG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;CACnC;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,SAAS,WAAW,EAAE,CAAA;AAGhD;;GAEG;AACH,MAAM,WAAW,MAAM;IACnB,wDAAwD;IACxD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IAEnB,mEAAmE;IACnE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAE1B,gEAAgE;IAChE,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IAEhC;;;;OAIG;IACH,QAAQ,CAAC,GAAG,EAAE,QAAQ,GAAG,IAAI,CAAA;CAChC;AAED,MAAM,MAAM,MAAM,GAAG,SAAS,MAAM,EAAE,CAAA"}
|
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
import type { ChangeEvent } from '../event/ChangeEvent';
|
|
2
|
+
import { type ReadonlyEventHost } from '@amazon/vinyl-util';
|
|
3
|
+
import { type AdBreakInfo, type AdInfo, type TrackAds } from './AdBreakInfo';
|
|
4
|
+
import type { AdsProvider } from './AdsProvider';
|
|
5
|
+
/**
|
|
6
|
+
* Events dispatched by an {@link AdController}. These are provider-agnostic:
|
|
7
|
+
* an application listens once and receives the same events whether the ads
|
|
8
|
+
* originate from HLS Interstitials or DASH SCTE-35.
|
|
9
|
+
*/
|
|
10
|
+
export interface AdEventMap {
|
|
11
|
+
/**
|
|
12
|
+
* Emitted when the set of known ad breaks for the current media changes,
|
|
13
|
+
* for example when a live manifest reveals a new break.
|
|
14
|
+
*/
|
|
15
|
+
readonly currentTrackAdsChange: ChangeEvent<TrackAds | null>;
|
|
16
|
+
/**
|
|
17
|
+
* Dispatched when the playhead approaches a midroll or postroll break —
|
|
18
|
+
* within the break's resolution/preload window — so its ad assets can be
|
|
19
|
+
* resolved and warmed ahead of entry. Fires once per break as it is
|
|
20
|
+
* approached (again after a seek back re-arms a replayable break). Prerolls
|
|
21
|
+
* are preloaded up front and do not emit this.
|
|
22
|
+
*/
|
|
23
|
+
readonly adPreload: AdBreakEvent;
|
|
24
|
+
/**
|
|
25
|
+
* Dispatched when an ad break has been entered — its ads may still be
|
|
26
|
+
* resolving. An ad break may contain one or more ads.
|
|
27
|
+
*/
|
|
28
|
+
readonly adBreakEntered: AdBreakEvent;
|
|
29
|
+
/**
|
|
30
|
+
* Dispatched when the current ad break has completed: all of its ads
|
|
31
|
+
* played, were skipped, it hit its playout limit, or it had no ads. Carries
|
|
32
|
+
* the position at which primary content resumes.
|
|
33
|
+
*/
|
|
34
|
+
readonly adBreakCompleted: AdBreakCompleteEvent;
|
|
35
|
+
/**
|
|
36
|
+
* Dispatched when an ad region has been entered.
|
|
37
|
+
*/
|
|
38
|
+
readonly adEntered: AdEvent;
|
|
39
|
+
/**
|
|
40
|
+
* Dispatched when an ad has started playing.
|
|
41
|
+
*/
|
|
42
|
+
readonly adPlaying: AdEvent;
|
|
43
|
+
/**
|
|
44
|
+
* Dispatched on each playback progress tick while an ad is active, carrying
|
|
45
|
+
* the elapsed and remaining time for both the current ad and the whole ad
|
|
46
|
+
* break. Applications should prefer this over deriving ad timing from the
|
|
47
|
+
* media element's duration.
|
|
48
|
+
*/
|
|
49
|
+
readonly adTimeUpdate: AdTimeUpdateEvent;
|
|
50
|
+
/**
|
|
51
|
+
* Dispatched when an ad has played through 25%.
|
|
52
|
+
*/
|
|
53
|
+
readonly adFirstQuartile: AdProgressEvent;
|
|
54
|
+
/**
|
|
55
|
+
* Dispatched when an ad has played through 50%.
|
|
56
|
+
*/
|
|
57
|
+
readonly adMidpoint: AdProgressEvent;
|
|
58
|
+
/**
|
|
59
|
+
* Dispatched when an ad has played through 75%.
|
|
60
|
+
*/
|
|
61
|
+
readonly adThirdQuartile: AdProgressEvent;
|
|
62
|
+
/**
|
|
63
|
+
* Dispatched when an ad has played through 100%.
|
|
64
|
+
* Will be dispatched before adCompleted.
|
|
65
|
+
*/
|
|
66
|
+
readonly adEnded: AdProgressEvent;
|
|
67
|
+
/**
|
|
68
|
+
* Dispatched when an ad has stopped playing for any reason such as
|
|
69
|
+
* ended, error, or skipped.
|
|
70
|
+
*/
|
|
71
|
+
readonly adCompleted: AdCompleteEvent;
|
|
72
|
+
/**
|
|
73
|
+
* An ad list or an individual ad failed to complete.
|
|
74
|
+
*/
|
|
75
|
+
readonly adError: AdErrorEvent;
|
|
76
|
+
}
|
|
77
|
+
export interface AdErrorEvent {
|
|
78
|
+
/**
|
|
79
|
+
* The current ad break when the ad failed to load.
|
|
80
|
+
*/
|
|
81
|
+
readonly adBreak: AdBreakInfo;
|
|
82
|
+
/**
|
|
83
|
+
* If set, the error was from an individual ad.
|
|
84
|
+
* If not set, the failure was in loading the ad list.
|
|
85
|
+
*/
|
|
86
|
+
readonly currentAd: AdInfo | null;
|
|
87
|
+
/**
|
|
88
|
+
* The source error.
|
|
89
|
+
*/
|
|
90
|
+
readonly error: any;
|
|
91
|
+
}
|
|
92
|
+
export interface AdEvent {
|
|
93
|
+
/** The parent ad break */
|
|
94
|
+
readonly adBreak: AdBreakInfo;
|
|
95
|
+
/** The ad that triggered this event. */
|
|
96
|
+
readonly ad: AdInfo;
|
|
97
|
+
/** The zero-based position of this ad within its break. */
|
|
98
|
+
readonly index: number;
|
|
99
|
+
/** The total number of ads in this break. */
|
|
100
|
+
readonly totalAds: number;
|
|
101
|
+
}
|
|
102
|
+
export interface AdProgressEvent extends AdEvent {
|
|
103
|
+
/**
|
|
104
|
+
* The average continuous playback rate for the quartile.
|
|
105
|
+
* Typically, 1.0 unless playbackRate was altered.
|
|
106
|
+
*/
|
|
107
|
+
readonly playbackRateAvg: number;
|
|
108
|
+
}
|
|
109
|
+
export interface AdTimeUpdateEvent extends AdEvent {
|
|
110
|
+
/** Seconds the current ad has played. */
|
|
111
|
+
readonly adCurrentTime: number;
|
|
112
|
+
/**
|
|
113
|
+
* Seconds remaining in the current ad, or null when the ad's duration is
|
|
114
|
+
* unknown.
|
|
115
|
+
*/
|
|
116
|
+
readonly adTimeRemaining: number | null;
|
|
117
|
+
/**
|
|
118
|
+
* Seconds the current ad break has played, summed across all of its ads so
|
|
119
|
+
* far (including the current one).
|
|
120
|
+
*/
|
|
121
|
+
readonly breakCurrentTime: number;
|
|
122
|
+
/**
|
|
123
|
+
* Seconds remaining in the current ad break as a whole, or null when the
|
|
124
|
+
* break's total duration is unknown.
|
|
125
|
+
*/
|
|
126
|
+
readonly breakTimeRemaining: number | null;
|
|
127
|
+
/**
|
|
128
|
+
* Whether the current ad may be skipped right now — false while skipping is
|
|
129
|
+
* restricted or the break's skip window has not yet opened. Applications
|
|
130
|
+
* should gate their skip control on this.
|
|
131
|
+
*/
|
|
132
|
+
readonly canSkip: boolean;
|
|
133
|
+
/**
|
|
134
|
+
* Seconds until the ad becomes skippable, or null when there is no pending
|
|
135
|
+
* skip window (it is already skippable, or skipping is never offered).
|
|
136
|
+
*/
|
|
137
|
+
readonly skipIn: number | null;
|
|
138
|
+
}
|
|
139
|
+
export interface AdCompleteEvent extends AdEvent {
|
|
140
|
+
/** The current ad break. */
|
|
141
|
+
readonly adBreak: AdBreakInfo;
|
|
142
|
+
/** The reason the ad changed, e.g. 'ended' for completed naturally, or 'skipped' */
|
|
143
|
+
readonly reason: AdChangeReason;
|
|
144
|
+
}
|
|
145
|
+
export interface AdBreakEvent {
|
|
146
|
+
/** The ad break. */
|
|
147
|
+
readonly adBreak: AdBreakInfo;
|
|
148
|
+
}
|
|
149
|
+
export interface AdBreakCompleteEvent extends AdBreakEvent {
|
|
150
|
+
/**
|
|
151
|
+
* The absolute media-timeline position, in seconds, at which primary content
|
|
152
|
+
* resumes after this break. The controller has already resolved the break's
|
|
153
|
+
* resume offset and playout, so consumers use this position directly.
|
|
154
|
+
*/
|
|
155
|
+
readonly resumePosition: number;
|
|
156
|
+
/** The reason the ad break changed, e.g. 'ended' for completed naturally, or 'skipped' */
|
|
157
|
+
readonly reason: AdChangeReason;
|
|
158
|
+
}
|
|
159
|
+
export type AdChangeReason = 'ended' | 'skipped' | 'contentChange' | 'error';
|
|
160
|
+
export declare const ALL_AD_EVENTS: readonly ["currentTrackAdsChange", "adPreload", "adBreakEntered", "adBreakCompleted", "adFirstQuartile", "adEntered", "adPlaying", "adTimeUpdate", "adMidpoint", "adThirdQuartile", "adEnded", "adCompleted", "adError"];
|
|
161
|
+
/**
|
|
162
|
+
* Read-only view of the ad breaks for the current media and which break, if
|
|
163
|
+
* any, currently contains the playhead.
|
|
164
|
+
*/
|
|
165
|
+
export interface ReadonlyAdController extends ReadonlyEventHost<AdEventMap> {
|
|
166
|
+
/**
|
|
167
|
+
* The ad breaks known for the current media.
|
|
168
|
+
*/
|
|
169
|
+
readonly currentTrackAds: TrackAds | null;
|
|
170
|
+
/**
|
|
171
|
+
* The ad break currently containing the playhead, or null when the
|
|
172
|
+
* playhead is in primary content.
|
|
173
|
+
*/
|
|
174
|
+
readonly currentAdBreak: AdBreakInfo | null;
|
|
175
|
+
/**
|
|
176
|
+
* The ad currently playing within the active break, or null.
|
|
177
|
+
*/
|
|
178
|
+
readonly currentAd: AdInfo | null;
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Tracks the ad breaks for the current media and reports when the playhead
|
|
182
|
+
* enters and exits them.
|
|
183
|
+
*
|
|
184
|
+
* The controller is deliberately agnostic of HLS/DASH discovery details: its
|
|
185
|
+
* input is a list of {@link AdBreakInfo} sourced from an {@link AdsProvider}
|
|
186
|
+
* (set via {@link setAdsProvider}); it derives the active break from the
|
|
187
|
+
* playhead by observing the playback controller.
|
|
188
|
+
*/
|
|
189
|
+
export interface AdController extends ReadonlyAdController {
|
|
190
|
+
/**
|
|
191
|
+
* Sets the source of ad breaks, or null when no source is active. A
|
|
192
|
+
* `ReadonlyTrack` satisfies {@link AdsProvider} directly, so the current
|
|
193
|
+
* playing track can be passed as-is.
|
|
194
|
+
*/
|
|
195
|
+
setAdsProvider(provider: AdsProvider | null): void;
|
|
196
|
+
/**
|
|
197
|
+
* Skips the entire active ad break, advancing past all remaining ads.
|
|
198
|
+
* No-op when no ad break is active.
|
|
199
|
+
*/
|
|
200
|
+
skipAdBreak(): void;
|
|
201
|
+
/**
|
|
202
|
+
* Skips the currently playing ad. If there are more ads in the break,
|
|
203
|
+
* the next ad begins. If it's the last ad, the break ends.
|
|
204
|
+
* No-op when no ad break is active.
|
|
205
|
+
*/
|
|
206
|
+
skipAd(): void;
|
|
207
|
+
/**
|
|
208
|
+
* Skips the current ad with 'error' for the completed reason.
|
|
209
|
+
* Emits an 'adError' event.
|
|
210
|
+
* If there are more ads in the break,
|
|
211
|
+
* the next ad begins. If it's the last ad, the break ends.
|
|
212
|
+
*
|
|
213
|
+
* No-op when no ad break is active.
|
|
214
|
+
*/
|
|
215
|
+
failAd(error: Error): void;
|
|
216
|
+
/**
|
|
217
|
+
* Activates the preroll ads.
|
|
218
|
+
* Does nothing if there is no preroll.
|
|
219
|
+
* Resolves with the active preroll, or null if there wasn't one.
|
|
220
|
+
*/
|
|
221
|
+
enterPreroll(): Promise<AdBreakInfo | null>;
|
|
222
|
+
/**
|
|
223
|
+
* Activates the next postroll ad.
|
|
224
|
+
* Does nothing if there is no postroll.
|
|
225
|
+
* Resolves with the active postroll, or null if there wasn't one.
|
|
226
|
+
*/
|
|
227
|
+
enterPostroll(): Promise<AdBreakInfo | null>;
|
|
228
|
+
}
|
|
229
|
+
//# sourceMappingURL=AdController.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AdController.d.ts","sourceRoot":"","sources":["../../../../src/ad/AdController.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
*/
|
|
5
|
+
export const ALL_AD_EVENTS = [
|
|
6
|
+
'currentTrackAdsChange',
|
|
7
|
+
'adPreload',
|
|
8
|
+
'adBreakEntered',
|
|
9
|
+
'adBreakCompleted',
|
|
10
|
+
'adFirstQuartile',
|
|
11
|
+
'adEntered',
|
|
12
|
+
'adPlaying',
|
|
13
|
+
'adTimeUpdate',
|
|
14
|
+
'adMidpoint',
|
|
15
|
+
'adThirdQuartile',
|
|
16
|
+
'adEnded',
|
|
17
|
+
'adCompleted',
|
|
18
|
+
'adError',
|
|
19
|
+
];
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import { EventHostImpl } from '@amazon/vinyl-util';
|
|
2
|
+
import { type AdBreakInfo, type AdInfo, type TrackAds } from './AdBreakInfo';
|
|
3
|
+
import type { AdController, AdEventMap } from './AdController';
|
|
4
|
+
import type { ReadonlyPlaybackController } from '../playback/ReadonlyPlaybackController';
|
|
5
|
+
import type { AdsProvider } from './AdsProvider';
|
|
6
|
+
/**
|
|
7
|
+
* The % playhead start tolerance for playback progress when emitting ad progress events.
|
|
8
|
+
*/
|
|
9
|
+
export declare const AD_START_TOLERANCE = 0.05;
|
|
10
|
+
export interface AdControllerImplDeps {
|
|
11
|
+
readonly playbackController: ReadonlyPlaybackController;
|
|
12
|
+
}
|
|
13
|
+
export interface AdControllerImplOptions {
|
|
14
|
+
/**
|
|
15
|
+
* After an ad is set, the number of seconds to wait for playback to begin
|
|
16
|
+
* before marking the ad as failed.
|
|
17
|
+
* Default: 15
|
|
18
|
+
*/
|
|
19
|
+
readonly adLoadTimeout: number;
|
|
20
|
+
/**
|
|
21
|
+
* How many seconds ahead of a midroll or postroll break to emit `adPreload`
|
|
22
|
+
* (so its ad assets can be warmed before the playhead reaches it). Used only
|
|
23
|
+
* when the break itself carries no {@link AdBreakInfo.resolutionTimeOffset};
|
|
24
|
+
* a break's own offset always takes precedence.
|
|
25
|
+
* Default: 10
|
|
26
|
+
*/
|
|
27
|
+
readonly preloadAheadTime: number;
|
|
28
|
+
}
|
|
29
|
+
export declare const defaultAdControllerImplOptions: AdControllerImplOptions;
|
|
30
|
+
/**
|
|
31
|
+
* Provider-agnostic {@link AdController}. Holds the discovered ad breaks and
|
|
32
|
+
* derives enter/exit region events from playhead time updates.
|
|
33
|
+
*
|
|
34
|
+
* This controller is the *model* for ad playback: it knows which breaks exist,
|
|
35
|
+
* which break contains the playhead, and which ad within that break is current.
|
|
36
|
+
* It does NOT create, preload, or activate any tracks — that is the
|
|
37
|
+
* responsibility of the {@link TrackController}.
|
|
38
|
+
*
|
|
39
|
+
* A break is considered active while `startTime <= currentTime < endTime`,
|
|
40
|
+
* where `endTime` is `startTime + duration`. Breaks whose duration is unknown
|
|
41
|
+
* (null) or breaks which restrict `jump` will become active at
|
|
42
|
+
* `currentTime > startTime`
|
|
43
|
+
*
|
|
44
|
+
* This class contains no HLS- or DASH-specific logic; discovery code maps its
|
|
45
|
+
* protocol's signals to {@link AdBreakInfo} exposed by an
|
|
46
|
+
* {@link AdsProvider.getAds}, which this controller reads once the provider is
|
|
47
|
+
* set via {@link AdController.setAdsProvider} (and re-reads on `adsChange`).
|
|
48
|
+
*/
|
|
49
|
+
export declare class AdControllerImpl extends EventHostImpl<AdEventMap> implements AdController {
|
|
50
|
+
private readonly deps;
|
|
51
|
+
get [Symbol.toStringTag](): string;
|
|
52
|
+
private readonly options;
|
|
53
|
+
private _trackAds;
|
|
54
|
+
private adsProviderSub;
|
|
55
|
+
private adsProvider;
|
|
56
|
+
private midrollAds;
|
|
57
|
+
private preloadableBreaks;
|
|
58
|
+
private readonly preloadedBreakIds;
|
|
59
|
+
private lastPlaybackTime;
|
|
60
|
+
private pendingAdBreaks;
|
|
61
|
+
private readonly completeAdBreakIds;
|
|
62
|
+
private readonly spentBreakIds;
|
|
63
|
+
private readonly disposer;
|
|
64
|
+
private adBreakState;
|
|
65
|
+
private loadingNext;
|
|
66
|
+
constructor(deps: AdControllerImplDeps, options?: Partial<AdControllerImplOptions>);
|
|
67
|
+
clearCompletedAds(): void;
|
|
68
|
+
private isBreakSuppressed;
|
|
69
|
+
/** The media-time the current ad has actually played, or 0 if not playing. */
|
|
70
|
+
private adElapsed;
|
|
71
|
+
/**
|
|
72
|
+
* Computes whether the current ad may be skipped and, when not yet, how many
|
|
73
|
+
* seconds remain until it can. A `skip` restriction blocks it outright;
|
|
74
|
+
* otherwise a resolved skip window gates it by the elapsed break playout, and
|
|
75
|
+
* with no window the ad is freely skippable.
|
|
76
|
+
*/
|
|
77
|
+
private resolveSkipState;
|
|
78
|
+
get currentTrackAds(): TrackAds | null;
|
|
79
|
+
private setTrackAds;
|
|
80
|
+
/**
|
|
81
|
+
* Returns a function that returns true if the ads provider has changed
|
|
82
|
+
* since the callback was created.
|
|
83
|
+
*/
|
|
84
|
+
private providerInterrupted;
|
|
85
|
+
setAdsProvider(provider: AdsProvider | null): void;
|
|
86
|
+
enterPreroll(): Promise<AdBreakInfo | null>;
|
|
87
|
+
enterPostroll(): Promise<AdBreakInfo | null>;
|
|
88
|
+
private enterRoll;
|
|
89
|
+
private get hasProvider();
|
|
90
|
+
skipAdBreak(): void;
|
|
91
|
+
/**
|
|
92
|
+
* Marks an ad break as completed (or 'spent' and replayable), emits an `adBreakCompleted` event.
|
|
93
|
+
*/
|
|
94
|
+
private completeAdBreak;
|
|
95
|
+
get currentAdBreak(): AdBreakInfo | null;
|
|
96
|
+
/**
|
|
97
|
+
* Marks an ad as completed and emits an `adCompleted` event.
|
|
98
|
+
*/
|
|
99
|
+
private completeAd;
|
|
100
|
+
/**
|
|
101
|
+
* Polls the next pending ad and activates it.
|
|
102
|
+
* When there are no remaining ads, activates the next ad break (if any).
|
|
103
|
+
*/
|
|
104
|
+
private nextAdOrBreak;
|
|
105
|
+
get currentAd(): AdInfo | null;
|
|
106
|
+
private get adState();
|
|
107
|
+
private startAd;
|
|
108
|
+
/**
|
|
109
|
+
* Checks if the playhead has entered a time to activate a midroll ad.
|
|
110
|
+
*/
|
|
111
|
+
private onTimeUpdate;
|
|
112
|
+
/**
|
|
113
|
+
* Emits `adPreload` once for each midroll/postroll break the playhead is
|
|
114
|
+
* approaching — within (the break's {@link AdBreakInfo.resolutionTimeOffset}
|
|
115
|
+
* or, when absent, the `preloadAheadTime` option) seconds before its start —
|
|
116
|
+
* so a consumer can resolve and warm the break's assets before entry.
|
|
117
|
+
* Suppressed (played-once/spent) breaks are skipped.
|
|
118
|
+
*/
|
|
119
|
+
private checkAdPreload;
|
|
120
|
+
/**
|
|
121
|
+
* Main content with ad breaks is playing, check if we have entered a midroll region.
|
|
122
|
+
*/
|
|
123
|
+
private checkMidrollIngress;
|
|
124
|
+
/**
|
|
125
|
+
* Emits events for `adTimeUpdate`, `adFirstQuartile`, `adMidpoint`, and
|
|
126
|
+
* `adThirdQuartile`.
|
|
127
|
+
* (Does not emit `adCompleted`)
|
|
128
|
+
*/
|
|
129
|
+
private emitAdProgressEvents;
|
|
130
|
+
private emitTimeUpdate;
|
|
131
|
+
/**
|
|
132
|
+
* Ads breaks can have a playout limit that may cut off ad playback.
|
|
133
|
+
* End the ad if that limit is reached.
|
|
134
|
+
*/
|
|
135
|
+
private enforcePlayoutLimits;
|
|
136
|
+
private setPendingBreaks;
|
|
137
|
+
skipAd(): void;
|
|
138
|
+
failAd(error: Error): void;
|
|
139
|
+
private endAd;
|
|
140
|
+
get disposed(): boolean;
|
|
141
|
+
/**
|
|
142
|
+
* Disposes this controller, removes all listeners.
|
|
143
|
+
*/
|
|
144
|
+
dispose(): void;
|
|
145
|
+
}
|
|
146
|
+
//# sourceMappingURL=AdControllerImpl.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AdControllerImpl.d.ts","sourceRoot":"","sources":["../../../../src/ad/AdControllerImpl.ts"],"names":[],"mappings":"AAKA,OAAO,EAGH,aAAa,EAehB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EACH,KAAK,WAAW,EAEhB,KAAK,MAAM,EACX,KAAK,QAAQ,EAChB,MAAM,eAAe,CAAA;AACtB,OAAO,KAAK,EAER,YAAY,EACZ,UAAU,EAEb,MAAM,gBAAgB,CAAA;AACvB,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,wCAAwC,CAAA;AAExF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAEhD;;GAEG;AACH,eAAO,MAAM,kBAAkB,OAAO,CAAA;AAEtC,MAAM,WAAW,oBAAoB;IACjC,QAAQ,CAAC,kBAAkB,EAAE,0BAA0B,CAAA;CAC1D;AAED,MAAM,WAAW,uBAAuB;IACpC;;;;OAIG;IACH,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;IAE9B;;;;;;OAMG;IACH,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAA;CACpC;AAED,eAAO,MAAM,8BAA8B,EAAE,uBAG5C,CAAA;AA2CD;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,gBACT,SAAQ,aAAa,CAAC,UAAU,CAChC,YAAW,YAAY;IAkCnB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAhCzB,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,MAAM,CAEjC;IAED,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAyB;IACjD,OAAO,CAAC,SAAS,CAAwB;IACzC,OAAO,CAAC,cAAc,CAA2B;IACjD,OAAO,CAAC,WAAW,CAA2B;IAE9C,OAAO,CAAC,UAAU,CAAkB;IAGpC,OAAO,CAAC,iBAAiB,CAAkB;IAI3C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAwB;IAE1D,OAAO,CAAC,gBAAgB,CAAI;IAC5B,OAAO,CAAC,eAAe,CAAoB;IAG3C,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAwB;IAI3D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAwB;IACtD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmB;IAC5C,OAAO,CAAC,YAAY,CAA4B;IAChD,OAAO,CAAC,WAAW,CAAQ;gBAGN,IAAI,EAAE,oBAAoB,EAC3C,OAAO,CAAC,EAAE,OAAO,CAAC,uBAAuB,CAAC;IAuD9C,iBAAiB,IAAI,IAAI;IAMzB,OAAO,CAAC,iBAAiB;IAKzB,8EAA8E;IAC9E,OAAO,CAAC,SAAS;IAUjB;;;;;OAKG;YACW,gBAAgB;IAwB9B,IAAI,eAAe,IAAI,QAAQ,GAAG,IAAI,CAErC;IAED,OAAO,CAAC,WAAW;IAqBnB;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAK3B,cAAc,CAAC,QAAQ,EAAE,WAAW,GAAG,IAAI,GAAG,IAAI;IAkC5C,YAAY,IAAI,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAI3C,aAAa,IAAI,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;YAIpC,SAAS;IAgCvB,OAAO,KAAK,WAAW,GAEtB;IAED,WAAW,IAAI,IAAI;IAWnB;;OAEG;IACH,OAAO,CAAC,eAAe;IA4CvB,IAAI,cAAc,IAAI,WAAW,GAAG,IAAI,CAEvC;IAED;;OAEG;IACH,OAAO,CAAC,UAAU;IAqBlB;;;OAGG;IACH,OAAO,CAAC,aAAa;IAsErB,IAAI,SAAS,IAAI,MAAM,GAAG,IAAI,CAE7B;IAED,OAAO,KAAK,OAAO,GAElB;IAED,OAAO,CAAC,OAAO;IAwBf;;OAEG;IACH,OAAO,CAAC,YAAY,CAkBnB;IAED;;;;;;OAMG;IACH,OAAO,CAAC,cAAc;IAmBtB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAgC3B;;;;OAIG;YACW,oBAAoB;YAyCpB,cAAc;IA+C5B;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAwB5B,OAAO,CAAC,gBAAgB;IAYxB,MAAM,IAAI,IAAI;IAKd,MAAM,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAgB1B,OAAO,CAAC,KAAK;IAMb,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED;;OAEG;IACH,OAAO,IAAI,IAAI;CAQlB"}
|