homebridge-plugin-utils 1.34.0 → 2.0.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 (198) hide show
  1. package/README.md +130 -2
  2. package/build/eslint-plugin/README.md +164 -0
  3. package/build/eslint-plugin/config.mjs +308 -0
  4. package/build/eslint-plugin/index.mjs +7 -0
  5. package/build/eslint-plugin/plugin.mjs +46 -0
  6. package/build/eslint-plugin/rules/blank-line-after-open-brace.mjs +137 -0
  7. package/build/eslint-plugin/rules/blank-line-after-open-brace.test.mjs +112 -0
  8. package/build/eslint-plugin/rules/comment-style.mjs +190 -0
  9. package/build/eslint-plugin/rules/comment-style.test.mjs +190 -0
  10. package/build/eslint-plugin/rules/enforce-node-protocol.mjs +114 -0
  11. package/build/eslint-plugin/rules/enforce-node-protocol.test.mjs +116 -0
  12. package/build/eslint-plugin/rules/paren-comparisons-in-logical.mjs +94 -0
  13. package/build/eslint-plugin/rules/paren-comparisons-in-logical.test.mjs +107 -0
  14. package/build/eslint-plugin/rules/split-type-imports.mjs +354 -0
  15. package/build/eslint-plugin/rules/split-type-imports.test.mjs +268 -0
  16. package/build/eslint-plugin/test-setup.mjs +21 -0
  17. package/build/fs-ops.mjs +184 -0
  18. package/build/tsconfig.json +18 -3
  19. package/dist/backpressure.d.ts +128 -0
  20. package/dist/backpressure.js +273 -0
  21. package/dist/backpressure.js.map +1 -0
  22. package/dist/cli/index.d.ts +95 -0
  23. package/dist/cli/index.js +355 -0
  24. package/dist/cli/index.js.map +1 -0
  25. package/dist/clock-double.d.ts +93 -0
  26. package/dist/clock-double.js +141 -0
  27. package/dist/clock-double.js.map +1 -0
  28. package/dist/clock.d.ts +39 -0
  29. package/dist/clock.js +34 -0
  30. package/dist/clock.js.map +1 -0
  31. package/dist/eslint-plugin/config.d.mts +193 -0
  32. package/dist/eslint-plugin/index.d.mts +2 -0
  33. package/dist/eslint-plugin/plugin.d.mts +87 -0
  34. package/dist/eslint-plugin/rules/blank-line-after-open-brace.d.mts +19 -0
  35. package/dist/eslint-plugin/rules/comment-style.d.mts +15 -0
  36. package/dist/eslint-plugin/rules/enforce-node-protocol.d.mts +18 -0
  37. package/dist/eslint-plugin/rules/paren-comparisons-in-logical.d.mts +15 -0
  38. package/dist/eslint-plugin/rules/split-type-imports.d.mts +16 -0
  39. package/dist/featureOptions-docs.d.ts +96 -0
  40. package/dist/featureOptions-docs.js +193 -0
  41. package/dist/featureOptions-docs.js.map +1 -0
  42. package/dist/featureOptions.d.ts +674 -0
  43. package/dist/featureOptions.js +870 -0
  44. package/dist/featureOptions.js.map +1 -0
  45. package/dist/ffmpeg/codecs.d.ts +256 -72
  46. package/dist/ffmpeg/codecs.js +477 -257
  47. package/dist/ffmpeg/codecs.js.map +1 -1
  48. package/dist/ffmpeg/dgram-util.d.ts +46 -0
  49. package/dist/ffmpeg/dgram-util.js +38 -0
  50. package/dist/ffmpeg/dgram-util.js.map +1 -0
  51. package/dist/ffmpeg/exec.d.ts +83 -64
  52. package/dist/ffmpeg/exec.js +77 -86
  53. package/dist/ffmpeg/exec.js.map +1 -1
  54. package/dist/ffmpeg/fmp4.d.ts +70 -4
  55. package/dist/ffmpeg/fmp4.js +100 -11
  56. package/dist/ffmpeg/fmp4.js.map +1 -1
  57. package/dist/ffmpeg/hap-enums.d.ts +214 -0
  58. package/dist/ffmpeg/hap-enums.js +92 -0
  59. package/dist/ffmpeg/hap-enums.js.map +1 -0
  60. package/dist/ffmpeg/index.d.ts +16 -9
  61. package/dist/ffmpeg/index.js +6 -0
  62. package/dist/ffmpeg/index.js.map +1 -1
  63. package/dist/ffmpeg/mp4-assembler.d.ts +120 -0
  64. package/dist/ffmpeg/mp4-assembler.js +387 -0
  65. package/dist/ffmpeg/mp4-assembler.js.map +1 -0
  66. package/dist/ffmpeg/mp4-parser.d.ts +94 -0
  67. package/dist/ffmpeg/mp4-parser.js +130 -0
  68. package/dist/ffmpeg/mp4-parser.js.map +1 -0
  69. package/dist/ffmpeg/options.d.ts +62 -149
  70. package/dist/ffmpeg/options.js +608 -499
  71. package/dist/ffmpeg/options.js.map +1 -1
  72. package/dist/ffmpeg/process.d.ts +143 -91
  73. package/dist/ffmpeg/process.js +406 -265
  74. package/dist/ffmpeg/process.js.map +1 -1
  75. package/dist/ffmpeg/record.d.ts +302 -188
  76. package/dist/ffmpeg/record.js +408 -560
  77. package/dist/ffmpeg/record.js.map +1 -1
  78. package/dist/ffmpeg/recording-process-double.d.ts +144 -0
  79. package/dist/ffmpeg/recording-process-double.js +168 -0
  80. package/dist/ffmpeg/recording-process-double.js.map +1 -0
  81. package/dist/ffmpeg/rtp-parser.d.ts +70 -0
  82. package/dist/ffmpeg/rtp-parser.js +77 -0
  83. package/dist/ffmpeg/rtp-parser.js.map +1 -0
  84. package/dist/ffmpeg/rtp.d.ts +198 -141
  85. package/dist/ffmpeg/rtp.js +473 -244
  86. package/dist/ffmpeg/rtp.js.map +1 -1
  87. package/dist/ffmpeg/settings.d.ts +5 -1
  88. package/dist/ffmpeg/settings.js +20 -2
  89. package/dist/ffmpeg/settings.js.map +1 -1
  90. package/dist/ffmpeg/stream.d.ts +57 -107
  91. package/dist/ffmpeg/stream.js +121 -148
  92. package/dist/ffmpeg/stream.js.map +1 -1
  93. package/dist/formatters.d.ts +106 -0
  94. package/dist/formatters.js +174 -0
  95. package/dist/formatters.js.map +1 -0
  96. package/dist/homebridge-enums.d.ts +30 -0
  97. package/dist/homebridge-enums.js +17 -0
  98. package/dist/homebridge-enums.js.map +1 -0
  99. package/dist/index.d.ts +12 -5
  100. package/dist/index.js +8 -2
  101. package/dist/index.js.map +1 -1
  102. package/dist/logclient/auth.d.ts +114 -0
  103. package/dist/logclient/auth.js +199 -0
  104. package/dist/logclient/auth.js.map +1 -0
  105. package/dist/logclient/cli-run.d.ts +76 -0
  106. package/dist/logclient/cli-run.js +639 -0
  107. package/dist/logclient/cli-run.js.map +1 -0
  108. package/dist/logclient/cli.d.ts +3 -0
  109. package/dist/logclient/cli.js +97 -0
  110. package/dist/logclient/cli.js.map +1 -0
  111. package/dist/logclient/client.d.ts +145 -0
  112. package/dist/logclient/client.js +600 -0
  113. package/dist/logclient/client.js.map +1 -0
  114. package/dist/logclient/config.d.ts +173 -0
  115. package/dist/logclient/config.js +199 -0
  116. package/dist/logclient/config.js.map +1 -0
  117. package/dist/logclient/endpoints.d.ts +54 -0
  118. package/dist/logclient/endpoints.js +73 -0
  119. package/dist/logclient/endpoints.js.map +1 -0
  120. package/dist/logclient/filter.d.ts +45 -0
  121. package/dist/logclient/filter.js +51 -0
  122. package/dist/logclient/filter.js.map +1 -0
  123. package/dist/logclient/frame.d.ts +93 -0
  124. package/dist/logclient/frame.js +203 -0
  125. package/dist/logclient/frame.js.map +1 -0
  126. package/dist/logclient/index.d.ts +31 -0
  127. package/dist/logclient/index.js +12 -0
  128. package/dist/logclient/index.js.map +1 -0
  129. package/dist/logclient/parser.d.ts +211 -0
  130. package/dist/logclient/parser.js +393 -0
  131. package/dist/logclient/parser.js.map +1 -0
  132. package/dist/logclient/rest.d.ts +41 -0
  133. package/dist/logclient/rest.js +111 -0
  134. package/dist/logclient/rest.js.map +1 -0
  135. package/dist/logclient/settings.d.ts +15 -0
  136. package/dist/logclient/settings.js +64 -0
  137. package/dist/logclient/settings.js.map +1 -0
  138. package/dist/logclient/socket-double.d.ts +201 -0
  139. package/dist/logclient/socket-double.js +384 -0
  140. package/dist/logclient/socket-double.js.map +1 -0
  141. package/dist/logclient/socket.d.ts +257 -0
  142. package/dist/logclient/socket.js +620 -0
  143. package/dist/logclient/socket.js.map +1 -0
  144. package/dist/logclient/stitch.d.ts +83 -0
  145. package/dist/logclient/stitch.js +146 -0
  146. package/dist/logclient/stitch.js.map +1 -0
  147. package/dist/logclient/time-expression.d.ts +42 -0
  148. package/dist/logclient/time-expression.js +181 -0
  149. package/dist/logclient/time-expression.js.map +1 -0
  150. package/dist/logclient/time-window.d.ts +38 -0
  151. package/dist/logclient/time-window.js +53 -0
  152. package/dist/logclient/time-window.js.map +1 -0
  153. package/dist/logclient/types.d.ts +107 -0
  154. package/dist/logclient/types.js +6 -0
  155. package/dist/logclient/types.js.map +1 -0
  156. package/dist/mqttClient.d.ts +287 -0
  157. package/dist/mqttClient.js +433 -0
  158. package/dist/mqttClient.js.map +1 -0
  159. package/dist/service.d.ts +64 -15
  160. package/dist/service.js +93 -66
  161. package/dist/service.js.map +1 -1
  162. package/dist/ui/featureOptions.js +870 -0
  163. package/dist/ui/featureOptions.js.map +1 -0
  164. package/dist/ui/formatters.js +174 -0
  165. package/dist/ui/formatters.js.map +1 -0
  166. package/dist/ui/pluginConfigSession.mjs +141 -0
  167. package/dist/ui/webUi-featureOptions/categoryState.mjs +135 -0
  168. package/dist/ui/webUi-featureOptions/effects/keyboard.mjs +61 -0
  169. package/dist/ui/webUi-featureOptions/effects/persist.mjs +226 -0
  170. package/dist/ui/webUi-featureOptions/effects/theme.mjs +398 -0
  171. package/dist/ui/webUi-featureOptions/effects/tokens.mjs +152 -0
  172. package/dist/ui/webUi-featureOptions/rendering.mjs +431 -0
  173. package/dist/ui/webUi-featureOptions/selectors.mjs +360 -0
  174. package/dist/ui/webUi-featureOptions/state.mjs +319 -0
  175. package/dist/ui/webUi-featureOptions/store.mjs +181 -0
  176. package/dist/ui/webUi-featureOptions/utils.mjs +200 -0
  177. package/dist/ui/webUi-featureOptions/views/connectionError.mjs +152 -0
  178. package/dist/ui/webUi-featureOptions/views/deviceInfo.mjs +80 -0
  179. package/dist/ui/webUi-featureOptions/views/header.mjs +77 -0
  180. package/dist/ui/webUi-featureOptions/views/nav.mjs +327 -0
  181. package/dist/ui/webUi-featureOptions/views/options.mjs +521 -0
  182. package/dist/ui/webUi-featureOptions/views/search.mjs +395 -0
  183. package/dist/ui/webUi-featureOptions.mjs +677 -0
  184. package/dist/ui/webUi.mjs +192 -87
  185. package/dist/util.d.ts +597 -45
  186. package/dist/util.js +787 -68
  187. package/dist/util.js.map +1 -1
  188. package/package.json +33 -15
  189. package/build/eslint-rules.mjs +0 -511
  190. package/dist/featureoptions.d.ts +0 -264
  191. package/dist/featureoptions.js +0 -480
  192. package/dist/featureoptions.js.map +0 -1
  193. package/dist/mqttclient.d.ts +0 -178
  194. package/dist/mqttclient.js +0 -310
  195. package/dist/mqttclient.js.map +0 -1
  196. package/dist/ui/featureoptions.js +0 -480
  197. package/dist/ui/featureoptions.js.map +0 -1
  198. package/dist/ui/webUi-featureoptions.mjs +0 -3765
