node-av 1.3.0 → 2.1.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 (127) hide show
  1. package/README.md +47 -40
  2. package/binding.gyp +12 -0
  3. package/dist/api/bitstream-filter.d.ts +134 -2
  4. package/dist/api/bitstream-filter.js +200 -2
  5. package/dist/api/bitstream-filter.js.map +1 -1
  6. package/dist/api/decoder.d.ts +261 -105
  7. package/dist/api/decoder.js +384 -171
  8. package/dist/api/decoder.js.map +1 -1
  9. package/dist/api/encoder.d.ts +338 -74
  10. package/dist/api/encoder.js +546 -188
  11. package/dist/api/encoder.js.map +1 -1
  12. package/dist/api/filter-presets.d.ts +479 -1513
  13. package/dist/api/filter-presets.js +1044 -2005
  14. package/dist/api/filter-presets.js.map +1 -1
  15. package/dist/api/filter.d.ts +370 -150
  16. package/dist/api/filter.js +647 -364
  17. package/dist/api/filter.js.map +1 -1
  18. package/dist/api/hardware.d.ts +25 -31
  19. package/dist/api/hardware.js +36 -70
  20. package/dist/api/hardware.js.map +1 -1
  21. package/dist/api/index.d.ts +1 -1
  22. package/dist/api/index.js +1 -1
  23. package/dist/api/index.js.map +1 -1
  24. package/dist/api/io-stream.d.ts +6 -0
  25. package/dist/api/io-stream.js +2 -0
  26. package/dist/api/io-stream.js.map +1 -1
  27. package/dist/api/media-input.d.ts +208 -2
  28. package/dist/api/media-input.js +356 -8
  29. package/dist/api/media-input.js.map +1 -1
  30. package/dist/api/media-output.d.ts +142 -104
  31. package/dist/api/media-output.js +446 -179
  32. package/dist/api/media-output.js.map +1 -1
  33. package/dist/api/pipeline.d.ts +82 -17
  34. package/dist/api/pipeline.js +80 -42
  35. package/dist/api/pipeline.js.map +1 -1
  36. package/dist/api/types.d.ts +24 -57
  37. package/dist/api/utils.js +2 -0
  38. package/dist/api/utils.js.map +1 -1
  39. package/dist/lib/audio-fifo.d.ts +103 -0
  40. package/dist/lib/audio-fifo.js +109 -0
  41. package/dist/lib/audio-fifo.js.map +1 -1
  42. package/dist/lib/binding.d.ts +1 -0
  43. package/dist/lib/binding.js.map +1 -1
  44. package/dist/lib/bitstream-filter-context.d.ts +79 -0
  45. package/dist/lib/bitstream-filter-context.js +83 -0
  46. package/dist/lib/bitstream-filter-context.js.map +1 -1
  47. package/dist/lib/bitstream-filter.d.ts +2 -0
  48. package/dist/lib/bitstream-filter.js +2 -0
  49. package/dist/lib/bitstream-filter.js.map +1 -1
  50. package/dist/lib/codec-context.d.ts +168 -0
  51. package/dist/lib/codec-context.js +178 -0
  52. package/dist/lib/codec-context.js.map +1 -1
  53. package/dist/lib/codec-parameters.d.ts +3 -0
  54. package/dist/lib/codec-parameters.js +3 -0
  55. package/dist/lib/codec-parameters.js.map +1 -1
  56. package/dist/lib/codec-parser.d.ts +6 -0
  57. package/dist/lib/codec-parser.js +6 -0
  58. package/dist/lib/codec-parser.js.map +1 -1
  59. package/dist/lib/codec.d.ts +12 -0
  60. package/dist/lib/codec.js +12 -0
  61. package/dist/lib/codec.js.map +1 -1
  62. package/dist/lib/dictionary.d.ts +18 -2
  63. package/dist/lib/dictionary.js +18 -2
  64. package/dist/lib/dictionary.js.map +1 -1
  65. package/dist/lib/error.d.ts +8 -0
  66. package/dist/lib/error.js +9 -0
  67. package/dist/lib/error.js.map +1 -1
  68. package/dist/lib/filter-context.d.ts +119 -2
  69. package/dist/lib/filter-context.js +119 -0
  70. package/dist/lib/filter-context.js.map +1 -1
  71. package/dist/lib/filter-graph.d.ts +80 -0
  72. package/dist/lib/filter-graph.js +84 -0
  73. package/dist/lib/filter-graph.js.map +1 -1
  74. package/dist/lib/filter-inout.d.ts +1 -0
  75. package/dist/lib/filter-inout.js +1 -0
  76. package/dist/lib/filter-inout.js.map +1 -1
  77. package/dist/lib/filter.d.ts +2 -0
  78. package/dist/lib/filter.js +2 -0
  79. package/dist/lib/filter.js.map +1 -1
  80. package/dist/lib/format-context.d.ts +356 -20
  81. package/dist/lib/format-context.js +375 -23
  82. package/dist/lib/format-context.js.map +1 -1
  83. package/dist/lib/frame.d.ts +84 -1
  84. package/dist/lib/frame.js +96 -0
  85. package/dist/lib/frame.js.map +1 -1
  86. package/dist/lib/hardware-device-context.d.ts +8 -0
  87. package/dist/lib/hardware-device-context.js +8 -0
  88. package/dist/lib/hardware-device-context.js.map +1 -1
  89. package/dist/lib/hardware-frames-context.d.ts +55 -0
  90. package/dist/lib/hardware-frames-context.js +57 -0
  91. package/dist/lib/hardware-frames-context.js.map +1 -1
  92. package/dist/lib/input-format.d.ts +43 -3
  93. package/dist/lib/input-format.js +48 -0
  94. package/dist/lib/input-format.js.map +1 -1
  95. package/dist/lib/io-context.d.ts +212 -0
  96. package/dist/lib/io-context.js +228 -0
  97. package/dist/lib/io-context.js.map +1 -1
  98. package/dist/lib/log.d.ts +2 -0
  99. package/dist/lib/log.js +2 -0
  100. package/dist/lib/log.js.map +1 -1
  101. package/dist/lib/native-types.d.ts +39 -1
  102. package/dist/lib/option.d.ts +90 -0
  103. package/dist/lib/option.js +97 -0
  104. package/dist/lib/option.js.map +1 -1
  105. package/dist/lib/output-format.d.ts +4 -0
  106. package/dist/lib/output-format.js +4 -0
  107. package/dist/lib/output-format.js.map +1 -1
  108. package/dist/lib/packet.d.ts +7 -0
  109. package/dist/lib/packet.js +7 -0
  110. package/dist/lib/packet.js.map +1 -1
  111. package/dist/lib/rational.d.ts +1 -0
  112. package/dist/lib/rational.js +1 -0
  113. package/dist/lib/rational.js.map +1 -1
  114. package/dist/lib/software-resample-context.d.ts +64 -0
  115. package/dist/lib/software-resample-context.js +66 -0
  116. package/dist/lib/software-resample-context.js.map +1 -1
  117. package/dist/lib/software-scale-context.d.ts +98 -0
  118. package/dist/lib/software-scale-context.js +102 -0
  119. package/dist/lib/software-scale-context.js.map +1 -1
  120. package/dist/lib/stream.d.ts +1 -0
  121. package/dist/lib/stream.js +1 -0
  122. package/dist/lib/stream.js.map +1 -1
  123. package/dist/lib/utilities.d.ts +60 -0
  124. package/dist/lib/utilities.js +60 -0
  125. package/dist/lib/utilities.js.map +1 -1
  126. package/package.json +18 -18
  127. package/release_notes.md +0 -29
