node-av 5.2.0 → 5.2.2-beta.1

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.
package/README.md CHANGED
@@ -501,7 +501,7 @@ NodeAV provides direct bindings to FFmpeg's C APIs, which work with raw memory p
501
501
 
502
502
  NodeAV fully supports Electron applications. The prebuilt binaries are ABI-compatible with Electron, so no native rebuild is required during packaging. Both the native bindings and the bundled FFmpeg CLI binaries work seamlessly within Electron's main process.
503
503
 
504
- Two complete examples are available: one using [Electron Forge](https://github.com/seydx/node-av/tree/main/examples/electron/forge) and one using [Electron Builder](https://github.com/seydx/node-av/tree/main/examples/electron/builder).
504
+ NodeAV also supports Electron's [offscreen rendering with shared textures](https://www.electronjs.org/docs/latest/tutorial/offscreen-rendering), enabling zero-copy GPU texture import for hardware-accelerated encoding. See the [Electron Builder](https://github.com/seydx/node-av/tree/main/examples/electron/builder) and [Electron Forge](https://github.com/seydx/node-av/tree/main/examples/electron/forge) examples for complete implementations.
505
505
 
506
506
  If you encounter module resolution errors like `Cannot find module 'lib/binary-stream'`, add this override to your project's `package.json`:
507
507
 
@@ -519,6 +519,8 @@ If you encounter module resolution errors like `Cannot find module 'lib/binary-s
519
519
  |---------|--------|---------------|----------------|
520
520
  | `browser-fmp4` | | | [✓](https://github.com/seydx/node-av/tree/main/examples/browser/fmp4) |
521
521
  | `browser-webrtc` | | | [✓](https://github.com/seydx/node-av/tree/main/examples/browser/webrtc) |
522
+ | `electron-builder` | | | [✓](https://github.com/seydx/node-av/tree/main/examples/electron/builder) |
523
+ | `electron-forge` | | | [✓](https://github.com/seydx/node-av/tree/main/examples/electron/forge) |
522
524
  | `api-abort-signal` | | | [✓](https://github.com/seydx/node-av/tree/main/examples/api-abort-signal.ts) |
523
525
  | `api-dash` | | | [✓](https://github.com/seydx/node-av/tree/main/examples/api-dash.ts) |
524
526
  | `api-device-capture` | | | [✓](https://github.com/seydx/node-av/tree/main/examples/api-device-capture.ts) |
@@ -16,6 +16,15 @@ export interface MP4Box {
16
16
  /** Offset of this box in the original buffer */
17
17
  offset: number;
18
18
  }
19
+ /**
20
+ * A fragment of fMP4 data yielded by {@link FMP4Stream.fragments}.
21
+ */
22
+ export interface FMP4Fragment {
23
+ /** fMP4 data buffer */
24
+ data: Buffer;
25
+ /** Box information (complete boxes, parsed box details) */
26
+ info: FMP4Data;
27
+ }
19
28
  /**
20
29
  * fMP4 data information provided in onData callback.
21
30
  */
@@ -114,6 +123,13 @@ export interface FMP4StreamOptions {
114
123
  * @default '+frag_keyframe+separate_moof+default_base_moof+empty_moov'
115
124
  */
116
125
  movFlags?: string;
126
+ /**
127
+ * AbortSignal for cancellation.
128
+ *
129
+ * When aborted, the stream stops gracefully, equivalent to calling stop().
130
+ * If already aborted when start() is called, throws AbortError.
131
+ */
132
+ signal?: AbortSignal;
117
133
  }
118
134
  /**
119
135
  * Target codec strings for fMP4 streaming.
@@ -182,8 +198,15 @@ export declare class FMP4Stream {
182
198
  private audioFilter?;
183
199
  private audioEncoder?;
184
200
  private pipeline?;
201
+ private signal?;
185
202
  private supportedCodecs;
186
203
  private incompleteBoxBuffer;
204
+ private fragmentQueue;
205
+ private _initSegment;
206
+ private _initSegmentResolve;
207
+ private _initSegmentPromise;
208
+ private _ftypData;
209
+ private _moovData;
187
210
  /**
188
211
  * @param input - Media input URL or pre-opened Demuxer
189
212
  *
@@ -226,6 +249,15 @@ export declare class FMP4Stream {
226
249
  * ```
227
250
  */
228
251
  static create(input: string | Demuxer, options?: FMP4StreamOptions): FMP4Stream;
252
+ /**
253
+ * Promise that resolves with the init segment (ftyp+moov).
254
+ *
255
+ * Only available when boxMode is enabled.
256
+ * Resolves once the first ftyp and moov boxes have been received.
257
+ *
258
+ * @throws {Error} If boxMode is not enabled
259
+ */
260
+ get initSegment(): Promise<Buffer>;
229
261
  /**
230
262
  * Get the demuxer instance.
231
263
  *
@@ -312,6 +344,35 @@ export declare class FMP4Stream {
312
344
  * ```
313
345
  */
314
346
  stop(): Promise<void>;
347
+ /**
348
+ * Async generator that yields media fragments (moof+mdat chunks).
349
+ *
350
+ * In box mode, yields only media fragments (chunks containing moof boxes),
351
+ * NOT the init segment. Use {@link initSegment} to get the ftyp+moov data.
352
+ *
353
+ * In chunk mode (boxMode disabled), yields every chunk as-is since
354
+ * box-level filtering is not possible without box parsing.
355
+ *
356
+ * The generator completes when the stream stops or the pipeline ends.
357
+ *
358
+ * @yields {FMP4Fragment} Media fragment with data buffer and box info
359
+ *
360
+ * @example
361
+ * ```typescript
362
+ * const stream = FMP4Stream.create('rtsp://camera/stream', {
363
+ * supportedCodecs: 'avc1.640029,mp4a.40.2',
364
+ * boxMode: true,
365
+ * });
366
+ *
367
+ * await stream.start();
368
+ * const init = await stream.initSegment;
369
+ *
370
+ * for await (const fragment of stream.fragments()) {
371
+ * sendToClient(fragment.data);
372
+ * }
373
+ * ```
374
+ */
375
+ fragments(): AsyncGenerator<FMP4Fragment, void>;
315
376
  /**
316
377
  * Run the streaming pipeline until completion or stopped.
317
378
  *
@@ -346,4 +407,20 @@ export declare class FMP4Stream {
346
407
  * @internal
347
408
  */
348
409
  private processBoxMode;
410
+ /**
411
+ * Push a fragment to the fragment queue for the async generator.
412
+ *
413
+ * @param data - fMP4 data buffer
414
+ *
415
+ * @param info - Parsed box information
416
+ *
417
+ * @internal
418
+ */
419
+ private pushFragment;
420
+ /**
421
+ * Signal the fragment queue that no more fragments will arrive.
422
+ *
423
+ * @internal
424
+ */
425
+ private endFragments;
349
426
  }
