prismcast 1.2.0 → 1.3.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 (129) hide show
  1. package/README.md +26 -1
  2. package/dist/app.js +29 -2
  3. package/dist/app.js.map +1 -1
  4. package/dist/browser/cdp.js +1 -1
  5. package/dist/browser/cdp.js.map +1 -1
  6. package/dist/browser/channelSelection.d.ts +14 -4
  7. package/dist/browser/channelSelection.js +48 -704
  8. package/dist/browser/channelSelection.js.map +1 -1
  9. package/dist/browser/index.d.ts +18 -4
  10. package/dist/browser/index.js +205 -39
  11. package/dist/browser/index.js.map +1 -1
  12. package/dist/browser/tuning/fox.d.ts +19 -0
  13. package/dist/browser/tuning/fox.js +61 -0
  14. package/dist/browser/tuning/fox.js.map +1 -0
  15. package/dist/browser/tuning/hbo.d.ts +22 -0
  16. package/dist/browser/tuning/hbo.js +182 -0
  17. package/dist/browser/tuning/hbo.js.map +1 -0
  18. package/dist/browser/tuning/hulu.d.ts +30 -0
  19. package/dist/browser/tuning/hulu.js +514 -0
  20. package/dist/browser/tuning/hulu.js.map +1 -0
  21. package/dist/browser/tuning/sling.d.ts +22 -0
  22. package/dist/browser/tuning/sling.js +287 -0
  23. package/dist/browser/tuning/sling.js.map +1 -0
  24. package/dist/browser/tuning/thumbnailRow.d.ts +18 -0
  25. package/dist/browser/tuning/thumbnailRow.js +107 -0
  26. package/dist/browser/tuning/thumbnailRow.js.map +1 -0
  27. package/dist/browser/tuning/tileClick.d.ts +18 -0
  28. package/dist/browser/tuning/tileClick.js +102 -0
  29. package/dist/browser/tuning/tileClick.js.map +1 -0
  30. package/dist/browser/tuning/youtubeTv.d.ts +17 -0
  31. package/dist/browser/tuning/youtubeTv.js +99 -0
  32. package/dist/browser/tuning/youtubeTv.js.map +1 -0
  33. package/dist/browser/video.d.ts +2 -2
  34. package/dist/browser/video.js +18 -8
  35. package/dist/browser/video.js.map +1 -1
  36. package/dist/channels/index.js +131 -12
  37. package/dist/channels/index.js.map +1 -1
  38. package/dist/config/profiles.d.ts +5 -5
  39. package/dist/config/profiles.js +35 -11
  40. package/dist/config/profiles.js.map +1 -1
  41. package/dist/config/providers.d.ts +48 -4
  42. package/dist/config/providers.js +182 -22
  43. package/dist/config/providers.js.map +1 -1
  44. package/dist/config/sites.d.ts +10 -0
  45. package/dist/config/sites.js +96 -17
  46. package/dist/config/sites.js.map +1 -1
  47. package/dist/config/userChannels.js +21 -3
  48. package/dist/config/userChannels.js.map +1 -1
  49. package/dist/config/userConfig.d.ts +2 -1
  50. package/dist/config/userConfig.js +12 -4
  51. package/dist/config/userConfig.js.map +1 -1
  52. package/dist/index.js +10 -4
  53. package/dist/index.js.map +1 -1
  54. package/dist/routes/auth.js +6 -0
  55. package/dist/routes/auth.js.map +1 -1
  56. package/dist/routes/config.d.ts +5 -0
  57. package/dist/routes/config.js +273 -35
  58. package/dist/routes/config.js.map +1 -1
  59. package/dist/routes/debug.d.ts +6 -0
  60. package/dist/routes/debug.js +274 -0
  61. package/dist/routes/debug.js.map +1 -0
  62. package/dist/routes/index.d.ts +1 -0
  63. package/dist/routes/index.js +3 -0
  64. package/dist/routes/index.js.map +1 -1
  65. package/dist/routes/logs.js +17 -5
  66. package/dist/routes/logs.js.map +1 -1
  67. package/dist/routes/root.js +507 -128
  68. package/dist/routes/root.js.map +1 -1
  69. package/dist/routes/theme.js +7 -0
  70. package/dist/routes/theme.js.map +1 -1
  71. package/dist/service/commands.js +8 -8
  72. package/dist/service/commands.js.map +1 -1
  73. package/dist/service/generators.js +22 -16
  74. package/dist/service/generators.js.map +1 -1
  75. package/dist/streaming/fmp4Segmenter.d.ts +7 -0
  76. package/dist/streaming/fmp4Segmenter.js +124 -15
  77. package/dist/streaming/fmp4Segmenter.js.map +1 -1
  78. package/dist/streaming/hls.d.ts +74 -6
  79. package/dist/streaming/hls.js +212 -130
  80. package/dist/streaming/hls.js.map +1 -1
  81. package/dist/streaming/hlsSegments.js +11 -4
  82. package/dist/streaming/hlsSegments.js.map +1 -1
  83. package/dist/streaming/lifecycle.js +1 -1
  84. package/dist/streaming/lifecycle.js.map +1 -1
  85. package/dist/streaming/monitor.d.ts +1 -1
  86. package/dist/streaming/monitor.js +202 -53
  87. package/dist/streaming/monitor.js.map +1 -1
  88. package/dist/streaming/mp4Parser.d.ts +29 -1
  89. package/dist/streaming/mp4Parser.js +243 -18
  90. package/dist/streaming/mp4Parser.js.map +1 -1
  91. package/dist/streaming/mpegts.d.ts +5 -2
  92. package/dist/streaming/mpegts.js +122 -29
  93. package/dist/streaming/mpegts.js.map +1 -1
  94. package/dist/streaming/registry.d.ts +1 -1
  95. package/dist/streaming/registry.js.map +1 -1
  96. package/dist/streaming/setup.d.ts +13 -1
  97. package/dist/streaming/setup.js +136 -36
  98. package/dist/streaming/setup.js.map +1 -1
  99. package/dist/streaming/showInfo.js +9 -9
  100. package/dist/streaming/showInfo.js.map +1 -1
  101. package/dist/streaming/statusEmitter.js +5 -6
  102. package/dist/streaming/statusEmitter.js.map +1 -1
  103. package/dist/types/index.d.ts +16 -3
  104. package/dist/types/index.js +5 -1
  105. package/dist/types/index.js.map +1 -1
  106. package/dist/utils/debugFilter.d.ts +38 -0
  107. package/dist/utils/debugFilter.js +157 -0
  108. package/dist/utils/debugFilter.js.map +1 -0
  109. package/dist/utils/evaluate.js.map +1 -1
  110. package/dist/utils/ffmpeg.d.ts +5 -0
  111. package/dist/utils/ffmpeg.js +13 -2
  112. package/dist/utils/ffmpeg.js.map +1 -1
  113. package/dist/utils/fileLogger.d.ts +2 -1
  114. package/dist/utils/fileLogger.js +4 -2
  115. package/dist/utils/fileLogger.js.map +1 -1
  116. package/dist/utils/index.d.ts +1 -0
  117. package/dist/utils/index.js +1 -0
  118. package/dist/utils/index.js.map +1 -1
  119. package/dist/utils/logEmitter.d.ts +1 -0
  120. package/dist/utils/logEmitter.js.map +1 -1
  121. package/dist/utils/logger.d.ts +9 -8
  122. package/dist/utils/logger.js +52 -28
  123. package/dist/utils/logger.js.map +1 -1
  124. package/dist/utils/retry.d.ts +1 -1
  125. package/dist/utils/retry.js +3 -3
  126. package/dist/utils/retry.js.map +1 -1
  127. package/dist/utils/version.js +4 -9
  128. package/dist/utils/version.js.map +1 -1
  129. package/package.json +6 -6