@@ -76,11 +76,17 @@ export declare class SoftwareScaleContext extends OptionMember<NativeSoftwareSca
76
76
  * Direct mapping to sws_getContext().
77
77
  *
78
78
  * @param srcW - Source width in pixels
79
+ *
79
80
  * @param srcH - Source height in pixels
81
+ *
80
82
  * @param srcFormat - Source pixel format
83
+ *
81
84
  * @param dstW - Destination width in pixels
85
+ *
82
86
  * @param dstH - Destination height in pixels
87
+ *
83
88
  * @param dstFormat - Destination pixel format
89
+ *
84
90
  * @param flags - Scaling algorithm flags (SWS_*)
85
91
  *
86
92
  * @example
@@ -155,11 +161,17 @@ export declare class SoftwareScaleContext extends OptionMember<NativeSoftwareSca
155
161
  * Direct mapping to sws_scale().
156
162
  *
157
163
  * @param srcSlice - Source data planes (one buffer per plane)
164
+ *
158
165
  * @param srcStride - Bytes per line for each plane
166
+ *
159
167
  * @param srcSliceY - Starting Y position in source
168
+ *
160
169
  * @param srcSliceH - Height of source slice to process
170
+ *
161
171
  * @param dst - Destination data planes
172
+ *
162
173
  * @param dstStride - Destination bytes per line
174
+ *
163
175
  * @returns Output height in pixels, negative AVERROR on error:
164
176
  * - AVERROR_EINVAL: Invalid parameters
165
177
  *
@@ -181,6 +193,52 @@ export declare class SoftwareScaleContext extends OptionMember<NativeSoftwareSca
181
193
  * @see {@link scaleFrame} For frame-based scaling
182
194
  */
183
195
  scale(srcSlice: Buffer[], srcStride: number[], srcSliceY: number, srcSliceH: number, dst: Buffer[], dstStride: number[]): Promise<number>;
