node-av 6.2.0-beta.2 → 6.2.0-beta.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (93) hide show
  1. package/README.md +13 -8
  2. package/dist/api/audio-frame-buffer.d.ts +73 -1
  3. package/dist/api/audio-frame-buffer.js +127 -1
  4. package/dist/api/audio-frame-buffer.js.map +1 -1
  5. package/dist/api/bitstream-filter.d.ts +82 -4
  6. package/dist/api/bitstream-filter.js +197 -100
  7. package/dist/api/bitstream-filter.js.map +1 -1
  8. package/dist/api/decoder.d.ts +5 -0
  9. package/dist/api/decoder.js +13 -6
  10. package/dist/api/decoder.js.map +1 -1
  11. package/dist/api/demuxer.d.ts +15 -1
  12. package/dist/api/demuxer.js +165 -54
  13. package/dist/api/demuxer.js.map +1 -1
  14. package/dist/api/encoder-pool.d.ts +43 -1
  15. package/dist/api/encoder-pool.js +121 -9
  16. package/dist/api/encoder-pool.js.map +1 -1
  17. package/dist/api/encoder.d.ts +19 -0
  18. package/dist/api/encoder.js +112 -45
  19. package/dist/api/encoder.js.map +1 -1
  20. package/dist/api/filter.js +15 -6
  21. package/dist/api/filter.js.map +1 -1
  22. package/dist/api/fmp4-stream.d.ts +167 -3
  23. package/dist/api/fmp4-stream.js +423 -90
  24. package/dist/api/fmp4-stream.js.map +1 -1
  25. package/dist/api/hardware.d.ts +2 -0
  26. package/dist/api/hardware.js +25 -4
  27. package/dist/api/hardware.js.map +1 -1
  28. package/dist/api/io-stream.d.ts +3 -2
  29. package/dist/api/io-stream.js +61 -5
  30. package/dist/api/io-stream.js.map +1 -1
  31. package/dist/api/muxer.d.ts +14 -0
  32. package/dist/api/muxer.js +131 -51
  33. package/dist/api/muxer.js.map +1 -1
  34. package/dist/api/pipeline.d.ts +24 -0
  35. package/dist/api/pipeline.js +76 -5
  36. package/dist/api/pipeline.js.map +1 -1
  37. package/dist/api/rtp-stream.d.ts +56 -6
  38. package/dist/api/rtp-stream.js +252 -80
  39. package/dist/api/rtp-stream.js.map +1 -1
  40. package/dist/api/scaler.d.ts +105 -17
  41. package/dist/api/scaler.js +326 -108
  42. package/dist/api/scaler.js.map +1 -1
  43. package/dist/api/utilities/async-queue.d.ts +3 -0
  44. package/dist/api/utilities/async-queue.js +8 -0
  45. package/dist/api/utilities/async-queue.js.map +1 -1
  46. package/dist/api/webrtc-stream.d.ts +2 -0
  47. package/dist/api/webrtc-stream.js +46 -12
  48. package/dist/api/webrtc-stream.js.map +1 -1
  49. package/dist/api/whisper.d.ts +2 -0
  50. package/dist/api/whisper.js +63 -23
  51. package/dist/api/whisper.js.map +1 -1
  52. package/dist/constants/constants.d.ts +1 -0
  53. package/dist/constants/constants.js +1 -0
  54. package/dist/constants/constants.js.map +1 -1
  55. package/dist/constants/filter-options.d.ts +2 -0
  56. package/dist/ffmpeg/install.js +115 -29
  57. package/dist/ffmpeg/install.js.map +1 -1
  58. package/dist/ffmpeg/utils.js +7 -4
  59. package/dist/ffmpeg/utils.js.map +1 -1
  60. package/dist/lib/binding.d.ts +1 -0
  61. package/dist/lib/binding.js +12 -16
  62. package/dist/lib/binding.js.map +1 -1
  63. package/dist/lib/codec-context.d.ts +0 -2
  64. package/dist/lib/codec-context.js +4 -22
  65. package/dist/lib/codec-context.js.map +1 -1
  66. package/dist/lib/filter-context.d.ts +0 -1
  67. package/dist/lib/filter-context.js +2 -11
  68. package/dist/lib/filter-context.js.map +1 -1
  69. package/dist/lib/format-context.d.ts +63 -7
  70. package/dist/lib/format-context.js +70 -21
  71. package/dist/lib/format-context.js.map +1 -1
  72. package/dist/lib/frame.d.ts +11 -11
  73. package/dist/lib/frame.js +13 -20
  74. package/dist/lib/frame.js.map +1 -1
  75. package/dist/lib/hardware-frames-context.d.ts +0 -1
  76. package/dist/lib/hardware-frames-context.js +2 -8
  77. package/dist/lib/hardware-frames-context.js.map +1 -1
  78. package/dist/lib/io-context.d.ts +4 -2
  79. package/dist/lib/io-context.js +4 -2
  80. package/dist/lib/io-context.js.map +1 -1
  81. package/dist/lib/native-types.d.ts +4 -4
  82. package/dist/lib/option.d.ts +26 -0
  83. package/dist/lib/option.js +42 -18
  84. package/dist/lib/option.js.map +1 -1
  85. package/dist/lib/packet.d.ts +5 -0
  86. package/dist/lib/packet.js +5 -0
  87. package/dist/lib/packet.js.map +1 -1
  88. package/dist/lib/stream.d.ts +3 -4
  89. package/dist/lib/stream.js +17 -24
  90. package/dist/lib/stream.js.map +1 -1
  91. package/install/check.js +40 -79
  92. package/package.json +43 -32
  93. package/build_mac_local.sh +0 -69