@@ -77,8 +77,15 @@ export class FMP4Stream {
77
77
  audioFilter;
78
78
  audioEncoder;
79
79
  pipeline;
80
+ signal;
80
81
  supportedCodecs;
81
82
  incompleteBoxBuffer = null;
83
+ fragmentQueue = null;
84
+ _initSegment = null;
85
+ _initSegmentResolve = null;
86
+ _initSegmentPromise = null;
87
+ _ftypData = null;
88
+ _moovData = null;
82
89
  /**
83
90
  * @param input - Media input URL or pre-opened Demuxer
84
91
  *
@@ -129,6 +136,7 @@ export class FMP4Stream {
129
136
  boxMode: options.boxMode ?? false,
130
137
  movFlags: options.movFlags ?? '+frag_keyframe+separate_moof+default_base_moof+empty_moov',
131
138
  };
139
+ this.signal = options.signal;
132
140
  // Parse supported codecs
133
141
  this.supportedCodecs = new Set(this.options.supportedCodecs
134
142
  .split(',')
@@ -169,6 +177,28 @@ export class FMP4Stream {
169
177
  static create(input, options = {}) {
170
178
  return new FMP4Stream(input, options);
171
179
  }
180
+ /**
181
+ * Promise that resolves with the init segment (ftyp+moov).
182
+ *
183
+ * Only available when boxMode is enabled.
184
+ * Resolves once the first ftyp and moov boxes have been received.
185
+ *
186
+ * @throws {Error} If boxMode is not enabled
187
+ */
188
+ get initSegment() {
189
+ if (!this.options.boxMode) {
190
+ throw new Error('initSegment is only available in box mode');
191
+ }
192
+ this._initSegmentPromise ??= new Promise((resolve) => {
193
+ if (this._initSegment) {
194
+ resolve(this._initSegment);
195
+ }
196
+ else {
197
+ this._initSegmentResolve = resolve;
198
+ }
199
+ });
200
+ return this._initSegmentPromise;
201
+ }
172
202
  /**
173
203
  * Get the demuxer instance.
174
204
  *
@@ -304,6 +334,8 @@ export class FMP4Stream {
304
334
  if (this.pipeline) {
305
335
  return;
306
336
  }
337
+ this.signal?.throwIfAborted();
338
+ this.signal?.addEventListener('abort', () => this.stop(), { once: true });
307
339
  // Open input if not already open
308
340
  if (!this.input) {
309
341
  if (!this.inputUrl) {
@@ -392,10 +424,9 @@ export class FMP4Stream {
392
424
  }
393
425
  else {
394
426
  // Chunk mode: send raw data immediately
395
- this.options.onData(buffer, {
396
- isComplete: false,
397
- boxes: [],
398
- });
427
+ const info = { isComplete: false, boxes: [] };
428
+ this.options.onData(buffer, info);
429
+ this.pushFragment(buffer, info);
399
430
  }
400
431
  return buffer.length;
401
432
  },
@@ -412,10 +443,11 @@ export class FMP4Stream {
412
443
  });
413
444
  this.runPipeline()
414
445
  .then(() => {
415
- // Pipeline completed successfully
446
+ this.endFragments();
416
447
  this.options.onClose?.();
417
448
  })
418
449
  .catch(async (error) => {
450
+ this.endFragments();
419
451
  await this.stop();
420
452
  this.options.onClose?.(error);
421
453
  });
@@ -439,6 +471,7 @@ export class FMP4Stream {
439
471
  * ```
440
472
  */
441
473
  async stop() {
474
+ this.endFragments();
442
475
  // Stop pipeline if running and wait for completion
443
476
  if (this.pipeline && !this.pipeline.isStopped()) {
444
477
  this.pipeline.stop();
@@ -464,6 +497,63 @@ export class FMP4Stream {
464
497
  this.hardwareContext = undefined;
465
498
  await this.output?.close();
466
499
  this.output = undefined;
500
+ this._initSegment = null;
501
+ this._initSegmentResolve = null;
502
+ this._initSegmentPromise = null;
503
+ this._ftypData = null;
504
+ this._moovData = null;
505
+ }
506
+ /**
507
+ * Async generator that yields media fragments (moof+mdat chunks).
508
+ *
509
+ * In box mode, yields only media fragments (chunks containing moof boxes),
510
+ * NOT the init segment. Use {@link initSegment} to get the ftyp+moov data.
511
+ *
512
+ * In chunk mode (boxMode disabled), yields every chunk as-is since
513
+ * box-level filtering is not possible without box parsing.
514
+ *
515
+ * The generator completes when the stream stops or the pipeline ends.
516
+ *
517
+ * @yields {FMP4Fragment} Media fragment with data buffer and box info
518
+ *
519
+ * @example
520
+ * ```typescript
521
+ * const stream = FMP4Stream.create('rtsp://camera/stream', {
522
+ * supportedCodecs: 'avc1.640029,mp4a.40.2',
523
+ * boxMode: true,
524
+ * });
525
+ *
526
+ * await stream.start();
527
+ * const init = await stream.initSegment;
528
+ *
529
+ * for await (const fragment of stream.fragments()) {
530
+ * sendToClient(fragment.data);
531
+ * }
532
+ * ```
533
+ */
534
+ async *fragments() {
535
+ this.fragmentQueue = { queue: [], resolve: null, done: false };
536
+ try {
537
+ while (true) {
538
+ const result = await new Promise((resolve) => {
539
+ if (this.fragmentQueue.queue.length > 0) {
540
+ resolve({ value: this.fragmentQueue.queue.shift(), done: false });
541
+ return;
542
+ }
543
+ if (this.fragmentQueue.done) {
544
+ resolve({ value: undefined, done: true });
545
+ return;
546
+ }
547
+ this.fragmentQueue.resolve = resolve;
548
+ });
549
+ if (result.done)
550
+ break;
551
+ yield result.value;
552
+ }
553
+ }
554
+ finally {
555
+ this.fragmentQueue = null;
556
+ }
467
557
  }
468
558
  /**
469
559
  * Run the streaming pipeline until completion or stopped.
@@ -476,21 +566,22 @@ export class FMP4Stream {
476
566
  }
477
567
  const hasVideo = this.input?.video() !== undefined;
478
568
  const hasAudio = this.input?.audio() !== undefined;
569
+ const opts = this.signal ? { signal: this.signal } : undefined;
479
570
  if (hasAudio && hasVideo) {
480
571
  this.pipeline = pipeline(this.input, {
481
572
  video: [this.videoDecoder, this.videoFilter, this.videoEncoder],
482
573
  audio: [this.audioDecoder, this.audioFilter, this.audioEncoder],
483
- }, this.output);
574
+ }, this.output, opts);
484
575
  }
485
576
  else if (hasVideo) {
486
577
  this.pipeline = pipeline(this.input, {
487
578
  video: [this.videoDecoder, this.videoFilter, this.videoEncoder],
488
- }, this.output);
579
+ }, this.output, opts);
489
580
  }
490
581
  else if (hasAudio) {
491
582
  this.pipeline = pipeline(this.input, {
492
583
  audio: [this.audioDecoder, this.audioFilter, this.audioEncoder],
493
- }, this.output);
584
+ }, this.output, opts);
494
585
  }
495
586
  else {
496
587
  throw new Error('No audio or video streams found in input');
@@ -582,10 +673,66 @@ export class FMP4Stream {
582
673
  }
583
674
  // If we have complete boxes, send them to the callback
584
675
  if (boxes.length > 0) {
585
- this.options.onData(chunk.subarray(0, offset), {
586
- isComplete: true,
587
- boxes,
588
- });
676
+ const boxData = chunk.subarray(0, offset);
677
+ const info = { isComplete: true, boxes };
678
+ // onData callback gets everything
679
+ this.options.onData(boxData, info);
680
+ // Init segment tracking: collect ftyp and moov data
681
+ if (!this._initSegment) {
682
+ for (const box of boxes) {
683
+ if (box.type === 'ftyp' && !this._ftypData) {
684
+ this._ftypData = chunk.subarray(box.offset, box.offset + box.size);
685
+ }
686
+ if (box.type === 'moov' && !this._moovData) {
687
+ this._moovData = chunk.subarray(box.offset, box.offset + box.size);
688
+ }
689
+ }
690
+ if (this._ftypData && this._moovData) {
691
+ this._initSegment = Buffer.concat([this._ftypData, this._moovData]);
692
+ this._initSegmentResolve?.(this._initSegment);
693
+ this._initSegmentResolve = null;
694
+ }
695
+ }
696
+ // fragments() generator gets only media fragments (moof+mdat)
697
+ const isMediaFragment = boxes.some((b) => b.type === 'moof');
698
+ if (isMediaFragment) {
699
+ this.pushFragment(boxData, info);
700
+ }
701
+ }
702
+ }
703
+ /**
704
+ * Push a fragment to the fragment queue for the async generator.
705
+ *
706
+ * @param data - fMP4 data buffer
707
+ *
708
+ * @param info - Parsed box information
709
+ *
710
+ * @internal
711
+ */
712
+ pushFragment(data, info) {
713
+ if (!this.fragmentQueue)
714
+ return;
715
+ const fragment = { data, info };
716
+ if (this.fragmentQueue.resolve) {
717
+ this.fragmentQueue.resolve({ value: fragment, done: false });
718
+ this.fragmentQueue.resolve = null;
719
+ }
720
+ else {
721
+ this.fragmentQueue.queue.push(fragment);
722
+ }
723
+ }
724
+ /**
725
+ * Signal the fragment queue that no more fragments will arrive.
726
+ *
727
+ * @internal
728
+ */
729
+ endFragments() {
730
+ if (!this.fragmentQueue)
731
+ return;
732
+ this.fragmentQueue.done = true;
733
+ if (this.fragmentQueue.resolve) {
734
+ this.fragmentQueue.resolve({ value: undefined, done: true });
735
+ this.fragmentQueue.resolve = null;
589
736
  }
590
737
  }
591
738
  }
@@ -1 +1 @@
1
- {"version":3,"file":"fmp4-stream.js","sourceRoot":"","sources":["../../src/api/fmp4-stream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fmp4-stream.js","sourceRoot":"","sources":["../../src/api/fmp4-stream.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9E,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAiMzC;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,IAAI,EAAE,aAAa;IACnB,IAAI,EAAE,kBAAkB;IACxB,GAAG,EAAE,eAAe;IACpB,GAAG,EAAE,WAAW;IAChB,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;CACJ,CAAC;AAEX;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,MAAM,OAAO,UAAU;IACb,OAAO,CAA8C;IACrD,QAAQ,CAAgB;IACxB,YAAY,CAAiB;IAC7B,KAAK,CAAW;IAChB,MAAM,CAAS;IACf,eAAe,CAA0B;IACzC,YAAY,CAAW;IACvB,WAAW,CAAa;IACxB,YAAY,CAAW;IACvB,YAAY,CAAW;IACvB,WAAW,CAAa;IACxB,YAAY,CAAW;IACvB,QAAQ,CAAmB;IAC3B,MAAM,CAAe;IACrB,eAAe,CAAc;IAC7B,mBAAmB,GAAkB,IAAI,CAAC;IAC1C,aAAa,GAIV,IAAI,CAAC;IAER,YAAY,GAAkB,IAAI,CAAC;IACnC,mBAAmB,GAAqC,IAAI,CAAC;IAC7D,mBAAmB,GAA2B,IAAI,CAAC;IACnD,SAAS,GAAkB,IAAI,CAAC;IAChC,SAAS,GAAkB,IAAI,CAAC;IAExC;;;;;;;;OAQG;IACH,YAAoB,KAAuB,EAAE,OAA0B;QACrE,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACxB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACrB,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC;QACrC,IAAI,CAAC,YAAY,GAAG;YAClB,GAAG,OAAO,CAAC,YAAY;YACvB,OAAO,EAAE;gBACP,KAAK,EAAE,WAAW;gBAClB,MAAM,EAAE,UAAU;gBAClB,sBAAsB;gBACtB,iBAAiB;gBACjB,OAAO,EAAE,QAAQ;gBACjB,cAAc,EAAE,QAAQ,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;gBAC7E,GAAG,OAAO,CAAC,YAAY,EAAE,OAAO;aACjC;SACF,CAAC;QAEF,IAAI,CAAC,OAAO,GAAG;YACb,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC;YACpC,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC;YACtC,eAAe,EAAE,OAAO,CAAC,eAAe,IAAI,EAAE;YAC9C,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,CAAC;YACvC,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,EAAE,UAAU,EAAE,qBAAqB,EAAE;YACnE,YAAY,EAAE,OAAO,CAAC,YAAa;YACnC,KAAK,EAAE;gBACL,GAAG,EAAE,OAAO,CAAC,KAAK,EAAE,GAAG;gBACvB,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,KAAK;gBAC3B,MAAM,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM;gBAC7B,cAAc,EAAE,OAAO,CAAC,KAAK,EAAE,cAAc,IAAI,EAAE;aACpD;YACD,KAAK,EAAE;gBACL,cAAc,EAAE,OAAO,CAAC,KAAK,EAAE,cAAc,IAAI,EAAE;aACpD;YACD,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI;YACjD,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,KAAK;YACjC,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,2DAA2D;SAC1F,CAAC;QAEF,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAE7B,yBAAyB;QACzB,IAAI,CAAC,eAAe,GAAG,IAAI,GAAG,CAC5B,IAAI,CAAC,OAAO,CAAC,eAAe;aACzB,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aACpB,MAAM,CAAC,OAAO,CAAC,CACnB,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACH,MAAM,CAAC,MAAM,CAAC,KAAuB,EAAE,UAA6B,EAAE;QACpE,OAAO,IAAI,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,WAAW;QACb,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,CAAC,mBAAmB,KAAK,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,EAAE;YAC3D,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACtB,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC7B,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC;YACrC,CAAC;QACH,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,mBAAmB,CAAC;IAClC,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,cAAc;QACZ,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;QAC7E,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACvC,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QAEvC,MAAM,YAAY,GAAG,WAAW,EAAE,QAAQ,CAAC,OAAO,CAAC;QACnD,MAAM,YAAY,GAAG,WAAW,EAAE,QAAQ,CAAC,OAAO,CAAC;QAEnD,+BAA+B;QAC/B,IAAI,UAAU,GAAkB,IAAI,CAAC;QACrC,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,mBAAmB,GAAG,CAAC,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;YAEtE,IAAI,mBAAmB,EAAE,CAAC;gBACxB,uBAAuB;gBACvB,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC;YAChC,CAAC;iBAAM,IAAI,YAAY,KAAK,gBAAgB,EAAE,CAAC;gBAC7C,+CAA+C;gBAC/C,MAAM,WAAW,GAAG,gBAAgB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;gBAC3D,UAAU,GAAG,WAAW,IAAI,WAAW,CAAC,IAAI,CAAC;YAC/C,CAAC;iBAAM,IAAI,YAAY,KAAK,gBAAgB,EAAE,CAAC;gBAC7C,+CAA+C;gBAC/C,MAAM,WAAW,GAAG,gBAAgB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;gBAC3D,UAAU,GAAG,WAAW,IAAI,WAAW,CAAC,IAAI,CAAC;YAC/C,CAAC;iBAAM,IAAI,YAAY,KAAK,eAAe,EAAE,CAAC;gBAC5C,6CAA6C;gBAC7C,MAAM,WAAW,GAAG,gBAAgB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;gBAC3D,UAAU,GAAG,WAAW,IAAI,WAAW,CAAC,GAAG,CAAC;YAC9C,CAAC;iBAAM,CAAC;gBACN,2EAA2E;gBAC3E,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC;YAChC,CAAC;QACH,CAAC;QAED,+BAA+B;QAC/B,IAAI,UAAU,GAAkB,IAAI,CAAC;QACrC,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,mBAAmB,GAAG,CAAC,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;YAEtE,IAAI,mBAAmB,EAAE,CAAC;gBACxB,qBAAqB;gBACrB,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC;YAC/B,CAAC;iBAAM,IAAI,YAAY,KAAK,eAAe,EAAE,CAAC;gBAC5C,+BAA+B;gBAC/B,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC;YAC/B,CAAC;iBAAM,IAAI,YAAY,KAAK,gBAAgB,EAAE,CAAC;gBAC7C,OAAO;gBACP,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC;YAChC,CAAC;iBAAM,IAAI,YAAY,KAAK,gBAAgB,EAAE,CAAC;gBAC7C,OAAO;gBACP,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC;YAChC,CAAC;iBAAM,CAAC;gBACN,yEAAyE;gBACzE,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC;YAC/B,CAAC;QACH,CAAC;QAED,wCAAwC;QACxC,OAAO,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC5D,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,OAAO;QACT,CAAC;QAED,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC;QAC9B,IAAI,CAAC,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAE1E,iCAAiC;QACjC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACnB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;YACtD,CAAC;YACD,IAAI,CAAC,KAAK,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACpE,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACvC,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QAEvC,mCAAmC;QACnC,MAAM,mBAAmB,GAAG,WAAW,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAErG,IAAI,mBAAmB,EAAE,CAAC;YACxB,yCAAyC;YACzC,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;gBACrC,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC,IAAI,EAAE,CAAC;YAChD,CAAC;iBAAM,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,KAAK,qBAAqB,EAAE,CAAC;gBACtE,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC/I,CAAC;YAED,qBAAqB;YACrB,IAAI,CAAC,YAAY,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE;gBACpD,QAAQ,EAAE,IAAI,CAAC,eAAe;gBAC9B,WAAW,EAAE,KAAK;aACnB,CAAC,CAAC;YAEH,2EAA2E;YAC3E,MAAM,YAAY,GAAG,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC;YAChD,MAAM,aAAa,GAAG,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC;YAClD,MAAM,UAAU,GAAG,WAAW,CAAC,YAAY,CAAC,GAAG,GAAG,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC;YAE/E,MAAM,UAAU,GACd,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,YAAY,CAAC;gBACrF,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC;YAE3F,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,SAAS,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,UAAU,CAAC;YAEvH,qCAAqC;YACrC,IAAI,UAAU,IAAI,QAAQ,EAAE,CAAC;gBAC3B,MAAM,WAAW,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;gBAE7D,wCAAwC;gBACxC,IAAI,UAAU,EAAE,CAAC;oBACf,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;oBACnD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;oBACrD,WAAW,CAAC,KAAK,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;gBAC/C,CAAC;gBAED,gCAAgC;gBAChC,IAAI,QAAQ,EAAE,CAAC;oBACb,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAI,CAAC,CAAC;gBAC3C,CAAC;gBAED,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE;oBACvD,QAAQ,EAAE,IAAI,CAAC,eAAe;iBAC/B,CAAC,CAAC;YACL,CAAC;YAED,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,EAAE,eAAe,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,iBAAiB,CAAC,kBAAkB,CAAE,CAAC;YAEnH,IAAI,cAAc,GAA8B,EAAE,CAAC;YACnD,IAAI,YAAY,CAAC,IAAI,KAAK,kBAAkB,IAAI,YAAY,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;gBACzF,cAAc,CAAC,MAAM,GAAG,WAAW,CAAC;gBACpC,cAAc,CAAC,IAAI,GAAG,aAAa,CAAC;YACtC,CAAC;YAED,cAAc,GAAG;gBACf,GAAG,cAAc;gBACjB,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc;aACrC,CAAC;YAEF,IAAI,CAAC,YAAY,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE;gBACrD,OAAO,EAAE,IAAI,CAAC,YAAY;gBAC1B,OAAO,EAAE,cAAc;aACxB,CAAC,CAAC;QACL,CAAC;QAED,mCAAmC;QACnC,MAAM,mBAAmB,GAAG,WAAW,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAErG,IAAI,mBAAmB,EAAE,CAAC;YACxB,mBAAmB;YACnB,IAAI,CAAC,YAAY,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE;gBACpD,WAAW,EAAE,KAAK;aACnB,CAAC,CAAC;YAEH,MAAM,gBAAgB,GAAG,KAAK,CAAC;YAC/B,MAAM,WAAW,GAAG,YAAY,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,kBAAkB,EAAE,gBAAgB,EAAE,QAAQ,CAAC,CAAC,KAAK,EAAE,CAAC;YACzG,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAEjD,IAAI,CAAC,YAAY,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE;gBACvD,OAAO,EAAE,IAAI,CAAC,YAAY;gBAC1B,MAAM,EAAE,IAAI,CAAC,WAAW;gBACxB,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc;aAC3C,CAAC,CAAC;QACL,CAAC;QAED,6BAA6B;QAC7B,MAAM,EAAE,GAAsB;YAC5B,KAAK,EAAE,CAAC,MAAc,EAAE,EAAE;gBACxB,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;oBACzB,gDAAgD;oBAChD,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;gBAC9B,CAAC;qBAAM,CAAC;oBACN,wCAAwC;oBACxC,MAAM,IAAI,GAAa,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;oBACxD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;oBAClC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBAClC,CAAC;gBACD,OAAO,MAAM,CAAC,MAAM,CAAC;YACvB,CAAC;SACF,CAAC;QAEF,IAAI,CAAC,MAAM,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE;YACjC,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,MAAM,EAAE,KAAK;YACb,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU;YACnC,WAAW,EAAE,KAAK;YAClB,OAAO,EAAE;gBACP,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;gBAC/B,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY;aACzC;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,WAAW,EAAE;aACf,IAAI,CAAC,GAAG,EAAE;YACT,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;QAC3B,CAAC,CAAC;aACD,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YACrB,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,YAAY,EAAE,CAAC;QAEpB,mDAAmD;QACnD,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC;YAChD,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACrB,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;YAC/B,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;QAC5B,CAAC;QAED,sBAAsB;QAEtB,MAAM,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;QAEvB,IAAI,CAAC,YAAY,EAAE,KAAK,EAAE,CAAC;QAC3B,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;QAC9B,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,CAAC;QAC1B,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC7B,IAAI,CAAC,YAAY,EAAE,KAAK,EAAE,CAAC;QAC3B,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;QAE9B,IAAI,CAAC,YAAY,EAAE,KAAK,EAAE,CAAC;QAC3B,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;QAC9B,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,CAAC;QAC1B,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC7B,IAAI,CAAC,YAAY,EAAE,KAAK,EAAE,CAAC;QAC3B,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;QAE9B,IAAI,CAAC,eAAe,EAAE,OAAO,EAAE,CAAC;QAChC,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;QAEjC,MAAM,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;QAExB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAChC,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAChC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IACxB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,KAAK,CAAC,CAAC,SAAS;QACd,IAAI,CAAC,aAAa,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;QAE/D,IAAI,CAAC;YACH,OAAO,IAAI,EAAE,CAAC;gBACZ,MAAM,MAAM,GAAG,MAAM,IAAI,OAAO,CAA+B,CAAC,OAAO,EAAE,EAAE;oBACzE,IAAI,IAAI,CAAC,aAAc,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACzC,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,aAAc,CAAC,KAAK,CAAC,KAAK,EAAG,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;wBACpE,OAAO;oBACT,CAAC;oBACD,IAAI,IAAI,CAAC,aAAc,CAAC,IAAI,EAAE,CAAC;wBAC7B,OAAO,CAAC,EAAE,KAAK,EAAE,SAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;wBACjD,OAAO;oBACT,CAAC;oBACD,IAAI,CAAC,aAAc,CAAC,OAAO,GAAG,OAAO,CAAC;gBACxC,CAAC,CAAC,CAAC;gBAEH,IAAI,MAAM,CAAC,IAAI;oBAAE,MAAM;gBACvB,MAAM,MAAM,CAAC,KAAK,CAAC;YACrB,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC5B,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,WAAW;QACvB,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YAChC,OAAO;QACT,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,SAAS,CAAC;QACnD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,SAAS,CAAC;QACnD,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QAE/D,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;YACzB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CACtB,IAAI,CAAC,KAAK,EACV;gBACE,KAAK,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC;gBAC/D,KAAK,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC;aAChE,EACD,IAAI,CAAC,MAAM,EACX,IAAI,CACL,CAAC;QACJ,CAAC;aAAM,IAAI,QAAQ,EAAE,CAAC;YACpB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CACtB,IAAI,CAAC,KAAK,EACV;gBACE,KAAK,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC;aAChE,EACD,IAAI,CAAC,MAAM,EACX,IAAI,CACL,CAAC;QACJ,CAAC;aAAM,IAAI,QAAQ,EAAE,CAAC;YACpB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CACtB,IAAI,CAAC,KAAK,EACV;gBACE,KAAK,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC;aAChE,EACD,IAAI,CAAC,MAAM,EACX,IAAI,CACL,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC9D,CAAC;QAED,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;QAC/B,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;IAC5B,CAAC;IAED;;;;;;;;OAQG;IACK,qBAAqB,CAAC,OAAkB;QAC9C,IAAI,OAAO,KAAK,gBAAgB,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;YACrH,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,OAAO,KAAK,gBAAgB,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;YACzJ,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,OAAO,KAAK,eAAe,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;YACnH,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;;;OAQG;IACK,qBAAqB,CAAC,OAAkB;QAC9C,IAAI,OAAO,KAAK,eAAe,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7E,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,OAAO,KAAK,gBAAgB,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/E,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,OAAO,KAAK,gBAAgB,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/E,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;OAMG;IACK,cAAc,CAAC,KAAa;QAClC,iEAAiE;QACjE,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC7B,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAC,CAAC;YACzD,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAClC,CAAC;QAED,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,MAAM,KAAK,GAAa,EAAE,CAAC;QAE3B,OAAO,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YAClC,kBAAkB;YAClB,MAAM,OAAO,GAAG,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YAC3C,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC;YAEhE,oCAAoC;YACpC,IAAI,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;gBACpC,0CAA0C;gBAC1C,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBAClD,MAAM;YACR,CAAC;YAED,sCAAsC;YACtC,MAAM,GAAG,GAAW;gBAClB,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;gBAClD,MAAM,EAAE,MAAM;aACf,CAAC;YACF,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAEhB,mBAAmB;YACnB,MAAM,IAAI,OAAO,CAAC;YAElB,iCAAiC;YACjC,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;gBAChB,MAAM;YACR,CAAC;QACH,CAAC;QAED,uDAAuD;QACvD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;YAC1C,MAAM,IAAI,GAAa,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;YAEnD,kCAAkC;YAClC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAEnC,oDAAoD;YACpD,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;gBACvB,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;oBACxB,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;wBAC3C,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;oBACrE,CAAC;oBACD,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;wBAC3C,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;oBACrE,CAAC;gBACH,CAAC;gBACD,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;oBACrC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;oBACpE,IAAI,CAAC,mBAAmB,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBAC9C,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;gBAClC,CAAC;YACH,CAAC;YAED,8DAA8D;YAC9D,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;YAC7D,IAAI,eAAe,EAAE,CAAC;gBACpB,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACnC,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACK,YAAY,CAAC,IAAY,EAAE,IAAc;QAC/C,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,OAAO;QAChC,MAAM,QAAQ,GAAiB,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QAC9C,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;YAC/B,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YAC7D,IAAI,CAAC,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC;QACpC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,YAAY;QAClB,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,OAAO;QAChC,IAAI,CAAC,aAAa,CAAC,IAAI,GAAG,IAAI,CAAC;QAC/B,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;YAC/B,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,SAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YACpE,IAAI,CAAC,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC;QACpC,CAAC;IACH,CAAC;CACF"}
@@ -515,17 +515,19 @@ export class HardwareContext {
515
515
  * @see {@link findSupportedCodecs} For all supported codecs
516
516
  */
517
517
  supportsCodec(codecId, isEncoder = false) {
518
- // Try to find the codec
519
- const codec = isEncoder ? Codec.findEncoder(codecId) : Codec.findDecoder(codecId);
520
- if (!codec) {
521
- return false;
522
- }
523
- if (isEncoder) {
524
- return codec.isHardwareAcceleratedEncoder(this._deviceType);
525
- }
526
- else {
527
- return codec.isHardwareAcceleratedDecoder(this._deviceType);
518
+ const codecs = Codec.getCodecList();
519
+ for (const codec of codecs) {
520
+ if (codec.id !== codecId)
521
+ continue;
522
+ if (isEncoder && !codec.isEncoder())
523
+ continue;
524
+ if (!isEncoder && !codec.isDecoder())
525
+ continue;
526
+ if (isEncoder ? codec.isHardwareAcceleratedEncoder(this._deviceType) : codec.isHardwareAcceleratedDecoder(this._deviceType)) {
527
+ return true;
528
+ }
528
529
  }
530
+ return false;
529
531
  }
530
532
  /**
531
533
  * Check if this hardware supports a specific pixel format for a codec.
@@ -553,15 +555,22 @@ export class HardwareContext {
553
555
  * @see {@link supportsCodec} For basic codec support
554
556
  */
555
557
  supportsPixelFormat(codecId, pixelFormat, isEncoder = false) {
556
- const codec = isEncoder ? Codec.findEncoder(codecId) : Codec.findDecoder(codecId);
557
- if (!codec) {
558
- return false;
559
- }
560
- const pixelFormats = codec.pixelFormats ?? [];
561
- if (pixelFormats.length === 0) {
562
- return false;
558
+ const codecs = Codec.getCodecList();
559
+ for (const codec of codecs) {
560
+ if (codec.id !== codecId)
561
+ continue;
562
+ if (isEncoder && !codec.isEncoder())
563
+ continue;
564
+ if (!isEncoder && !codec.isDecoder())
565
+ continue;
566
+ if (isEncoder ? codec.isHardwareAcceleratedEncoder(this._deviceType) : codec.isHardwareAcceleratedDecoder(this._deviceType)) {
567
+ const pixelFormats = codec.pixelFormats ?? [];
568
+ if (pixelFormats.some((fmt) => fmt === pixelFormat)) {
569
+ return true;
570
+ }
571
+ }
563
572
  }
564
- return pixelFormats.some((fmt) => fmt === pixelFormat);
573
+ return false;
565
574
  }
566
575
  /**
567
576
  * Get the appropriate encoder codec for a given base codec name.
@@ -1 +1 @@
1
- {"version":3,"file":"hardware.js","sourceRoot":"","sources":["../../src/api/hardware.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hardware.js","sourceRoot":"","sources":["../../src/api/hardware.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,7 @@ export { BitStreamFilterAPI, type BitstreamFilterOptions } from './bitstream-fil
13
13
  export { pipeline, type NamedInputs, type NamedOutputs, type NamedStages, type PipelineControl, type PipelineOptions, type StreamName } from './pipeline.js';
14
14
  export { WebRTCStream, type WebRTCCodecInfo, type WebRTCStreamOptions } from './webrtc-stream.js';
15
15
  export { RTPStream, type RTPStreamOptions } from './rtp-stream.js';
16
- export { FMP4_CODECS, FMP4Stream, type FMP4Data, type FMP4StreamOptions, type MP4Box, type MP4BoxType } from './fmp4-stream.js';
16
+ export { FMP4_CODECS, FMP4Stream, type FMP4Data, type FMP4Fragment, type FMP4StreamOptions, type MP4Box, type MP4BoxType } from './fmp4-stream.js';
17
17
  export { WhisperTranscriber, type WhisperSegment, type WhisperTranscriberOptions } from './whisper.js';
18
18
  export * from './utilities/index.js';
19
19
  export * from './utils.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,WAAW;AACX,OAAO,EAAE,QAAQ,EAAiD,MAAM,gBAAgB,CAAC;AAEzF,UAAU;AACV,OAAO,EAAE,OAAO,EAA8E,MAAM,cAAc,CAAC;AAEnH,QAAQ;AACR,OAAO,EAAE,KAAK,EAAqB,MAAM,YAAY,CAAC;AAEtD,UAAU;AACV,OAAO,EAAE,OAAO,EAAuB,MAAM,cAAc,CAAC;AAE5D,UAAU;AACV,OAAO,EAAE,OAAO,EAAuB,MAAM,cAAc,CAAC;AAE5D,mBAAmB;AACnB,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,WAAW;AACX,OAAO,EAAE,eAAe,EAA4C,MAAM,eAAe,CAAC;AAE1F,SAAS;AACT,OAAO,EAAE,SAAS,EAA6F,MAAM,aAAa,CAAC;AAEnI,SAAS;AACT,OAAO,EAAE,gBAAgB,EAAqD,MAAM,qBAAqB,CAAC;AAC1G,OAAO,EAAE,YAAY,EAAsB,MAAM,qBAAqB,CAAC;AACvE,OAAO,EAAE,SAAS,EAAsB,MAAM,aAAa,CAAC;AAE5D,kBAAkB;AAClB,OAAO,EAAE,kBAAkB,EAA+B,MAAM,uBAAuB,CAAC;AAExF,WAAW;AACX,OAAO,EAAE,QAAQ,EAAsH,MAAM,eAAe,CAAC;AAE7J,gBAAgB;AAChB,OAAO,EAAE,YAAY,EAAkD,MAAM,oBAAoB,CAAC;AAElG,aAAa;AACb,OAAO,EAAE,SAAS,EAAyB,MAAM,iBAAiB,CAAC;AAEnE,cAAc;AACd,OAAO,EAAE,WAAW,EAAE,UAAU,EAAuE,MAAM,kBAAkB,CAAC;AAEhI,sBAAsB;AACtB,OAAO,EAAE,kBAAkB,EAAuD,MAAM,cAAc,CAAC;AAEvG,YAAY;AACZ,cAAc,sBAAsB,CAAC;AACrC,cAAc,YAAY,CAAC;AAE3B,mBAAmB;AACnB,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,SAAS,EAAmB,MAAM,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,WAAW;AACX,OAAO,EAAE,QAAQ,EAAiD,MAAM,gBAAgB,CAAC;AAEzF,UAAU;AACV,OAAO,EAAE,OAAO,EAA8E,MAAM,cAAc,CAAC;AAEnH,QAAQ;AACR,OAAO,EAAE,KAAK,EAAqB,MAAM,YAAY,CAAC;AAEtD,UAAU;AACV,OAAO,EAAE,OAAO,EAAuB,MAAM,cAAc,CAAC;AAE5D,UAAU;AACV,OAAO,EAAE,OAAO,EAAuB,MAAM,cAAc,CAAC;AAE5D,mBAAmB;AACnB,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,WAAW;AACX,OAAO,EAAE,eAAe,EAA4C,MAAM,eAAe,CAAC;AAE1F,SAAS;AACT,OAAO,EAAE,SAAS,EAA6F,MAAM,aAAa,CAAC;AAEnI,SAAS;AACT,OAAO,EAAE,gBAAgB,EAAqD,MAAM,qBAAqB,CAAC;AAC1G,OAAO,EAAE,YAAY,EAAsB,MAAM,qBAAqB,CAAC;AACvE,OAAO,EAAE,SAAS,EAAsB,MAAM,aAAa,CAAC;AAE5D,kBAAkB;AAClB,OAAO,EAAE,kBAAkB,EAA+B,MAAM,uBAAuB,CAAC;AAExF,WAAW;AACX,OAAO,EAAE,QAAQ,EAAsH,MAAM,eAAe,CAAC;AAE7J,gBAAgB;AAChB,OAAO,EAAE,YAAY,EAAkD,MAAM,oBAAoB,CAAC;AAElG,aAAa;AACb,OAAO,EAAE,SAAS,EAAyB,MAAM,iBAAiB,CAAC;AAEnE,cAAc;AACd,OAAO,EAAE,WAAW,EAAE,UAAU,EAA0F,MAAM,kBAAkB,CAAC;AAEnJ,sBAAsB;AACtB,OAAO,EAAE,kBAAkB,EAAuD,MAAM,cAAc,CAAC;AAEvG,YAAY;AACZ,cAAc,sBAAsB,CAAC;AACrC,cAAc,YAAY,CAAC;AAE3B,mBAAmB;AACnB,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,SAAS,EAAmB,MAAM,QAAQ,CAAC"}
@@ -80,6 +80,13 @@ export interface RTPStreamOptions {
80
80
  channels?: number;
81
81
  encoderOptions?: EncoderOptions['options'];
82
82
  };
83
+ /**
84
+ * AbortSignal for cancellation.
85
+ *
86
+ * When aborted, the stream stops gracefully, equivalent to calling stop().
87
+ * If already aborted when start() is called, throws AbortError.
88
+ */
89
+ signal?: AbortSignal;
83
90
  }
84
91
  /**
85
92
  * Generic RTP streaming with automatic codec detection and transcoding.
@@ -128,6 +135,7 @@ export declare class RTPStream {
128
135
  private audioFilter?;
129
136
  private audioEncoder?;
130
137
  private pipeline?;
138
+ private signal?;
131
139
  private supportedVideoCodecs;
132
140
  private supportedAudioCodecs;
133
141
  /**