196
+ /**
197
+ * Scale video synchronously.
198
+ * Synchronous version of scale.
199
+ *
200
+ * Scales raw video data from source to destination format.
201
+ * Can scale a slice or entire image.
202
+ *
203
+ * Direct mapping to sws_scale().
204
+ *
205
+ * @param srcSlice - Array of source buffers (one per plane)
206
+ *
207
+ * @param srcStride - Array of source strides (bytes per row)
208
+ *
209
+ * @param srcSliceY - Y position of slice (0 for full image)
210
+ *
211
+ * @param srcSliceH - Height of slice (full height for entire image)
212
+ *
213
+ * @param dst - Array of destination buffers (one per plane)
214
+ *
215
+ * @param dstStride - Array of destination strides
216
+ *
217
+ * @returns Height of output image, or negative AVERROR:
218
+ * - AVERROR_EINVAL: Invalid parameters
219
+ *
220
+ * @example
221
+ * ```typescript
222
+ * import { FFmpegError } from 'node-av';
223
+ *
224
+ * // Scale YUV420P image
225
+ * const srcBufs = [yPlane, uPlane, vPlane];
226
+ * const srcStrides = [srcWidth, srcWidth/2, srcWidth/2];
227
+ * const dstBufs = [dstY, dstU, dstV];
228
+ * const dstStrides = [dstWidth, dstWidth/2, dstWidth/2];
229
+ *
230
+ * const height = scaler.scaleSync(
231
+ * srcBufs, srcStrides,
232
+ * 0, srcHeight, // Full image
233
+ * dstBufs, dstStrides
234
+ * );
235
+ * FFmpegError.throwIfError(height, 'scaleSync');
236
+ * console.log(`Scaled ${height} lines`);
237
+ * ```
238
+ *
239
+ * @see {@link scale} For async version
240
+ */
241
+ scaleSync(srcSlice: Buffer[], srcStride: number[], srcSliceY: number, srcSliceH: number, dst: Buffer[], dstStride: number[]): number;
184
242
  /**
185
243
  * Scale video frame.
186
244
  *
@@ -190,7 +248,9 @@ export declare class SoftwareScaleContext extends OptionMember<NativeSoftwareSca
190
248
  * Direct mapping to sws_scale_frame().
191
249
  *
192
250
  * @param dst - Destination frame (must be allocated)
251
+ *
193
252
  * @param src - Source frame
253
+ *
194
254
  * @returns 0 on success, negative AVERROR on error:
195
255
  * - AVERROR_EINVAL: Invalid parameters
196
256
  * - AVERROR_ENOMEM: Memory allocation failure
@@ -218,6 +278,44 @@ export declare class SoftwareScaleContext extends OptionMember<NativeSoftwareSca
218
278
  * @see {@link scale} For buffer-based scaling
219
279
  */
220
280
  scaleFrame(dst: Frame, src: Frame): Promise<number>;
