prismcast 1.13.0 → 1.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/app.d.ts +88 -6
- package/dist/app.js +287 -154
- package/dist/app.js.map +1 -1
- package/dist/browser/cdp.d.ts +6 -17
- package/dist/browser/cdp.js +6 -57
- package/dist/browser/cdp.js.map +1 -1
- package/dist/browser/index.d.ts +106 -23
- package/dist/browser/index.js +292 -225
- package/dist/browser/index.js.map +1 -1
- package/dist/browser/precaching.d.ts +25 -11
- package/dist/browser/precaching.js +245 -97
- package/dist/browser/precaching.js.map +1 -1
- package/dist/browser/tabCapture.js +3 -10
- package/dist/browser/tabCapture.js.map +1 -1
- package/dist/browser/tuning/comcastPolymer.js +13 -14
- package/dist/browser/tuning/comcastPolymer.js.map +1 -1
- package/dist/browser/tuning/hbo.js +34 -17
- package/dist/browser/tuning/hbo.js.map +1 -1
- package/dist/browser/video.d.ts +1 -1
- package/dist/browser/video.js +3 -3
- package/dist/channels/index.js +5 -5
- package/dist/channels/index.js.map +1 -1
- package/dist/cliHelp.d.ts +11 -0
- package/dist/cliHelp.js +148 -0
- package/dist/cliHelp.js.map +1 -0
- package/dist/config/channelForm.js +5 -4
- package/dist/config/channelForm.js.map +1 -1
- package/dist/config/consistencyProbe.d.ts +2 -4
- package/dist/config/consistencyProbe.js +8 -51
- package/dist/config/consistencyProbe.js.map +1 -1
- package/dist/config/index.d.ts +107 -55
- package/dist/config/index.js +499 -267
- package/dist/config/index.js.map +1 -1
- package/dist/config/paths.d.ts +13 -8
- package/dist/config/paths.js +21 -25
- package/dist/config/paths.js.map +1 -1
- package/dist/config/persistence.d.ts +57 -11
- package/dist/config/persistence.js +127 -44
- package/dist/config/persistence.js.map +1 -1
- package/dist/config/reactivity.d.ts +60 -36
- package/dist/config/reactivity.js +89 -116
- package/dist/config/reactivity.js.map +1 -1
- package/dist/config/services.d.ts +61 -26
- package/dist/config/services.js +137 -68
- package/dist/config/services.js.map +1 -1
- package/dist/config/streamSettings.d.ts +24 -0
- package/dist/config/streamSettings.js +17 -0
- package/dist/config/streamSettings.js.map +1 -0
- package/dist/config/userChannels.d.ts +60 -52
- package/dist/config/userChannels.js +138 -188
- package/dist/config/userChannels.js.map +1 -1
- package/dist/config/userConfig.d.ts +224 -61
- package/dist/config/userConfig.js +351 -134
- package/dist/config/userConfig.js.map +1 -1
- package/dist/hdhr/discover.d.ts +7 -1
- package/dist/hdhr/discover.js +12 -6
- package/dist/hdhr/discover.js.map +1 -1
- package/dist/hdhr/index.d.ts +51 -10
- package/dist/hdhr/index.js +108 -112
- package/dist/hdhr/index.js.map +1 -1
- package/dist/hdhr/udp.d.ts +11 -4
- package/dist/hdhr/udp.js +25 -20
- package/dist/hdhr/udp.js.map +1 -1
- package/dist/index.js +16 -143
- package/dist/index.js.map +1 -1
- package/dist/native/index.d.ts +1 -1
- package/dist/native/index.js +4 -3
- package/dist/native/index.js.map +1 -1
- package/dist/native/proxy.d.ts +1 -1
- package/dist/native/proxy.js +36 -28
- package/dist/native/proxy.js.map +1 -1
- package/dist/routes/cdp.d.ts +7 -6
- package/dist/routes/cdp.js +9 -8
- package/dist/routes/cdp.js.map +1 -1
- package/dist/routes/components.d.ts +23 -5
- package/dist/routes/components.js +21 -4
- package/dist/routes/components.js.map +1 -1
- package/dist/routes/config/channels/endpoints/browse.js +39 -29
- package/dist/routes/config/channels/endpoints/browse.js.map +1 -1
- package/dist/routes/config/channels/endpoints/bulk.js +2 -6
- package/dist/routes/config/channels/endpoints/bulk.js.map +1 -1
- package/dist/routes/config/channels/endpoints/predefined.js +5 -15
- package/dist/routes/config/channels/endpoints/predefined.js.map +1 -1
- package/dist/routes/config/channels/endpoints/prefs.js +7 -6
- package/dist/routes/config/channels/endpoints/prefs.js.map +1 -1
- package/dist/routes/config/channels/endpoints/service.js +6 -5
- package/dist/routes/config/channels/endpoints/service.js.map +1 -1
- package/dist/routes/config/channels/endpoints/tags.js +4 -16
- package/dist/routes/config/channels/endpoints/tags.js.map +1 -1
- package/dist/routes/config/channels/table.d.ts +2 -1
- package/dist/routes/config/channels/table.js +11 -13
- package/dist/routes/config/channels/table.js.map +1 -1
- package/dist/routes/config/http/envelope.d.ts +6 -3
- package/dist/routes/config/http/envelope.js +18 -5
- package/dist/routes/config/http/envelope.js.map +1 -1
- package/dist/routes/config/index.d.ts +21 -13
- package/dist/routes/config/index.js +47 -34
- package/dist/routes/config/index.js.map +1 -1
- package/dist/routes/config/settings.d.ts +43 -6
- package/dist/routes/config/settings.js +225 -125
- package/dist/routes/config/settings.js.map +1 -1
- package/dist/routes/config/vocabulary.d.ts +24 -0
- package/dist/routes/config/vocabulary.js +33 -0
- package/dist/routes/config/vocabulary.js.map +1 -0
- package/dist/routes/debug.js +28 -13
- package/dist/routes/debug.js.map +1 -1
- package/dist/routes/root/content.js +33 -26
- package/dist/routes/root/content.js.map +1 -1
- package/dist/routes/root/scripts/channels.js +23 -11
- package/dist/routes/root/scripts/channels.js.map +1 -1
- package/dist/routes/root/scripts/config.d.ts +1 -1
- package/dist/routes/root/scripts/config.js +127 -79
- package/dist/routes/root/scripts/config.js.map +1 -1
- package/dist/routes/root/scripts/shared.js +34 -23
- package/dist/routes/root/scripts/shared.js.map +1 -1
- package/dist/routes/root/scripts/status.handlers.d.ts +8 -13
- package/dist/routes/root/scripts/status.handlers.js +35 -21
- package/dist/routes/root/scripts/status.handlers.js.map +1 -1
- package/dist/routes/root/styles.js +13 -16
- package/dist/routes/root/styles.js.map +1 -1
- package/dist/routes/services.js +12 -16
- package/dist/routes/services.js.map +1 -1
- package/dist/routes/theme.js +12 -12
- package/dist/routes/theme.js.map +1 -1
- package/dist/routes/ui.d.ts +4 -3
- package/dist/routes/ui.js +17 -13
- package/dist/routes/ui.js.map +1 -1
- package/dist/service/generators.js +12 -9
- package/dist/service/generators.js.map +1 -1
- package/dist/streaming/captureSession.d.ts +4 -4
- package/dist/streaming/captureSession.js +6 -7
- package/dist/streaming/captureSession.js.map +1 -1
- package/dist/streaming/codec.d.ts +12 -2
- package/dist/streaming/codec.js +40 -28
- package/dist/streaming/codec.js.map +1 -1
- package/dist/streaming/fmp4Segmenter.d.ts +14 -4
- package/dist/streaming/fmp4Segmenter.js +99 -79
- package/dist/streaming/fmp4Segmenter.js.map +1 -1
- package/dist/streaming/hls.d.ts +21 -14
- package/dist/streaming/hls.js +148 -122
- package/dist/streaming/hls.js.map +1 -1
- package/dist/streaming/hlsResume.d.ts +36 -13
- package/dist/streaming/hlsResume.js +68 -37
- package/dist/streaming/hlsResume.js.map +1 -1
- package/dist/streaming/monitor.d.ts +5 -3
- package/dist/streaming/monitor.js +47 -37
- package/dist/streaming/monitor.js.map +1 -1
- package/dist/streaming/mp4Parser.d.ts +29 -4
- package/dist/streaming/mp4Parser.js +49 -7
- package/dist/streaming/mp4Parser.js.map +1 -1
- package/dist/streaming/playlistBuilder.d.ts +1 -2
- package/dist/streaming/playlistBuilder.js +2 -3
- package/dist/streaming/playlistBuilder.js.map +1 -1
- package/dist/streaming/preroll.d.ts +43 -16
- package/dist/streaming/preroll.js +112 -62
- package/dist/streaming/preroll.js.map +1 -1
- package/dist/streaming/pretune.d.ts +2 -2
- package/dist/streaming/pretune.js +11 -7
- package/dist/streaming/pretune.js.map +1 -1
- package/dist/streaming/recovery.d.ts +29 -2
- package/dist/streaming/recovery.js +43 -4
- package/dist/streaming/recovery.js.map +1 -1
- package/dist/streaming/registry.d.ts +13 -10
- package/dist/streaming/registry.js +6 -5
- package/dist/streaming/registry.js.map +1 -1
- package/dist/streaming/setup.d.ts +29 -20
- package/dist/streaming/setup.js +181 -170
- package/dist/streaming/setup.js.map +1 -1
- package/dist/streaming/showInfo.d.ts +24 -12
- package/dist/streaming/showInfo.js +120 -113
- package/dist/streaming/showInfo.js.map +1 -1
- package/dist/streaming/statusEmitter.d.ts +15 -10
- package/dist/streaming/statusEmitter.js +24 -20
- package/dist/streaming/statusEmitter.js.map +1 -1
- package/dist/types/config.d.ts +24 -13
- package/dist/types/config.js +5 -1
- package/dist/types/config.js.map +1 -1
- package/dist/types/index.d.ts +3 -2
- package/dist/types/index.js +2 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/profiles.d.ts +2 -2
- package/dist/types/selection.d.ts +12 -10
- package/dist/types/streaming.d.ts +12 -5
- package/dist/types/streaming.js +12 -5
- package/dist/types/streaming.js.map +1 -1
- package/dist/utils/debugFilter.d.ts +3 -2
- package/dist/utils/debugFilter.js +7 -5
- package/dist/utils/debugFilter.js.map +1 -1
- package/dist/{hdhr → utils}/deviceId.d.ts +1 -1
- package/dist/{hdhr → utils}/deviceId.js +11 -29
- package/dist/utils/deviceId.js.map +1 -0
- package/dist/utils/errors.d.ts +7 -0
- package/dist/utils/errors.js +12 -3
- package/dist/utils/errors.js.map +1 -1
- package/dist/utils/fileLogger.d.ts +23 -12
- package/dist/utils/fileLogger.js +73 -41
- package/dist/utils/fileLogger.js.map +1 -1
- package/dist/utils/httpErrors.d.ts +13 -0
- package/dist/utils/httpErrors.js +22 -0
- package/dist/utils/httpErrors.js.map +1 -0
- package/dist/utils/index.d.ts +3 -0
- package/dist/utils/index.js +3 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/logger.d.ts +9 -8
- package/dist/utils/logger.js +64 -20
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/markup.js +8 -3
- package/dist/utils/markup.js.map +1 -1
- package/dist/utils/plainObject.d.ts +6 -0
- package/dist/utils/plainObject.js +18 -0
- package/dist/utils/plainObject.js.map +1 -0
- package/dist/utils/runtimeIdentity.context.js +1 -29
- package/dist/utils/runtimeIdentity.context.js.map +1 -1
- package/dist/utils/runtimeIdentity.d.ts +17 -6
- package/dist/utils/runtimeIdentity.js +50 -17
- package/dist/utils/runtimeIdentity.js.map +1 -1
- package/package.json +5 -5
- package/dist/hdhr/deviceId.js.map +0 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { EvaluateTimeoutError, LOG, capitalize, formatError, formatResolution, getAbortSignal, isPageDeathError, isSessionClosedError, runWithStreamContext, startTimer } from "../utils/index.js";
|
|
2
|
-
import { RECOVERY_METHODS, checkCircuitBreaker, classifyNativeSegmentHealth, computeNextRecoveryLevel, createRecoveryMetrics, deriveStreamHealth, describeResolutionOutcome, formatIssueType, formatRecoveryDuration, getIssueCategory, getIssueDescription, getRecoveryMethod, isResolutionDegraded, nextNativeIssueRecord, recordRecoveryAttempt, recordRecoverySuccess, resetCircuitBreaker, resolutionAreaRatio, shouldTriggerRecovery, updateResolutionPeak } from "./recovery.js";
|
|
2
|
+
import { RECOVERY_METHODS, TINY_SEGMENT_EVIDENCE_SECONDS, checkCircuitBreaker, classifyNativeSegmentHealth, computeNextRecoveryLevel, createRecoveryMetrics, deriveStreamHealth, deriveTinySegmentCountTrigger, deriveTinySegmentThresholdBytes, describeResolutionOutcome, formatIssueType, formatRecoveryDuration, getIssueCategory, getIssueDescription, getRecoveryMethod, isResolutionDegraded, nextNativeIssueRecord, recordRecoveryAttempt, recordRecoverySuccess, resetCircuitBreaker, resolutionAreaRatio, shouldTriggerRecovery, updateResolutionPeak } from "./recovery.js";
|
|
3
3
|
import { applyNativeQualityRefresh, getLastSegmentHasVideo, getLastSegmentSize, getStream, getStreamMemoryUsage, getStreamSegmenter, isCaptureIdentity, isHardwareAccelerated, makePendingCaptureIdentity } from "./registry.js";
|
|
4
4
|
import { applyVideoStyles, buildVideoSelectorType, checkVideoPresence, enforceVideoVolume, ensurePlayback, findVideoContext, getVideoState, tuneToChannel, validateVideoElement, verifyFullscreen } from "../browser/video.js";
|
|
5
|
-
import { getCaptureImpairment, syncWindowVisibility } from "../browser/index.js";
|
|
5
|
+
import { getCaptureImpairment, reaffirmCaptureSurface, syncWindowVisibility } from "../browser/index.js";
|
|
6
6
|
import { getEffectiveCaptureCodec, isCaptureHardwareAccelerated } from "./codec.js";
|
|
7
7
|
import { CONFIG } from "../config/index.js";
|
|
8
8
|
import { clearNativeInitState } from "./hlsSegments.js";
|
|
@@ -13,7 +13,6 @@ import { getClientSummary } from "./clients.js";
|
|
|
13
13
|
import { getPresetViewport } from "../config/presets.js";
|
|
14
14
|
import { getProviderBySlug } from "../browser/channelSelection.js";
|
|
15
15
|
import { getShowName } from "./showInfo.js";
|
|
16
|
-
import { reaffirmCaptureSurface } from "../browser/cdp.js";
|
|
17
16
|
import { refreshNativeManifest } from "../native/index.js";
|
|
18
17
|
import { systemClock } from "homebridge-plugin-utils";
|
|
19
18
|
const defaultMonitorDeps = { clock: systemClock, getCaptureImpairment, getEffectiveCaptureCodec, isCaptureHardwareAccelerated, syncWindowVisibility };
|
|
@@ -38,8 +37,8 @@ const defaultMonitorDeps = { clock: systemClock, getCaptureImpairment, getEffect
|
|
|
38
37
|
* @param streamInfo - Stream metadata for status updates.
|
|
39
38
|
* @param onCircuitBreak - Callback function called when circuit breaker trips.
|
|
40
39
|
* @param onTabReplacement - Optional callback for tab replacement recovery. When provided and 3+ consecutive timeouts occur, this is called to replace the hung tab.
|
|
41
|
-
*
|
|
42
|
-
*
|
|
40
|
+
* When no handler is supplied, or the browser is marked as unable to start captures, a tab that stays unresponsive past three timeouts
|
|
41
|
+
* terminates the stream through the circuit breaker, because nothing else can recover it.
|
|
43
42
|
* @param deps - The injected browser-boundary collaborators; defaults to defaultMonitorDeps. Threaded so a test drives the ladder's availability decision and the
|
|
44
43
|
* window sync without a live Chrome.
|
|
45
44
|
* @returns A MonitorHandle exposing the live recovery metrics (getMetrics) and a self-contained dispose that stops the monitor's polling interval.
|
|
@@ -72,7 +71,8 @@ export function monitorPlaybackHealth(page, context, profile, url, streamId, str
|
|
|
72
71
|
// for well-behaved sites like Hulu). On tick 2+ we escalate to !important priority to override sites that actively fight style changes. Reset to 0 when the
|
|
73
72
|
// video fills the viewport again.
|
|
74
73
|
let fullscreenReapplyCount = 0;
|
|
75
|
-
//
|
|
74
|
+
// The stopped marker. stopMonitoring raises it together with disposing the interval, and in-flight awaits read it so they apply nothing once the monitor has
|
|
75
|
+
// stopped.
|
|
76
76
|
let intervalCleared = false;
|
|
77
77
|
/* Serialization flag for the tick body. The interval fires on its schedule whether or not the previous tick's async body has settled, so without this a single
|
|
78
78
|
* slow evaluate - bounded only by the evaluate timeout, seven and a half intervals long at the default cadence - stacks concurrent bodies that each mutate the
|
|
@@ -118,24 +118,30 @@ export function monitorPlaybackHealth(page, context, profile, url, streamId, str
|
|
|
118
118
|
// Segment stall timeout (10 seconds). After L2/L3 recovery completes, if no new segments are produced within this window, the capture pipeline is considered
|
|
119
119
|
// dead and we escalate directly to tab replacement. This catches the case where recovery reports success but the MediaRecorder/FFmpeg pipeline has silently died.
|
|
120
120
|
const SEGMENT_STALL_TIMEOUT = 10000;
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
121
|
+
/* Tiny segment detection. A dead capture pipeline keeps emitting segments while the video element looks healthy - a few bytes each when capture has died
|
|
122
|
+
* outright, audio alone when only video has - so each new segment is measured against a floor stated as a rate and scaled to the stream's segment duration.
|
|
123
|
+
* The rate derives from the stream's video and audio bitrates, and the recovery module's floor constants state what that floor guarantees. A tab replacement
|
|
124
|
+
* is earned by TINY_SEGMENT_EVIDENCE_SECONDS of consecutive undersized segments, counted in whole segments of the stream's duration. The duration and the
|
|
125
|
+
* bitrates are the stream's own settings, which hold for its whole life, so a run of undersized segments is judged against the floor and the trigger the
|
|
126
|
+
* stream started with.
|
|
127
|
+
*/
|
|
128
|
+
const { audioBitsPerSecond, segmentDuration: segmentDurationSeconds, videoBitsPerSecond } = streamInfo.settings;
|
|
129
|
+
const tinySegmentByteThreshold = deriveTinySegmentThresholdBytes({ audioBitsPerSecond, segmentDurationSeconds, videoBitsPerSecond });
|
|
130
|
+
const tinySegmentCountTrigger = deriveTinySegmentCountTrigger({ evidenceSeconds: TINY_SEGMENT_EVIDENCE_SECONDS, segmentDurationSeconds });
|
|
131
|
+
// Resolve the service-specific evidence window once at monitor startup. Services with extended static content (e.g., Xfinity commercial placeholders) state a
|
|
132
|
+
// longer window to tolerate small segments without false positive tab replacements. Dead capture pipelines (undersized segments with no video track) always
|
|
133
|
+
// use the default window regardless of this setting.
|
|
131
134
|
const providerModule = streamInfo.serviceTag ? getProviderBySlug(streamInfo.serviceTag) : undefined;
|
|
132
|
-
const
|
|
135
|
+
const providerTinySegmentCountTrigger = deriveTinySegmentCountTrigger({
|
|
136
|
+
evidenceSeconds: providerModule?.tinySegmentEvidenceSeconds ?? TINY_SEGMENT_EVIDENCE_SECONDS,
|
|
137
|
+
segmentDurationSeconds
|
|
138
|
+
});
|
|
133
139
|
// Segment staleness timeout. When no new segments have been produced for this duration, the capture pipeline is considered dead even though the video element may
|
|
134
140
|
// appear healthy. This catches the case where Chrome's MediaRecorder silently stops emitting data without raising an error - the input stream stays "open" but no
|
|
135
141
|
// data events fire. The 20-second threshold is 4x the maximum expected moof delivery interval (5 seconds) to avoid false positives during normal bursty delivery.
|
|
136
142
|
const SEGMENT_STALENESS_TIMEOUT = 20000;
|
|
137
143
|
// The capture surface: the size capture encodes at, reported beside the source's own size in the status the monitor emits. Read once for the monitor's lifetime,
|
|
138
|
-
// because the quality preset is restart-gated and cannot change while a stream is running, so re-deriving it on every
|
|
144
|
+
// because the quality preset is restart-gated and cannot change while a stream is running, so re-deriving it on every tick would be work that can only
|
|
139
145
|
// ever produce the same answer.
|
|
140
146
|
const presetViewport = getPresetViewport(CONFIG);
|
|
141
147
|
// Resolution degradation detection. When the video element's intrinsic resolution falls well below the best the stream has delivered, the service's ABR is stuck
|
|
@@ -146,8 +152,8 @@ export function monitorPlaybackHealth(page, context, profile, url, streamId, str
|
|
|
146
152
|
const RESOLUTION_RATIO_THRESHOLD = 1 / 3;
|
|
147
153
|
// Grace period in milliseconds after stream start and after each recovery action. Gives ABR time to ramp up before flagging degradation.
|
|
148
154
|
const RESOLUTION_GRACE_PERIOD = 30000;
|
|
149
|
-
// Number of consecutive degraded readings required before triggering recovery. At
|
|
150
|
-
// degradation. This lets transient ABR dips (commercial breaks, ad transitions) self-heal without unnecessary page reloads.
|
|
155
|
+
// Number of consecutive degraded readings, one per monitor tick, required before triggering recovery. At the default monitor interval that is about 30 seconds
|
|
156
|
+
// of sustained degradation. This lets transient ABR dips (commercial breaks, ad transitions) self-heal without unnecessary page reloads.
|
|
151
157
|
const RESOLUTION_DEGRADED_COUNT_THRESHOLD = 15;
|
|
152
158
|
// Fixed margin in milliseconds before the maxContinuousPlayback limit at which a proactive reload is triggered. Two minutes provides enough time for page
|
|
153
159
|
// navigation and video reinitialization to complete before the site enforces its cutoff.
|
|
@@ -215,9 +221,12 @@ export function monitorPlaybackHealth(page, context, profile, url, streamId, str
|
|
|
215
221
|
peak: null,
|
|
216
222
|
recoveryAttempt: 0
|
|
217
223
|
};
|
|
224
|
+
// How long the current degradation has lasted, in seconds: the consecutive degraded readings times this stream's own monitor interval. The figure is a lower
|
|
225
|
+
// bound when a tick is skipped while a read is still outstanding, because a skipped tick takes no reading.
|
|
226
|
+
const degradedSeconds = () => Math.round((resolutionState.consecutiveDegradedReadings * streamInfo.settings.monitorInterval) / 1000);
|
|
218
227
|
/**
|
|
219
228
|
* Checks segment delivery health for native streams. Detects stalled streams by comparing the proxy's segment index and last segment timestamp against thresholds.
|
|
220
|
-
* Recovery
|
|
229
|
+
* Recovery escalates through these levels:
|
|
221
230
|
*
|
|
222
231
|
* - L1: Re-fetch manifest (handled by the proxy's internal retry loop - consecutive failures up to the threshold)
|
|
223
232
|
* - L2: Reload page for fresh tokens (same mechanism as proactive token refresh, but triggered by segment staleness)
|
|
@@ -318,7 +327,7 @@ export function monitorPlaybackHealth(page, context, profile, url, streamId, str
|
|
|
318
327
|
* Holds a native capture fallback at the decision site while the recovery grace window is open, reporting the stream as recovering instead of entering the
|
|
319
328
|
* fallback cycle. Every native trigger - a relay that stopped itself on its error threshold, a stall the ladder has escalated to its last rung - describes a
|
|
320
329
|
* condition that holds on every tick once it is true. Without this read the whole cycle - the mode pre-flip, the attempt, the revert, the window sync, the
|
|
321
|
-
* warning - would run
|
|
330
|
+
* warning - would run on every tick inside a window every other trigger is respecting. Nothing is lost by waiting, since neither condition is curing itself in
|
|
322
331
|
* the meantime, and the status still goes out so the display keeps advancing. The replacement primitive's own entry gate stays the guarantee beneath this: a
|
|
323
332
|
* gate here can be forgotten, that one cannot be bypassed.
|
|
324
333
|
*
|
|
@@ -713,9 +722,9 @@ export function monitorPlaybackHealth(page, context, profile, url, streamId, str
|
|
|
713
722
|
}
|
|
714
723
|
/**
|
|
715
724
|
* Reports whether the monitor is inside the post-recovery grace window. One state, read here by every consumer that has to honour it: the tick computes the
|
|
716
|
-
* value it threads into the health checks from this, and the triggers that sit outside that thread - the
|
|
717
|
-
* native fallback triggers through deferFallbackInsideGrace, and the replacement primitive's own entry gate - call it directly. A
|
|
718
|
-
* same question is how a trigger ends up escalating inside a window every other trigger is respecting.
|
|
725
|
+
* value it threads into the health checks from this, which the tiny-segment and staleness gates read, and the triggers that sit outside that thread - the
|
|
726
|
+
* unresponsive-tab gate, the native fallback triggers through deferFallbackInsideGrace, and the replacement primitive's own entry gate - call it directly. A
|
|
727
|
+
* second way of asking the same question is how a trigger ends up escalating inside a window every other trigger is respecting.
|
|
719
728
|
* @returns True while the grace window from the last recovery action is still open.
|
|
720
729
|
*/
|
|
721
730
|
function isWithinRecoveryGrace() {
|
|
@@ -736,7 +745,7 @@ export function monitorPlaybackHealth(page, context, profile, url, streamId, str
|
|
|
736
745
|
* terminateStream has already disposed this monitor; the resumption must then apply nothing at all - no grace window, no discontinuity mark, no context
|
|
737
746
|
* adoption, no counter reset, no navigation-failure tally, no status emission - because each of those would describe a stream that is already gone.
|
|
738
747
|
*
|
|
739
|
-
* Releasing recoveryState.inProgress is this helper's own job for exactly that reason:
|
|
748
|
+
* Releasing recoveryState.inProgress is this helper's own job for exactly that reason: every caller raises the flag before its await and lowers it on the
|
|
740
749
|
* way out, and the resumption they skip is where that lowering would otherwise have happened. executeTabReplacement is not one of them - its finally already
|
|
741
750
|
* owns the release.
|
|
742
751
|
* @returns True if the monitor stopped and the caller must apply nothing.
|
|
@@ -1129,17 +1138,17 @@ export function monitorPlaybackHealth(page, context, profile, url, streamId, str
|
|
|
1129
1138
|
// A new segment was produced. Update the staleness tracker and check its size.
|
|
1130
1139
|
segmentState.lastSegmentAdvanceTime = now;
|
|
1131
1140
|
const segmentSize = getLastSegmentSize(sizeCheckEntry) ?? 0;
|
|
1132
|
-
if (segmentSize <
|
|
1141
|
+
if (segmentSize < tinySegmentByteThreshold) {
|
|
1133
1142
|
segmentState.consecutiveTinySegments++;
|
|
1134
1143
|
segmentState.wasInTinyState = true;
|
|
1135
1144
|
// Check track composition to determine the effective threshold. Dead capture pipelines produce audio-only segments (hasVideo=false) and always use the
|
|
1136
1145
|
// default count for fast detection. Segments with video trafs present use the service-specific threshold, which may be higher for services with extended
|
|
1137
1146
|
// static content (e.g., Xfinity commercial placeholders lasting several minutes).
|
|
1138
1147
|
const hasVideo = getLastSegmentHasVideo(sizeCheckEntry);
|
|
1139
|
-
const effectiveThreshold = (hasVideo === false) ?
|
|
1148
|
+
const effectiveThreshold = (hasVideo === false) ? tinySegmentCountTrigger : providerTinySegmentCountTrigger;
|
|
1140
1149
|
LOG.debug("recovery:tracks", "Below-threshold segment: %d bytes, hasVideo=%s, consecutive=%d, threshold=%d.", segmentSize, String(hasVideo), segmentState.consecutiveTinySegments, effectiveThreshold);
|
|
1141
1150
|
/* Act on sustained undersized segments, but not inside the post-recovery grace window. The grace term is what keeps a stream that a replacement did not
|
|
1142
|
-
* cure from re-escalating every
|
|
1151
|
+
* cure from re-escalating on every tick: a fresh capture needs its window to start producing real segments, and a stream still emitting tiny ones
|
|
1143
1152
|
* when the window closes will satisfy this again immediately. Suppressing the whole branch - the warning and the circuit-breaker fallback alongside the
|
|
1144
1153
|
* replacement - is deliberate, and mirrors what the staleness branch below has always done with its own grace term. The counter keeps advancing
|
|
1145
1154
|
* meanwhile, so the evidence is not lost, only the reaction is deferred.
|
|
@@ -1242,12 +1251,12 @@ export function monitorPlaybackHealth(page, context, profile, url, streamId, str
|
|
|
1242
1251
|
// Escalation step 1: page reload. Forces the service's ABR to restart quality negotiation. Only triggers after sustained degradation
|
|
1243
1252
|
// (RESOLUTION_DEGRADED_COUNT_THRESHOLD consecutive readings) to let transient ABR dips self-heal.
|
|
1244
1253
|
if ((resolutionState.consecutiveDegradedReadings >= RESOLUTION_DEGRADED_COUNT_THRESHOLD) && (resolutionState.recoveryAttempt === 0)) {
|
|
1245
|
-
|
|
1246
|
-
|
|
1254
|
+
LOG.warn("Video resolution has been degraded, so recovery will be attempted.", { degradedSeconds: degradedSeconds(), method: RECOVERY_METHODS.pageNavigation,
|
|
1255
|
+
peak: formatResolution(peak.width, peak.height), resolution: formatResolution(state.videoWidth, state.videoHeight) });
|
|
1247
1256
|
recoveryState.inProgress = true;
|
|
1248
1257
|
if (!isPageReloadAllowed()) {
|
|
1249
1258
|
LOG.warn("Resolution recovery deferred - page navigation rate limit reached (%s in %s minutes).", CONFIG.playback.maxPageReloads, Math.round(CONFIG.playback.pageReloadWindow / 60000));
|
|
1250
|
-
// Defer by pushing grace end forward to avoid re-triggering every
|
|
1259
|
+
// Defer by pushing grace end forward to avoid re-triggering on every tick.
|
|
1251
1260
|
resolutionState.graceEnd = now + RESOLUTION_GRACE_PERIOD;
|
|
1252
1261
|
recoveryState.inProgress = false;
|
|
1253
1262
|
emitStatusUpdate();
|
|
@@ -1289,8 +1298,8 @@ export function monitorPlaybackHealth(page, context, profile, url, streamId, str
|
|
|
1289
1298
|
// Escalation step 2: tab replacement. Creates a fresh page with new capture pipeline and network connections.
|
|
1290
1299
|
if ((resolutionState.consecutiveDegradedReadings >= RESOLUTION_DEGRADED_COUNT_THRESHOLD) && (resolutionState.recoveryAttempt === 1)) {
|
|
1291
1300
|
if (canReplaceTab()) {
|
|
1292
|
-
|
|
1293
|
-
|
|
1301
|
+
LOG.warn("Video resolution is still degraded, so recovery will be attempted again.", { degradedSeconds: degradedSeconds(),
|
|
1302
|
+
method: RECOVERY_METHODS.tabReplacement, resolution: formatResolution(state.videoWidth, state.videoHeight) });
|
|
1294
1303
|
await executeTabReplacement("resolution degraded");
|
|
1295
1304
|
resolutionState.consecutiveDegradedReadings = 0;
|
|
1296
1305
|
resolutionState.recoveryAttempt = 2;
|
|
@@ -1340,7 +1349,7 @@ export function monitorPlaybackHealth(page, context, profile, url, streamId, str
|
|
|
1340
1349
|
// yield. If the site eventually cuts the stream, normal error recovery handles it.
|
|
1341
1350
|
if (!isPageReloadAllowed()) {
|
|
1342
1351
|
LOG.warn("Proactive reload deferred - page navigation rate limit reached (%s in %s minutes).", CONFIG.playback.maxPageReloads, Math.round(CONFIG.playback.pageReloadWindow / 60000));
|
|
1343
|
-
// Set a grace period so this deferral does not re-trigger every
|
|
1352
|
+
// Set a grace period so this deferral does not re-trigger on every tick while the rate limit remains in effect. Level 3 is the bound a page navigation
|
|
1344
1353
|
// would have taken, which is the action being deferred.
|
|
1345
1354
|
setRecoveryGracePeriod(3);
|
|
1346
1355
|
recoveryState.inProgress = false;
|
|
@@ -1789,7 +1798,8 @@ export function monitorPlaybackHealth(page, context, profile, url, streamId, str
|
|
|
1789
1798
|
const healthyDuration = now - recoveryState.lastRecoveryTime;
|
|
1790
1799
|
if ((recoveryState.escalationLevel > 0) && (healthyDuration > CONFIG.playback.sustainedPlaybackRequired)) {
|
|
1791
1800
|
// Clear buffering state. The bufferingStartTime may persist through recovery cycles due to networkState === 2 (NETWORK_LOADING) being true for live streams
|
|
1792
|
-
// even during healthy playback.
|
|
1801
|
+
// even during healthy playback. The stream has gone sustainedPlaybackRequired (60 seconds by default) since its last recovery attempt and is progressing
|
|
1802
|
+
// on this tick, so it is not buffering.
|
|
1793
1803
|
bufferingStartTime = null;
|
|
1794
1804
|
// Reset escalation, failure counters, segment tracking, and circuit breaker. Sustained healthy playback confirms the stream works, so we clear every
|
|
1795
1805
|
// failure tally for a true fresh start. Without resetting the counters here, a stale consecutiveNavigationFailures count could carry across the healthy
|
|
@@ -1870,7 +1880,7 @@ export function monitorPlaybackHealth(page, context, profile, url, streamId, str
|
|
|
1870
1880
|
// Log errors that escape the inner try/catch. In normal operation we should not reach here - if we do, there's a bug to investigate.
|
|
1871
1881
|
LOG.warn("Monitor tick error escaped inner try/catch: %s.", formatError(outerError));
|
|
1872
1882
|
}));
|
|
1873
|
-
},
|
|
1883
|
+
}, streamInfo.settings.monitorInterval, { repeat: true });
|
|
1874
1884
|
/* The monitor's teardown: mark the interval cleared (so any in-flight async tick short-circuits) and clear it. Self-contained - it owns only the interval. Defined
|
|
1875
1885
|
* as a const so it is exposed as both dispose() and [Symbol.dispose].
|
|
1876
1886
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monitor.js","sourceRoot":"","sources":["../../src/streaming/monitor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"monitor.js","sourceRoot":"","sources":["../../src/streaming/monitor.ts"],"names":[],"mappings":"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"}
|
|
@@ -34,9 +34,10 @@ export declare function createMP4BoxParser(onBox: MP4BoxCallback): MP4BoxParser;
|
|
|
34
34
|
export declare function iterateChildBoxes(data: Buffer, callback: (type: string, data: Buffer, offset: number, size: number) => void): void;
|
|
35
35
|
/**
|
|
36
36
|
* Detects whether a moof box starts with a keyframe (sync sample) by examining the sample flags of the first sample in each trun box. The detection inspects all traf
|
|
37
|
-
* boxes within the moof to handle multi-track containers (e.g., separate audio and video tracks). A non-keyframe signal from any traf
|
|
38
|
-
*
|
|
39
|
-
* to map track IDs back to the moov
|
|
37
|
+
* boxes within the moof to handle multi-track containers (e.g., separate audio and video tracks). A non-keyframe signal from any traf - a first sample that
|
|
38
|
+
* evaluateSampleFlags classifies as non-sync, whether from sample_depends_on === 1 or from the sample_is_non_sync_sample bit - takes precedence, on the assumption
|
|
39
|
+
* that audio tracks never set either one, so the only source of the signal is a non-keyframe video track. This avoids needing to map track IDs back to the moov
|
|
40
|
+
* box's codec metadata.
|
|
40
41
|
*
|
|
41
42
|
* The function checks three flag sources in priority order per the ISO 14496-12 spec: trun first_sample_flags (0x004), trun per-sample flags (0x400), and tfhd
|
|
42
43
|
* default_sample_flags (0x020).
|
|
@@ -56,7 +57,9 @@ export interface OffsetTrackResult {
|
|
|
56
57
|
/**
|
|
57
58
|
* Applies a constant per-track offset to Chrome's original tfdt.baseMediaDecodeTime values. Reads Chrome's original tfdt, adds the per-track offset, and writes back.
|
|
58
59
|
* During normal playback the offset is 0 (pure pass-through of Chrome's wall-clock-based timestamps). At tab replacement boundaries the offset bridges the PTS
|
|
59
|
-
* discontinuity
|
|
60
|
+
* discontinuity. The caller computes it once per track from the shared timeline position computeTimelinePosition derives, so the tracks share one reference, and
|
|
61
|
+
* falls back to the per-track difference between the previous segmenter's "next expected" value and Chrome's new starting tfdt (offset = initialTrackTimestamp -
|
|
62
|
+
* originalTfdt) when the timescales are unavailable.
|
|
60
63
|
*
|
|
61
64
|
* This approach preserves Chrome's inter-track synchronization. Chrome uses wall-clock-based timestamps that keep audio and video aligned regardless of frame drops.
|
|
62
65
|
*
|
|
@@ -93,6 +96,28 @@ export interface MoovTrackInfo {
|
|
|
93
96
|
* @returns Map from track_ID to track info. Only includes tracks where the track ID, timescale, and handler type were all successfully extracted.
|
|
94
97
|
*/
|
|
95
98
|
export declare function parseMoovTrackInfo(moovData: Buffer): Map<number, MoovTrackInfo>;
|
|
99
|
+
/**
|
|
100
|
+
* Extracts per-track metadata from an init segment, the ftyp box followed by the moov box. The box parser walks the segment's top-level boxes to find the moov,
|
|
101
|
+
* which parseMoovTrackInfo then reads; handed the whole init segment, parseMoovTrackInfo would read the ftyp's header as its parent's and find no track.
|
|
102
|
+
* @param initSegment - The init segment buffer.
|
|
103
|
+
* @returns Map from track_ID to track info, or an empty map when the buffer carries no complete moov box.
|
|
104
|
+
*/
|
|
105
|
+
export declare function parseInitSegmentTrackInfo(initSegment: Buffer): Map<number, MoovTrackInfo>;
|
|
106
|
+
/**
|
|
107
|
+
* Options for converting per-track decode-time counters into one timeline position.
|
|
108
|
+
*/
|
|
109
|
+
export interface TimelinePositionOptions {
|
|
110
|
+
timescales: ReadonlyMap<number, number>;
|
|
111
|
+
trackTimestamps: ReadonlyMap<number, bigint>;
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Converts per-track decode-time counters into one position on the timeline the tracks share, in seconds: each counter over its track's timescale, averaged
|
|
115
|
+
* across the tracks that carry both. A continuing segmenter derives every track's offset from this one position, so the tracks share a reference rather than
|
|
116
|
+
* freezing the jitter between them, and the resume line reports the same position from the counters a previous session persisted.
|
|
117
|
+
* @param options - The tracks' timescales and counters.
|
|
118
|
+
* @returns The position in seconds, or null when no track carries both a counter and a positive timescale.
|
|
119
|
+
*/
|
|
120
|
+
export declare function computeTimelinePosition(options: TimelinePositionOptions): Nullable<number>;
|
|
96
121
|
/**
|
|
97
122
|
* Video codec configuration extracted from the avcC box inside the moov. These are the parameters Chrome's MediaRecorder used to encode the video, needed to match
|
|
98
123
|
* the preroll's FFmpeg encoding so CDVR's transcoder sees consistent codec parameters across the preroll-to-real DISCONTINUITY boundary.
|