@@ -1 +1 @@
1
- {"version":3,"file":"options.js","sourceRoot":"","sources":["../../src/ffmpeg/options.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"options.js","sourceRoot":"","sources":["../../src/ffmpeg/options.ts"],"names":[],"mappings":"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"}
@@ -1,161 +1,213 @@
1
1
  /**
2
- * FFmpeg process management and capability introspection.
2
+ * FFmpeg process management with AbortSignal-based lifecycle.
3
3
  *
4
- * This module defines the `FfmpegProcess` class, which abstracts the spawning, monitoring, and logging of FFmpeg subprocesses. It manages process state, handles
5
- * command-line argument composition, processes standard streams (stdin, stdout, stderr), and robustly reports process errors and exit conditions.
4
+ * This module defines the `FfmpegProcess` base class, the foundation every other FFmpeg class in `homebridge-plugin-utils` builds on. Construction spawns the child; the
5
+ * composed {@link AbortSignal} exposed as `this.signal` is the single source of truth for the process's lifetime. Every teardown path - external `abort()`, parent
6
+ * signal aborting, natural exit, spawn failure, optional startup timeout - converges on the same signal.
6
7
  *
7
- * Designed for use in Homebridge plugins, this module enables safe and flexible execution of FFmpeg commands, making it easier to integrate video/audio processing
8
- * pipelines with realtime control and diagnostics.
8
+ * The class is an {@link AsyncDisposable} so callers can manage the process with `await using` for scope-bound lifetimes. It is intentionally not an `EventEmitter`:
9
+ * ready/exit are {@link Promise}s, stderr accumulates to {@link FfmpegProcess.stderrLog}, and fine-grained termination hooks are registered against `this.signal`.
9
10
  *
10
11
  * Key features:
11
12
  *
12
- * - Comprehensive FFmpeg subprocess management (start, monitor, stop, cleanup).
13
- * - Streamlined error handling and logging, with pluggable loggers.
14
- * - Access to process I/O streams for data injection and consumption.
15
- * - Flexible callback and event-based architecture for streaming scenarios.
16
- *
17
- * Intended for developers needing direct, reliable control over FFmpeg process lifecycles with detailed runtime insights, especially in plugin or media automation
18
- * contexts.
13
+ * - Spawn-on-construction. No `start()` step, no configure-then-run.
14
+ * - {@link AbortSignal}-driven teardown. Node's native `spawn({ signal, killSignal })` owns the kill path; no manual SIGKILL fallback timer.
15
+ * - `ready` promise resolves when FFmpeg produces its first stderr byte (the earliest reliable "we are actually running" signal).
16
+ * - `exited` promise resolves with the child's exit code and signal once it terminates. Rejects with `signal.reason` only when the child never started (e.g., `ENOENT`).
17
+ * - Reason-based teardown logging: `"failed"` dumps stderr at ERROR, `"timeout"` logs at WARN, other reasons log at DEBUG.
19
18
  *
20
19
  * @module
21
20
  */
22
- import { type ChildProcessWithoutNullStreams } from "node:child_process";
23
- import type { HomebridgePluginLogging, Nullable } from "../util.js";
21
+ import { HbpuAbortError } from "../util.ts";
22
+ import type { HomebridgePluginLogging, Nullable } from "../util.ts";
24
23
  import type { Readable, Writable } from "node:stream";
25
- import { EventEmitter } from "node:events";
26
- import type { FfmpegOptions } from "./options.js";
27
- import type { StreamRequestCallback } from "homebridge";
24
+ import type { FfmpegOptions } from "./options.ts";
28
25
  /**
29
- * Base class providing FFmpeg process management and capability introspection.
26
+ * Structured exit information surfaced through {@link FfmpegProcess.exited}.
30
27
  *
31
- * This class encapsulates spawning, managing, and logging of FFmpeg processes, as well as handling process I/O and errors. It is designed as a reusable foundation for
32
- * advanced FFmpeg process control in Homebridge plugins or similar environments. Originally inspired by the Homebridge and homebridge-camera-ffmpeg source code.
28
+ * @property exitCode - The process exit code, or `null` when the process was terminated by a signal.
29
+ * @property exitSignal - The signal name (e.g., `"SIGKILL"`) that terminated the process, or `null` when the process exited normally.
30
+ *
31
+ * @category FFmpeg
32
+ */
33
+ export interface FfmpegProcessExitInfo {
34
+ exitCode: Nullable<number>;
35
+ exitSignal: Nullable<NodeJS.Signals>;
36
+ }
37
+ /**
38
+ * Construction-time options for {@link FfmpegProcess}.
39
+ *
40
+ * @property args - Optional. FFmpeg command-line arguments. Defaults to an empty array.
41
+ * @property signal - Optional. Parent {@link AbortSignal} to compose with the process's internal controller. When the parent aborts, the process tears down.
42
+ * @property startupTimeout - Optional. If FFmpeg does not produce stderr output within this many milliseconds, the process is aborted with
43
+ * `HbpuAbortError("timeout")`.
44
+ *
45
+ * @category FFmpeg
46
+ */
47
+ export interface FfmpegProcessInit {
48
+ args?: string[];
49
+ signal?: AbortSignal;
50
+ startupTimeout?: number;
51
+ }
52
+ /**
53
+ * Base class providing FFmpeg process management with signal-driven lifecycle.
54
+ *
55
+ * Construction spawns the child immediately. The composed `this.signal` is the single source of truth for the process's lifetime: external `abort()`, a parent signal
56
+ * firing, a non-zero exit, a spawn failure, and (optionally) a startup-timeout all converge on the same signal. Subclasses register additional `"abort"` listeners on
57
+ * `this.signal` rather than overriding `abort()` or `[Symbol.asyncDispose]`.
33
58
  *
34
59
  * @example
35
60
  *
36
61
  * ```ts
37
- * // Create and start an FFmpeg process.
38
- * const process = new FfmpegProcess(options, ["-i", "input.mp4", "-f", "null", "-"]);
39
- * process.start();
62
+ * // Scope-bound: the child is guaranteed to be torn down when the block exits, regardless of success or exception.
63
+ * await using proc = new FfmpegProcess(options, { args: [ "-i", "input.mp4", "-f", "null", "-" ] });
40
64
  *
41
- * // Access process streams if needed.
42
- * const stdin = process.stdin;
43
- * const stdout = process.stdout;
44
- * const stderr = process.stderr;
65
+ * await proc.ready;
66
+ * const { exitCode } = await proc.exited;
67
+ * ```
68
+ *
69
+ * @example
45
70
  *
46
- * // Stop the FFmpeg process when done.
47
- * process.stop();
71
+ * ```ts
72
+ * // Signal-driven: parent controls teardown through its own AbortController.
73
+ * const controller = new AbortController();
74
+ * const proc = new FfmpegProcess(options, { args, signal: controller.signal });
75
+ *
76
+ * // Later, from anywhere with the controller:
77
+ * controller.abort();
48
78
  * ```
49
79
  *
50
80
  * @see {@link https://ffmpeg.org/documentation.html | FFmpeg Documentation}
51
81
  *
52
- * @see {@link https://nodejs.org/api/child_process.html | Node.js child_process}
82
+ * @see {@link https://nodejs.org/api/child_process.html#child_processspawncommand-args-options | Node.js child_process.spawn}
53
83
  *
54
84
  * @see FfmpegOptions
55
85
  *
56
86
  * @category FFmpeg
57
87
  */
58
- export declare class FfmpegProcess extends EventEmitter {
88
+ export declare class FfmpegProcess implements AsyncDisposable {
89
+ #private;
90
+ /**
91
+ * The composed abort signal representing this process's lifetime. Aborts exactly once when the child exits, the parent signal fires, or `abort()` is called; the
92
+ * reason encoded on `signal.reason` names the cause (see {@link HbpuAbortReason}). Subclasses and external callers attach `"abort"` listeners to this signal when they
93
+ * need scope-bound teardown hooks of their own.
94
+ */
95
+ readonly signal: AbortSignal;
59
96
  /**
60
- * Indicates if an error has occurred during FFmpeg process execution.
97
+ * Resolves when FFmpeg has produced its first stderr byte - the earliest point at which we can reliably say the child is running. Rejects with `this.signal.reason`
98
+ * when the process aborts before becoming ready (external abort, spawn failure, startup timeout, early natural exit).
61
99
  */
62
- hasError: boolean;
100
+ readonly ready: Promise<void>;
63
101
  /**
64
- * Indicates whether the FFmpeg process has ended.
102
+ * Resolves with the child's exit code and signal once the process terminates. Rejects with `this.signal.reason` only when the child never started (e.g., the FFmpeg
103
+ * binary could not be located); in every other case it resolves with the actual exit information, even when the abort reason is `"failed"`.
65
104
  */
66
- isEnded: boolean;
105
+ readonly exited: Promise<FfmpegProcessExitInfo>;
67
106
  /**
68
- * Indicates whether the FFmpeg process has started.
107
+ * Writable standard input stream for the FFmpeg process.
69
108
  */
70
- isStarted: boolean;
109
+ readonly stdin: Writable;
71
110
  /**
72
- * Optional callback to be called when the FFmpeg process is ready for streaming.
111
+ * Readable standard output stream. Subclasses that consume this stream internally narrow the public type to `never` via `declare`.
73
112
  */
74
- protected callback: Nullable<StreamRequestCallback>;
113
+ readonly stdout: Readable;
75
114
  /**
76
- * The command line arguments for invoking FFmpeg.
115
+ * Readable standard error stream. Primarily useful to callers who want to observe stderr in addition to the accumulated {@link FfmpegProcess.stderrLog}; most callers
116
+ * should prefer `stderrLog` since the class already buffers lines for them.
77
117
  */
78
- protected commandLineArgs: string[];
118
+ readonly stderr: Readable;
79
119
  /**
80
- * Enables verbose logging for FFmpeg process output.
120
+ * The FFmpeg options instance this process was constructed with. Exposed for subclasses that need access to the shared configuration (codec support, logger, etc.).
81
121
  */
82
- protected isVerbose: boolean;
122
+ protected readonly options: FfmpegOptions;
83
123
  /**
84
- * Logger instance for output and error reporting.
124
+ * Logger instance resolved from `options.log`. Shared by all log output in this class and subclasses.
85
125
  */
86
126
  protected readonly log: HomebridgePluginLogging;
87
127
  /**
88
- * FFmpeg process configuration options.
128
+ * The resolved FFmpeg command-line arguments this process was spawned with. Retained so teardown logging can include the original command in error reports.
89
129
  */
90
- protected readonly options: FfmpegOptions;
130
+ protected readonly args: readonly string[];
91
131
  /**
92
- * The underlying Node.js ChildProcess instance for the FFmpeg process.
132
+ * Protected alias for {@link FfmpegProcess.stdin}. Subclasses that publicly narrow `stdin` to `never` still consume the underlying stream through this typed path.
93
133
  */
94
- protected process: Nullable<ChildProcessWithoutNullStreams>;
134
+ protected readonly _stdin: Writable;
95
135
  /**
96
- * Accumulated log lines from standard error for error reporting and debugging.
136
+ * Protected alias for {@link FfmpegProcess.stdout}. Subclasses that publicly narrow `stdout` to `never` (because an internal consumer such as `Mp4SegmentAssembler`
137
+ * owns the stream) still consume the underlying stream through this typed path.
97
138
  */
98
- private _stderrLog;
99
- private ffmpegTimeout?;
100
- private isLogging;
101
- private stderrBuffer;
102
- constructor(options: FfmpegOptions, commandLineArgs?: string[], callback?: StreamRequestCallback);
103
- private prepareProcess;
139
+ protected readonly _stdout: Readable;
104
140
  /**
105
- * Starts the FFmpeg process with the provided command line and callback.
106
- *
107
- * @param commandLineArgs - Optional. Arguments for FFmpeg command line.
108
- * @param callback - Optional. Callback invoked when streaming is ready.
109
- * @param errorHandler - Optional. Function called if FFmpeg fails to start or terminates with error.
141
+ * Protected alias for {@link FfmpegProcess.stderr}. Provided for symmetry with `_stdin` / `_stdout`.
142
+ */
143
+ protected readonly _stderr: Readable;
144
+ /**
145
+ * Construct and spawn a new FFmpeg process.
110
146
  *
111
- * @example
147
+ * Spawning happens synchronously as part of construction: by the time the constructor returns, the child is already running (or has already scheduled its `"error"`
148
+ * event for a spawn failure). There is no separate `start()` step.
112
149
  *
113
- * ```ts
114
- * process.start(["-i", "input.mp4", "-f", "null", "-"]);
115
- * ```
150
+ * @param options - Shared {@link FfmpegOptions} configuration (codec support, logger, debug flag, name).
151
+ * @param init - Optional init options. See {@link FfmpegProcessInit}.
116
152
  */
117
- start(commandLineArgs?: string[], callback?: StreamRequestCallback, errorHandler?: (errorMessage: string) => Promise<void> | void): void;
118
- protected configureProcess(errorHandler?: (errorMessage: string) => Promise<void> | void): void;
119
- protected stopProcess(): void;
153
+ constructor(options: FfmpegOptions, init?: FfmpegProcessInit);
120
154
  /**
121
- * Stops the FFmpeg process and performs necessary cleanup.
155
+ * Abort the process and tear it down. Defaults to `HbpuAbortError("shutdown")` when no reason is supplied; explicit reasons pass through unchanged.
122
156
  *
123
- * @example
157
+ * Safe to call more than once: subsequent calls are no-ops because the underlying signal only aborts once. Calling `abort()` after natural exit is also safe for the
158
+ * same reason.
124
159
  *
125
- * ```ts
126
- * process.stop();
127
- * ```
160
+ * @param reason - Optional abort reason. Typically an {@link HbpuAbortError}; platform errors (`TimeoutError`, `AbortError`) also interoperate by convention.
128
161
  */
129
- stop(): void;
162
+ abort(reason?: unknown): void;
130
163
  /**
131
- * Logs an error message for FFmpeg process termination.
164
+ * `AsyncDisposable` implementation. Aborts the process (defaulting to `"shutdown"`) and awaits actual exit before returning, so callers using `await using` are
165
+ * guaranteed the child has terminated by the time the block exits.
132
166
  *
133
- * @param exitCode - The exit code from FFmpeg.
134
- * @param signal - The signal, if any, used to terminate the process.
167
+ * @returns A promise that resolves once the child has fully exited.
135
168
  */
136
- protected logFfmpegError(exitCode: Nullable<number>, signal: Nullable<NodeJS.Signals>): void;
169
+ [Symbol.asyncDispose](): Promise<void>;
137
170
  /**
138
- * Returns the accumulated standard error log lines from the FFmpeg process.
139
- *
140
- * @returns An array of stderr log lines.
171
+ * `true` once `this.signal` has aborted. Derived from the signal; no independent state.
141
172
  */
142
- get stderrLog(): string[];
173
+ get aborted(): boolean;
143
174
  /**
144
- * Returns the writable standard input stream for the FFmpeg process, if available.
145
- *
146
- * @returns The standard input stream, or `null` if not available.
175
+ * `true` when the abort reason was `HbpuAbortError("failed")`. Covers spawn failures and non-zero natural exits. Derived from `this.signal.reason`; no stored flag.
176
+ */
177
+ get hasError(): boolean;
178
+ /**
179
+ * `true` when the abort reason indicates a timeout. Matches both the canonical `HbpuAbortError("timeout")` and the platform `TimeoutError` emitted by
180
+ * `AbortSignal.timeout()`. The discrimination lives in {@link isTimeoutReason} so this getter stays a one-line delegation and every resource class in the library
181
+ * shares one definition of "timeout."
147
182
  */
148
- get stdin(): Nullable<Writable>;
183
+ get isTimedOut(): boolean;
149
184
  /**
150
- * Returns the readable standard output stream for the FFmpeg process, if available.
185
+ * The accumulated stderr lines this process has produced, preserved across teardown for post-mortem inspection. The array is returned as a readonly view to make the
186
+ * intent explicit: callers read from it, they do not mutate it.
187
+ */
188
+ get stderrLog(): readonly string[];
189
+ /**
190
+ * Log the "failed" teardown branch. Overridable by subclasses that want to substitute a bespoke message for known benign error shapes before falling through to the
191
+ * canonical ERROR dump.
151
192
  *
152
- * @returns The standard output stream, or `null` if not available.
193
+ * The default implementation emits two ERROR lines (an "ended unexpectedly" summary and the command that produced it), then dumps every accumulated stderr line at
194
+ * ERROR level. Subclasses may inspect `this.stderrLog` and `reason.cause`, log a friendly message, and return early to suppress the dump; or call
195
+ * `super.logFailedTeardown(reason)` to emit the canonical dump after prepending their own context.
196
+ *
197
+ * @param reason - The `"failed"` reason that drove this teardown. Its `cause` field carries structured exit info (`{ exitCode, exitSignal }`) for natural non-zero
198
+ * exits, or the underlying `Error` for spawn failures.
153
199
  */
154
- get stdout(): Nullable<Readable>;
200
+ protected logFailedTeardown(reason: HbpuAbortError): void;
155
201
  /**
156
- * Returns the readable standard error stream for the FFmpeg process, if available.
202
+ * Log the "timeout" teardown branch. Overridable by subclasses for which an inter-segment / watchdog timeout is benign by default - e.g. an HKSV recording, which
203
+ * ends exactly this way whenever its segment source quiets.
204
+ *
205
+ * The default implementation emits a single WARN: a stall that trips the watchdog on a general FFmpeg process (a live stream) genuinely is a problem. A subclass may
206
+ * override to demote the reap to debug and leave the severity verdict to the consumer that holds the input-feed and reachability context.
157
207
  *
158
- * @returns The standard error stream, or `null` if not available.
208
+ * @param _reason - The `"timeout"` abort reason that drove this teardown. Part of the seam contract so an override can inspect it (parallel to `logFailedTeardown`),
209
+ * but neither the default body nor the recording override reads it - a watchdog timeout carries no actionable cause - so it is `_`-prefixed.
159
210
  */
160
- get stderr(): Nullable<Readable>;
211
+ protected logTimeoutTeardown(_reason: HbpuAbortError): void;
161
212
  }
213
+ //# sourceMappingURL=process.d.ts.map