281
+ /**
282
+ * Scale video frame synchronously.
283
+ * Synchronous version of scaleFrame.
284
+ *
285
+ * Scales an entire video frame to the destination format.
286
+ * Simpler interface than scaleSync() for frame-based processing.
287
+ *
288
+ * Direct mapping to sws_scale_frame().
289
+ *
290
+ * @param dst - Destination frame (must be allocated)
291
+ *
292
+ * @param src - Source frame
293
+ *
294
+ * @returns 0 on success, negative AVERROR on error:
295
+ * - AVERROR_EINVAL: Invalid parameters
296
+ *
297
+ * @example
298
+ * ```typescript
299
+ * import { FFmpegError } from 'node-av';
300
+ * import { AV_PIX_FMT_YUV420P, AV_PIX_FMT_RGB24 } from 'node-av/constants';
301
+ *
302
+ * // Convert YUV to RGB
303
+ * const srcFrame = new Frame();
304
+ * srcFrame.allocBuffer(AV_PIX_FMT_YUV420P, 1920, 1080);
305
+ * // ... fill with YUV data ...
306
+ *
307
+ * const dstFrame = new Frame();
308
+ * dstFrame.allocBuffer(AV_PIX_FMT_RGB24, 1920, 1080);
309
+ *
310
+ * const ret = scaler.scaleFrameSync(dstFrame, srcFrame);
311
+ * FFmpegError.throwIfError(ret, 'scaleFrameSync');
312
+ *
313
+ * // dstFrame now contains scaled image
314
+ * ```
315
+ *
316
+ * @see {@link scaleFrame} For async version
317
+ */
318
+ scaleFrameSync(dst: Frame, src: Frame): number;
221
319
  /**
222
320
  * Get the underlying native SoftwareScaleContext object.
223
321
  *
@@ -79,11 +79,17 @@ export class SoftwareScaleContext extends OptionMember {
79
79
  * Direct mapping to sws_getContext().
80
80
  *
81
81
  * @param srcW - Source width in pixels
82
+ *
82
83
  * @param srcH - Source height in pixels
84
+ *
83
85
  * @param srcFormat - Source pixel format
86
+ *
84
87
  * @param dstW - Destination width in pixels
88
+ *
85
89
  * @param dstH - Destination height in pixels
90
+ *
86
91
  * @param dstFormat - Destination pixel format
92
+ *
87
93
  * @param flags - Scaling algorithm flags (SWS_*)
88
94
  *
89
95
  * @example
@@ -164,11 +170,17 @@ export class SoftwareScaleContext extends OptionMember {
164
170
  * Direct mapping to sws_scale().
165
171
  *
166
172
  * @param srcSlice - Source data planes (one buffer per plane)
173
+ *
167
174
  * @param srcStride - Bytes per line for each plane
175
+ *
168
176
  * @param srcSliceY - Starting Y position in source
177
+ *
169
178
  * @param srcSliceH - Height of source slice to process
179
+ *
170
180
  * @param dst - Destination data planes
181
+ *
171
182
  * @param dstStride - Destination bytes per line
183
+ *
172
184
  * @returns Output height in pixels, negative AVERROR on error:
173
185
  * - AVERROR_EINVAL: Invalid parameters
174
186
  *
@@ -192,6 +204,54 @@ export class SoftwareScaleContext extends OptionMember {
192
204
  async scale(srcSlice, srcStride, srcSliceY, srcSliceH, dst, dstStride) {
193
205
  return await this.native.scale(srcSlice, srcStride, srcSliceY, srcSliceH, dst, dstStride);
194
206
  }
207
+ /**
208
+ * Scale video synchronously.
209
+ * Synchronous version of scale.
210
+ *
211
+ * Scales raw video data from source to destination format.
212
+ * Can scale a slice or entire image.
213
+ *
214
+ * Direct mapping to sws_scale().
215
+ *
216
+ * @param srcSlice - Array of source buffers (one per plane)
217
+ *
218
+ * @param srcStride - Array of source strides (bytes per row)
219
+ *
220
+ * @param srcSliceY - Y position of slice (0 for full image)
221
+ *
222
+ * @param srcSliceH - Height of slice (full height for entire image)
223
+ *
224
+ * @param dst - Array of destination buffers (one per plane)
225
+ *
226
+ * @param dstStride - Array of destination strides
227
+ *
228
+ * @returns Height of output image, or negative AVERROR:
229
+ * - AVERROR_EINVAL: Invalid parameters
230
+ *
231
+ * @example
232
+ * ```typescript
233
+ * import { FFmpegError } from 'node-av';
234
+ *
235
+ * // Scale YUV420P image
236
+ * const srcBufs = [yPlane, uPlane, vPlane];
237
+ * const srcStrides = [srcWidth, srcWidth/2, srcWidth/2];
238
+ * const dstBufs = [dstY, dstU, dstV];
239
+ * const dstStrides = [dstWidth, dstWidth/2, dstWidth/2];
240
+ *
241
+ * const height = scaler.scaleSync(
242
+ * srcBufs, srcStrides,
243
+ * 0, srcHeight, // Full image
244
+ * dstBufs, dstStrides
245
+ * );
246
+ * FFmpegError.throwIfError(height, 'scaleSync');
247
+ * console.log(`Scaled ${height} lines`);
248
+ * ```
249
+ *
250
+ * @see {@link scale} For async version
251
+ */
252
+ scaleSync(srcSlice, srcStride, srcSliceY, srcSliceH, dst, dstStride) {
253
+ return this.native.scaleSync(srcSlice, srcStride, srcSliceY, srcSliceH, dst, dstStride);
254
+ }
195
255
  /**
196
256
  * Scale video frame.
197
257
  *
@@ -201,7 +261,9 @@ export class SoftwareScaleContext extends OptionMember {
201
261
  * Direct mapping to sws_scale_frame().
202
262
  *
203
263
  * @param dst - Destination frame (must be allocated)
264
+ *
204
265
  * @param src - Source frame
266
+ *
205
267
  * @returns 0 on success, negative AVERROR on error:
206
268
  * - AVERROR_EINVAL: Invalid parameters
207
269
  * - AVERROR_ENOMEM: Memory allocation failure
@@ -231,6 +293,46 @@ export class SoftwareScaleContext extends OptionMember {
231
293
  async scaleFrame(dst, src) {
232
294
  return await this.native.scaleFrame(dst.getNative(), src.getNative());
233
295
  }
296
+ /**
297
+ * Scale video frame synchronously.
298
+ * Synchronous version of scaleFrame.
299
+ *
300
+ * Scales an entire video frame to the destination format.
301
+ * Simpler interface than scaleSync() for frame-based processing.
302
+ *
303
+ * Direct mapping to sws_scale_frame().
304
+ *
305
+ * @param dst - Destination frame (must be allocated)
306
+ *
307
+ * @param src - Source frame
308
+ *
309
+ * @returns 0 on success, negative AVERROR on error:
310
+ * - AVERROR_EINVAL: Invalid parameters
311
+ *
312
+ * @example
313
+ * ```typescript
314
+ * import { FFmpegError } from 'node-av';
315
+ * import { AV_PIX_FMT_YUV420P, AV_PIX_FMT_RGB24 } from 'node-av/constants';
316
+ *
317
+ * // Convert YUV to RGB
318
+ * const srcFrame = new Frame();
319
+ * srcFrame.allocBuffer(AV_PIX_FMT_YUV420P, 1920, 1080);
320
+ * // ... fill with YUV data ...
321
+ *
322
+ * const dstFrame = new Frame();
323
+ * dstFrame.allocBuffer(AV_PIX_FMT_RGB24, 1920, 1080);
324
+ *
325
+ * const ret = scaler.scaleFrameSync(dstFrame, srcFrame);
326
+ * FFmpegError.throwIfError(ret, 'scaleFrameSync');
327
+ *
328
+ * // dstFrame now contains scaled image
329
+ * ```
330
+ *
331
+ * @see {@link scaleFrame} For async version
332
+ */
333
+ scaleFrameSync(dst, src) {
334
+ return this.native.scaleFrameSync(dst.getNative(), src.getNative());
335
+ }
234
336
  /**
235
337
  * Get the underlying native SoftwareScaleContext object.
236
338
  *
@@ -1 +1 @@
1
- {"version":3,"file":"software-scale-context.js","sourceRoot":"","sources":["../../src/lib/software-scale-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAM3C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,MAAM,OAAO,oBAAqB,SAAQ,YAAwC;IAChF;QACE,KAAK,CAAC,IAAI,QAAQ,CAAC,oBAAoB,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,YAAY;QACV,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;IAC7B,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAqCG;IACH,UAAU,CAAC,IAAY,EAAE,IAAY,EAAE,SAAwB,EAAE,IAAY,EAAE,IAAY,EAAE,SAAwB,EAAE,QAAiB,YAAY;QAClJ,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAC9E,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,WAAW;QACT,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;IACnC,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,WAAW;QACT,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;IAC5B,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiCG;IACH,KAAK,CAAC,KAAK,CAAC,QAAkB,EAAE,SAAmB,EAAE,SAAiB,EAAE,SAAiB,EAAE,GAAa,EAAE,SAAmB;QAC3H,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;IAC5F,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmCG;IACH,KAAK,CAAC,UAAU,CAAC,GAAU,EAAE,GAAU;QACrC,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;IACxE,CAAC;IAED;;;;;;OAMG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,CAAC,MAAM,CAAC,OAAO,CAAC;QACd,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;IAChC,CAAC;CACF"}
1
+ {"version":3,"file":"software-scale-context.js","sourceRoot":"","sources":["../../src/lib/software-scale-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAM3C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,MAAM,OAAO,oBAAqB,SAAQ,YAAwC;IAChF;QACE,KAAK,CAAC,IAAI,QAAQ,CAAC,oBAAoB,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,YAAY;QACV,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;IAC7B,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2CG;IACH,UAAU,CAAC,IAAY,EAAE,IAAY,EAAE,SAAwB,EAAE,IAAY,EAAE,IAAY,EAAE,SAAwB,EAAE,QAAiB,YAAY;QAClJ,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAC9E,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,WAAW;QACT,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;IACnC,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,WAAW;QACT,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;IAC5B,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuCG;IACH,KAAK,CAAC,KAAK,CAAC,QAAkB,EAAE,SAAmB,EAAE,SAAiB,EAAE,SAAiB,EAAE,GAAa,EAAE,SAAmB;QAC3H,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;IAC5F,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4CG;IACH,SAAS,CAAC,QAAkB,EAAE,SAAmB,EAAE,SAAiB,EAAE,SAAiB,EAAE,GAAa,EAAE,SAAmB;QACzH,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;IAC1F,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAqCG;IACH,KAAK,CAAC,UAAU,CAAC,GAAU,EAAE,GAAU;QACrC,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;IACxE,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAoCG;IACH,cAAc,CAAC,GAAU,EAAE,GAAU;QACnC,OAAO,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;IACtE,CAAC;IAED;;;;;;OAMG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,CAAC,MAAM,CAAC,OAAO,CAAC;QACd,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;IAChC,CAAC;CACF"}
@@ -50,6 +50,7 @@ export declare class Stream implements NativeWrapper<NativeStream> {
50
50
  private _codecpar?;
51
51
  /**
52
52
  * @param native - The native stream instance
53
+ *
53
54
  * @internal
54
55
  */
