prismcast 1.5.2 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (158) hide show
  1. package/README.md +44 -28
  2. package/dist/app.d.ts +5 -0
  3. package/dist/app.js +63 -5
  4. package/dist/app.js.map +1 -1
  5. package/dist/browser/channelSelection.js +14 -2
  6. package/dist/browser/channelSelection.js.map +1 -1
  7. package/dist/browser/index.d.ts +23 -9
  8. package/dist/browser/index.js +205 -88
  9. package/dist/browser/index.js.map +1 -1
  10. package/dist/browser/precaching.js +3 -3
  11. package/dist/browser/precaching.js.map +1 -1
  12. package/dist/browser/tuning/directv.js +13 -0
  13. package/dist/browser/tuning/directv.js.map +1 -1
  14. package/dist/browser/tuning/fox.js +12 -0
  15. package/dist/browser/tuning/fox.js.map +1 -1
  16. package/dist/browser/tuning/hbo.js +11 -0
  17. package/dist/browser/tuning/hbo.js.map +1 -1
  18. package/dist/browser/tuning/hulu.js +23 -0
  19. package/dist/browser/tuning/hulu.js.map +1 -1
  20. package/dist/browser/tuning/sling.js +34 -4
  21. package/dist/browser/tuning/sling.js.map +1 -1
  22. package/dist/browser/tuning/spectrum.js +12 -0
  23. package/dist/browser/tuning/spectrum.js.map +1 -1
  24. package/dist/browser/tuning/xfinity.d.ts +2 -0
  25. package/dist/browser/tuning/xfinity.js +607 -0
  26. package/dist/browser/tuning/xfinity.js.map +1 -0
  27. package/dist/browser/tuning/youtubeTv.js +14 -0
  28. package/dist/browser/tuning/youtubeTv.js.map +1 -1
  29. package/dist/browser/video.d.ts +2 -0
  30. package/dist/browser/video.js +99 -17
  31. package/dist/browser/video.js.map +1 -1
  32. package/dist/channels/index.js +173 -56
  33. package/dist/channels/index.js.map +1 -1
  34. package/dist/config/health.d.ts +28 -28
  35. package/dist/config/health.js +52 -52
  36. package/dist/config/health.js.map +1 -1
  37. package/dist/config/paths.d.ts +12 -0
  38. package/dist/config/paths.js +16 -0
  39. package/dist/config/paths.js.map +1 -1
  40. package/dist/config/profiles.d.ts +3 -2
  41. package/dist/config/profiles.js +45 -34
  42. package/dist/config/profiles.js.map +1 -1
  43. package/dist/config/providers.d.ts +7 -0
  44. package/dist/config/providers.js +14 -0
  45. package/dist/config/providers.js.map +1 -1
  46. package/dist/config/sites.d.ts +28 -0
  47. package/dist/config/sites.js +93 -122
  48. package/dist/config/sites.js.map +1 -1
  49. package/dist/config/userChannels.d.ts +3 -0
  50. package/dist/config/userChannels.js +10 -3
  51. package/dist/config/userChannels.js.map +1 -1
  52. package/dist/config/userConfig.d.ts +1 -0
  53. package/dist/config/userConfig.js +4 -0
  54. package/dist/config/userConfig.js.map +1 -1
  55. package/dist/config/userProfiles.d.ts +0 -1
  56. package/dist/config/userProfiles.js +18 -10
  57. package/dist/config/userProfiles.js.map +1 -1
  58. package/dist/index.js +16 -7
  59. package/dist/index.js.map +1 -1
  60. package/dist/native/decrypt.d.ts +32 -0
  61. package/dist/native/decrypt.js +85 -0
  62. package/dist/native/decrypt.js.map +1 -0
  63. package/dist/native/index.d.ts +58 -0
  64. package/dist/native/index.js +341 -0
  65. package/dist/native/index.js.map +1 -0
  66. package/dist/native/intercept.d.ts +35 -0
  67. package/dist/native/intercept.js +184 -0
  68. package/dist/native/intercept.js.map +1 -0
  69. package/dist/native/probe.d.ts +48 -0
  70. package/dist/native/probe.js +270 -0
  71. package/dist/native/probe.js.map +1 -0
  72. package/dist/native/proxy.d.ts +52 -0
  73. package/dist/native/proxy.js +904 -0
  74. package/dist/native/proxy.js.map +1 -0
  75. package/dist/routes/config/channels/table.js +19 -25
  76. package/dist/routes/config/channels/table.js.map +1 -1
  77. package/dist/routes/config/providers.js +4 -4
  78. package/dist/routes/config/providers.js.map +1 -1
  79. package/dist/routes/debug.js +5 -5
  80. package/dist/routes/debug.js.map +1 -1
  81. package/dist/routes/hls.js +12 -2
  82. package/dist/routes/hls.js.map +1 -1
  83. package/dist/routes/index.d.ts +1 -0
  84. package/dist/routes/index.js +3 -0
  85. package/dist/routes/index.js.map +1 -1
  86. package/dist/routes/root/content.js +80 -20
  87. package/dist/routes/root/content.js.map +1 -1
  88. package/dist/routes/root/scripts/status.js +14 -13
  89. package/dist/routes/root/scripts/status.js.map +1 -1
  90. package/dist/routes/root/styles.js +4 -2
  91. package/dist/routes/root/styles.js.map +1 -1
  92. package/dist/streaming/fmp4Segmenter.d.ts +3 -0
  93. package/dist/streaming/fmp4Segmenter.js +143 -42
  94. package/dist/streaming/fmp4Segmenter.js.map +1 -1
  95. package/dist/streaming/hls.d.ts +24 -19
  96. package/dist/streaming/hls.js +486 -261
  97. package/dist/streaming/hls.js.map +1 -1
  98. package/dist/streaming/hlsResume.d.ts +7 -0
  99. package/dist/streaming/hlsResume.js +22 -2
  100. package/dist/streaming/hlsResume.js.map +1 -1
  101. package/dist/streaming/hlsSegments.d.ts +42 -2
  102. package/dist/streaming/hlsSegments.js +109 -8
  103. package/dist/streaming/hlsSegments.js.map +1 -1
  104. package/dist/streaming/lifecycle.js +20 -2
  105. package/dist/streaming/lifecycle.js.map +1 -1
  106. package/dist/streaming/monitor.d.ts +1 -0
  107. package/dist/streaming/monitor.js +369 -21
  108. package/dist/streaming/monitor.js.map +1 -1
  109. package/dist/streaming/mp4Parser.d.ts +52 -6
  110. package/dist/streaming/mp4Parser.js +156 -30
  111. package/dist/streaming/mp4Parser.js.map +1 -1
  112. package/dist/streaming/mpegts.d.ts +2 -2
  113. package/dist/streaming/mpegts.js +156 -109
  114. package/dist/streaming/mpegts.js.map +1 -1
  115. package/dist/streaming/playlistBuilder.d.ts +38 -0
  116. package/dist/streaming/playlistBuilder.js +66 -0
  117. package/dist/streaming/playlistBuilder.js.map +1 -0
  118. package/dist/streaming/preroll.d.ts +106 -0
  119. package/dist/streaming/preroll.js +373 -0
  120. package/dist/streaming/preroll.js.map +1 -0
  121. package/dist/streaming/pretune.d.ts +8 -0
  122. package/dist/streaming/pretune.js +226 -0
  123. package/dist/streaming/pretune.js.map +1 -0
  124. package/dist/streaming/registry.d.ts +24 -3
  125. package/dist/streaming/registry.js +23 -1
  126. package/dist/streaming/registry.js.map +1 -1
  127. package/dist/streaming/setup.d.ts +7 -0
  128. package/dist/streaming/setup.js +27 -6
  129. package/dist/streaming/setup.js.map +1 -1
  130. package/dist/streaming/showInfo.d.ts +24 -0
  131. package/dist/streaming/showInfo.js +55 -3
  132. package/dist/streaming/showInfo.js.map +1 -1
  133. package/dist/streaming/statusEmitter.d.ts +6 -4
  134. package/dist/streaming/statusEmitter.js +9 -3
  135. package/dist/streaming/statusEmitter.js.map +1 -1
  136. package/dist/types/channels.d.ts +1 -0
  137. package/dist/types/index.d.ts +1 -1
  138. package/dist/types/profiles.d.ts +8 -1
  139. package/dist/types/selection.d.ts +4 -1
  140. package/dist/types/streaming.d.ts +7 -0
  141. package/dist/utils/chromeFetch.d.ts +20 -0
  142. package/dist/utils/chromeFetch.js +43 -0
  143. package/dist/utils/chromeFetch.js.map +1 -0
  144. package/dist/utils/debugFilter.js +15 -0
  145. package/dist/utils/debugFilter.js.map +1 -1
  146. package/dist/utils/delay.d.ts +16 -0
  147. package/dist/utils/delay.js +15 -1
  148. package/dist/utils/delay.js.map +1 -1
  149. package/dist/utils/ffmpeg.d.ts +1 -7
  150. package/dist/utils/ffmpeg.js +86 -127
  151. package/dist/utils/ffmpeg.js.map +1 -1
  152. package/dist/utils/index.d.ts +2 -0
  153. package/dist/utils/index.js +2 -0
  154. package/dist/utils/index.js.map +1 -1
  155. package/dist/utils/pid.d.ts +40 -0
  156. package/dist/utils/pid.js +83 -0
  157. package/dist/utils/pid.js.map +1 -0
  158. package/package.json +5 -5
