node-av 1.2.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 (99) hide show
  1. package/README.md +37 -59
  2. package/dist/api/bitstream-filter.d.ts +5 -2
  3. package/dist/api/bitstream-filter.js +7 -4
  4. package/dist/api/bitstream-filter.js.map +1 -1
  5. package/dist/api/decoder.d.ts +135 -119
  6. package/dist/api/decoder.js +195 -202
  7. package/dist/api/decoder.js.map +1 -1
  8. package/dist/api/encoder.d.ts +141 -78
  9. package/dist/api/encoder.js +241 -193
  10. package/dist/api/encoder.js.map +1 -1
  11. package/dist/api/filter-presets.d.ts +699 -573
  12. package/dist/api/filter-presets.js +1157 -840
  13. package/dist/api/filter-presets.js.map +1 -1
  14. package/dist/api/filter.d.ts +180 -157
  15. package/dist/api/filter.js +314 -366
  16. package/dist/api/filter.js.map +1 -1
  17. package/dist/api/hardware.d.ts +28 -29
  18. package/dist/api/hardware.js +80 -74
  19. package/dist/api/hardware.js.map +1 -1
  20. package/dist/api/index.d.ts +1 -1
  21. package/dist/api/index.js +1 -1
  22. package/dist/api/index.js.map +1 -1
  23. package/dist/api/io-stream.d.ts +6 -0
  24. package/dist/api/io-stream.js +6 -0
  25. package/dist/api/io-stream.js.map +1 -1
  26. package/dist/api/media-input.d.ts +2 -1
  27. package/dist/api/media-input.js +3 -8
  28. package/dist/api/media-input.js.map +1 -1
  29. package/dist/api/media-output.d.ts +37 -126
  30. package/dist/api/media-output.js +138 -206
  31. package/dist/api/media-output.js.map +1 -1
  32. package/dist/api/pipeline.d.ts +193 -0
  33. package/dist/api/pipeline.js +36 -42
  34. package/dist/api/pipeline.js.map +1 -1
  35. package/dist/api/types.d.ts +22 -57
  36. package/dist/api/utilities/audio-sample.d.ts +0 -8
  37. package/dist/api/utilities/audio-sample.js +0 -8
  38. package/dist/api/utilities/audio-sample.js.map +1 -1
  39. package/dist/api/utilities/channel-layout.d.ts +0 -8
  40. package/dist/api/utilities/channel-layout.js +0 -8
  41. package/dist/api/utilities/channel-layout.js.map +1 -1
  42. package/dist/api/utilities/image.d.ts +0 -8
  43. package/dist/api/utilities/image.js +0 -8
  44. package/dist/api/utilities/image.js.map +1 -1
  45. package/dist/api/utilities/index.d.ts +3 -3
  46. package/dist/api/utilities/index.js +3 -3
  47. package/dist/api/utilities/index.js.map +1 -1
  48. package/dist/api/utilities/media-type.d.ts +1 -9
  49. package/dist/api/utilities/media-type.js +1 -9
  50. package/dist/api/utilities/media-type.js.map +1 -1
  51. package/dist/api/utilities/pixel-format.d.ts +1 -9
  52. package/dist/api/utilities/pixel-format.js +1 -9
  53. package/dist/api/utilities/pixel-format.js.map +1 -1
  54. package/dist/api/utilities/sample-format.d.ts +1 -9
  55. package/dist/api/utilities/sample-format.js +1 -9
  56. package/dist/api/utilities/sample-format.js.map +1 -1
  57. package/dist/api/utilities/streaming.d.ts +0 -8
  58. package/dist/api/utilities/streaming.js +0 -8
  59. package/dist/api/utilities/streaming.js.map +1 -1
  60. package/dist/api/utilities/timestamp.d.ts +0 -8
  61. package/dist/api/utilities/timestamp.js +0 -8
  62. package/dist/api/utilities/timestamp.js.map +1 -1
  63. package/dist/api/utils.js +2 -0
  64. package/dist/api/utils.js.map +1 -1
  65. package/dist/constants/constants.d.ts +1 -1
  66. package/dist/constants/constants.js +2 -0
  67. package/dist/constants/constants.js.map +1 -1
  68. package/dist/lib/binding.d.ts +1 -0
  69. package/dist/lib/binding.js +2 -0
  70. package/dist/lib/binding.js.map +1 -1
  71. package/dist/lib/codec.d.ts +4 -4
  72. package/dist/lib/codec.js +4 -4
  73. package/dist/lib/dictionary.d.ts +2 -2
  74. package/dist/lib/dictionary.js +2 -2
  75. package/dist/lib/dictionary.js.map +1 -1
  76. package/dist/lib/error.d.ts +1 -1
  77. package/dist/lib/error.js +1 -1
  78. package/dist/lib/filter-context.d.ts +19 -2
  79. package/dist/lib/filter-context.js +15 -0
  80. package/dist/lib/filter-context.js.map +1 -1
  81. package/dist/lib/format-context.d.ts +18 -18
  82. package/dist/lib/format-context.js +20 -20
  83. package/dist/lib/format-context.js.map +1 -1
  84. package/dist/lib/frame.d.ts +43 -1
  85. package/dist/lib/frame.js +53 -0
  86. package/dist/lib/frame.js.map +1 -1
  87. package/dist/lib/index.d.ts +1 -1
  88. package/dist/lib/index.js +1 -1
  89. package/dist/lib/index.js.map +1 -1
  90. package/dist/lib/native-types.d.ts +1 -0
  91. package/dist/lib/option.d.ts +176 -0
  92. package/dist/lib/option.js +176 -0
  93. package/dist/lib/option.js.map +1 -1
  94. package/dist/lib/utilities.d.ts +64 -1
  95. package/dist/lib/utilities.js +65 -0
  96. package/dist/lib/utilities.js.map +1 -1
  97. package/install/ffmpeg.js +0 -11
  98. package/package.json +16 -18
  99. package/release_notes.md +0 -48