@@ -1 +1 @@
1
- {"version":3,"file":"mpegts.js","sourceRoot":"","sources":["../../src/streaming/mpegts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mpegts.js","sourceRoot":"","sources":["../../src/streaming/mpegts.ts"],"names":[],"mappings":"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"}
@@ -116,4 +116,4 @@ export declare function getTotalSegmentMemory(): number;
116
116
  * @param entry - The stream registry entry to query.
117
117
  * @returns Segment size in bytes, or null if no segmenter exists.
118
118
  */
119
- export declare function getLastSegmentSize(entry: StreamRegistryEntry): number | null;
119
+ export declare function getLastSegmentSize(entry: StreamRegistryEntry): Nullable<number>;
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/streaming/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/streaming/registry.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ import type { Readable } from "node:stream";
7
7
  * Factory function type for creating tab replacement handlers. Called by setupStream after generating stream IDs and resolving the profile, allowing the caller to
8
8
  * create a handler with access to all necessary context.
9
9
  */
10
- export type TabReplacementHandlerFactory = (numericStreamId: number, streamId: string, profile: ResolvedSiteProfile, metadataComment: string | undefined) => () => Promise<TabReplacementResult | null>;
10
+ export type TabReplacementHandlerFactory = (numericStreamId: number, streamId: string, profile: ResolvedSiteProfile, metadataComment: string | undefined) => () => Promise<Nullable<TabReplacementResult>>;
11
11
  /**
12
12
  * Options for setting up a stream.
13
13
  */
@@ -58,6 +58,7 @@ export interface CreatePageWithCaptureOptions {
58
58
  profile: ResolvedSiteProfile;
59
59
  streamId: string;
60
60
  url: string;
61
+ _pageClosedRetries?: number;
61
62
  }
62
63
  /**
63
64
  * Result from creating a page with capture. Contains everything needed to create a segmenter and continue with stream setup.
@@ -117,3 +118,14 @@ export declare function createPageWithCapture(options: CreatePageWithCaptureOpti
117
118
  * @throws StreamSetupError if setup fails with appropriate status code and message.
118
119
  */
119
120
  export declare function setupStream(options: StreamSetupOptions, onCircuitBreak: () => void): Promise<StreamSetupResult>;
121
+ /**
122
+ * Verifies that Chrome's capture system is functional before the server starts accepting requests. This detects stale tabCapture state left over from a previous
123
+ * Chrome process — common during quick service restarts where the old process hasn't fully exited before the new one launches. Without this probe, the first stream
124
+ * request would trigger the runtime stale capture handler, which exits the process because the puppeteer-stream mutex is permanently leaked.
125
+ *
126
+ * The probe creates a temporary page, attempts a short capture, and tears down both cleanly. A 500ms delay after destroying the capture stream allows
127
+ * puppeteer-stream's fire-and-forget STOP_RECORDING chain to complete before closing the page, preventing the stale capture cascade on the first real request.
128
+ *
129
+ * If stale capture state is detected, the process exits immediately — Chrome restart cannot fix the leaked mutex, only a fresh process can.
130
+ */
131
+ export declare function verifyCaptureSystem(): Promise<void>;
@@ -1,5 +1,5 @@
1
- import { LOG, delay, extractDomain, formatError, registerAbortController, retryOperation, runWithStreamContext, spawnFFmpeg } from "../utils/index.js";
2
- import { closeBrowser, getCurrentBrowser, getStream, minimizeBrowserWindow, registerManagedPage, unregisterManagedPage } from "../browser/index.js";
1
+ import { LOG, delay, extractDomain, formatError, registerAbortController, retryOperation, runWithStreamContext, spawnFFmpeg, startTimer } from "../utils/index.js";
2
+ import { getCurrentBrowser, getStream, minimizeBrowserWindow, registerManagedPage, unregisterManagedPage } from "../browser/index.js";
3
3
  import { getNextStreamId, getStreamCount } from "./registry.js";
4
4
  import { getProfileForChannel, getProfileForUrl, getProfiles, resolveProfile } from "../config/profiles.js";
5
5
  import { initializePlayback, navigateToPage } from "../browser/video.js";
@@ -41,10 +41,9 @@ const WEBM_FFMPEG_MIME_TYPE = "video/webm;codecs=h264,opus";
41
41
  // tab with an active stream." We serialize capture initialization using a promise chain so requests execute sequentially. Once a capture is established, it runs
42
42
  // concurrently with other captures without issue.
43
43
  let captureQueue = Promise.resolve();
44
- // Stale capture recovery. Chrome's tabCapture can retain stale state after a crash, causing "Cannot capture a tab with an active stream" errors on fresh launches.
45
- // When detected, we restart Chrome entirely to clear the state. Limited to 3 attempts per server lifetime to prevent infinite loops.
46
- const MAX_STALE_CAPTURE_RECOVERY_ATTEMPTS = 3;
47
- let staleCaptureRecoveryAttempts = 0;
44
+ // Maximum number of times createPageWithCapture() will retry when it detects that the page was closed while waiting in the capture queue (e.g., due to a browser
45
+ // crash). An explicit guard prevents unbounded recursion.
46
+ const MAX_PAGE_CLOSED_RETRIES = 3;
48
47
  /**
49
48
  * Error thrown when stream setup fails. Includes HTTP status code and user-friendly message for the response.
50
49
  */
@@ -144,6 +143,7 @@ export function validateStreamUrl(url) {
144
143
  * @throws Error if page creation, capture initialization, or navigation fails.
145
144
  */
146
145
  export async function createPageWithCapture(options) {
146
+ const captureElapsed = startTimer();
147
147
  const { comment, onFFmpegError, profile, streamId, url } = options;
148
148
  // Create browser page.
149
149
  const browser = await getCurrentBrowser();
@@ -158,6 +158,16 @@ export async function createPageWithCapture(options) {
158
158
  let outputStream;
159
159
  let rawCaptureStream = null;
160
160
  let ffmpegProcess = null;
161
+ // Capture queue release function, hoisted here so both the try and catch blocks can access it. Initialized in the try block when the queue entry is created.
162
+ // The once-guard prevents double-releasing from multiple code paths (success handler, catch block, timeout).
163
+ let captureQueueReleased = false;
164
+ let releaseCaptureQueue = () => { };
165
+ const releaseCaptureOnce = () => {
166
+ if (!captureQueueReleased) {
167
+ captureQueueReleased = true;
168
+ releaseCaptureQueue();
169
+ }
170
+ };
161
171
  // Initialize media stream capture.
162
172
  try {
163
173
  const streamOptions = {
@@ -171,17 +181,15 @@ export async function createPageWithCapture(options) {
171
181
  maxFrameRate: 60,
172
182
  maxHeight: getEffectiveViewport(CONFIG).height,
173
183
  maxWidth: getEffectiveViewport(CONFIG).width,
174
- minFrameRate: CONFIG.streaming.frameRate,
184
+ minFrameRate: Math.max(30, Math.min(60, CONFIG.streaming.frameRate)),
175
185
  minHeight: getEffectiveViewport(CONFIG).height,
176
186
  minWidth: getEffectiveViewport(CONFIG).width
177
187
  }
178
188
  }
179
189
  };
180
190
  // Serialize capture initialization. Wait for any previous capture to finish before calling getStream(), because Chrome's tabCapture extension rejects
181
- // concurrent initialization attempts. The lock is released when getStream() resolves or rejects (not when our timeout fires), because Chrome's extension state
182
- // is what matters. If our timeout fires while getStream() is still in-flight, the catch block closes the page, which causes the pending getStream() to reject,
183
- // which releases the lock and allows the next queued capture to proceed.
184
- let releaseCaptureQueue = () => { };
191
+ // concurrent initialization attempts. On success, the lock is released immediately so the next caller can proceed. On failure, the lock is held until the
192
+ // catch block decides what to do the catch block releases the lock after handling the error.
185
193
  const previousCapture = captureQueue;
186
194
  captureQueue = new Promise((resolve) => {
187
195
  releaseCaptureQueue = resolve;
@@ -200,12 +208,24 @@ export async function createPageWithCapture(options) {
200
208
  }
201
209
  catch (error) {
202
210
  // Release our queue position so subsequent captures aren't blocked by our failure.
203
- releaseCaptureQueue();
211
+ releaseCaptureOnce();
204
212
  throw error;
205
213
  }
214
+ // After the queue wait, verify our page is still connected. If Chrome crashed while we were waiting, our page is dead and we need to start over with a
215
+ // fresh page on the new browser. Release our queue position first so subsequent callers aren't blocked.
216
+ if (page.isClosed()) {
217
+ releaseCaptureOnce();
218
+ unregisterManagedPage(page);
219
+ const retryCount = options._pageClosedRetries ?? 0;
220
+ if (retryCount >= MAX_PAGE_CLOSED_RETRIES) {
221
+ throw new Error("Browser crashed too many times during capture initialization.");
222
+ }
223
+ return await createPageWithCapture({ ...options, _pageClosedRetries: retryCount + 1 });
224
+ }
206
225
  const streamPromise = getStream(page, streamOptions);
207
- // Release the queue when getStream() completes, regardless of success or failure. This is independent of our application timeout below.
208
- void streamPromise.then(() => releaseCaptureQueue(), () => releaseCaptureQueue());
226
+ // Release the queue on success only. On failure, the catch block handles the release. The rejection handler is a no-op to suppress unhandled rejection
227
+ // warnings; the actual error handling happens in the catch block below.
228
+ void streamPromise.then(() => { releaseCaptureOnce(); }, () => { });
209
229
  const timeoutPromise = new Promise((_, reject) => {
210
230
  setTimeout(() => {
211
231
  reject(new Error("Stream initialization timed out."));
@@ -227,7 +247,7 @@ export async function createPageWithCapture(options) {
227
247
  ffmpeg.stdout.on("error", (error) => {
228
248
  const errorMessage = formatError(error);
229
249
  if (errorMessage.includes("EPIPE")) {
230
- LOG.debug("FFmpeg stdout pipe closed: %s.", errorMessage);
250
+ LOG.debug("streaming:ffmpeg", "FFmpeg stdout pipe closed: %s.", errorMessage);
231
251
  }
232
252
  else {
233
253
  LOG.error("FFmpeg stdout pipe error: %s.", errorMessage);
@@ -249,7 +269,7 @@ export async function createPageWithCapture(options) {
249
269
  LOG.error("Capture pipeline error: %s.", errorMessage);
250
270
  ffmpeg.kill();
251
271
  if (onFFmpegError) {
252
- onFFmpegError(error);
272
+ onFFmpegError(error instanceof Error ? error : new Error(String(error)));
253
273
  }
254
274
  });
255
275
  // Use FFmpeg's stdout (fMP4 output) as the output stream for segmentation.
@@ -269,27 +289,25 @@ export async function createPageWithCapture(options) {
269
289
  if (!page.isClosed()) {
270
290
  page.close().catch(() => { });
271
291
  }
272
- // Check for stale capture state error. This occurs after a crash when Chrome's tabCapture retains state from the previous process. Restarting Chrome clears
273
- // the stale state. We limit recovery attempts to prevent infinite loops if the issue persists.
274
292
  const errorMessage = formatError(error);
275
- if (errorMessage.includes("Cannot capture a tab with an active stream") && (staleCaptureRecoveryAttempts < MAX_STALE_CAPTURE_RECOVERY_ATTEMPTS)) {
276
- staleCaptureRecoveryAttempts++;
277
- LOG.warn("Stale capture state detected (attempt %d/%d). Restarting Chrome to clear state.", staleCaptureRecoveryAttempts, MAX_STALE_CAPTURE_RECOVERY_ATTEMPTS);
278
- // Kill Chrome entirely to clear all tabCapture state.
279
- await closeBrowser();
280
- // Wait for Chrome to fully exit before relaunching.
281
- await delay(1500);
282
- // Relaunch Chrome. getCurrentBrowser() creates a fresh instance since closeBrowser() cleared the reference.
283
- await getCurrentBrowser();
284
- // Retry the capture with a fresh browser.
285
- return createPageWithCapture(options);
293
+ // Stale capture state is unrecoverable. The "Cannot capture a tab with an active stream" error occurs inside puppeteer-stream's second lock section, which
294
+ // has no try/finally. The internal mutex is permanently leaked — all subsequent getStream() calls will hang on it. Chrome restart cannot fix module-level
295
+ // state, so the only recourse is a full process restart. Release the capture queue so other callers aren't left hanging, then exit.
296
+ if (errorMessage.includes("Cannot capture a tab with an active stream")) {
297
+ LOG.error("Stale capture state detected. puppeteer-stream's internal capture mutex is now permanently locked. The capture system is unrecoverable. " +
298
+ "Exiting so the service manager can restart with a clean module state.");
299
+ releaseCaptureOnce();
300
+ setTimeout(() => process.exit(1), 100);
301
+ throw error;
286
302
  }
303
+ // For non-stale errors, release the capture queue so subsequent callers can proceed.
304
+ releaseCaptureOnce();
287
305
  throw error;
288
306
  }
289
307
  // Navigate and set up playback. For noVideo profiles, just navigate without video setup.
290
308
  let context;
291
309
  try {
292
- if (profile.noVideo === false) {
310
+ if (!profile.noVideo) {
293
311
  // Phase 1: Navigate to the page with retry. The 10-second navigationTimeout is appropriate for page loads, and retryOperation correctly reloads the page on
294
312
  // genuine navigation failures. Navigation is wrapped in retryOperation separately from channel selection so the timeout does not race with the internal click
295
313
  // retry loops in channel selection strategies (guideGrid can take 15-20 seconds for binary search + click retries).
@@ -297,9 +315,10 @@ export async function createPageWithCapture(options) {
297
315
  await navigateToPage(page, url, profile);
298
316
  }, CONFIG.streaming.maxNavigationRetries, CONFIG.streaming.navigationTimeout, "page navigation for " + url, undefined, () => page.isClosed());
299
317
  // Phase 2: Channel selection + video setup. Runs after navigation succeeds with no outer timeout racing against internal click retries. Each sub-step
300
- // (selectChannel, waitForVideoReady, etc.) has its own internal timeout via videoTimeout and click retry constants. A 30-second safety-net timeout prevents
301
- // pathological hangs if multiple internal timeouts chain sequentially.
302
- const PLAYBACK_INIT_TIMEOUT = 30000;
318
+ // (selectChannel, waitForVideoReady, etc.) has its own internal timeout via videoTimeout and click retry constants. For guideGrid strategies, a channel
319
+ // selection failure triggers an overlay dismiss and retry, which doubles the channel selection time budget. The 45-second safety-net timeout accommodates
320
+ // this retry while still preventing pathological hangs if multiple internal timeouts chain sequentially.
321
+ const PLAYBACK_INIT_TIMEOUT = 45000;
303
322
  const tuneResult = await Promise.race([
304
323
  initializePlayback(page, profile),
305
324
  new Promise((_, reject) => {
@@ -327,10 +346,14 @@ export async function createPageWithCapture(options) {
327
346
  if (!page.isClosed()) {
328
347
  page.close().catch(() => { });
329
348
  }
349
+ // Re-minimize the browser window. Navigation may have un-minimized it (new tab activation on macOS), and without this the window stays visible after the
350
+ // failed attempt. Fire-and-forget since we're about to throw.
351
+ minimizeBrowserWindow().catch(() => { });
330
352
  throw error;
331
353
  }
332
354
  // Resize and minimize window.
333
355
  await resizeAndMinimizeWindow(page, !profile.noVideo);
356
+ LOG.debug("timing:startup", "Page with capture ready. Total: %sms.", captureElapsed());
334
357
  return {
335
358
  captureStream: outputStream,
336
359
  context,
@@ -392,7 +415,7 @@ export async function setupStream(options, onCircuitBreak) {
392
415
  const redirectResult = getProfileForUrl(resolvedUrl);
393
416
  if (redirectResult.profileName !== "default") {
394
417
  profileResult = redirectResult;
395
- LOG.info("Resolved redirect for profile detection: %s → %s (%s).", urlToResolve, resolvedUrl, redirectResult.profileName);
418
+ LOG.debug("streaming:setup", "Resolved redirect for profile detection: %s → %s (%s).", urlToResolve, resolvedUrl, redirectResult.profileName);
396
419
  }
397
420
  }
398
421
  }
@@ -407,7 +430,7 @@ export async function setupStream(options, onCircuitBreak) {
407
430
  if (validProfiles.includes(profileOverride)) {
408
431
  profile = resolveProfile(profileOverride);
409
432
  profileName = profileOverride;
410
- LOG.info("Profile overridden to '%s' via query parameter.", profileOverride);
433
+ LOG.debug("streaming:setup", "Profile overridden to '%s' via query parameter.", profileOverride);
411
434
  }
412
435
  else {
413
436
  LOG.warn("Unknown profile override '%s', using resolved profile.", profileOverride);
@@ -501,7 +524,7 @@ export async function setupStream(options, onCircuitBreak) {
501
524
  // Close the browser page (fire-and-forget to avoid blocking on stuck pages).
502
525
  if (!page.isClosed()) {
503
526
  page.close().catch((error) => {
504
- LOG.warn("Page close error during cleanup: %s.", formatError(error));
527
+ LOG.debug("streaming:setup", "Page close error during cleanup: %s.", formatError(error));
505
528
  });
506
529
  }
507
530
  // Re-minimize the browser window.
@@ -526,4 +549,81 @@ export async function setupStream(options, onCircuitBreak) {
526
549
  };
527
550
  });
528
551
  }
552
+ // Startup Capture Verification.
553
+ /**
554
+ * Verifies that Chrome's capture system is functional before the server starts accepting requests. This detects stale tabCapture state left over from a previous
555
+ * Chrome process — common during quick service restarts where the old process hasn't fully exited before the new one launches. Without this probe, the first stream
556
+ * request would trigger the runtime stale capture handler, which exits the process because the puppeteer-stream mutex is permanently leaked.
557
+ *
558
+ * The probe creates a temporary page, attempts a short capture, and tears down both cleanly. A 500ms delay after destroying the capture stream allows
559
+ * puppeteer-stream's fire-and-forget STOP_RECORDING chain to complete before closing the page, preventing the stale capture cascade on the first real request.
560
+ *
561
+ * If stale capture state is detected, the process exits immediately — Chrome restart cannot fix the leaked mutex, only a fresh process can.
562
+ */
563
+ export async function verifyCaptureSystem() {
564
+ const PROBE_TIMEOUT = 5000;
565
+ const browser = await getCurrentBrowser();
566
+ const page = await browser.newPage();
567
+ registerManagedPage(page);
568
+ try {
569
+ // Use the same capture MIME type and viewport constraints as the runtime. The stale state error occurs at the tabCapture API level before encoding matters,
570
+ // but matching the runtime configuration ensures the probe exercises the exact same getStream() parameters.
571
+ const useFFmpeg = CONFIG.streaming.captureMode === "ffmpeg";
572
+ const captureMimeType = useFFmpeg ? WEBM_FFMPEG_MIME_TYPE : NATIVE_FMP4_MIME_TYPE;
573
+ const streamOptions = {
574
+ audio: true,
575
+ mimeType: captureMimeType,
576
+ video: true,
577
+ videoConstraints: {
578
+ mandatory: {
579
+ maxFrameRate: 30,
580
+ maxHeight: getEffectiveViewport(CONFIG).height,
581
+ maxWidth: getEffectiveViewport(CONFIG).width,
582
+ minFrameRate: 30,
583
+ minHeight: getEffectiveViewport(CONFIG).height,
584
+ minWidth: getEffectiveViewport(CONFIG).width
585
+ }
586
+ }
587
+ };
588
+ const stream = await Promise.race([
589
+ getStream(page, streamOptions),
590
+ new Promise((_, reject) => {
591
+ setTimeout(() => {
592
+ reject(new Error("Capture probe timed out."));
593
+ }, PROBE_TIMEOUT);
594
+ })
595
+ ]);
596
+ // Capture succeeded — the system is functional. Destroy the stream before closing the page to ensure chrome.tabCapture releases the capture cleanly.
597
+ const readable = stream;
598
+ readable.destroy();
599
+ // Wait for puppeteer-stream's capture cleanup chain to complete. readable.destroy() triggers STOP_RECORDING via the close handler, but the call is
600
+ // fire-and-forget. The async chain (STOP_RECORDING → recorder.stop() → onstop → track.stop()) must finish before closing the page, or Chrome's tabCapture
601
+ // state may linger and cause "Cannot capture a tab with an active stream" errors on the first real stream request.
602
+ await delay(500);
603
+ unregisterManagedPage(page);
604
+ if (!page.isClosed()) {
605
+ await page.close();
606
+ }
607
+ LOG.info("Capture system verified successfully.");
608
+ }
609
+ catch (error) {
610
+ const errorMessage = formatError(error);
611
+ // Clean up the test page.
612
+ unregisterManagedPage(page);
613
+ if (!page.isClosed()) {
614
+ page.close().catch(() => { });
615
+ }
616
+ // Stale capture state is unrecoverable. The error occurs inside puppeteer-stream's second lock section, which has no try/finally — the internal mutex is
617
+ // permanently leaked. All subsequent getStream() calls will hang on it. Chrome restart cannot fix module-level state, so exit and let the service manager
618
+ // restart with a clean process.
619
+ if (errorMessage.includes("Cannot capture a tab with an active stream")) {
620
+ LOG.error("Startup probe detected stale capture state. puppeteer-stream's internal capture mutex is now permanently locked. Exiting so the service " +
621
+ "manager can restart with a clean module state.");
622
+ process.exit(1);
623
+ }
624
+ // Non-stale error. Fail immediately — retrying without restarting Chrome won't change anything, and a non-stale getStream() failure at startup indicates a
625
+ // fundamental problem (extension not loaded, Chrome misconfigured, etc.).
626
+ throw new Error("Capture system verification failed: " + errorMessage);
627
+ }
628
+ }
529
629
  //# sourceMappingURL=setup.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/streaming/setup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/streaming/setup.ts"],"names":[],"mappings":"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"}
@@ -204,14 +204,14 @@ async function updateShowNamesForHost(host, hostStreams) {
204
204
  const previousName = showNameCache.get(stream.id);
205
205
  if (previousName !== showName) {
206
206
  showNameCache.set(stream.id, showName);
207
- LOG.debug("Show name for stream %d (%s): %s.", stream.id, stream.channelKey, showName);
207
+ LOG.debug("streaming:showinfo", "Show name for stream %d (%s): %s.", stream.id, stream.channelKey, showName);
208
208
  }
209
209
  }
210
210
  else {
211
211
  // No matching recording or guide entry found - clear any stale show name.
212
212
  if (showNameCache.has(stream.id)) {
213
213
  showNameCache.delete(stream.id);
214
- LOG.debug("Cleared show name for stream %d (%s): no matching program.", stream.id, stream.channelKey);
214
+ LOG.debug("streaming:showinfo", "Cleared show name for stream %d (%s): no matching program.", stream.id, stream.channelKey);
215
215
  }
216
216
  }
217
217
  }
@@ -248,7 +248,7 @@ async function getDeviceMappings(host) {
248
248
  // M3U sources in Channels DVR.
249
249
  const deviceChannelIds = new Set(device.Channels.map((ch) => ch.ID));
250
250
  if (deviceChannelIds.size !== prismcastChannelKeys.size) {
251
- LOG.debug("Skipping M3U device %s: channel count mismatch (%d vs %d).", device.DeviceID, deviceChannelIds.size, prismcastChannelKeys.size);
251
+ LOG.debug("streaming:showinfo", "Skipping M3U device %s: channel count mismatch (%d vs %d).", device.DeviceID, deviceChannelIds.size, prismcastChannelKeys.size);
252
252
  continue;
253
253
  }
254
254
  let allMatch = true;
@@ -259,10 +259,10 @@ async function getDeviceMappings(host) {
259
259
  }
260
260
  }
261
261
  if (!allMatch) {
262
- LOG.debug("Skipping M3U device %s: channel IDs do not match PrismCast channels.", device.DeviceID);
262
+ LOG.debug("streaming:showinfo", "Skipping M3U device %s: channel IDs do not match PrismCast channels.", device.DeviceID);
263
263
  continue;
264
264
  }
265
- LOG.debug("Matched M3U device %s as PrismCast source (%d channels).", device.DeviceID, device.Channels.length);
265
+ LOG.debug("streaming:showinfo", "Matched M3U device %s as PrismCast source (%d channels).", device.DeviceID, device.Channels.length);
266
266
  // Build guide number → channel ID map for this device and cache logo URLs.
267
267
  const guideToChannelId = new Map();
268
268
  for (const channel of device.Channels) {
@@ -281,7 +281,7 @@ async function getDeviceMappings(host) {
281
281
  }
282
282
  // Cache the mappings and device IDs.
283
283
  deviceMappingsByHost.set(host, { deviceIds, lastRefresh: now, mappings });
284
- LOG.debug("Refreshed device mappings from %s: %d M3U device(s), %d channel(s).", host, mappings.size, totalChannels);
284
+ LOG.debug("streaming:showinfo", "Refreshed device mappings from %s: %d M3U device(s), %d channel(s).", host, mappings.size, totalChannels);
285
285
  return mappings;
286
286
  }
287
287
  /**
@@ -308,7 +308,7 @@ async function getGuideShowNames(host) {
308
308
  }
309
309
  }
310
310
  }
311
- LOG.debug("Fetched guide data from %s: %d channel(s) with current programs.", host, showNames.size);
311
+ LOG.debug("streaming:showinfo", "Fetched guide data from %s: %d channel(s) with current programs.", host, showNames.size);
312
312
  return showNames;
313
313
  }
314
314
  /**
@@ -321,7 +321,7 @@ async function fetchFromDvr(host, path) {
321
321
  const url = "http://" + host + ":" + String(CHANNELS_DVR_PORT) + path;
322
322
  try {
323
323
  const controller = new AbortController();
324
- const timeoutId = setTimeout(() => controller.abort(), API_TIMEOUT_MS);
324
+ const timeoutId = setTimeout(() => { controller.abort(); }, API_TIMEOUT_MS);
325
325
  const response = await fetch(url, {
326
326
  headers: { "Accept": "application/json" },
327
327
  signal: controller.signal
@@ -336,7 +336,7 @@ async function fetchFromDvr(host, path) {
336
336
  if (error instanceof Error) {
337
337
  // Don't log abort errors (timeouts) - they're expected for unreachable servers.
338
338
  if (error.name !== "AbortError") {
339
- LOG.debug("Failed to fetch %s from %s: %s.", path, host, formatError(error));
339
+ LOG.debug("streaming:showinfo", "Failed to fetch %s from %s: %s.", path, host, formatError(error));
340
340
  }
341
341
  }
342
342
  return [];
@@ -1 +1 @@
1
- {"version":3,"file":"showInfo.js","sourceRoot":"","sources":["../../src/streaming/showInfo.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"showInfo.js","sourceRoot":"","sources":["../../src/streaming/showInfo.ts"],"names":[],"mappings":"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"}
@@ -72,8 +72,7 @@ export function emitStreamHealthChanged(status) {
72
72
  */
73
73
  export function emitSystemStatusChanged(status) {
74
74
  // Only emit if something meaningful changed.
75
- if (!cachedSystemStatus ||
76
- (cachedSystemStatus.browser.connected !== status.browser.connected) ||
75
+ if ((cachedSystemStatus?.browser.connected !== status.browser.connected) ||
77
76
  (cachedSystemStatus.streams.active !== status.streams.active)) {
78
77
  cachedSystemStatus = status;
79
78
  statusEmitter.emit("systemStatusChanged", status);
@@ -122,10 +121,10 @@ export function removeStreamStatus(streamId) {
122
121
  * @returns A function to unsubscribe the callback.
123
122
  */
124
123
  export function subscribeToStatus(callback) {
125
- const streamAddedHandler = (data) => callback("streamAdded", data);
126
- const streamRemovedHandler = (data) => callback("streamRemoved", data);
127
- const streamHealthChangedHandler = (data) => callback("streamHealthChanged", data);
128
- const systemStatusChangedHandler = (data) => callback("systemStatusChanged", data);
124
+ const streamAddedHandler = (data) => { callback("streamAdded", data); };
125
+ const streamRemovedHandler = (data) => { callback("streamRemoved", data); };
126
+ const streamHealthChangedHandler = (data) => { callback("streamHealthChanged", data); };
127
+ const systemStatusChangedHandler = (data) => { callback("systemStatusChanged", data); };
129
128
  statusEmitter.on("streamAdded", streamAddedHandler);
130
129
  statusEmitter.on("streamRemoved", streamRemovedHandler);
131
130
  statusEmitter.on("streamHealthChanged", streamHealthChangedHandler);