55
56
  constructor(native: NativeStream);
@@ -47,6 +47,7 @@ export class Stream {
47
47
  _codecpar; // Cache the wrapped codecpar
48
48
  /**
49
49
  * @param native - The native stream instance
50
+ *
50
51
  * @internal
51
52
  */
52
53
  constructor(native) {
@@ -1 +1 @@
1
- {"version":3,"file":"stream.js","sourceRoot":"","sources":["../../src/lib/stream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stream.js","sourceRoot":"","sources":["../../src/lib/stream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAMzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,MAAM,OAAO,MAAM;IACT,MAAM,CAAe;IACrB,SAAS,CAAmB,CAAC,6BAA6B;IAElE;;;;OAIG;IACH,YAAY,MAAoB;QAC9B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;IAC3B,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,EAAE;QACJ,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;IACxB,CAAC;IAED,IAAI,EAAE,CAAC,KAAa;QAClB,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,CAAC;IACzB,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,QAAQ;QACV,+CAA+C;QAC/C,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC,SAAS,CAAC;QACxB,CAAC;QAED,+BAA+B;QAC/B,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,SAAS,CAAoB,CAAC;QAC1E,MAAc,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;QAC9C,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC;QACxB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,QAAQ,CAAC,KAAsB;QACjC,sCAAsC;QACtC,yCAAyC;QACzC,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;QACzC,4DAA4D;QAC5D,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,QAAQ;QACV,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;QAChC,OAAO,IAAI,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,QAAQ,CAAC,KAAe;QAC1B,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC;IAC5D,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;IAC/B,CAAC;IAED,IAAI,SAAS,CAAC,KAAa;QACzB,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,KAAK,CAAC;IAChC,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;IAC9B,CAAC;IAED,IAAI,QAAQ,CAAC,KAAa;QACxB,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC;IAC/B,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;IAC9B,CAAC;IAED,IAAI,QAAQ,CAAC,KAAa;QACxB,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC;IAC/B,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;IACjC,CAAC;IAED,IAAI,WAAW,CAAC,KAAoB;QAClC,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC;IAClC,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;IAC7B,CAAC;IAED,IAAI,OAAO,CAAC,KAAgB;QAC1B,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;IAC9B,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,iBAAiB;QACnB,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC;QAC1C,OAAO,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;IAClD,CAAC;IAED,IAAI,iBAAiB,CAAC,KAAe;QACnC,IAAI,CAAC,MAAM,CAAC,iBAAiB,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC;IACrE,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,YAAY;QACd,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;QACpC,iDAAiD;QACjD,IAAI,EAAE,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC;YACjB,OAAO,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5B,CAAC;QACD,OAAO,IAAI,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,YAAY,CAAC,KAAe;QAC9B,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC;IAChE,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,UAAU;QACZ,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC;QAClC,iDAAiD;QACjD,IAAI,EAAE,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC;YACjB,OAAO,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5B,CAAC;QACD,OAAO,IAAI,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,UAAU,CAAC,KAAe;QAC5B,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC;IAC9D,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,QAAQ;QACV,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;QACxC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IAC3C,CAAC;IAED,IAAI,QAAQ,CAAC,KAAwB;QACnC,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,KAAK,EAAE,SAAS,EAAE,IAAI,IAAI,CAAC;IACpD,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,MAAM,CAAC,WAAgC,CAAC;IACtD,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC;IAChC,CAAC;IAED,IAAI,UAAU,CAAC,KAAwB;QACrC,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,KAAK,CAAC;IACjC,CAAC;IAED;;;;;;OAMG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;CACF"}
@@ -10,6 +10,7 @@ import type { ChannelLayout, IRational } from './types.js';
10
10
  * Direct mapping to av_get_bytes_per_sample().
11
11
  *
12
12
  * @param sampleFmt - Audio sample format
13
+ *
13
14
  * @returns Number of bytes per sample, or 0 if unknown format
14
15
  *
15
16
  * @example
@@ -31,6 +32,7 @@ export declare function avGetBytesPerSample(sampleFmt: AVSampleFormat): number;
31
32
  * Direct mapping to av_get_sample_fmt_name().
32
33
  *
33
34
  * @param sampleFmt - Audio sample format
35
+ *
34
36
  * @returns Format name, or null if unknown
35
37
  *
36
38
  * @example
@@ -53,6 +55,7 @@ export declare function avGetSampleFmtName(sampleFmt: AVSampleFormat): string |
53
55
  * Direct mapping to av_get_packed_sample_fmt().
54
56
  *
55
57
  * @param sampleFmt - Audio sample format
58
+ *
56
59
  * @returns Packed version of the format
57
60
  *
58
61
  * @example
@@ -76,6 +79,7 @@ export declare function avGetPackedSampleFmt(sampleFmt: AVSampleFormat): AVSampl
76
79
  * Direct mapping to av_get_planar_sample_fmt().
77
80
  *
78
81
  * @param sampleFmt - Audio sample format
82
+ *
79
83
  * @returns Planar version of the format
80
84
  *
81
85
  * @example
@@ -99,6 +103,7 @@ export declare function avGetPlanarSampleFmt(sampleFmt: AVSampleFormat): AVSampl
99
103
  * Direct mapping to av_sample_fmt_is_planar().
100
104
  *
101
105
  * @param sampleFmt - Audio sample format to check
106
+ *
102
107
  * @returns True if planar, false if packed/interleaved
103
108
  *
104
109
  * @example
@@ -120,6 +125,7 @@ export declare function avSampleFmtIsPlanar(sampleFmt: AVSampleFormat): boolean;
120
125
  * Direct mapping to avcodec_get_name().
121
126
  *
122
127
  * @param codecId - Codec ID from AVCodecID enum
128
+ *
123
129
  * @returns Codec name string or null
124
130
  *
125
131
  * @example
@@ -143,6 +149,7 @@ export declare function avGetCodecName(codecId: AVCodecID): string | null;
143
149
  * Direct mapping to av_get_pix_fmt_name().
144
150
  *
145
151
  * @param pixFmt - Pixel format
152
+ *
146
153
  * @returns Format name, or null if unknown
147
154
  *
148
155
  * @example
@@ -164,6 +171,7 @@ export declare function avGetPixFmtName(pixFmt: AVPixelFormat): string | null;
164
171
  * Direct mapping to av_get_pix_fmt().
165
172
  *
166
173
  * @param name - Pixel format name
174
+ *
167
175
  * @returns Pixel format enum, or AV_PIX_FMT_NONE if unknown
168
176
  *
169
177
  * @example
@@ -185,6 +193,7 @@ export declare function avGetPixFmtFromName(name: string): AVPixelFormat;
185
193
  * Direct mapping to av_pix_fmt_desc_get() with hwaccel check.
186
194
  *
187
195
  * @param pixFmt - Pixel format to check
196
+ *
188
197
  * @returns True if hardware format, false if software format
189
198
  *
190
199
  * @example
@@ -206,6 +215,7 @@ export declare function avIsHardwarePixelFormat(pixFmt: AVPixelFormat): boolean;
206
215
  * Direct mapping to av_get_media_type_string().
207
216
  *
208
217
  * @param mediaType - Media type enum
218
+ *
209
219
  * @returns Media type name, or null if unknown
210
220
  *
211
221
  * @example
@@ -228,9 +238,13 @@ export declare function avGetMediaTypeString(mediaType: AVMediaType): string | n
228
238
  * Direct mapping to av_image_alloc().
229
239
  *
230
240
  * @param width - Image width in pixels
241
+ *
231
242
  * @param height - Image height in pixels
243
+ *
232
244
  * @param pixFmt - Pixel format
245
+ *
233
246
  * @param align - Buffer alignment (typically 1 or 32)
247
+ *
234
248
  * @returns Object with buffer, size, and line sizes
235
249
  *
236
250
  * @throws {FFmpegError} If allocation fails
@@ -262,11 +276,17 @@ export declare function avImageAlloc(width: number, height: number, pixFmt: AVPi
262
276
  * Direct mapping to av_image_copy2().
263
277
  *
264
278
  * @param dstData - Destination data planes
279
+ *
265
280
  * @param dstLinesizes - Destination bytes per line
281
+ *
266
282
  * @param srcData - Source data planes
283
+ *
267
284
  * @param srcLinesizes - Source bytes per line
285
+ *
268
286
  * @param pixFmt - Pixel format
287
+ *
269
288
  * @param width - Image width
289
+ *
270
290
  * @param height - Image height
271
291
  *
272
292
  * @example
@@ -289,9 +309,13 @@ export declare function avImageCopy2(dstData: Buffer[], dstLinesizes: number[],
289
309
  * Direct mapping to av_image_get_buffer_size().
290
310
  *
291
311
  * @param pixFmt - Pixel format
312
+ *
292
313
  * @param width - Image width
314
+ *
293
315
  * @param height - Image height
316
+ *
294
317
  * @param align - Buffer alignment
318
+ *
295
319
  * @returns Required buffer size in bytes
296
320
  *
297
321
  * @example
@@ -314,13 +338,21 @@ export declare function avImageGetBufferSize(pixFmt: AVPixelFormat, width: numbe
314
338
  * Direct mapping to av_image_copy_to_buffer().
315
339
  *
316
340
  * @param dst - Destination buffer
341
+ *
317
342
  * @param dstSize - Destination buffer size
343
+ *
318
344
  * @param srcData - Source data planes
345
+ *
319
346
  * @param srcLinesize - Source bytes per line
347
+ *
320
348
  * @param pixFmt - Pixel format
349
+ *
321
350
  * @param width - Image width
351
+ *
322
352
  * @param height - Image height
353
+ *
323
354
  * @param align - Buffer alignment
355
+ *
324
356
  * @returns Bytes written, or negative AVERROR
325
357
  *
326
358
  * @example
@@ -344,6 +376,7 @@ export declare function avImageCopyToBuffer(dst: Buffer, dstSize: number, srcDat
344
376
  * Direct mapping to av_ts2str().
345
377
  *
346
378
  * @param ts - Timestamp value
379
+ *
347
380
  * @returns String representation
348
381
  *
349
382
  * @example
@@ -363,7 +396,9 @@ export declare function avTs2Str(ts: bigint | number | null): string;
363
396
  * Direct mapping to av_ts2timestr().
364
397
  *
365
398
  * @param ts - Timestamp value
399
+ *
366
400
  * @param timeBase - Time base for conversion
401
+ *
367
402
  * @returns Time string representation
368
403
  *
369
404
  * @example
@@ -381,9 +416,13 @@ export declare function avTs2TimeStr(ts: bigint | number | null, timeBase: IRati
381
416
  * Allocates image data as separate plane arrays.
382
417
  *
383
418
  * @param width - Image width
419
+ *
384
420
  * @param height - Image height
421
+ *
385
422
  * @param pixFmt - Pixel format
423
+ *
386
424
  * @param align - Buffer alignment
425
+ *
387
426
  * @returns Object with data planes, line sizes, and total size
388
427
  *
389
428
  * @example
@@ -407,9 +446,13 @@ export declare function avImageAllocArrays(width: number, height: number, pixFmt
407
446
  * Direct mapping to av_compare_ts().
408
447
  *
409
448
  * @param tsA - First timestamp
449
+ *
410
450
  * @param tbA - First time base
451
+ *
411
452
  * @param tsB - Second timestamp
453
+ *
412
454
  * @param tbB - Second time base
455
+ *
413
456
  * @returns -1 if A < B, 0 if A == B, 1 if A > B
414
457
  *
415
458
  * @example
@@ -432,8 +475,11 @@ export declare function avCompareTs(tsA: bigint | number | null, tbA: IRational,
432
475
  * Direct mapping to av_rescale_q().
433
476
  *
434
477
  * @param a - Timestamp to rescale
478
+ *
435
479
  * @param bq - Source time base
480
+ *
436
481
  * @param cq - Destination time base
482
+ *
437
483
  * @returns Rescaled timestamp
438
484
  *
439
485
  * @example
@@ -476,9 +522,13 @@ export declare function avUsleep(usec: number): void;
476
522
  * Direct mapping to av_rescale_rnd().
477
523
  *
478
524
  * @param a - Value to rescale
525
+ *
479
526
  * @param b - Multiplier
527
+ *
480
528
  * @param c - Divisor
529
+ *
481
530
  * @param rnd - Rounding mode (AV_ROUND_*)
531
+ *
482
532
  * @returns Rescaled value
483
533
  *
484
534
  * @example
@@ -500,9 +550,13 @@ export declare function avRescaleRnd(a: bigint | number, b: bigint | number, c:
500
550
  * Direct mapping to av_samples_alloc().
501
551
  *
502
552
  * @param nbChannels - Number of audio channels
553
+ *
503
554
  * @param nbSamples - Number of samples per channel
555
+ *
504
556
  * @param sampleFmt - Sample format
557
+ *
505
558
  * @param align - Buffer alignment
559
+ *
506
560
  * @returns Object with data buffers, line size, and total size
507
561
  *
508
562
  * @throws {FFmpegError} If allocation fails
@@ -533,9 +587,13 @@ export declare function avSamplesAlloc(nbChannels: number, nbSamples: number, sa
533
587
  * Direct mapping to av_samples_get_buffer_size().
534
588
  *
535
589
  * @param nbChannels - Number of channels
590
+ *
536
591
  * @param nbSamples - Number of samples per channel
592
+ *
537
593
  * @param sampleFmt - Sample format
594
+ *
538
595
  * @param align - Buffer alignment
596
+ *
539
597
  * @returns Object with size and line size
540
598
  *
541
599
  * @throws {FFmpegError} If parameters are invalid
@@ -565,6 +623,7 @@ export declare function avSamplesGetBufferSize(nbChannels: number, nbSamples: nu
565
623
  * Direct mapping to av_channel_layout_describe().
566
624
  *
567
625
  * @param channelLayout - Channel layout to describe
626
+ *
568
627
  * @returns Layout description string, or null
569
628
  *
570
629
  * @example
@@ -585,6 +644,7 @@ export declare function avChannelLayoutDescribe(channelLayout: Partial<ChannelLa
585
644
  * Direct mapping to av_sdp_create().
586
645
  *
587
646
  * @param contexts - Array of format contexts
647
+ *
588
648
  * @returns SDP string, or null on error
589
649
  *
590
650
  * @example