@@ -891,17 +891,34 @@ async function runNamedPipelineAsync(inputs, stages, output, shouldStop, tracker
891
891
  await output.close();
892
892
  }
893
893
  else {
894
- // Multiple outputs - write each stream to its output
894
+ // Multiple outputs - write each stream to its output. Group consumers by
895
+ // Muxer so each output is closed exactly once, after ALL streams feeding
896
+ // it are done - closing writes the trailer, without which containers like
897
+ // MP4 are left unreadable. Shared outputs (two streams into one Muxer)
898
+ // therefore must not be closed per stream.
895
899
  const outputs = output;
896
- const promises = [];
900
+ const outputConsumers = new Map();
897
901
  for (const [streamName, stream] of Object.entries(processedStreams)) {
898
902
  const streamOutput = outputs[streamName];
899
903
  const metadata = streamMetadata[streamName];
900
904
  if (streamOutput && metadata) {
901
- promises.push(consumeNamedStream(stream, streamOutput, metadata, shouldStop, tracker));
905
+ const consumer = consumeNamedStream(stream, streamOutput, metadata, shouldStop, tracker);
906
+ const consumers = outputConsumers.get(streamOutput);
907
+ if (consumers) {
908
+ consumers.push(consumer);
909
+ }
910
+ else {
911
+ outputConsumers.set(streamOutput, [consumer]);
912
+ }
902
913
  }
903
914
  }
904
- await Promise.all(promises);
915
+ // Finalize each output once its streams complete. A failing consumer
916
+ // rejects its output group and propagates to the completion promise
917
+ // (matching the single-output branch, which also skips close() on error).
918
+ await Promise.all([...outputConsumers].map(async ([muxer, consumers]) => {
919
+ await Promise.all(consumers);
920
+ await muxer.close();
921
+ }));
905
922
  }
906
923
  }
907
924
  /**
@@ -1054,6 +1071,59 @@ export async function consumeStreamInParallel(stream, output, streamIndex, shoul
1054
1071
  }
1055
1072
  // Note: Don't close output here - it will be closed by the caller after all streams finish
1056
1073
  }
1074
+ /**
1075
+ * Marks a pull that lost the race against the stop request.
1076
+ *
1077
+ * @internal
1078
+ */
1079
+ const FRAME_SOURCE_STOPPED = Symbol('frameSourceStopped');
1080
+ /**
1081
+ * Wrap a caller-supplied frame source so a stop request unblocks a stalled pull.
1082
+ *
1083
+ * A demuxer-backed pipeline unwinds promptly because stop() interrupts the
1084
+ * blocking read. A frame source offers no such lever: the consuming loop only
1085
+ * notices the stop request once the source yields again, so a source that goes
1086
+ * silent (a wedged capture device, a generator awaiting an event that never
1087
+ * fires) keeps the pipeline - and with it teardown - waiting forever. Calling
1088
+ * `return()` on the source does not help, because an async generator queues
1089
+ * that request behind the pending `next()` that is already stuck.
1090
+ *
1091
+ * Racing every pull against `stopped` supplies the missing lever.
1092
+ *
1093
+ * @param source - Caller-supplied frame source
1094
+ *
1095
+ * @param stopped - Resolves once teardown has been requested
1096
+ *
1097
+ * @yields {Frame | null} Frames from the source until it ends or teardown starts
1098
+ *
1099
+ * @internal
1100
+ */
1101
+ export async function* interruptibleFrameSource(source, stopped) {
1102
+ const iterator = source[Symbol.asyncIterator]();
1103
+ const stopRequested = stopped.then(() => FRAME_SOURCE_STOPPED);
1104
+ try {
1105
+ for (;;) {
1106
+ const result = await Promise.race([iterator.next(), stopRequested]);
1107
+ if (result === FRAME_SOURCE_STOPPED || result.done) {
1108
+ return;
1109
+ }
1110
+ yield result.value;
1111
+ }
1112
+ }
1113
+ finally {
1114
+ // Deliberately not awaited: a stalled source never settles the pending
1115
+ // next(), and return() would queue behind it - reintroducing the very hang
1116
+ // this wrapper exists to prevent.
1117
+ void (async () => {
1118
+ try {
1119
+ await iterator.return?.(undefined);
1120
+ }
1121
+ catch {
1122
+ // The source failed while winding down; teardown proceeds regardless.
1123
+ }
1124
+ })();
1125
+ }
1126
+ }
1057
1127
  /**
1058
1128
  * Consume a named stream and write to output.
1059
1129
  *
@@ -1140,7 +1210,8 @@ async function consumeNamedStream(stream, output, metadata, shouldStop, tracker)
1140
1210
  await iterator.return(undefined);
1141
1211
  }
1142
1212
  }
1143
- // Note: Output is closed by the caller after all streams finish
1213
+ // Note: Output is closed by runNamedPipelineAsync once every stream feeding
1214
+ // it has finished (shared outputs are closed exactly once).
1144
1215
  }
1145
1216
  // ============================================================================
1146
1217
  // Type Guards
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../src/api/pipeline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../src/api/pipeline.ts"],"names":[],"mappings":"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"}
@@ -67,6 +67,7 @@ export interface RTPStreamOptions {
67
67
  fps?: number;
68
68
  width?: number;
69
69
  height?: number;
70
+ bitrate?: number;
70
71
  encoderOptions?: EncoderOptions['options'];
71
72
  };
72
73
  /**
@@ -152,6 +153,11 @@ export declare class RTPStream {
152
153
  private supportedVideoCodecs;
153
154
  private supportedAudioCodecs;
154
155
  private videoKeyframeRequested;
156
+ private abortHandler?;
157
+ private stopRequested;
158
+ private stopPromise?;
159
+ private startAbort?;
160
+ private stopSignal;
155
161
  /**
156
162
  * @param input - Media input URL or pre-opened Demuxer
157
163
  *
@@ -206,6 +212,10 @@ export declare class RTPStream {
206
212
  /**
207
213
  * Check if the stream is active.
208
214
  *
215
+ * Stays true while a requested stop is still unwinding: the pipeline reports
216
+ * itself stopped as soon as stop() is called, but its packets keep flowing
217
+ * and its native resources stay open until completion settles.
218
+ *
209
219
  * @returns True if the stream is active, false otherwise
210
220
  */
