@videojs/spf 10.0.0-beta.2 → 10.0.0-beta.21
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/README.md +16 -40
- package/dist/default/core/abr/bandwidth-estimator.js +95 -0
- package/dist/default/core/abr/bandwidth-estimator.js.map +1 -0
- package/dist/default/core/abr/ewma.js +71 -0
- package/dist/default/core/abr/ewma.js.map +1 -0
- package/dist/default/core/abr/quality-selection.js +53 -0
- package/dist/default/core/abr/quality-selection.js.map +1 -0
- package/dist/default/core/buffer/back-buffer.js +46 -0
- package/dist/default/core/buffer/back-buffer.js.map +1 -0
- package/dist/default/core/buffer/forward-buffer.js +73 -0
- package/dist/default/core/buffer/forward-buffer.js.map +1 -0
- package/dist/default/core/create-machine-actor.js +91 -0
- package/dist/default/core/create-machine-actor.js.map +1 -0
- package/dist/default/core/create-machine-reactor.js +83 -0
- package/dist/default/core/create-machine-reactor.js.map +1 -0
- package/dist/default/core/create-transition-actor.js +46 -0
- package/dist/default/core/create-transition-actor.js.map +1 -0
- package/dist/default/core/features/calculate-presentation-duration.js +53 -0
- package/dist/default/core/features/calculate-presentation-duration.js.map +1 -0
- package/dist/default/core/features/quality-switching.js +69 -0
- package/dist/default/core/features/quality-switching.js.map +1 -0
- package/dist/default/core/features/resolve-presentation.js +73 -0
- package/dist/default/core/features/resolve-presentation.js.map +1 -0
- package/dist/default/core/features/resolve-track.js +66 -0
- package/dist/default/core/features/resolve-track.js.map +1 -0
- package/dist/default/core/features/select-tracks.js +130 -0
- package/dist/default/core/features/select-tracks.js.map +1 -0
- package/dist/default/core/features/sync-preload-attribute.js +26 -0
- package/dist/default/core/features/sync-preload-attribute.js.map +1 -0
- package/dist/default/core/hls/parse-attributes.js +134 -0
- package/dist/default/core/hls/parse-attributes.js.map +1 -0
- package/dist/default/core/hls/parse-media-playlist.js +82 -0
- package/dist/default/core/hls/parse-media-playlist.js.map +1 -0
- package/dist/default/core/hls/parse-multivariant.js +214 -0
- package/dist/default/core/hls/parse-multivariant.js.map +1 -0
- package/dist/default/core/hls/resolve-url.js +11 -0
- package/dist/default/core/hls/resolve-url.js.map +1 -0
- package/dist/default/core/machine.js +26 -0
- package/dist/default/core/machine.js.map +1 -0
- package/dist/default/core/signals/effect.js +41 -0
- package/dist/default/core/signals/effect.js.map +1 -0
- package/dist/default/core/signals/primitives.js +32 -0
- package/dist/default/core/signals/primitives.js.map +1 -0
- package/dist/default/core/task.js +191 -0
- package/dist/default/core/task.js.map +1 -0
- package/dist/default/core/types/index.js +15 -0
- package/dist/default/core/types/index.js.map +1 -0
- package/dist/default/core/utils/generate-id.js +21 -0
- package/dist/default/core/utils/generate-id.js.map +1 -0
- package/dist/default/core/utils/track-selection.js +39 -0
- package/dist/default/core/utils/track-selection.js.map +1 -0
- package/dist/default/dom/features/end-of-stream.js +145 -0
- package/dist/default/dom/features/end-of-stream.js.map +1 -0
- package/dist/default/dom/features/load-segments.js +192 -0
- package/dist/default/dom/features/load-segments.js.map +1 -0
- package/dist/default/dom/features/load-text-track-cues.js +104 -0
- package/dist/default/dom/features/load-text-track-cues.js.map +1 -0
- package/dist/default/dom/features/segment-loader-actor.js +243 -0
- package/dist/default/dom/features/segment-loader-actor.js.map +1 -0
- package/dist/default/dom/features/setup-mediasource.js +48 -0
- package/dist/default/dom/features/setup-mediasource.js.map +1 -0
- package/dist/default/dom/features/setup-sourcebuffer.js +78 -0
- package/dist/default/dom/features/setup-sourcebuffer.js.map +1 -0
- package/dist/default/dom/features/sync-text-tracks.js +95 -0
- package/dist/default/dom/features/sync-text-tracks.js.map +1 -0
- package/dist/default/dom/features/text-track-segment-loader-actor.js +55 -0
- package/dist/default/dom/features/text-track-segment-loader-actor.js.map +1 -0
- package/dist/default/dom/features/text-tracks-actor.js +42 -0
- package/dist/default/dom/features/text-tracks-actor.js.map +1 -0
- package/dist/default/dom/features/track-current-time.js +49 -0
- package/dist/default/dom/features/track-current-time.js.map +1 -0
- package/dist/default/dom/features/track-playback-initiated.js +66 -0
- package/dist/default/dom/features/track-playback-initiated.js.map +1 -0
- package/dist/default/dom/features/track-playback-rate.js +32 -0
- package/dist/default/dom/features/track-playback-rate.js.map +1 -0
- package/dist/default/dom/features/update-duration.js +78 -0
- package/dist/default/dom/features/update-duration.js.map +1 -0
- package/dist/default/dom/media/append-segment.js +60 -0
- package/dist/default/dom/media/append-segment.js.map +1 -0
- package/dist/default/dom/media/buffer-flusher.js +55 -0
- package/dist/default/dom/media/buffer-flusher.js.map +1 -0
- package/dist/default/dom/media/mediasource-setup.js +146 -0
- package/dist/default/dom/media/mediasource-setup.js.map +1 -0
- package/dist/default/dom/media/source-buffer-actor.js +137 -0
- package/dist/default/dom/media/source-buffer-actor.js.map +1 -0
- package/dist/default/dom/network/chunked-stream-iterable.js +49 -0
- package/dist/default/dom/network/chunked-stream-iterable.js.map +1 -0
- package/dist/default/dom/network/fetch.js +54 -0
- package/dist/default/dom/network/fetch.js.map +1 -0
- package/dist/default/dom/playback-engine/adapter.js +100 -0
- package/dist/default/dom/playback-engine/adapter.js.map +1 -0
- package/dist/default/dom/playback-engine/engine.js +142 -0
- package/dist/default/dom/playback-engine/engine.js.map +1 -0
- package/dist/default/dom/playback-engine.js +4 -0
- package/dist/default/dom/text/parse-vtt-segment.js +56 -0
- package/dist/default/dom/text/parse-vtt-segment.js.map +1 -0
- package/dist/default/dom.js +10 -0
- package/dist/{src-DRsS_H80.js → default/index.js} +3 -3
- package/dist/default/index.js.map +1 -0
- package/dist/dev/core/abr/bandwidth-estimator.d.ts +35 -0
- package/dist/dev/core/abr/bandwidth-estimator.d.ts.map +1 -0
- package/dist/dev/core/abr/bandwidth-estimator.js +95 -0
- package/dist/dev/core/abr/bandwidth-estimator.js.map +1 -0
- package/dist/dev/core/abr/ewma.js +71 -0
- package/dist/dev/core/abr/ewma.js.map +1 -0
- package/dist/dev/core/abr/quality-selection.js +53 -0
- package/dist/dev/core/abr/quality-selection.js.map +1 -0
- package/dist/dev/core/actor.d.ts +27 -0
- package/dist/dev/core/actor.d.ts.map +1 -0
- package/dist/dev/core/buffer/back-buffer.js +46 -0
- package/dist/dev/core/buffer/back-buffer.js.map +1 -0
- package/dist/dev/core/buffer/forward-buffer.js +73 -0
- package/dist/dev/core/buffer/forward-buffer.js.map +1 -0
- package/dist/dev/core/create-machine-actor.d.ts +12 -0
- package/dist/dev/core/create-machine-actor.d.ts.map +1 -0
- package/dist/dev/core/create-machine-actor.js +91 -0
- package/dist/dev/core/create-machine-actor.js.map +1 -0
- package/dist/dev/core/create-machine-reactor.d.ts +8 -0
- package/dist/dev/core/create-machine-reactor.d.ts.map +1 -0
- package/dist/dev/core/create-machine-reactor.js +83 -0
- package/dist/dev/core/create-machine-reactor.js.map +1 -0
- package/dist/dev/core/create-transition-actor.d.ts +23 -0
- package/dist/dev/core/create-transition-actor.d.ts.map +1 -0
- package/dist/dev/core/create-transition-actor.js +46 -0
- package/dist/dev/core/create-transition-actor.js.map +1 -0
- package/dist/dev/core/features/calculate-presentation-duration.js +53 -0
- package/dist/dev/core/features/calculate-presentation-duration.js.map +1 -0
- package/dist/dev/core/features/quality-switching.js +69 -0
- package/dist/dev/core/features/quality-switching.js.map +1 -0
- package/dist/dev/core/features/resolve-presentation.js +73 -0
- package/dist/dev/core/features/resolve-presentation.js.map +1 -0
- package/dist/dev/core/features/resolve-track.js +66 -0
- package/dist/dev/core/features/resolve-track.js.map +1 -0
- package/dist/dev/core/features/select-tracks.js +130 -0
- package/dist/dev/core/features/select-tracks.js.map +1 -0
- package/dist/dev/core/features/sync-preload-attribute.js +26 -0
- package/dist/dev/core/features/sync-preload-attribute.js.map +1 -0
- package/dist/dev/core/hls/parse-attributes.js +134 -0
- package/dist/dev/core/hls/parse-attributes.js.map +1 -0
- package/dist/dev/core/hls/parse-media-playlist.js +82 -0
- package/dist/dev/core/hls/parse-media-playlist.js.map +1 -0
- package/dist/dev/core/hls/parse-multivariant.js +214 -0
- package/dist/dev/core/hls/parse-multivariant.js.map +1 -0
- package/dist/dev/core/hls/resolve-url.js +11 -0
- package/dist/dev/core/hls/resolve-url.js.map +1 -0
- package/dist/dev/core/machine.d.ts +21 -0
- package/dist/dev/core/machine.d.ts.map +1 -0
- package/dist/dev/core/machine.js +26 -0
- package/dist/dev/core/machine.js.map +1 -0
- package/dist/dev/core/signals/effect.d.ts +15 -0
- package/dist/dev/core/signals/effect.d.ts.map +1 -0
- package/dist/dev/core/signals/effect.js +41 -0
- package/dist/dev/core/signals/effect.js.map +1 -0
- package/dist/dev/core/signals/primitives.d.ts +10 -0
- package/dist/dev/core/signals/primitives.d.ts.map +1 -0
- package/dist/dev/core/signals/primitives.js +32 -0
- package/dist/dev/core/signals/primitives.js.map +1 -0
- package/dist/dev/core/task.js +191 -0
- package/dist/dev/core/task.js.map +1 -0
- package/dist/dev/core/types/index.d.ts +166 -0
- package/dist/dev/core/types/index.d.ts.map +1 -0
- package/dist/dev/core/types/index.js +15 -0
- package/dist/dev/core/types/index.js.map +1 -0
- package/dist/dev/core/utils/generate-id.js +21 -0
- package/dist/dev/core/utils/generate-id.js.map +1 -0
- package/dist/dev/core/utils/track-selection.d.ts +16 -0
- package/dist/dev/core/utils/track-selection.d.ts.map +1 -0
- package/dist/dev/core/utils/track-selection.js +39 -0
- package/dist/dev/core/utils/track-selection.js.map +1 -0
- package/dist/dev/dom/features/end-of-stream.js +145 -0
- package/dist/dev/dom/features/end-of-stream.js.map +1 -0
- package/dist/dev/dom/features/load-segments.d.ts +72 -0
- package/dist/dev/dom/features/load-segments.d.ts.map +1 -0
- package/dist/dev/dom/features/load-segments.js +192 -0
- package/dist/dev/dom/features/load-segments.js.map +1 -0
- package/dist/dev/dom/features/load-text-track-cues.d.ts +85 -0
- package/dist/dev/dom/features/load-text-track-cues.d.ts.map +1 -0
- package/dist/dev/dom/features/load-text-track-cues.js +104 -0
- package/dist/dev/dom/features/load-text-track-cues.js.map +1 -0
- package/dist/dev/dom/features/segment-loader-actor.d.ts +1 -0
- package/dist/dev/dom/features/segment-loader-actor.js +243 -0
- package/dist/dev/dom/features/segment-loader-actor.js.map +1 -0
- package/dist/dev/dom/features/setup-mediasource.js +48 -0
- package/dist/dev/dom/features/setup-mediasource.js.map +1 -0
- package/dist/dev/dom/features/setup-sourcebuffer.d.ts +9 -0
- package/dist/dev/dom/features/setup-sourcebuffer.d.ts.map +1 -0
- package/dist/dev/dom/features/setup-sourcebuffer.js +78 -0
- package/dist/dev/dom/features/setup-sourcebuffer.js.map +1 -0
- package/dist/dev/dom/features/sync-text-tracks.js +95 -0
- package/dist/dev/dom/features/sync-text-tracks.js.map +1 -0
- package/dist/dev/dom/features/text-track-segment-loader-actor.d.ts +12 -0
- package/dist/dev/dom/features/text-track-segment-loader-actor.d.ts.map +1 -0
- package/dist/dev/dom/features/text-track-segment-loader-actor.js +55 -0
- package/dist/dev/dom/features/text-track-segment-loader-actor.js.map +1 -0
- package/dist/dev/dom/features/text-tracks-actor.d.ts +31 -0
- package/dist/dev/dom/features/text-tracks-actor.d.ts.map +1 -0
- package/dist/dev/dom/features/text-tracks-actor.js +42 -0
- package/dist/dev/dom/features/text-tracks-actor.js.map +1 -0
- package/dist/dev/dom/features/track-current-time.d.ts +40 -0
- package/dist/dev/dom/features/track-current-time.d.ts.map +1 -0
- package/dist/dev/dom/features/track-current-time.js +49 -0
- package/dist/dev/dom/features/track-current-time.js.map +1 -0
- package/dist/dev/dom/features/track-playback-initiated.d.ts +46 -0
- package/dist/dev/dom/features/track-playback-initiated.d.ts.map +1 -0
- package/dist/dev/dom/features/track-playback-initiated.js +66 -0
- package/dist/dev/dom/features/track-playback-initiated.js.map +1 -0
- package/dist/dev/dom/features/track-playback-rate.d.ts +34 -0
- package/dist/dev/dom/features/track-playback-rate.d.ts.map +1 -0
- package/dist/dev/dom/features/track-playback-rate.js +32 -0
- package/dist/dev/dom/features/track-playback-rate.js.map +1 -0
- package/dist/dev/dom/features/update-duration.js +78 -0
- package/dist/dev/dom/features/update-duration.js.map +1 -0
- package/dist/dev/dom/media/append-segment.d.ts +24 -0
- package/dist/dev/dom/media/append-segment.d.ts.map +1 -0
- package/dist/dev/dom/media/append-segment.js +60 -0
- package/dist/dev/dom/media/append-segment.js.map +1 -0
- package/dist/dev/dom/media/buffer-flusher.d.ts +24 -0
- package/dist/dev/dom/media/buffer-flusher.d.ts.map +1 -0
- package/dist/dev/dom/media/buffer-flusher.js +55 -0
- package/dist/dev/dom/media/buffer-flusher.js.map +1 -0
- package/dist/dev/dom/media/mediasource-setup.js +146 -0
- package/dist/dev/dom/media/mediasource-setup.js.map +1 -0
- package/dist/dev/dom/media/source-buffer-actor.d.ts +62 -0
- package/dist/dev/dom/media/source-buffer-actor.d.ts.map +1 -0
- package/dist/dev/dom/media/source-buffer-actor.js +137 -0
- package/dist/dev/dom/media/source-buffer-actor.js.map +1 -0
- package/dist/dev/dom/network/chunked-stream-iterable.js +49 -0
- package/dist/dev/dom/network/chunked-stream-iterable.js.map +1 -0
- package/dist/dev/dom/network/fetch.js +54 -0
- package/dist/dev/dom/network/fetch.js.map +1 -0
- package/dist/dev/dom/playback-engine/adapter.d.ts +40 -0
- package/dist/dev/dom/playback-engine/adapter.d.ts.map +1 -0
- package/dist/dev/dom/playback-engine/adapter.js +100 -0
- package/dist/dev/dom/playback-engine/adapter.js.map +1 -0
- package/dist/dev/dom/playback-engine/engine.d.ts +124 -0
- package/dist/dev/dom/playback-engine/engine.d.ts.map +1 -0
- package/dist/dev/dom/playback-engine/engine.js +142 -0
- package/dist/dev/dom/playback-engine/engine.js.map +1 -0
- package/dist/dev/dom/playback-engine.d.ts +4 -0
- package/dist/dev/dom/playback-engine.js +4 -0
- package/dist/dev/dom/text/parse-vtt-segment.d.ts +12 -0
- package/dist/dev/dom/text/parse-vtt-segment.d.ts.map +1 -0
- package/dist/dev/dom/text/parse-vtt-segment.js +56 -0
- package/dist/dev/dom/text/parse-vtt-segment.js.map +1 -0
- package/dist/dev/dom.d.ts +10 -0
- package/dist/dev/dom.js +10 -0
- package/dist/dev/index.d.ts.map +1 -0
- package/dist/dev/index.js +14 -0
- package/dist/dev/index.js.map +1 -0
- package/package.json +26 -24
- package/dist/adapter-CMw-rvbk.js +0 -3512
- package/dist/adapter-CMw-rvbk.js.map +0 -1
- package/dist/adapter-l8iJN_GI.d.ts +0 -689
- package/dist/adapter-l8iJN_GI.d.ts.map +0 -1
- package/dist/dom/index.d.ts +0 -243
- package/dist/dom/index.d.ts.map +0 -1
- package/dist/dom/index.js +0 -38
- package/dist/dom/index.js.map +0 -1
- package/dist/dom/playback-engine/index.d.ts +0 -2
- package/dist/dom/playback-engine/index.js +0 -4
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -3
- package/dist/src-DRsS_H80.js.map +0 -1
- /package/dist/{index.d.ts → dev/index.d.ts} +0 -0
package/dist/dom/index.d.ts
DELETED
|
@@ -1,243 +0,0 @@
|
|
|
1
|
-
import { a as PresentationAction, c as SourceBufferActor, d as WritableState, f as BandwidthState, l as TrackSelectionState, o as EventStream, s as loadTextTrackCues, t as SpfMedia, u as Presentation } from "../adapter-l8iJN_GI.js";
|
|
2
|
-
|
|
3
|
-
//#region src/dom/features/setup-sourcebuffer.d.ts
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Media track type for SourceBuffer setup.
|
|
7
|
-
* Text tracks are excluded as they don't use MSE SourceBuffers.
|
|
8
|
-
*/
|
|
9
|
-
type MediaTrackType = 'video' | 'audio';
|
|
10
|
-
//#endregion
|
|
11
|
-
//#region src/dom/features/load-segments.d.ts
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* State shape for segment loading.
|
|
15
|
-
*/
|
|
16
|
-
interface SegmentLoadingState extends TrackSelectionState {
|
|
17
|
-
presentation?: Presentation;
|
|
18
|
-
preload?: string;
|
|
19
|
-
bandwidthState?: BandwidthState;
|
|
20
|
-
/** Current playback position in seconds. Defaults to 0 when undefined. */
|
|
21
|
-
currentTime?: number;
|
|
22
|
-
/** True once the user has initiated playback. Allows segment loading regardless of preload setting. */
|
|
23
|
-
playbackInitiated?: boolean;
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* Owners shape for segment loading.
|
|
27
|
-
*/
|
|
28
|
-
interface SegmentLoadingOwners {
|
|
29
|
-
videoBuffer?: SourceBuffer;
|
|
30
|
-
audioBuffer?: SourceBuffer;
|
|
31
|
-
videoBufferActor?: SourceBufferActor;
|
|
32
|
-
audioBufferActor?: SourceBufferActor;
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* Load segments orchestration — Reactor layer.
|
|
36
|
-
*
|
|
37
|
-
* Sends typed load messages to a SegmentLoaderActor when relevant conditions
|
|
38
|
-
* change. Uses targeted subscriptions rather than broad combineLatest so only
|
|
39
|
-
* meaningful state changes trigger evaluation.
|
|
40
|
-
*
|
|
41
|
-
* Condition hierarchy (see SegmentLoadingKey for detail):
|
|
42
|
-
*
|
|
43
|
-
* !playbackInitiated
|
|
44
|
-
* preload==='none' (or unset) → dormant; no trigger
|
|
45
|
-
* preload==='metadata' → trigger on transition to 'metadata'
|
|
46
|
-
* preload==='auto' → trigger on transition to 'auto'
|
|
47
|
-
*
|
|
48
|
-
* !playbackInitiated → playbackInitiated
|
|
49
|
-
* preload !== 'auto' → trigger (message shape changes)
|
|
50
|
-
* preload === 'auto' → suppressed (was already full-range mode;
|
|
51
|
-
* let segmentStart take over post-play)
|
|
52
|
-
* KNOWN LIMITATION: seek-before-play with
|
|
53
|
-
* preload='auto' is not supported — if the
|
|
54
|
-
* user seeks before pressing play, the
|
|
55
|
-
* first re-send is delayed until the next
|
|
56
|
-
* segment boundary crossing post-play.
|
|
57
|
-
*
|
|
58
|
-
* playbackInitiated
|
|
59
|
-
* resolvedTrackId changes → trigger
|
|
60
|
-
* segmentStart(currentTime) changes → trigger (segment boundary only)
|
|
61
|
-
*
|
|
62
|
-
* @example
|
|
63
|
-
* const cleanup = loadSegments({ state, owners }, { type: 'video' });
|
|
64
|
-
*/
|
|
65
|
-
declare function loadSegments({
|
|
66
|
-
state,
|
|
67
|
-
owners
|
|
68
|
-
}: {
|
|
69
|
-
state: WritableState<SegmentLoadingState>;
|
|
70
|
-
owners: WritableState<SegmentLoadingOwners>;
|
|
71
|
-
}, config: {
|
|
72
|
-
type: MediaTrackType;
|
|
73
|
-
}): () => void;
|
|
74
|
-
//#endregion
|
|
75
|
-
//#region src/dom/features/track-current-time.d.ts
|
|
76
|
-
/**
|
|
77
|
-
* State shape for current time tracking.
|
|
78
|
-
*/
|
|
79
|
-
interface CurrentTimeState {
|
|
80
|
-
currentTime?: number;
|
|
81
|
-
}
|
|
82
|
-
/**
|
|
83
|
-
* Owners shape for current time tracking.
|
|
84
|
-
*/
|
|
85
|
-
interface CurrentTimeOwners {
|
|
86
|
-
mediaElement?: HTMLMediaElement | undefined;
|
|
87
|
-
}
|
|
88
|
-
/**
|
|
89
|
-
* Track current playback position from the media element.
|
|
90
|
-
*
|
|
91
|
-
* Mirrors `mediaElement.currentTime` into reactive state on:
|
|
92
|
-
* - `timeupdate` — fires during playback (~4 Hz)
|
|
93
|
-
* - `seeking` — fires when a seek begins; per spec, `currentTime` is
|
|
94
|
-
* already at the new position when this event dispatches, so buffer
|
|
95
|
-
* management can react immediately rather than waiting for `timeupdate`,
|
|
96
|
-
* which does not fire while paused.
|
|
97
|
-
*
|
|
98
|
-
* Also syncs immediately when a media element becomes available.
|
|
99
|
-
*
|
|
100
|
-
* @example
|
|
101
|
-
* const cleanup = trackCurrentTime({ state, owners });
|
|
102
|
-
*/
|
|
103
|
-
declare function trackCurrentTime({
|
|
104
|
-
state,
|
|
105
|
-
owners
|
|
106
|
-
}: {
|
|
107
|
-
state: WritableState<CurrentTimeState>;
|
|
108
|
-
owners: WritableState<CurrentTimeOwners>;
|
|
109
|
-
}): () => void;
|
|
110
|
-
//#endregion
|
|
111
|
-
//#region src/dom/features/track-playback-initiated.d.ts
|
|
112
|
-
/**
|
|
113
|
-
* State shape for playback initiation tracking.
|
|
114
|
-
*/
|
|
115
|
-
interface PlaybackInitiatedState {
|
|
116
|
-
/** True once the user has initiated playback (play event fired). */
|
|
117
|
-
playbackInitiated?: boolean;
|
|
118
|
-
/** Current presentation — watched for URL changes to reset playbackInitiated. */
|
|
119
|
-
presentation?: {
|
|
120
|
-
url?: string;
|
|
121
|
-
};
|
|
122
|
-
}
|
|
123
|
-
/**
|
|
124
|
-
* Owners shape for playback initiation tracking.
|
|
125
|
-
*/
|
|
126
|
-
interface PlaybackInitiatedOwners {
|
|
127
|
-
mediaElement?: HTMLMediaElement | undefined;
|
|
128
|
-
}
|
|
129
|
-
/**
|
|
130
|
-
* Track whether playback has been initiated by the user.
|
|
131
|
-
*
|
|
132
|
-
* Sets `state.playbackInitiated = true` when the media element fires a `play`
|
|
133
|
-
* event (via `element.play()`, native controls, or autoplay) and simultaneously
|
|
134
|
-
* dispatches `{ type: 'play' }` to the event stream so `resolvePresentation`
|
|
135
|
-
* can react.
|
|
136
|
-
*
|
|
137
|
-
* Resets `state.playbackInitiated = false` when `presentation.url` changes,
|
|
138
|
-
* so a new source with `preload="none"` won't load segments until play is
|
|
139
|
-
* triggered again.
|
|
140
|
-
*
|
|
141
|
-
* This flag is used by `shouldLoadSegments` to allow segment loading after
|
|
142
|
-
* play is initiated regardless of the initial `preload` setting — `preload`
|
|
143
|
-
* is a startup hint, not a runtime gate.
|
|
144
|
-
*
|
|
145
|
-
* @example
|
|
146
|
-
* const cleanup = trackPlaybackInitiated({ state, owners, events });
|
|
147
|
-
*/
|
|
148
|
-
declare function trackPlaybackInitiated({
|
|
149
|
-
state,
|
|
150
|
-
owners,
|
|
151
|
-
events
|
|
152
|
-
}: {
|
|
153
|
-
state: WritableState<PlaybackInitiatedState>;
|
|
154
|
-
owners: WritableState<PlaybackInitiatedOwners>;
|
|
155
|
-
events: EventStream<PresentationAction>;
|
|
156
|
-
}): () => void;
|
|
157
|
-
//#endregion
|
|
158
|
-
//#region src/dom/features/track-playback-rate.d.ts
|
|
159
|
-
/**
|
|
160
|
-
* State shape for playback rate tracking.
|
|
161
|
-
*/
|
|
162
|
-
interface PlaybackRateState {
|
|
163
|
-
playbackRate?: number;
|
|
164
|
-
}
|
|
165
|
-
/**
|
|
166
|
-
* Owners shape for playback rate tracking.
|
|
167
|
-
*/
|
|
168
|
-
interface PlaybackRateOwners {
|
|
169
|
-
mediaElement?: HTMLMediaElement | undefined;
|
|
170
|
-
}
|
|
171
|
-
/**
|
|
172
|
-
* Track playback rate from the media element.
|
|
173
|
-
*
|
|
174
|
-
* Mirrors `mediaElement.playbackRate` into reactive state on each `ratechange`
|
|
175
|
-
* event. Also syncs immediately when a media element becomes available.
|
|
176
|
-
*
|
|
177
|
-
* @example
|
|
178
|
-
* const cleanup = trackPlaybackRate({ state, owners });
|
|
179
|
-
*/
|
|
180
|
-
declare function trackPlaybackRate({
|
|
181
|
-
state,
|
|
182
|
-
owners
|
|
183
|
-
}: {
|
|
184
|
-
state: WritableState<PlaybackRateState>;
|
|
185
|
-
owners: WritableState<PlaybackRateOwners>;
|
|
186
|
-
}): () => void;
|
|
187
|
-
//#endregion
|
|
188
|
-
//#region src/dom/media/append-segment.d.ts
|
|
189
|
-
/**
|
|
190
|
-
* Segment appender helper (P11)
|
|
191
|
-
*
|
|
192
|
-
* Appends media segments (ArrayBuffer) to SourceBuffer.
|
|
193
|
-
*/
|
|
194
|
-
/**
|
|
195
|
-
* Append a media segment to a SourceBuffer.
|
|
196
|
-
*
|
|
197
|
-
* Waits for the SourceBuffer to be ready (not updating), then appends
|
|
198
|
-
* the segment data. Returns a promise that resolves when append completes.
|
|
199
|
-
*
|
|
200
|
-
* @param sourceBuffer - The SourceBuffer to append to
|
|
201
|
-
* @param segmentData - The segment data as ArrayBuffer
|
|
202
|
-
* @returns Promise that resolves when append completes
|
|
203
|
-
*
|
|
204
|
-
* @example
|
|
205
|
-
* const data = await fetch(segmentUrl).then(r => r.arrayBuffer());
|
|
206
|
-
* await appendSegment(videoSourceBuffer, data);
|
|
207
|
-
*/
|
|
208
|
-
declare function appendSegment(sourceBuffer: SourceBuffer, segmentData: ArrayBuffer): Promise<void>;
|
|
209
|
-
//#endregion
|
|
210
|
-
//#region src/dom/media/buffer-flusher.d.ts
|
|
211
|
-
/**
|
|
212
|
-
* Buffer flusher helper (P12)
|
|
213
|
-
*
|
|
214
|
-
* Removes a time range from a SourceBuffer to manage memory.
|
|
215
|
-
*/
|
|
216
|
-
/**
|
|
217
|
-
* Remove a time range from a SourceBuffer.
|
|
218
|
-
*
|
|
219
|
-
* Waits for the SourceBuffer to be ready (not updating), then removes
|
|
220
|
-
* the specified range. Returns a promise that resolves when removal completes.
|
|
221
|
-
*
|
|
222
|
-
* @param sourceBuffer - The SourceBuffer to remove data from
|
|
223
|
-
* @param start - Start of the time range to remove (seconds)
|
|
224
|
-
* @param end - End of the time range to remove (seconds)
|
|
225
|
-
* @returns Promise that resolves when removal completes
|
|
226
|
-
*
|
|
227
|
-
* @example
|
|
228
|
-
* await flushBuffer(videoSourceBuffer, 0, 30);
|
|
229
|
-
*/
|
|
230
|
-
declare function flushBuffer(sourceBuffer: SourceBuffer, start: number, end: number): Promise<void>;
|
|
231
|
-
//#endregion
|
|
232
|
-
//#region src/dom/text/parse-vtt-segment.d.ts
|
|
233
|
-
/**
|
|
234
|
-
* Parse a VTT segment using browser's native parser.
|
|
235
|
-
*
|
|
236
|
-
* Creates a dummy video element with a track element to leverage
|
|
237
|
-
* the browser's optimized VTT parsing. Returns parsed VTTCue objects.
|
|
238
|
-
*/
|
|
239
|
-
declare function parseVttSegment(url: string): Promise<VTTCue[]>;
|
|
240
|
-
declare function destroyVttParser(): void;
|
|
241
|
-
//#endregion
|
|
242
|
-
export { type CurrentTimeOwners, type CurrentTimeState, type PlaybackInitiatedOwners, type PlaybackInitiatedState, type PlaybackRateOwners, type PlaybackRateState, SpfMedia, appendSegment, destroyVttParser, flushBuffer, loadSegments, loadTextTrackCues, parseVttSegment, trackCurrentTime, trackPlaybackInitiated, trackPlaybackRate };
|
|
243
|
-
//# sourceMappingURL=index.d.ts.map
|
package/dist/dom/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":[],"sources":["../../src/dom/features/setup-sourcebuffer.ts","../../src/dom/features/load-segments.ts","../../src/dom/features/track-current-time.ts","../../src/dom/features/track-playback-initiated.ts","../../src/dom/features/track-playback-rate.ts","../../src/dom/media/append-segment.ts","../../src/dom/media/buffer-flusher.ts","../../src/dom/text/parse-vtt-segment.ts"],"sourcesContent":[],"mappings":";;;;;;;AC+DA;AACiB,KD7CL,cAAA,GC6CK,OAAA,GAAA,OAAA;;;;;;;AAD+C,UAA/C,mBAAA,SAA4B,mBAAmB,CAAA;EAa/C,YAAA,CAAA,EAZA,YAYoB;EACrB,OAAA,CAAA,EAAA,MAAA;EACA,cAAA,CAAA,EAZG,cAYH;EACK;EACA,WAAA,CAAA,EAAA,MAAA;EAAiB;EAgItB,iBAAY,CAAA,EAAA,OAAA;;;;;AAMF,UA1IT,oBAAA,CA0IS;EAAd,WAAA,CAAA,EAzII,YAyIJ;EAEM,WAAA,CAAA,EA1IF,YA0IE;EAAc,gBAAA,CAAA,EAzIX,iBAyIW;qBAxIX;;;AC1ErB;AAOA;AA6BA;;;;;;;;;;;AClCA;AAUA;AAuBA;;;;;;;;;;;;;;ACnCA;AAOiB,iBHmMD,YAAA,CGlMC;EAAA,KAAA;EAAA;CAAgB,EAAA;EAsBjB,KAAA,EHiLL,aGjLsB,CHiLR,mBGjLQ,CAAA;EAC/B,MAAA,EHiLU,aGjLV,CHiLwB,oBGjLxB,CAAA;CACA,EAAA,MAAA,EAAA;EAEqB,IAAA,EHgLL,cGhLK;CAAd,CAAA,EAAA,GAAA,GAAA,IAAA;;;;;AJrBT;UEbiB,gBAAA;;;ADyDjB;;;AAA6C,UClD5B,iBAAA,CDkD4B;EAAmB,YAAA,CAAA,ECjD/C,gBDiD+C,GAAA,SAAA;AAahE;;;;;;;;;;;ACtEA;AAOA;AA6BA;;;AAIuB,iBAJP,gBAAA,CAIO;EAAA,KAAA;EAAA;CAAA,EAAA;EAAd,KAAA,EAAA,aAAA,CAAc,gBAAd,CAAA;EACe,MAAA,EAAd,aAAc,CAAA,iBAAA,CAAA;CAAd,CAAA,EAAA,GAAA,GAAA,IAAA;;;AF5BV;;;UGXiB,sBAAA;EFuDA;EACA,iBAAA,CAAA,EAAA,OAAA;EAEE;EAH0B,YAAA,CAAA,EAAA;IAAmB,GAAA,CAAA,EAAA,MAAA;EAa/C,CAAA;;;;;AAIqB,UE9DrB,uBAAA,CF8DqB;EAgItB,YAAA,CAAA,EE7LC,gBF6LW,GAAA,SAAA;;;;;;;;;;;;AC1M5B;AAOA;AA6BA;;;;;;;AAKuB,iBCNP,sBAAA,CDMO;EAAA,KAAA;EAAA,MAAA;EAAA;ACvCvB,CDuCuB,EAAA;SCDd,cAAc;UACb,cAAc;UACd,YAAY;AAxCtB,CAAA,CAAA,EAAiB,GAAA,GAAA,IAAA;;;;;AHWjB;UIbiB,iBAAA;;;AHyDjB;;;AAA6C,UGlD5B,kBAAA,CHkD4B;EAAmB,YAAA,CAAA,EGjD/C,gBHiD+C,GAAA,SAAA;AAahE;;;;;;;;;;iBGxCgB,iBAAA;;;AFMhB;EApCiB,KAAA,EEkCR,aFlCwB,CEkCV,iBFlCU,CAAA;EAOhB,MAAA,EE4BP,aF5BwB,CE4BV,kBF3BP,CAAA;AA4BjB,CAAA,CAAA,EAAgB,GAAA,GAAA,IAAA;;;;;;AFvBhB;;;;AC4CA;;;;;AAaA;;;;;;AAoIA;AAEI,iBI9LkB,aAAA,CJ8LlB,YAAA,EI9L8C,YJ8L9C,EAAA,WAAA,EI9LyE,WJ8LzE,CAAA,EI9LuF,OJ8LvF,CAAA,IAAA,CAAA;;;;;;AD/LJ;;;;AC4CA;;;;;AAaA;;;;;;AAoIA;AAEI,iBK9LkB,WAAA,CL8LlB,YAAA,EK9L4C,YL8L5C,EAAA,KAAA,EAAA,MAAA,EAAA,GAAA,EAAA,MAAA,CAAA,EK9LuF,OL8LvF,CAAA,IAAA,CAAA;;;;;;AD/LJ;;;iBOEgB,eAAA,eAA8B,QAAQ;AN0CrC,iBMAD,gBAAA,CAAA,CNAqB,EAAA,IAAA"}
|
package/dist/dom/index.js
DELETED
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import "../src-DRsS_H80.js";
|
|
2
|
-
import { a as trackPlaybackInitiated, c as destroyVttParser, i as appendSegment, l as parseVttSegment, o as trackCurrentTime, r as flushBuffer, s as loadTextTrackCues, t as SpfMedia, u as loadSegments } from "../adapter-CMw-rvbk.js";
|
|
3
|
-
import { listen } from "@videojs/utils/dom";
|
|
4
|
-
|
|
5
|
-
//#region src/dom/features/track-playback-rate.ts
|
|
6
|
-
/**
|
|
7
|
-
* Track playback rate from the media element.
|
|
8
|
-
*
|
|
9
|
-
* Mirrors `mediaElement.playbackRate` into reactive state on each `ratechange`
|
|
10
|
-
* event. Also syncs immediately when a media element becomes available.
|
|
11
|
-
*
|
|
12
|
-
* @example
|
|
13
|
-
* const cleanup = trackPlaybackRate({ state, owners });
|
|
14
|
-
*/
|
|
15
|
-
function trackPlaybackRate({ state, owners }) {
|
|
16
|
-
let lastMediaElement;
|
|
17
|
-
let removeListener = null;
|
|
18
|
-
const unsubscribe = owners.subscribe((currentOwners) => {
|
|
19
|
-
const { mediaElement } = currentOwners;
|
|
20
|
-
if (mediaElement === lastMediaElement) return;
|
|
21
|
-
removeListener?.();
|
|
22
|
-
removeListener = null;
|
|
23
|
-
lastMediaElement = mediaElement;
|
|
24
|
-
if (!mediaElement) return;
|
|
25
|
-
state.patch({ playbackRate: mediaElement.playbackRate });
|
|
26
|
-
removeListener = listen(mediaElement, "ratechange", () => {
|
|
27
|
-
state.patch({ playbackRate: mediaElement.playbackRate });
|
|
28
|
-
});
|
|
29
|
-
});
|
|
30
|
-
return () => {
|
|
31
|
-
removeListener?.();
|
|
32
|
-
unsubscribe();
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
//#endregion
|
|
37
|
-
export { SpfMedia, appendSegment, destroyVttParser, flushBuffer, loadSegments, loadTextTrackCues, parseVttSegment, trackCurrentTime, trackPlaybackInitiated, trackPlaybackRate };
|
|
38
|
-
//# sourceMappingURL=index.js.map
|
package/dist/dom/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["lastMediaElement: HTMLMediaElement | undefined","removeListener: (() => void) | null"],"sources":["../../src/dom/features/track-playback-rate.ts"],"sourcesContent":["import { listen } from '@videojs/utils/dom';\nimport type { WritableState } from '../../core/state/create-state';\n\n/**\n * State shape for playback rate tracking.\n */\nexport interface PlaybackRateState {\n playbackRate?: number;\n}\n\n/**\n * Owners shape for playback rate tracking.\n */\nexport interface PlaybackRateOwners {\n mediaElement?: HTMLMediaElement | undefined;\n}\n\n/**\n * Check if we can track playback rate.\n *\n * Requires:\n * - mediaElement exists in owners\n */\nexport function canTrackPlaybackRate(owners: PlaybackRateOwners): boolean {\n return !!owners.mediaElement;\n}\n\n/**\n * Track playback rate from the media element.\n *\n * Mirrors `mediaElement.playbackRate` into reactive state on each `ratechange`\n * event. Also syncs immediately when a media element becomes available.\n *\n * @example\n * const cleanup = trackPlaybackRate({ state, owners });\n */\nexport function trackPlaybackRate({\n state,\n owners,\n}: {\n state: WritableState<PlaybackRateState>;\n owners: WritableState<PlaybackRateOwners>;\n}): () => void {\n let lastMediaElement: HTMLMediaElement | undefined;\n let removeListener: (() => void) | null = null;\n\n const unsubscribe = owners.subscribe((currentOwners) => {\n const { mediaElement } = currentOwners;\n\n if (mediaElement === lastMediaElement) return;\n\n removeListener?.();\n removeListener = null;\n lastMediaElement = mediaElement;\n\n if (!mediaElement) return;\n\n state.patch({ playbackRate: mediaElement.playbackRate });\n\n removeListener = listen(mediaElement, 'ratechange', () => {\n state.patch({ playbackRate: mediaElement.playbackRate });\n });\n });\n\n return () => {\n removeListener?.();\n unsubscribe();\n };\n}\n"],"mappings":";;;;;;;;;;;;;;AAoCA,SAAgB,kBAAkB,EAChC,OACA,UAIa;CACb,IAAIA;CACJ,IAAIC,iBAAsC;CAE1C,MAAM,cAAc,OAAO,WAAW,kBAAkB;EACtD,MAAM,EAAE,iBAAiB;AAEzB,MAAI,iBAAiB,iBAAkB;AAEvC,oBAAkB;AAClB,mBAAiB;AACjB,qBAAmB;AAEnB,MAAI,CAAC,aAAc;AAEnB,QAAM,MAAM,EAAE,cAAc,aAAa,cAAc,CAAC;AAExD,mBAAiB,OAAO,cAAc,oBAAoB;AACxD,SAAM,MAAM,EAAE,cAAc,aAAa,cAAc,CAAC;IACxD;GACF;AAEF,cAAa;AACX,oBAAkB;AAClB,eAAa"}
|
package/dist/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/index.ts"],"sourcesContent":[],"mappings":";;AAWA;;;;;;;cAAa,OAAA"}
|
package/dist/index.js
DELETED
package/dist/src-DRsS_H80.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"src-DRsS_H80.js","names":[],"sources":["../src/index.ts"],"sourcesContent":["/**\n * Stream Processing Framework (SPF) for Video.js 10\n *\n * Bundle size target: < 20KB (minified + gzipped)\n * Primary use case: CMAF HLS playback with Video.js v10\n *\n * @packageDocumentation\n */\n\n// Public API exports will be added here as features are implemented\n\nexport const VERSION = '0.1.0';\n"],"mappings":";;;;;;;;;AAWA,MAAa,UAAU"}
|
|
File without changes
|