@@ -1 +1 @@
1
- {"version":3,"file":"hls.js","sourceRoot":"","sources":["../../src/streaming/hls.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hls.js","sourceRoot":"","sources":["../../src/streaming/hls.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,13 @@ export interface ResumeData {
23
23
  * between shutdown and the next startup. If the file is missing or corrupt, the map stays empty and all streams start at 0 (today's behavior).
24
24
  */
25
25
  export declare function loadResumeState(): void;
26
+ /**
27
+ * Returns the saved segment index for a channel without consuming the resume data. Used by registerPendingStream() to offset the preroll playlist's
28
+ * MEDIA-SEQUENCE so it continues from the prior session's sequence range rather than starting at 0. Returns null if no valid resume data exists.
29
+ * @param channelName - The channel key to look up.
30
+ * @returns The saved segment index, or null if no valid resume data exists.
31
+ */
32
+ export declare function getResumeSegmentIndex(channelName: string): Nullable<number>;
26
33
  /**
27
34
  * Consumes resume data for a channel. Returns the seeding parameters if the entry exists and is within TTL, or null if no resume data is available. The entry is
28
35
  * removed from the in-memory map after consumption (each channel resumes at most once).
@@ -2,8 +2,10 @@
2
2
  *
3
3
  * hlsResume.ts: HLS sequence number persistence across restarts.
4
4
  */
5
- import { LOG, formatError } from "../utils/index.js";
5
+ import { LOG, formatDuration, formatError } from "../utils/index.js";
6
+ import { CONFIG } from "../config/index.js";
6
7
  import fs from "node:fs";
8
+ import { getResolvedChannel } from "../config/providers.js";
7
9
  import { getResumeFilePath } from "../config/paths.js";
8
10
  /* When PrismCast restarts mid-recording, HLS media sequences reset to 0. Channels DVR detects "Playlist reset to a lower sequence" and produces unpredictable
9
11
  * timestamps in the recording. This module persists final sequence numbers at shutdown and seeds from them on restart so sequences always move forward.
@@ -71,6 +73,22 @@ export function loadResumeState() {
71
73
  LOG.info("Loaded HLS resume state for %d channel%s.", loaded, loaded === 1 ? "" : "s");
72
74
  }
73
75
  }
76
+ /**
77
+ * Returns the saved segment index for a channel without consuming the resume data. Used by registerPendingStream() to offset the preroll playlist's
78
+ * MEDIA-SEQUENCE so it continues from the prior session's sequence range rather than starting at 0. Returns null if no valid resume data exists.
79
+ * @param channelName - The channel key to look up.
80
+ * @returns The saved segment index, or null if no valid resume data exists.
81
+ */
82
+ export function getResumeSegmentIndex(channelName) {
83
+ const entry = resumeMap.get(channelName);
84
+ if (!entry) {
85
+ return null;
86
+ }
87
+ if ((Date.now() - entry.timestamp) > RESUME_TTL) {
88
+ return null;
89
+ }
90
+ return entry.segmentIndex;
91
+ }
74
92
  /**
75
93
  * Consumes resume data for a channel. Returns the seeding parameters if the entry exists and is within TTL, or null if no resume data is available. The entry is
76
94
  * removed from the in-memory map after consumption (each channel resumes at most once).
@@ -88,7 +106,9 @@ export function consumeResumeData(channelName) {
88
106
  if ((Date.now() - entry.timestamp) > RESUME_TTL) {
89
107
  return null;
90
108
  }
91
- LOG.info("Resuming HLS sequence for '%s' from segment %d.", channelName, entry.segmentIndex);
109
+ const displayName = getResolvedChannel(channelName)?.name ?? channelName;
110
+ const priorContent = formatDuration(entry.segmentIndex * CONFIG.hls.segmentDuration * 1000);
111
+ LOG.info("Resuming stream for %s from previous session (%s of prior content).", displayName, priorContent);
92
112
  return {
93
113
  initSegment: entry.initSegment,
94
114
  initVersion: entry.initVersion + 1,
@@ -1 +1 @@
1
- {"version":3,"file":"hlsResume.js","sourceRoot":"","sources":["../../src/streaming/hlsResume.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hlsResume.js","sourceRoot":"","sources":["../../src/streaming/hlsResume.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  /**
2
- * Stores a media segment received from the segmenter. Enforces the segment count limit by removing the oldest segment when necessary. This is for .m4s media segments,
3
- * not the init segment.
2
+ * Stores a media segment. Enforces the segment count limit by removing the oldest segment when necessary. Handles both capture-mode .m4s segments from the fMP4
3
+ * segmenter and native-mode .ts segments from the HLS proxy.
4
4
  * @param streamId - The numeric stream ID.
5
5
  * @param filename - The segment filename (e.g., "segment0.m4s").
6
6
  * @param data - The segment binary data.
@@ -19,6 +19,46 @@ export declare function getSegment(streamId: number, filename: string): Buffer |
19
19
  * @returns The number of stored segments, or 0 if the stream is not found.
20
20
  */
21
21
  export declare function getSegmentCount(streamId: number): number;
22
+ /**
23
+ * Stores an audio segment for streams with separate audio renditions. Enforces the same segment count limit as video segments by removing the oldest audio segment
24
+ * when necessary.
25
+ * @param streamId - The numeric stream ID.
26
+ * @param filename - The audio segment filename (e.g., "audio0.ts").
27
+ * @param data - The segment binary data.
28
+ */
29
+ export declare function storeAudioSegment(streamId: number, filename: string, data: Buffer): void;
30
+ /**
31
+ * Gets an audio segment by filename.
32
+ * @param streamId - The numeric stream ID.
33
+ * @param filename - The audio segment filename.
34
+ * @returns The segment data, or undefined if not found.
35
+ */
36
+ export declare function getAudioSegment(streamId: number, filename: string): Buffer | undefined;
37
+ /**
38
+ * Updates the audio variant playlist content for a stream with separate audio renditions.
39
+ * @param streamId - The numeric stream ID.
40
+ * @param content - The audio m3u8 playlist content.
41
+ */
42
+ export declare function updateAudioPlaylist(streamId: number, content: string): void;
43
+ /**
44
+ * Gets the current audio variant playlist for a stream.
45
+ * @param streamId - The numeric stream ID.
46
+ * @returns The audio playlist content, or undefined if not found.
47
+ */
48
+ export declare function getAudioPlaylist(streamId: number): string | undefined;
49
+ /**
50
+ * Updates the video variant playlist content for a stream with separate audio renditions. When hasAudio is true, the main playlist becomes the master playlist, and
51
+ * the video variant playlist is stored separately.
52
+ * @param streamId - The numeric stream ID.
53
+ * @param content - The video m3u8 playlist content.
54
+ */
55
+ export declare function updateVideoPlaylist(streamId: number, content: string): void;
56
+ /**
57
+ * Gets the current video variant playlist for a stream with separate audio renditions.
58
+ * @param streamId - The numeric stream ID.
59
+ * @returns The video playlist content, or undefined if not found.
60
+ */
61
+ export declare function getVideoPlaylist(streamId: number): string | undefined;
22
62
  /**
23
63
  * Stores the fMP4 initialization segment for a stream. The init segment contains codec configuration and is sent once at stream start. Unlike media segments, it is
24
64
  * retained for the entire stream lifetime (not subject to rotation).
@@ -12,17 +12,17 @@ import { getStream } from "./registry.js";
12
12
  * 2. Enforce segment count limits to control memory usage
13
13
  * 3. Provide access to segments and playlists for HTTP handlers
14
14
  *
15
- * For fMP4 HLS, there are three types of data:
15
+ * Data types:
16
16
  * - Init segment (init.mp4): Contains codec configuration, sent once at stream start, retained for stream lifetime
17
- * - Media segments (.m4s): Contain audio/video data, rotated based on maxSegments config
17
+ * - Media segments (.m4s or .ts): Contain audio/video data, rotated based on maxSegments config
18
18
  * - Playlist (.m3u8): Updated as new segments are produced
19
19
  *
20
20
  * Note: Stream lifecycle (creation, cleanup) is managed by the registry. This module focuses solely on segment storage operations.
21
21
  */
22
22
  // Segment Management.
23
23
  /**
24
- * Stores a media segment received from the segmenter. Enforces the segment count limit by removing the oldest segment when necessary. This is for .m4s media segments,
25
- * not the init segment.
24
+ * Stores a media segment. Enforces the segment count limit by removing the oldest segment when necessary. Handles both capture-mode .m4s segments from the fMP4
25
+ * segmenter and native-mode .ts segments from the HLS proxy.
26
26
  * @param streamId - The numeric stream ID.
27
27
  * @param filename - The segment filename (e.g., "segment0.m4s").
28
28
  * @param data - The segment binary data.
@@ -66,6 +66,92 @@ export function getSegment(streamId, filename) {
66
66
  export function getSegmentCount(streamId) {
67
67
  return getStream(streamId)?.hls.segments.size ?? 0;
68
68
  }
69
+ // Audio Segment Management.
70
+ /**
71
+ * Stores an audio segment for streams with separate audio renditions. Enforces the same segment count limit as video segments by removing the oldest audio segment
72
+ * when necessary.
73
+ * @param streamId - The numeric stream ID.
74
+ * @param filename - The audio segment filename (e.g., "audio0.ts").
75
+ * @param data - The segment binary data.
76
+ */
77
+ export function storeAudioSegment(streamId, filename, data) {
78
+ const stream = getStream(streamId);
79
+ if (!stream) {
80
+ LOG.debug("streaming:hls", "Attempted to store audio segment for unknown stream %s.", streamId);
81
+ return;
82
+ }
83
+ stream.hls.audioSegments.set(filename, data);
84
+ // Notify consumers that a new audio segment is available.
85
+ stream.hls.segmentEmitter.emit("audioSegment", filename, data);
86
+ // Enforce segment limit by removing oldest audio segments.
87
+ while (stream.hls.audioSegments.size > CONFIG.hls.maxSegments) {
88
+ const oldestKey = stream.hls.audioSegments.keys().next().value;
89
+ if (oldestKey === undefined) {
90
+ break;
91
+ }
92
+ stream.hls.audioSegments.delete(oldestKey);
93
+ }
94
+ }
95
+ /**
96
+ * Gets an audio segment by filename.
97
+ * @param streamId - The numeric stream ID.
98
+ * @param filename - The audio segment filename.
99
+ * @returns The segment data, or undefined if not found.
100
+ */
101
+ export function getAudioSegment(streamId, filename) {
102
+ const stream = getStream(streamId);
103
+ if (!stream) {
104
+ return undefined;
105
+ }
106
+ return stream.hls.audioSegments.get(filename);
107
+ }
108
+ // Audio Playlist Management.
109
+ /**
110
+ * Updates the audio variant playlist content for a stream with separate audio renditions.
111
+ * @param streamId - The numeric stream ID.
112
+ * @param content - The audio m3u8 playlist content.
113
+ */
114
+ export function updateAudioPlaylist(streamId, content) {
115
+ const stream = getStream(streamId);
116
+ if (!stream) {
117
+ LOG.debug("streaming:hls", "Attempted to update audio playlist for unknown stream %s.", streamId);
118
+ return;
119
+ }
120
+ stream.hls.audioPlaylist = content;
121
+ }
122
+ /**
123
+ * Gets the current audio variant playlist for a stream.
124
+ * @param streamId - The numeric stream ID.
125
+ * @returns The audio playlist content, or undefined if not found.
126
+ */
127
+ export function getAudioPlaylist(streamId) {
128
+ // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing -- intentional: convert empty string to undefined.
129
+ return getStream(streamId)?.hls.audioPlaylist || undefined;
130
+ }
131
+ // Video Playlist Management (Separate Audio Streams).
132
+ /**
133
+ * Updates the video variant playlist content for a stream with separate audio renditions. When hasAudio is true, the main playlist becomes the master playlist, and
134
+ * the video variant playlist is stored separately.
135
+ * @param streamId - The numeric stream ID.
136
+ * @param content - The video m3u8 playlist content.
137
+ */
138
+ export function updateVideoPlaylist(streamId, content) {
139
+ const stream = getStream(streamId);
140
+ if (!stream) {
141
+ LOG.debug("streaming:hls", "Attempted to update video playlist for unknown stream %s.", streamId);
142
+ return;
143
+ }
144
+ stream.hls.videoPlaylist = content;
145
+ }
146
+ /**
147
+ * Gets the current video variant playlist for a stream with separate audio renditions.
148
+ * @param streamId - The numeric stream ID.
149
+ * @returns The video playlist content, or undefined if not found.
150
+ */
151
+ export function getVideoPlaylist(streamId) {
152
+ // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing -- intentional: convert empty string to undefined.
153
+ return getStream(streamId)?.hls.videoPlaylist || undefined;
154
+ }
69
155
  // Init Segment Management.
70
156
  /**
71
157
  * Stores the fMP4 initialization segment for a stream. The init segment contains codec configuration and is sent once at stream start. Unlike media segments, it is
@@ -113,11 +199,20 @@ export function updatePlaylist(streamId, content) {
113
199
  LOG.debug("streaming:hls", "Attempted to update playlist for unknown stream %s.", streamId);
114
200
  return;
115
201
  }
116
- const isFirstPlaylist = stream.hls.playlist === "";
202
+ const isFirstRealPlaylist = !stream.hls.hasRealPlaylist;
117
203
  stream.hls.playlist = content;
118
- if (isFirstPlaylist) {
204
+ if (isFirstRealPlaylist) {
205
+ stream.hls.hasRealPlaylist = true;
119
206
  stream.hls.signalPlaylistReady();
207
+ // Cancel the deferred preroll timer now that real content is available. The timer may still be running for native streams where browser setup completed quickly
208
+ // but the proxy's first poll cycle took longer than the preroll delay (PREROLL_DELAY_MS). Without this, the timer would fire after real content is already
209
+ // flowing, uselessly seeding preroll state. For streams where the timer already fired (preroll is active), this is a no-op — the timer handle is already null.
210
+ if (stream.hls.prerollTimer) {
211
+ clearTimeout(stream.hls.prerollTimer);
212
+ stream.hls.prerollTimer = null;
213
+ }
120
214
  const elapsed = ((Date.now() - stream.startTime.getTime()) / 1000).toFixed(3);
215
+ LOG.debug("streaming:preroll", "Live playlist ready for stream %d.", streamId);
121
216
  LOG.debug("timing:startup", "First playlist ready in %ss.", elapsed);
122
217
  }
123
218
  }
@@ -161,10 +256,16 @@ async function waitForReady(streamId, getPromise, timeout) {
161
256
  if (!stream) {
162
257
  return false;
163
258
  }
259
+ let timer;
164
260
  const timeoutPromise = new Promise((resolve) => {
165
- setTimeout(() => { resolve(false); }, timeout);
261
+ timer = setTimeout(() => { resolve(false); }, timeout);
166
262
  });
167
263
  const readyPromise = getPromise(stream).then(() => true);
168
- return Promise.race([readyPromise, timeoutPromise]);
264
+ const result = await Promise.race([readyPromise, timeoutPromise]);
265
+ // Clear the timeout timer to prevent an orphaned timer from firing after the result is already determined. No-op if the timeout already fired.
266
+ if (timer) {
267
+ clearTimeout(timer);
268
+ }
269
+ return result;
169
270
  }
170
271
  //# sourceMappingURL=hlsSegments.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hlsSegments.js","sourceRoot":"","sources":["../../src/streaming/hlsSegments.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hlsSegments.js","sourceRoot":"","sources":["../../src/streaming/hlsSegments.ts"],"names":[],"mappings":"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"}
@@ -108,11 +108,24 @@ export function terminateStream(streamId, channelName, reason) {
108
108
  }
109
109
  unregisterAbortController(streamInfo.streamIdStr);
110
110
  }
111
+ // Cancel the deferred preroll timer if it hasn't fired yet. Without this, a pending stream terminated during setup (idle timeout, capacity reclaim, browser
112
+ // disconnect) would leave an orphaned timer that writes to the now-unregistered HLS state.
113
+ if (streamInfo?.hls.prerollTimer) {
114
+ clearTimeout(streamInfo.hls.prerollTimer);
115
+ streamInfo.hls.prerollTimer = null;
116
+ }
111
117
  // Destroy the raw capture stream BEFORE killing FFmpeg or closing the page. This triggers puppeteer-stream's close handler while the browser is still connected,
112
118
  // ensuring STOP_RECORDING is called and chrome.tabCapture releases the capture. Without this, subsequent getStream() calls may hang with "active stream" errors.
113
119
  if (streamInfo) {
114
120
  destroyCaptureStream(streamInfo.rawCaptureStream);
115
121
  }
122
+ // Capture native proxy statistics before stopping. The stats are closure-scoped counters that remain valid after stop(), but reading them before stop() makes the
123
+ // data flow explicit and avoids relying on implementation details.
124
+ const nativeProxyStats = streamInfo?.nativeProxy?.getStats();
125
+ // Stop the native proxy if running. This stops the manifest polling loop and cleans up timers.
126
+ if (streamInfo?.nativeProxy) {
127
+ streamInfo.nativeProxy.stop();
128
+ }
116
129
  // Kill the FFmpeg process if using FFmpeg mode. This sets FFmpeg's internal shuttingDown flag, so when the segmenter stops (which closes the capture stream and
117
130
  // FFmpeg's stdin), FFmpeg won't report spurious errors about truncated input. The order matters: kill() must be called before segmenter.stop() to set the flag
118
131
  // before stdin closes.
@@ -140,8 +153,9 @@ export function terminateStream(streamId, channelName, reason) {
140
153
  if (streamInfo.stopMonitor) {
141
154
  recoveryMetrics = streamInfo.stopMonitor();
142
155
  }
143
- // Close the browser page. Skip during graceful shutdown since closeBrowser() will close all pages and we'd get spurious "Target closed" errors.
144
- if (!isGracefulShutdown() && !streamInfo.page.isClosed()) {
156
+ // Close the browser page. Skip during graceful shutdown since closeBrowser() will close all pages and we'd get spurious "Target closed" errors. The page may be
157
+ // null for pending stream entries that were registered but whose async setup has not yet completed (or failed before creating a page).
158
+ if (streamInfo.page && !isGracefulShutdown() && !streamInfo.page.isClosed()) {
145
159
  streamInfo.page.close().catch((error) => {
146
160
  LOG.debug("streaming:hls", "Error closing page for stream %s: %s.", streamId, formatError(error));
147
161
  });
@@ -181,6 +195,10 @@ export function terminateStream(streamId, channelName, reason) {
181
195
  else {
182
196
  streamLog.info("Stream ended after %s%s.", formatDuration(durationMs), reasonSuffix);
183
197
  }
198
+ // Log native proxy statistics at debug level when in native mode. This provides segment delivery and token refresh metrics.
199
+ if (nativeProxyStats) {
200
+ streamLog.debug("native:proxy", "Native proxy stopped for %s. Segments served: %s, fetch errors: %s, token refreshes: %s.", channelName, nativeProxyStats.segmentsFetched, nativeProxyStats.fetchErrors, nativeProxyStats.tokenRefreshes);
201
+ }
184
202
  // Log session-level segmenter statistics at debug level. This provides A-V sync, tab replacement, and data integrity metrics for diagnosing timestamp issues.
185
203
  if (sessionStats) {
186
204
  const sessionSummary = formatSessionStatsSummary(sessionStats, segmentCount);
@@ -1 +1 @@
1
- {"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../src/streaming/lifecycle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../src/streaming/lifecycle.ts"],"names":[],"mappings":"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"}
@@ -32,6 +32,7 @@ export interface MonitorStreamInfo {
32
32
  channelName: Nullable<string>;
33
33
  numericStreamId: number;
34
34
  providerName: string;
35
+ providerTag?: string;
35
36
  startTime: Date;
36
37
  }
37
38
  export declare function monitorPlaybackHealth(page: Page, context: Frame | Page, profile: ResolvedSiteProfile, url: string, streamId: string, streamInfo: MonitorStreamInfo, onCircuitBreak: () => void, onTabReplacement?: () => Promise<Nullable<TabReplacementResult>>): () => RecoveryMetrics;