211
221
  get isStreamActive(): boolean;
@@ -293,6 +303,32 @@ export declare class RTPStream {
293
303
  * @internal
294
304
  */
295
305
  private doStart;
306
+ /**
307
+ * Abort an in-flight startup once stop() was requested.
308
+ *
309
+ * Checked after every await in the startup path: the resources created so
310
+ * far are all assigned to instance fields, so the stop() that is waiting on
311
+ * this startup tears them down the moment it unwinds.
312
+ *
313
+ * @throws {Error} If stop() was called while starting
314
+ *
315
+ * @internal
316
+ */
317
+ private throwIfStopRequested;
318
+ /**
319
+ * Cap the video bitrate on the encoder context.
320
+ *
321
+ * Sets the target bitrate together with a VBV cap (maxrate + a 1s buffer).
322
+ * Encoder.create() always seeds a default target bitrate (1 Mbps for video),
323
+ * so the target MUST be lowered along with the cap.
324
+ *
325
+ * @param ctx - Encoder codec context
326
+ *
327
+ * @param bitrate - Maximum bitrate in bits per second, or undefined
328
+ *
329
+ * @internal
330
+ */
331
+ private applyBitrate;
296
332
  /**
297
333
  * Wire the pipeline completion to the onClose/error callbacks.
298
334
  *
@@ -304,6 +340,16 @@ export declare class RTPStream {
304
340
  * @internal
305
341
  */
306
342
  private attachCompletion;
343
+ /**
344
+ * Whether a pipeline rejection was caused by an intentional shutdown.
345
+ *
346
+ * @param error - The pipeline rejection reason
347
+ *
348
+ * @returns True when stop() is in flight or the owner's signal aborted
349
+ *
350
+ * @internal
351
+ */
352
+ private isDeliberateStop;
307
353
  /**
308
354
  * Set up encoders and RTP outputs for a pre-composited frame source and start
309
355
  * encoding. No demuxer or decoder is involved - the provided frames are encoded
@@ -318,12 +364,10 @@ export declare class RTPStream {
318
364
  /**
319
365
  * Create the RTP video output muxer.
320
366
  *
321
- * Rewrites RTP sequence numbers (continuous) and timestamps (90 kHz, advanced
322
- * per frame at `fps`) in the write callback, then forwards each packet to
323
- * `onVideoPacket`. Uses `this.input` when present (demuxer path) and no input
324
- * for the frame-source path.
325
- *
326
- * @param fps - Frame rate used for the RTP timestamp increment
367
+ * Rewrites RTP sequence numbers (continuous) and rebases the PTS-derived
368
+ * timestamps (90 kHz) onto a random initial value in the write callback, then
369
+ * forwards each packet to `onVideoPacket`. Uses `this.input` when present
370
+ * (demuxer path) and no input for the frame-source path.
327
371
  *
328
372
  * @returns The configured video muxer
329
373
  *
@@ -367,6 +411,12 @@ export declare class RTPStream {
367
411
  * ```
368
412
  */
369
413
  stop(): Promise<void>;
414
+ /**
415
+ * Perform the actual teardown (see {@link stop}).
416
+ *
417
+ * @internal
418
+ */
419
+ private doStop;
370
420
  /**
371
421
  * Check if the given audio codec is supported.
372
422
  *