@@ -89,6 +89,15 @@ export declare function pipeline(source: MediaInput, decoder: Decoder, filter: F
89
89
  * @param bsf - Bitstream filter for packet processing
90
90
  * @param output - Media output destination
91
91
  * @returns Pipeline control for managing execution
92
+ *
93
+ * @example
94
+ * ```typescript
95
+ * const decoder = await Decoder.create(input.video());
96
+ * const encoder = await Encoder.create(FF_ENCODER_LIBX264, { ... });
97
+ * const bsf = await BitStreamFilterAPI.create('h264_mp4toannexb');
98
+ * const control = pipeline(input, decoder, encoder, bsf, output);
99
+ * await control.completion;
100
+ * ```
92
101
  */
93
102
  export declare function pipeline(source: MediaInput, decoder: Decoder, encoder: Encoder, bsf: BitStreamFilterAPI | BitStreamFilterAPI[], output: MediaOutput): PipelineControl;
94
103
  /**
@@ -101,6 +110,16 @@ export declare function pipeline(source: MediaInput, decoder: Decoder, encoder:
101
110
  * @param bsf - Bitstream filter
102
111
  * @param output - Media output destination
103
112
  * @returns Pipeline control for managing execution
113
+ *
114
+ * @example
115
+ * ```typescript
116
+ * const decoder = await Decoder.create(input.video());
117
+ * const filter = await FilterAPI.create('scale=640:480', { ... });
118
+ * const encoder = await Encoder.create(FF_ENCODER_LIBX264, { ... });
119
+ * const bsf = await BitStreamFilterAPI.create('h264_mp4toannexb');
120
+ * const control = pipeline(input, decoder, filter, encoder, bsf, output);
121
+ * await control.completion;
122
+ * ```
104
123
  */
105
124
  export declare function pipeline(source: MediaInput, decoder: Decoder, filter: FilterAPI | FilterAPI[], encoder: Encoder, bsf: BitStreamFilterAPI | BitStreamFilterAPI[], output: MediaOutput): PipelineControl;
106
125
  /**
@@ -113,6 +132,16 @@ export declare function pipeline(source: MediaInput, decoder: Decoder, filter: F
113
132
  * @param encoder - Encoder for encoding frames
114
133
  * @param output - Media output destination
115
134
  * @returns Pipeline control for managing execution
135
+ *
136
+ * @example
137
+ * ```typescript
138
+ * const decoder = await Decoder.create(input.video());
139
+ * const scaleFilter = await FilterAPI.create('scale=640:480', { ... });
140
+ * const cropFilter = await FilterAPI.create('crop=640:360', { ... });
141
+ * const encoder = await Encoder.create(FF_ENCODER_LIBX264, { ... });
142
+ * const control = pipeline(input, decoder, scaleFilter, cropFilter, encoder, output);
143
+ * await control.completion;
144
+ * ```
116
145
  */
117
146
  export declare function pipeline(source: MediaInput, decoder: Decoder, filter1: FilterAPI, filter2: FilterAPI, encoder: Encoder, output: MediaOutput): PipelineControl;
118
147
  /**
@@ -137,6 +166,14 @@ export declare function pipeline(source: MediaInput, output: MediaOutput): Pipel
137
166
  * @param bsf - Bitstream filter for packet processing
138
167
  * @param output - Media output destination
139
168
  * @returns Pipeline control for managing execution
169
+ *
170
+ * @example
171
+ * ```typescript
172
+ * // Convert H.264 stream format while copying
173
+ * const bsf = await BitStreamFilterAPI.create('h264_mp4toannexb');
174
+ * const control = pipeline(input, bsf, output);
175
+ * await control.completion;
176
+ * ```
140
177
  */
141
178
  export declare function pipeline(source: MediaInput, bsf: BitStreamFilterAPI | BitStreamFilterAPI[], output: MediaOutput): PipelineControl;
142
179
  /**
@@ -147,6 +184,16 @@ export declare function pipeline(source: MediaInput, bsf: BitStreamFilterAPI | B
147
184
  * @param encoder - Encoder for encoding frames
148
185
  * @param output - Media output destination
149
186
  * @returns Pipeline control for managing execution
187
+ *
188
+ * @example
189
+ * ```typescript
190
+ * // Process frames from custom source
191
+ * const frameSource = generateFrames(); // Your async frame generator
192
+ * const filter = await FilterAPI.create('scale=1920:1080', { ... });
193
+ * const encoder = await Encoder.create(FF_ENCODER_LIBX264, { ... });
194
+ * const control = pipeline(frameSource, filter, encoder, output);
195
+ * await control.completion;
196
+ * ```
150
197
  */
151
198
  export declare function pipeline(source: AsyncIterable<Frame>, filter: FilterAPI | FilterAPI[], encoder: Encoder, output: MediaOutput): PipelineControl;
152
199
  /**
@@ -156,6 +203,15 @@ export declare function pipeline(source: AsyncIterable<Frame>, filter: FilterAPI
156
203
  * @param encoder - Encoder for encoding frames
157
204
  * @param output - Media output destination
158
205
  * @returns Pipeline control for managing execution
206
+ *
207
+ * @example
208
+ * ```typescript
209
+ * // Encode raw frames directly
210
+ * const frameSource = generateFrames(); // Your async frame generator
211
+ * const encoder = await Encoder.create(FF_ENCODER_LIBX264, { ... });
212
+ * const control = pipeline(frameSource, encoder, output);
213
+ * await control.completion;
214
+ * ```
159
215
  */
160
216
  export declare function pipeline(source: AsyncIterable<Frame>, encoder: Encoder, output: MediaOutput): PipelineControl;
161
217
  /**
@@ -164,6 +220,17 @@ export declare function pipeline(source: AsyncIterable<Frame>, encoder: Encoder,
164
220
  * @param source - Media input source
165
221
  * @param decoder - Decoder for decoding packets
166
222
  * @returns Async generator of frames
223
+ *
224
+ * @example
225
+ * ```typescript
226
+ * // Get decoded frames for custom processing
227
+ * const decoder = await Decoder.create(input.video());
228
+ * const frames = pipeline(input, decoder);
229
+ * for await (const frame of frames) {
230
+ * // Process frame
231
+ * frame.free();
232
+ * }
233
+ * ```
167
234
  */
168
235
  export declare function pipeline(source: MediaInput, decoder: Decoder): AsyncGenerator<Frame>;
169
236
  /**
@@ -173,6 +240,18 @@ export declare function pipeline(source: MediaInput, decoder: Decoder): AsyncGen
173
240
  * @param decoder - Decoder for decoding packets
174
241
  * @param filter - Filter or filter chain
175
242
  * @returns Async generator of frames
243
+ *
244
+ * @example
245
+ * ```typescript
246
+ * // Get filtered frames for custom processing
247
+ * const decoder = await Decoder.create(input.video());
248
+ * const filter = await FilterAPI.create('scale=640:480', { ... });
249
+ * const frames = pipeline(input, decoder, filter);
250
+ * for await (const frame of frames) {
251
+ * // Process filtered frame
252
+ * frame.free();
253
+ * }
254
+ * ```
176
255
  */
177
256
  export declare function pipeline(source: MediaInput, decoder: Decoder, filter: FilterAPI | FilterAPI[]): AsyncGenerator<Frame>;
178
257
  /**
@@ -183,6 +262,19 @@ export declare function pipeline(source: MediaInput, decoder: Decoder, filter: F
183
262
  * @param filter - Filter or filter chain
184
263
  * @param encoder - Encoder for encoding frames
185
264
  * @returns Async generator of packets
265
+ *
266
+ * @example
267
+ * ```typescript
268
+ * // Get encoded packets for custom output handling
269
+ * const decoder = await Decoder.create(input.video());
270
+ * const filter = await FilterAPI.create('scale=640:480', { ... });
271
+ * const encoder = await Encoder.create(FF_ENCODER_LIBX264, { ... });
272
+ * const packets = pipeline(input, decoder, filter, encoder);
273
+ * for await (const packet of packets) {
274
+ * // Handle encoded packet
275
+ * packet.free();
276
+ * }
277
+ * ```
186
278
  */
187
279
  export declare function pipeline(source: MediaInput, decoder: Decoder, filter: FilterAPI | FilterAPI[], encoder: Encoder): AsyncGenerator<Packet>;
188
280
  /**
@@ -192,6 +284,18 @@ export declare function pipeline(source: MediaInput, decoder: Decoder, filter: F
192
284
  * @param decoder - Decoder for decoding packets
193
285
  * @param encoder - Encoder for encoding frames
194
286
  * @returns Async generator of packets
287
+ *
288
+ * @example
289
+ * ```typescript
290
+ * // Transcode to packets for custom output
291
+ * const decoder = await Decoder.create(input.video());
292
+ * const encoder = await Encoder.create(FF_ENCODER_LIBX264, { ... });
293
+ * const packets = pipeline(input, decoder, encoder);
294
+ * for await (const packet of packets) {
295
+ * // Handle transcoded packet
296
+ * packet.free();
297
+ * }
298
+ * ```
195
299
  */
196
300
  export declare function pipeline(source: MediaInput, decoder: Decoder, encoder: Encoder): AsyncGenerator<Packet>;
197
301
  /**
@@ -200,6 +304,18 @@ export declare function pipeline(source: MediaInput, decoder: Decoder, encoder:
200
304
  * @param source - Frame source (async iterable)
201
305
  * @param filter - Filter or filter chain
202
306
  * @returns Async generator of filtered frames
307
+ *
308
+ * @example
309
+ * ```typescript
310
+ * // Filter frames from custom source
311
+ * const frameSource = generateFrames();
312
+ * const filter = await FilterAPI.create('scale=640:480', { ... });
313
+ * const filteredFrames = pipeline(frameSource, filter);
314
+ * for await (const frame of filteredFrames) {
315
+ * // Process filtered frame
316
+ * frame.free();
317
+ * }
318
+ * ```
203
319
  */
204
320
  export declare function pipeline(source: AsyncIterable<Frame>, filter: FilterAPI | FilterAPI[]): AsyncGenerator<Frame>;
205
321
  /**
@@ -208,6 +324,18 @@ export declare function pipeline(source: AsyncIterable<Frame>, filter: FilterAPI
208
324
  * @param source - Frame source (async iterable)
209
325
  * @param encoder - Encoder for encoding frames
210
326
  * @returns Async generator of packets
327
+ *
328
+ * @example
329
+ * ```typescript
330
+ * // Encode frames to packets
331
+ * const frameSource = generateFrames();
332
+ * const encoder = await Encoder.create(FF_ENCODER_LIBX264, { ... });
333
+ * const packets = pipeline(frameSource, encoder);
334
+ * for await (const packet of packets) {
335
+ * // Handle encoded packet
336
+ * packet.free();
337
+ * }
338
+ * ```
211
339
  */
212
340
  export declare function pipeline(source: AsyncIterable<Frame>, encoder: Encoder): AsyncGenerator<Packet>;
213
341
  /**
@@ -217,6 +345,19 @@ export declare function pipeline(source: AsyncIterable<Frame>, encoder: Encoder)
217
345
  * @param filter - Filter or filter chain
218
346
  * @param encoder - Encoder for encoding frames
219
347
  * @returns Async generator of packets
348
+ *
349
+ * @example
350
+ * ```typescript
351
+ * // Process frames with filter and encode to packets
352
+ * const frameSource = generateFrames();
353
+ * const filter = await FilterAPI.create('scale=640:480', { ... });
354
+ * const encoder = await Encoder.create(FF_ENCODER_LIBX264, { ... });
355
+ * const packets = pipeline(frameSource, filter, encoder);
356
+ * for await (const packet of packets) {
357
+ * // Handle encoded packet
358
+ * packet.free();
359
+ * }
360
+ * ```
220
361
  */
221
362
  export declare function pipeline(source: AsyncIterable<Frame>, filter: FilterAPI | FilterAPI[], encoder: Encoder): AsyncGenerator<Packet>;
222
363
  /**
@@ -226,6 +367,20 @@ export declare function pipeline(source: AsyncIterable<Frame>, filter: FilterAPI
226
367
  * @param stages - Named processing stages for each stream
227
368
  * @param output - Single output destination for all streams
228
369
  * @returns Pipeline control for managing execution
370
+ *
371
+ * @example
372
+ * ```typescript
373
+ * // Named pipeline for muxing
374
+ * const control = pipeline(
375
+ * { video: videoInput, audio: audioInput },
376
+ * {
377
+ * video: [videoDecoder, scaleFilter, videoEncoder],
378
+ * audio: [audioDecoder, volumeFilter, audioEncoder]
379
+ * },
380
+ * output
381
+ * );
382
+ * await control.completion;
383
+ * ```
229
384
  */
230
385
  export declare function pipeline<K extends StreamName>(inputs: NamedInputs<K>, stages: NamedStages<K>, output: MediaOutput): PipelineControl;
231
386
  /**
@@ -235,6 +390,20 @@ export declare function pipeline<K extends StreamName>(inputs: NamedInputs<K>, s
235
390
  * @param stages - Named processing stages for each stream
236
391
  * @param outputs - Named output destinations
237
392
  * @returns Pipeline control for managing execution
393
+ *
394
+ * @example
395
+ * ```typescript
396
+ * // Named pipeline for audio/video processing
397
+ * const control = pipeline(
398
+ * { video: videoInput, audio: audioInput },
399
+ * {
400
+ * video: [videoDecoder, scaleFilter, videoEncoder],
401
+ * audio: [audioDecoder, volumeFilter, audioEncoder]
402
+ * },
403
+ * { video: videoOutput, audio: audioOutput }
404
+ * );
405
+ * await control.completion;
406
+ * ```
238
407
  */
239
408
  export declare function pipeline<K extends StreamName>(inputs: NamedInputs<K>, stages: NamedStages<K>, outputs: NamedOutputs<K>): PipelineControl;
240
409
  /**
@@ -243,5 +412,29 @@ export declare function pipeline<K extends StreamName>(inputs: NamedInputs<K>, s
243
412
  * @param inputs - Named input sources
244
413
  * @param stages - Named processing stages
245
414
  * @returns Record of async generators for each stream
415
+ *
416
+ * @example
417
+ * ```typescript
418
+ * // Partial named pipeline
419
+ * const generators = pipeline(
420
+ * { video: videoInput, audio: audioInput },
421
+ * {
422
+ * video: [videoDecoder, scaleFilter, videoEncoder],
423
+ * audio: [audioDecoder, volumeFilter, audioEncoder]
424
+ * }
425
+ * );
426
+ *
427
+ * // Access individual generators
428
+ * const videoGenerator = generators.video;
429
+ * const audioGenerator = generators.audio;
430
+ *
431
+ * // Use the generators
432
+ * for await (const packet of videoGenerator) {
433
+ * // Process video packet
434
+ * }
435
+ * for await (const packet of audioGenerator) {
436
+ * // Process audio packet
437
+ * }
438
+ * ```
246
439
  */
247
440
  export declare function pipeline<K extends StreamName, T extends Packet | Frame = Packet | Frame>(inputs: NamedInputs<K>, stages: NamedStages<K>): Record<K, AsyncGenerator<T>>;
@@ -74,6 +74,7 @@ export function pipeline(...args) {
74
74
  // ============================================================================
75
75
  /**
76
76
  * Pipeline control implementation.
77
+ *
77
78
  * @internal
78
79
  */
79
80
  class PipelineControlImpl {
@@ -89,6 +90,14 @@ class PipelineControlImpl {
89
90
  }
90
91
  /**
91
92
  * Stop the pipeline.
93
+ *
94
+ * @example
95
+ * ```typescript
96
+ * const control = pipeline(input, decoder, filter, encoder, output);
97
+ * control.stop();
98
+ * ```
99
+ *
100
+ * @see {@link PipelineControl.isStopped}
92
101
  */
93
102
  stop() {
94
103
  this._stopped = true;
@@ -97,6 +106,14 @@ class PipelineControlImpl {
97
106
  * Check if pipeline is stopped.
98
107
  *
99
108
  * @returns True if stopped
109
+ *
110
+ * @example
111
+ * ```typescript
112
+ * const control = pipeline(input, decoder, filter, encoder, output);
113
+ * const isStopped = control.isStopped();
114
+ * ```
115
+ *
116
+ * @see {@link PipelineControl.stop}
100
117
  */
101
118
  isStopped() {
102
119
  return this._stopped;
@@ -158,10 +175,6 @@ async function runMediaInputPipelineAsync(input, output, shouldStop) {
158
175
  streams.push({ stream, index: outputIndex });
159
176
  }
160
177
  }
161
- // Write header
162
- if (!output.isHeaderWritten()) {
163
- await output.writeHeader();
164
- }
165
178
  // Copy all packets
166
179
  for await (const packet of input.packets()) {
167
180
  // Check if we should stop
@@ -176,10 +189,7 @@ async function runMediaInputPipelineAsync(input, output, shouldStop) {
176
189
  }
177
190
  packet.free(); // Free packet after processing
178
191
  }
179
- // Write trailer
180
- if (!output.isTrailerWritten()) {
181
- await output.writeTrailer();
182
- }
192
+ await output.close();
183
193
  }
184
194
  // ============================================================================
185
195
  // Simple Pipeline Implementation
@@ -256,7 +266,7 @@ function runSimplePipeline(args) {
256
266
  *
257
267
  * @param source - Source of packets or frames
258
268
  * @param stages - Processing stages
259
- * @yields Processed packets or frames
269
+ * @yields {Packet | Frame} Processed packets or frames
260
270
  * @internal
261
271
  */
262
272
  async function* buildSimplePipeline(source, stages) {
@@ -318,10 +328,6 @@ async function consumeSimplePipeline(stream, output, metadata, shouldStop) {
318
328
  // This case shouldn't happen in simple pipeline
319
329
  throw new Error('Cannot determine stream configuration. This is likely a bug in the pipeline.');
320
330
  }
321
- // Write header if needed
322
- if (!output.isHeaderWritten()) {
323
- await output.writeHeader();
324
- }
325
331
  // Process stream
326
332
  for await (const item of stream) {
327
333
  // Check if we should stop
@@ -343,10 +349,7 @@ async function consumeSimplePipeline(stream, output, metadata, shouldStop) {
343
349
  throw new Error('Cannot write frames directly to MediaOutput. Use an encoder first.');
344
350
  }
345
351
  }
346
- // Write trailer if needed
347
- if (!output.isTrailerWritten()) {
348
- await output.writeTrailer();
349
- }
352
+ await output.close();
350
353
  }
351
354
  // ============================================================================
352
355
  // Named Pipeline Implementation
@@ -525,7 +528,7 @@ async function runNamedPipelineAsync(inputs, stages, output, shouldStop) {
525
528
  * @param source - Source packets
526
529
  * @param stages - Processing stages
527
530
  * @param metadata - Stream metadata
528
- * @yields Processed packets or frames
531
+ * @yields {Packet | Frame} Processed packets or frames
529
532
  * @internal
530
533
  */
531
534
  async function* buildFlexibleNamedStreamPipeline(source, stages, metadata) {
@@ -567,7 +570,7 @@ async function* buildFlexibleNamedStreamPipeline(source, stages, metadata) {
567
570
  * @param source - Source packets
568
571
  * @param stages - Processing stages
569
572
  * @param metadata - Stream metadata
570
- * @yields Processed packets
573
+ * @yields {Packet} Processed packets
571
574
  * @internal
572
575
  */
573
576
  async function* buildNamedStreamPipeline(source, stages, metadata) {
@@ -649,10 +652,6 @@ async function consumeNamedStream(stream, output, metadata, shouldStop) {
649
652
  }
650
653
  // Store for later use
651
654
  metadata.streamIndex = streamIndex;
652
- // Write header if needed
653
- if (!output.isHeaderWritten()) {
654
- await output.writeHeader();
655
- }
656
655
  // Write all packets
657
656
  for await (const packet of stream) {
658
657
  // Check if we should stop
@@ -708,10 +707,6 @@ async function interleaveToOutput(streams, output, metadata, shouldStop) {
708
707
  throw new Error(`Cannot determine stream configuration for ${name}. This is likely a bug in the pipeline.`);
709
708
  }
710
709
  }
711
- // Write header
712
- if (!output.isHeaderWritten()) {
713
- await output.writeHeader();
714
- }
715
710
  const queues = new Map();
716
711
  const iterators = new Map();
717
712
  const done = new Set();
@@ -803,10 +798,7 @@ async function interleaveToOutput(streams, output, metadata, shouldStop) {
803
798
  }
804
799
  }
805
800
  }
806
- // Write trailer
807
- if (!output.isTrailerWritten()) {
808
- await output.writeTrailer();
809
- }
801
+ await output.close();
810
802
  }
811
803
  // ============================================================================
812
804
  // Stream Processing Functions
@@ -816,7 +808,7 @@ async function interleaveToOutput(streams, output, metadata, shouldStop) {
816
808
  *
817
809
  * @param packets - Input packets
818
810
  * @param decoder - Decoder instance
819
- * @yields Decoded frames
811
+ * @yields {Frame} Decoded frames
820
812
  * @internal
821
813
  */
822
814
  async function* decodeStream(packets, decoder) {
@@ -841,10 +833,11 @@ async function* decodeStream(packets, decoder) {
841
833
  }
842
834
  }
843
835
  else {
844
- // Fallback to loop
845
- let frame;
846
- while ((frame = await decoder.flush()) !== null) {
847
- yield frame;
836
+ // Fallback to manual flush + receive
837
+ await decoder.flush();
838
+ let packet;
839
+ while ((packet = await decoder.receive()) !== null) {
840
+ yield packet;
848
841
  }
849
842
  }
850
843
  }
@@ -853,7 +846,7 @@ async function* decodeStream(packets, decoder) {
853
846
  *
854
847
  * @param frames - Input frames
855
848
  * @param encoder - Encoder instance
856
- * @yields Encoded packets
849
+ * @yields {Packet} Encoded packets
857
850
  * @internal
858
851
  */
859
852
  async function* encodeStream(frames, encoder) {
@@ -878,9 +871,10 @@ async function* encodeStream(frames, encoder) {
878
871
  }
879
872
  }
880
873
  else {
881
- // Fallback to loop
874
+ // Fallback to manual flush + receive
875
+ await encoder.flush();
882
876
  let packet;
883
- while ((packet = await encoder.flush()) !== null) {
877
+ while ((packet = await encoder.receive()) !== null) {
884
878
  yield packet;
885
879
  }
886
880
  }
@@ -890,7 +884,7 @@ async function* encodeStream(frames, encoder) {
890
884
  *
891
885
  * @param frames - Input frames
892
886
  * @param filter - Filter instance
893
- * @yields Filtered frames
887
+ * @yields {Frame} Filtered frames
894
888
  * @internal
895
889
  */
896
890
  async function* filterStream(frames, filter) {
@@ -933,7 +927,7 @@ async function* filterStream(frames, filter) {
933
927
  *
934
928
  * @param packets - Input packets
935
929
  * @param bsf - Bitstream filter instance
936
- * @yields Filtered packets
930
+ * @yields {Packet} Filtered packets
937
931
  * @internal
938
932
  */
939
933
  async function* bitStreamFilterStream(packets, bsf) {
@@ -1044,7 +1038,7 @@ function isBitStreamFilterAPI(obj) {
1044
1038
  * @internal
1045
1039
  */
1046
1040
  function isMediaOutput(obj) {
1047
- return obj && typeof obj.writePacket === 'function' && typeof obj.writeHeader === 'function';
1041
+ return obj && typeof obj.writePacket === 'function' && typeof obj.addStream === 'function';
1048
1042
  }
1049
1043
  /**
1050
1044
  * Check if object is Packet.
@@ -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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"}