node-av 3.1.1 → 3.1.2

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
@@ -269,15 +269,13 @@ import * as ffmpeg from 'node-av';
269
269
 
270
270
  ## Stream Processing
271
271
 
272
- ### From Files
272
+ ### From Files or Network
273
273
 
274
274
  ```typescript
275
275
  const media = await MediaInput.open('input.mp4');
276
- ```
277
276
 
278
- ### From Network
277
+ // or
279
278
 
280
- ```typescript
281
279
  const media = await MediaInput.open('rtsp://example.com/stream');
282
280
  ```
283
281
 
@@ -290,6 +288,28 @@ const buffer = await readFile('input.mp4');
290
288
  const media = await MediaInput.open(buffer);
291
289
  ```
292
290
 
291
+ ### Custom I/O Callbacks
292
+
293
+ ```typescript
294
+ import type { IOInputCallbacks, IOOutputCallbacks } from 'node-av/api';
295
+
296
+ // Custom input source
297
+ const inputCallbacks: IOInputCallbacks = {
298
+ read: (size: number) => {
299
+ // Read from your custom source
300
+ return buffer; // or null for EOF
301
+ },
302
+ seek: (offset: bigint, whence: number) => {
303
+ // Seek in your custom source
304
+ return newPosition;
305
+ }
306
+ };
307
+
308
+ await using input = await MediaInput.open(inputCallbacks, {
309
+ format: 'mp4'
310
+ });
311
+ ```
312
+
293
313
  ### Raw Media Processing
294
314
 
295
315
  ```typescript
@@ -411,6 +431,7 @@ NodeAV provides direct bindings to FFmpeg's C APIs, which work with raw memory p
411
431
  | `api-muxing` | | | [✓](https://github.com/seydx/node-av/tree/main/examples/api-muxing.ts) |
412
432
  | `api-pipeline-hw-rtsp` | | | [✓](https://github.com/seydx/node-av/tree/main/examples/api-pipeline-hw-rtsp.ts) |
413
433
  | `api-pipeline-raw-muxing` | | | [✓](https://github.com/seydx/node-av/tree/main/examples/api-pipeline-raw-muxing.ts) |
434
+ | `api-sdp` | | | [✓](https://github.com/seydx/node-av/tree/main/examples/api-sdp.ts) |
414
435
  | `api-stream-input` | | | [✓](https://github.com/seydx/node-av/tree/main/examples/api-stream-input.ts) |
415
436
  | `api-sw-decode-hw-encode` | | | [✓](https://github.com/seydx/node-av/tree/main/examples/api-sw-decode-hw-encode.ts) |
416
437
  | `api-sw-transcode` | | | [✓](https://github.com/seydx/node-av/tree/main/examples/api-sw-transcode.ts) |
@@ -435,6 +456,7 @@ NodeAV provides direct bindings to FFmpeg's C APIs, which work with raw memory p
435
456
  | `mux` | [✓](https://github.com/FFmpeg/FFmpeg/tree/master/doc/examples/mux.c) | [✓](https://github.com/seydx/node-av/tree/main/examples/mux.ts) | |
436
457
  | `remux` | [✓](https://github.com/FFmpeg/FFmpeg/tree/master/doc/examples/remux.c) | [✓](https://github.com/seydx/node-av/tree/main/examples/remux.ts) | |
437
458
  | `resample-audio` | [✓](https://github.com/FFmpeg/FFmpeg/tree/master/doc/examples/resample_audio.c) | [✓](https://github.com/seydx/node-av/tree/main/examples/resample-audio.ts) | |
459
+ | `rtsp-stream-info` | | [✓](https://github.com/seydx/node-av/tree/main/examples/rtsp-stream-info.ts) | |
438
460
  | `scale-video` | [✓](https://github.com/FFmpeg/FFmpeg/tree/master/doc/examples/scale_video.c) | [✓](https://github.com/seydx/node-av/tree/main/examples/scale-video.ts) | |
439
461
  | `show-metadata` | [✓](https://github.com/FFmpeg/FFmpeg/tree/master/doc/examples/show_metadata.c) | [✓](https://github.com/seydx/node-av/tree/main/examples/show-metadata.ts) | |
440
462
  | `transcode-aac` | [✓](https://github.com/FFmpeg/FFmpeg/tree/master/doc/examples/transcode_aac.c) | [✓](https://github.com/seydx/node-av/tree/main/examples/transcode-aac.ts) | |
@@ -1,4 +1,4 @@
1
- import type { MediaInput } from '../media-input.js';
1
+ import type { FormatContext } from '../../lib/format-context.js';
2
2
  import type { MediaOutput } from '../media-output.js';
3
3
  /**
4
4
  * Streaming protocol utilities.
@@ -43,14 +43,14 @@ export declare class StreamingUtils {
43
43
  * await output2.addAudioStream(encoder2);
44
44
  *
45
45
  * // Generate SDP for multicast streaming
46
- * const sdp = StreamingUtils.createSdp([output1, output2]);
46
+ * const sdp = StreamingUtils.createSdp([output1.getFormatContext(), output2.getFormatContext()]);
47
47
  * if (sdp) {
48
48
  * // Write to file for VLC or other players
49
49
  * await fs.writeFile('stream.sdp', sdp);
50
50
  * }
51
51
  * ```
52
52
  */
53
- static createSdp(inouts: MediaInput[] | MediaOutput[]): string | null;
53
+ static createSdp(contexts: FormatContext[]): string | null;
54
54
  /**
55
55
  * Validate if an output is configured for RTP streaming
56
56
  *
@@ -42,24 +42,15 @@ export class StreamingUtils {
42
42
  * await output2.addAudioStream(encoder2);
43
43
  *
44
44
  * // Generate SDP for multicast streaming
45
- * const sdp = StreamingUtils.createSdp([output1, output2]);
45
+ * const sdp = StreamingUtils.createSdp([output1.getFormatContext(), output2.getFormatContext()]);
46
46
  * if (sdp) {
47
47
  * // Write to file for VLC or other players
48
48
  * await fs.writeFile('stream.sdp', sdp);
49
49
  * }
50
50
  * ```
51
51
  */
52
- static createSdp(inouts) {
53
- if (inouts?.length === 0) {
54
- return null;
55
- }
56
- // Extract FormatContext from each MediaOutput
57
- const contexts = inouts
58
- .map((inout) => {
59
- return inout.getFormatContext();
60
- })
61
- .filter((ctx) => ctx != null);
62
- if (contexts.length === 0) {
52
+ static createSdp(contexts) {
53
+ if (contexts?.length === 0) {
63
54
  return null;
64
55
  }
65
56
  return avSdpCreate(contexts);
@@ -1 +1 @@
1
- {"version":3,"file":"streaming.js","sourceRoot":"","sources":["../../../src/api/utilities/streaming.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAKrD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,OAAO,cAAc;IACzB;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,MAAM,CAAC,SAAS,CAAC,MAAoC;QACnD,IAAI,MAAM,EAAE,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,8CAA8C;QAC9C,MAAM,QAAQ,GAAG,MAAM;aACpB,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACb,OAAO,KAAK,CAAC,gBAAgB,EAAE,CAAC;QAClC,CAAC,CAAC;aACD,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;QAEhC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,WAAW,CAAC,MAAmB;QACpC,oCAAoC;QACpC,MAAM,aAAa,GAAG,MAAM,CAAC,gBAAgB,EAAE,CAAC;QAChD,MAAM,OAAO,GAAG,aAAa,EAAE,OAAO,CAAC;QACvC,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YAC1B,OAAO,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,YAAY,CAAC;QACjD,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,MAAM,CAAC,WAAW,CAChB,IAAY,EACZ,IAAY,EACZ,OAKC;QAED,IAAI,GAAG,GAAG,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC;QAElC,IAAI,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/C,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;YACrC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBACnD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;oBACxB,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBACpC,CAAC;YACH,CAAC;YACD,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;YACtC,IAAI,WAAW,EAAE,CAAC;gBAChB,GAAG,IAAI,IAAI,WAAW,EAAE,CAAC;YAC3B,CAAC;QACH,CAAC;QAED,OAAO,GAAG,CAAC;IACb,CAAC;CACF"}
1
+ {"version":3,"file":"streaming.js","sourceRoot":"","sources":["../../../src/api/utilities/streaming.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAKrD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,OAAO,cAAc;IACzB;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,MAAM,CAAC,SAAS,CAAC,QAAyB;QACxC,IAAI,QAAQ,EAAE,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,WAAW,CAAC,MAAmB;QACpC,oCAAoC;QACpC,MAAM,aAAa,GAAG,MAAM,CAAC,gBAAgB,EAAE,CAAC;QAChD,MAAM,OAAO,GAAG,aAAa,EAAE,OAAO,CAAC;QACvC,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YAC1B,OAAO,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,YAAY,CAAC;QACjD,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,MAAM,CAAC,WAAW,CAChB,IAAY,EACZ,IAAY,EACZ,OAKC;QAED,IAAI,GAAG,GAAG,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC;QAElC,IAAI,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/C,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;YACrC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBACnD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;oBACxB,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBACpC,CAAC;YACH,CAAC;YACD,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;YACtC,IAAI,WAAW,EAAE,CAAC;gBAChB,GAAG,IAAI,IAAI,WAAW,EAAE,CAAC;YAC3B,CAAC;QACH,CAAC;QAED,OAAO,GAAG,CAAC;IACb,CAAC;CACF"}
@@ -1,4 +1,5 @@
1
1
  import { RTCRtpCodecParameters, RtpPacket } from 'werift';
2
+ import { MediaInput } from './media-input.js';
2
3
  import type { AVCodecID, AVHWDeviceType } from '../constants/constants.js';
3
4
  /**
4
5
  * Codec information for WebRTC streaming.
@@ -125,7 +126,7 @@ export interface WebRTCStreamOptions {
125
126
  * @see {@link HardwareContext} For GPU acceleration
126
127
  */
127
128
  export declare class WebRTCStream implements Disposable {
128
- private input;
129
+ readonly input: MediaInput;
129
130
  private codecInfo;
130
131
  private options;
131
132
  private videoOutput;
@@ -137,6 +138,7 @@ export declare class WebRTCStream implements Disposable {
137
138
  private audioFilter;
138
139
  private audioEncoder;
139
140
  private streamActive;
141
+ private disposed;
140
142
  /**
141
143
  * @param input - Media input source
142
144
  *
@@ -184,6 +186,12 @@ export declare class WebRTCStream implements Disposable {
184
186
  * ```
185
187
  */
186
188
  static create(inputUrl: string, options?: WebRTCStreamOptions): Promise<WebRTCStream>;
189
+ /**
190
+ * Check if the stream is active.
191
+ *
192
+ * @returns True if the stream is active, false otherwise
193
+ */
194
+ get isStreamActive(): boolean;
187
195
  /**
188
196
  * Get detected codec information for SDP negotiation.
189
197
  *
@@ -510,8 +518,6 @@ export declare class WebRTCSession implements Disposable {
510
518
  *
511
519
  * @returns Codec configuration for video and audio streams
512
520
  *
513
- * @throws {Error} If stream not initialized
514
- *
515
521
  * @example
516
522
  * ```typescript
517
523
  * const session = await WebRTCSession.create('input.mp4');
@@ -534,8 +540,6 @@ export declare class WebRTCSession implements Disposable {
534
540
  *
535
541
  * @returns SDP answer string to send back to remote peer
536
542
  *
537
- * @throws {Error} If stream not initialized
538
- *
539
543
  * @example
540
544
  * ```typescript
541
545
  * const session = await WebRTCSession.create('input.mp4');
@@ -581,8 +585,6 @@ export declare class WebRTCSession implements Disposable {
581
585
  *
582
586
  * @returns Promise that resolves when streaming completes
583
587
  *
584
- * @throws {Error} If stream not initialized
585
- *
586
588
  * @throws {FFmpegError} If transcoding or muxing fails
587
589
  *
588
590
  * @example
@@ -130,6 +130,7 @@ export class WebRTCStream {
130
130
  audioFilter = null;
131
131
  audioEncoder = null;
132
132
  streamActive = false;
133
+ disposed = false;
133
134
  /**
134
135
  * @param input - Media input source
135
136
  *
@@ -145,7 +146,8 @@ export class WebRTCStream {
145
146
  const audioStream = input.audio();
146
147
  const videoCodecId = videoStream.codecpar.codecId;
147
148
  const audioCodecId = audioStream?.codecpar.codecId ?? null;
148
- const videoConfig = this.getVideoCodecConfig(videoCodecId) ?? this.getVideoCodecConfig(AV_CODEC_ID_H264); // We transcode unsupported codecs to H264
149
+ // We transcode unsupported codecs to H264
150
+ const videoConfig = this.getVideoCodecConfig(videoCodecId) ?? this.getVideoCodecConfig(AV_CODEC_ID_H264);
149
151
  this.codecInfo = {
150
152
  video: {
151
153
  codecId: videoCodecId,
@@ -153,7 +155,8 @@ export class WebRTCStream {
153
155
  },
154
156
  };
155
157
  if (audioCodecId !== null) {
156
- const audioConfig = this.getAudioCodecConfig(audioCodecId) ?? this.getAudioCodecConfig(AV_CODEC_ID_OPUS); // We transcode unsupported codecs to OPUS
158
+ // We transcode unsupported codecs to OPUS
159
+ const audioConfig = this.getAudioCodecConfig(audioCodecId) ?? this.getAudioCodecConfig(AV_CODEC_ID_OPUS);
157
160
  this.codecInfo.audio = {
158
161
  codecId: audioCodecId,
159
162
  ...audioConfig,
@@ -220,6 +223,14 @@ export class WebRTCStream {
220
223
  }
221
224
  return new WebRTCStream(input, options);
222
225
  }
226
+ /**
227
+ * Check if the stream is active.
228
+ *
229
+ * @returns True if the stream is active, false otherwise
230
+ */
231
+ get isStreamActive() {
232
+ return this.streamActive;
233
+ }
223
234
  /**
224
235
  * Get detected codec information for SDP negotiation.
225
236
  *
@@ -479,9 +490,10 @@ export class WebRTCStream {
479
490
  * ```
480
491
  */
481
492
  dispose() {
482
- if (!this.streamActive) {
493
+ if (this.disposed) {
483
494
  return;
484
495
  }
496
+ this.disposed = true;
485
497
  this.stop();
486
498
  this.videoOutput?.close();
487
499
  this.audioOutput?.close();
@@ -796,7 +808,7 @@ export class WebRTCStream {
796
808
  * @see {@link HardwareContext} For GPU acceleration
797
809
  */
798
810
  export class WebRTCSession {
799
- stream = null;
811
+ stream;
800
812
  pc = null;
801
813
  videoTrack = null;
802
814
  audioTrack = null;
@@ -884,8 +896,6 @@ export class WebRTCSession {
884
896
  *
885
897
  * @returns Codec configuration for video and audio streams
886
898
  *
887
- * @throws {Error} If stream not initialized
888
- *
889
899
  * @example
890
900
  * ```typescript
891
901
  * const session = await WebRTCSession.create('input.mp4');
@@ -896,9 +906,6 @@ export class WebRTCSession {
896
906
  * ```
897
907
  */
898
908
  getCodecs() {
899
- if (!this.stream) {
900
- throw new Error('Stream not initialized');
901
- }
902
909
  return this.stream.getCodecs();
903
910
  }
904
911
  /**
@@ -913,8 +920,6 @@ export class WebRTCSession {
913
920
  *
914
921
  * @returns SDP answer string to send back to remote peer
915
922
  *
916
- * @throws {Error} If stream not initialized
917
- *
918
923
  * @example
919
924
  * ```typescript
920
925
  * const session = await WebRTCSession.create('input.mp4');
@@ -930,9 +935,6 @@ export class WebRTCSession {
930
935
  * ```
931
936
  */
932
937
  async setOffer(offerSdp) {
933
- if (!this.stream) {
934
- throw new Error('Stream not initialized');
935
- }
936
938
  const codecs = this.stream.getCodecs();
937
939
  const videoConfig = codecs.video;
938
940
  delete videoConfig.codecId;
@@ -967,17 +969,34 @@ export class WebRTCSession {
967
969
  }
968
970
  });
969
971
  // Setup tracks
970
- this.pc.onTransceiverAdded.subscribe((transceiver) => {
972
+ this.pc.onRemoteTransceiverAdded.subscribe(async (transceiver) => {
971
973
  if (transceiver.kind === 'video') {
972
974
  this.videoTrack = new MediaStreamTrack({ kind: 'video' });
973
975
  transceiver.sender.replaceTrack(this.videoTrack);
974
976
  transceiver.setDirection('sendonly');
975
977
  }
976
- else if (transceiver.kind === 'audio') {
978
+ else if (transceiver.kind === 'audio' && this.audioTrack === null) {
977
979
  this.audioTrack = new MediaStreamTrack({ kind: 'audio' });
978
980
  transceiver.sender.replaceTrack(this.audioTrack);
979
981
  transceiver.setDirection('sendonly');
980
982
  }
983
+ else if (transceiver.kind === 'audio') {
984
+ // Backchannel
985
+ const [track] = await transceiver.onTrack.asPromise();
986
+ const ctx = this.stream.input.getFormatContext();
987
+ const streams = ctx?.getRTSPStreamInfo();
988
+ const backchannel = streams?.find((s) => s.direction === 'sendonly');
989
+ track.onReceiveRtp.subscribe(async (rtp) => {
990
+ if (backchannel && this.stream.isStreamActive) {
991
+ try {
992
+ await ctx?.sendRTSPPacket(backchannel.streamIndex, rtp.serialize());
993
+ }
994
+ catch {
995
+ // Ignore send errors
996
+ }
997
+ }
998
+ });
999
+ }
981
1000
  });
982
1001
  // Set remote description and create answer
983
1002
  await this.pc.setRemoteDescription(new RTCSessionDescription(offerSdp, 'offer'));
@@ -1020,8 +1039,6 @@ export class WebRTCSession {
1020
1039
  *
1021
1040
  * @returns Promise that resolves when streaming completes
1022
1041
  *
1023
- * @throws {Error} If stream not initialized
1024
- *
1025
1042
  * @throws {FFmpegError} If transcoding or muxing fails
1026
1043
  *
1027
1044
  * @example
@@ -1048,9 +1065,6 @@ export class WebRTCSession {
1048
1065
  * ```
1049
1066
  */
1050
1067
  async start() {
1051
- if (!this.stream) {
1052
- throw new Error('Stream not initialized');
1053
- }
1054
1068
  await this.stream.start();
1055
1069
  }
1056
1070
  /**
@@ -1073,7 +1087,7 @@ export class WebRTCSession {
1073
1087
  * ```
1074
1088
  */
1075
1089
  stop() {
1076
- this.stream?.stop();
1090
+ this.stream.stop();
1077
1091
  }
1078
1092
  /**
1079
1093
  * Clean up all resources and close the session.
@@ -1100,7 +1114,7 @@ export class WebRTCSession {
1100
1114
  */
1101
1115
  dispose() {
1102
1116
  this.stop();
1103
- this.stream?.dispose();
1117
+ this.stream.dispose();
1104
1118
  this.pc?.close();
1105
1119
  this.videoTrack = null;
1106
1120
  this.audioTrack = null;
@@ -1 +1 @@
1
- {"version":3,"file":"webrtc.js","sourceRoot":"","sources":["../../src/api/webrtc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"webrtc.js","sourceRoot":"","sources":["../../src/api/webrtc.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ import { InputFormat } from './input-format.js';
4
4
  import { OptionMember } from './option.js';
5
5
  import { OutputFormat } from './output-format.js';
6
6
  import { Stream } from './stream.js';
7
- import type { AVFormatFlag, AVMediaType, AVSeekFlag } from '../constants/constants.js';
7
+ import type { AVCodecID, AVFormatFlag, AVMediaType, AVSeekFlag } from '../constants/constants.js';
8
8
  import type { IOContext } from './io-context.js';
9
9
  import type { NativeFormatContext, NativeWrapper } from './native-types.js';
10
10
  import type { Packet } from './packet.js';
@@ -1064,6 +1064,118 @@ export declare class FormatContext extends OptionMember<NativeFormatContext> imp
1064
1064
  * @see {@link flags} For direct flag access
1065
1065
  */
1066
1066
  clearFlags(...flags: AVFormatFlag[]): void;
1067
+ /**
1068
+ * Get RTSP stream information.
1069
+ *
1070
+ * Returns information about all RTSP streams including codec details.
1071
+ * Only works with RTSP input contexts.
1072
+ *
1073
+ * @returns Array of stream information objects with codec details, or null if not RTSP
1074
+ *
1075
+ * @example
1076
+ * ```typescript
1077
+ * const ctx = new FormatContext();
1078
+ * await ctx.openInput('rtsp://camera/stream?backchannel=1');
1079
+ *
1080
+ * const rtspStreams = ctx.getRTSPStreamInfo();
1081
+ * if (rtspStreams) {
1082
+ * // Find sendonly stream (backchannel)
1083
+ * const backchannel = rtspStreams.find(s => s.direction === 'sendonly');
1084
+ * if (backchannel) {
1085
+ * console.log(`Transport: ${backchannel.transport}`);
1086
+ * console.log(`Codec ID: ${backchannel.codecId}`);
1087
+ * console.log(`MIME Type: ${backchannel.mimeType}`);
1088
+ * console.log(`Payload Type: ${backchannel.payloadType}`);
1089
+ * if (backchannel.sampleRate) {
1090
+ * console.log(`Audio: ${backchannel.sampleRate}Hz, ${backchannel.channels} channels`);
1091
+ * }
1092
+ * }
1093
+ * }
1094
+ * ```
1095
+ */
1096
+ getRTSPStreamInfo(): {
1097
+ streamIndex: number;
1098
+ controlUrl: string;
1099
+ transport: 'tcp' | 'udp' | 'udp_multicast' | 'unknown';
1100
+ payloadType: number;
1101
+ codecId: AVCodecID;
1102
+ mimeType: string;
1103
+ sampleRate?: number;
1104
+ channels?: number;
1105
+ direction: 'sendonly' | 'recvonly' | 'sendrecv' | 'inactive';
1106
+ fmtp?: string;
1107
+ }[] | null;
1108
+ /**
1109
+ * Send RTP packet to RTSP stream (supports both TCP and UDP)
1110
+ *
1111
+ * Automatically handles transport-specific packet formatting:
1112
+ * - TCP: Sends with interleaved header ($channelId + length + RTP)
1113
+ * - UDP: Sends raw RTP packet directly to UDP socket
1114
+ *
1115
+ * Used for backchannel/talkback audio streaming.
1116
+ * Only works with RTSP input contexts.
1117
+ *
1118
+ * @param streamIndex - RTSP stream index
1119
+ *
1120
+ * @param rtpData - Raw RTP packet data (12-byte header + payload)
1121
+ *
1122
+ * @returns Promise resolving to number of bytes written on success, negative AVERROR on failure
1123
+ *
1124
+ * @example
1125
+ * ```typescript
1126
+ * // Get backchannel stream info
1127
+ * const streams = ctx.getRTSPStreamInfo();
1128
+ * const backchannel = streams.find(s => s.direction === 'sendonly');
1129
+ *
1130
+ * if (backchannel) {
1131
+ * // Send to camera (works with both TCP and UDP)
1132
+ * const ret = await ctx.sendRTSPPacket(backchannel.streamIndex, rtpPacket);
1133
+ * if (ret < 0) {
1134
+ * throw new Error(`Failed to send: ${ret}`);
1135
+ * }
1136
+ * }
1137
+ * ```
1138
+ *
1139
+ * @see {@link sendRTSPPacketSync} For synchronous version
1140
+ * @see {@link getRTSPStreamInfo} For getting stream info and transport type
1141
+ */
1142
+ sendRTSPPacket(streamIndex: number, rtpData: Buffer): Promise<number>;
1143
+ /**
1144
+ * Send RTP packet to RTSP stream (supports both TCP and UDP) synchronously.
1145
+ * Synchronous version of sendRTSPPacket.
1146
+ *
1147
+ * Automatically handles transport-specific packet formatting:
1148
+ * - TCP: Sends with interleaved header ($channelId + length + RTP)
1149
+ * - UDP: Sends raw RTP packet directly to UDP socket
1150
+ *
1151
+ * Used for backchannel/talkback audio streaming.
1152
+ * Only works with RTSP input contexts.
1153
+ *
1154
+ * @param streamIndex - RTSP stream index
1155
+ *
1156
+ * @param rtpData - Raw RTP packet data (12-byte header + payload)
1157
+ *
1158
+ * @returns Number of bytes written on success, negative AVERROR on failure
1159
+ *
1160
+ * @example
1161
+ * ```typescript
1162
+ * // Get backchannel stream info
1163
+ * const streams = ctx.getRTSPStreamInfo();
1164
+ * const backchannel = streams.find(s => s.direction === 'sendonly');
1165
+ *
1166
+ * if (backchannel) {
1167
+ * // Send to camera (works with both TCP and UDP)
1168
+ * const ret = ctx.sendRTSPPacketSync(backchannel.streamIndex, rtpPacket);
1169
+ * if (ret < 0) {
1170
+ * throw new Error(`Failed to send: ${ret}`);
1171
+ * }
1172
+ * }
1173
+ * ```
1174
+ *
1175
+ * @see {@link sendRTSPPacket} For asynchronous version
1176
+ * @see {@link getRTSPStreamInfo} For getting stream info and transport type
1177
+ */
1178
+ sendRTSPPacketSync(streamIndex: number, rtpData: Buffer): number;
1067
1179
  /**
1068
1180
  * Get the underlying native FormatContext object.
1069
1181
  *
@@ -1168,6 +1168,114 @@ export class FormatContext extends OptionMember {
1168
1168
  clearFlags(...flags) {
1169
1169
  this.native.clearFlags(...flags);
1170
1170
  }
1171
+ /**
1172
+ * Get RTSP stream information.
1173
+ *
1174
+ * Returns information about all RTSP streams including codec details.
1175
+ * Only works with RTSP input contexts.
1176
+ *
1177
+ * @returns Array of stream information objects with codec details, or null if not RTSP
1178
+ *
1179
+ * @example
1180
+ * ```typescript
1181
+ * const ctx = new FormatContext();
1182
+ * await ctx.openInput('rtsp://camera/stream?backchannel=1');
1183
+ *
1184
+ * const rtspStreams = ctx.getRTSPStreamInfo();
1185
+ * if (rtspStreams) {
1186
+ * // Find sendonly stream (backchannel)
1187
+ * const backchannel = rtspStreams.find(s => s.direction === 'sendonly');
1188
+ * if (backchannel) {
1189
+ * console.log(`Transport: ${backchannel.transport}`);
1190
+ * console.log(`Codec ID: ${backchannel.codecId}`);
1191
+ * console.log(`MIME Type: ${backchannel.mimeType}`);
1192
+ * console.log(`Payload Type: ${backchannel.payloadType}`);
1193
+ * if (backchannel.sampleRate) {
1194
+ * console.log(`Audio: ${backchannel.sampleRate}Hz, ${backchannel.channels} channels`);
1195
+ * }
1196
+ * }
1197
+ * }
1198
+ * ```
1199
+ */
1200
+ // prettier-ignore
1201
+ getRTSPStreamInfo() {
1202
+ return this.native.getRTSPStreamInfo();
1203
+ }
1204
+ /**
1205
+ * Send RTP packet to RTSP stream (supports both TCP and UDP)
1206
+ *
1207
+ * Automatically handles transport-specific packet formatting:
1208
+ * - TCP: Sends with interleaved header ($channelId + length + RTP)
1209
+ * - UDP: Sends raw RTP packet directly to UDP socket
1210
+ *
1211
+ * Used for backchannel/talkback audio streaming.
1212
+ * Only works with RTSP input contexts.
1213
+ *
1214
+ * @param streamIndex - RTSP stream index
1215
+ *
1216
+ * @param rtpData - Raw RTP packet data (12-byte header + payload)
1217
+ *
1218
+ * @returns Promise resolving to number of bytes written on success, negative AVERROR on failure
1219
+ *
1220
+ * @example
1221
+ * ```typescript
1222
+ * // Get backchannel stream info
1223
+ * const streams = ctx.getRTSPStreamInfo();
1224
+ * const backchannel = streams.find(s => s.direction === 'sendonly');
1225
+ *
1226
+ * if (backchannel) {
1227
+ * // Send to camera (works with both TCP and UDP)
1228
+ * const ret = await ctx.sendRTSPPacket(backchannel.streamIndex, rtpPacket);
1229
+ * if (ret < 0) {
1230
+ * throw new Error(`Failed to send: ${ret}`);
1231
+ * }
1232
+ * }
1233
+ * ```
1234
+ *
1235
+ * @see {@link sendRTSPPacketSync} For synchronous version
1236
+ * @see {@link getRTSPStreamInfo} For getting stream info and transport type
1237
+ */
1238
+ async sendRTSPPacket(streamIndex, rtpData) {
1239
+ return this.native.sendRTSPPacket(streamIndex, rtpData);
1240
+ }
1241
+ /**
1242
+ * Send RTP packet to RTSP stream (supports both TCP and UDP) synchronously.
1243
+ * Synchronous version of sendRTSPPacket.
1244
+ *
1245
+ * Automatically handles transport-specific packet formatting:
1246
+ * - TCP: Sends with interleaved header ($channelId + length + RTP)
1247
+ * - UDP: Sends raw RTP packet directly to UDP socket
1248
+ *
1249
+ * Used for backchannel/talkback audio streaming.
1250
+ * Only works with RTSP input contexts.
1251
+ *
1252
+ * @param streamIndex - RTSP stream index
1253
+ *
1254
+ * @param rtpData - Raw RTP packet data (12-byte header + payload)
1255
+ *
1256
+ * @returns Number of bytes written on success, negative AVERROR on failure
1257
+ *
1258
+ * @example
1259
+ * ```typescript
1260
+ * // Get backchannel stream info
1261
+ * const streams = ctx.getRTSPStreamInfo();
1262
+ * const backchannel = streams.find(s => s.direction === 'sendonly');
1263
+ *
1264
+ * if (backchannel) {
1265
+ * // Send to camera (works with both TCP and UDP)
1266
+ * const ret = ctx.sendRTSPPacketSync(backchannel.streamIndex, rtpPacket);
1267
+ * if (ret < 0) {
1268
+ * throw new Error(`Failed to send: ${ret}`);
1269
+ * }
1270
+ * }
1271
+ * ```
1272
+ *
1273
+ * @see {@link sendRTSPPacket} For asynchronous version
1274
+ * @see {@link getRTSPStreamInfo} For getting stream info and transport type
1275
+ */
1276
+ sendRTSPPacketSync(streamIndex, rtpData) {
1277
+ return this.native.sendRTSPPacketSync(streamIndex, rtpData);
1278
+ }
1171
1279
  /**
1172
1280
  * Get the underlying native FormatContext object.
1173
1281
  *
@@ -1 +1 @@
1
- {"version":3,"file":"format-context.js","sourceRoot":"","sources":["../../src/lib/format-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAOrC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AACH,MAAM,OAAO,aAAc,SAAQ,YAAiC;IAC1D,UAAU,GAAqB,IAAI,CAAC;IAE5C;QACE,KAAK,CAAC,IAAI,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC;IACtC,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;IACzB,CAAC;IAED,IAAI,GAAG,CAAC,KAAoB;QAC1B,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,KAAK,CAAC;IAC1B,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;IAC/B,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;IAC9B,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;IAC7B,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;IAC3B,CAAC;IAED,IAAI,KAAK,CAAC,KAAmB;QAC3B,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;IAC5B,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,kBAAkB;QACpB,OAAO,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC;IACxC,CAAC;IAED,IAAI,kBAAkB,CAAC,KAAa;QAClC,IAAI,CAAC,MAAM,CAAC,kBAAkB,GAAG,KAAK,CAAC;IACzC,CAAC;IAED;;;;;;OAMG;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;;;;;;OAMG;IACH,IAAI,OAAO;QACT,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;QACzC,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,IAAI,WAAW,CAAC,YAAY,CAAC,CAAC;IACvC,CAAC;IAED;;;;;;OAMG;IACH,IAAI,OAAO;QACT,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;QACzC,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,IAAI,YAAY,CAAC,YAAY,CAAC,CAAC;IACxC,CAAC;IAED,IAAI,OAAO,CAAC,KAA0B;QACpC,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,KAAK,EAAE,SAAS,EAAE,IAAI,IAAI,CAAC;IACnD,CAAC;IAED;;;;;;OAMG;IACH,IAAI,EAAE;QACJ,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,IAAI,EAAE,CAAC,KAAuB;QAC5B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,EAAE,SAAS,EAAE,IAAI,IAAI,CAAC;IAC9C,CAAC;IAED;;;;OAIG;IACH,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;IAC/B,CAAC;IAED;;;;;;OAMG;IACH,IAAI,OAAO;QACT,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;QAC1C,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;IACvE,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,mBAAmB;QACrB,OAAO,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC;IACzC,CAAC;IAED,IAAI,mBAAmB,CAAC,KAAa;QACnC,IAAI,CAAC,MAAM,CAAC,mBAAmB,GAAG,KAAK,CAAC;IAC1C,CAAC;IAED;;;;;;OAMG;IACH,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC;IAChC,CAAC;IAED,IAAI,UAAU,CAAC,KAAa;QAC1B,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,KAAK,CAAC;IACjC,CAAC;IAED;;;;;;OAMG;IACH,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC;IAChC,CAAC;IAED;;;;OAIG;IACH,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;IAC7B,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC;IAChC,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,YAAY;QACV,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;IAC7B,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,mBAAmB,CAAC,OAA4B,EAAE,UAAyB,EAAE,QAAuB;QAClG,IAAI,CAAC,OAAO,IAAI,CAAC,UAAU,IAAI,CAAC,QAAQ,EAAE,CAAC;YACzC,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;QACxF,CAAC;QAED,OAAO,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;IAC7F,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,WAAW;QACT,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;IAC5B,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,KAAK,CAAC,UAAU;QACd,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;IACxC,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,cAAc;QACZ,OAAO,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;IACtC,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,KAAK,CAAC,WAAW;QACf,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;IACzC,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,eAAe;QACb,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;IAChC,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,KAAK,CAAC,SAAS,CAAC,GAAW,EAAE,MAA0B,IAAI,EAAE,UAA6B,IAAI;QAC5F,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC;IAClG,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,aAAa,CAAC,GAAW,EAAE,MAA0B,IAAI,EAAE,UAA6B,IAAI;QAC1F,OAAO,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC;IAChG,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,KAAK,CAAC,UAAU;QACd,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;IACxC,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,cAAc;QACZ,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;IAC/B,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,KAAK,CAAC,cAAc,CAAC,UAA+B,IAAI;QACtD,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC;IACtF,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,kBAAkB,CAAC,UAA6B,IAAI;QAClD,OAAO,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC;IACtE,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmCG;IACH,KAAK,CAAC,SAAS,CAAC,GAAW;QACzB,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;IACtD,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAoCG;IACH,aAAa,CAAC,GAAW;QACvB,OAAO,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;IACpD,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACH,KAAK,CAAC,SAAS,CAAC,WAAmB,EAAE,SAAiB,EAAE,QAAoB,WAAW;QACrF,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IACpE,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,aAAa,CAAC,WAAmB,EAAE,SAAiB,EAAE,QAAoB,WAAW;QACnF,OAAO,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,WAAW,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAClE,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmCG;IACH,KAAK,CAAC,QAAQ,CAAC,WAAmB,EAAE,KAAa,EAAE,EAAU,EAAE,KAAa,EAAE,QAAoB,WAAW;QAC3G,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAC1E,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,KAAK,CAAC,WAAW,CAAC,UAA6B,IAAI;QACjD,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC;IACrE,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,eAAe,CAAC,UAA6B,IAAI;QAC/C,OAAO,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC;IACnE,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,KAAK,CAAC,UAAU,CAAC,GAAkB;QACjC,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACpE,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,cAAc,CAAC,GAAkB;QAC/B,OAAO,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAClE,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,KAAK,CAAC,qBAAqB,CAAC,GAAkB;QAC5C,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC/E,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACH,yBAAyB,CAAC,GAAkB;QAC1C,OAAO,IAAI,CAAC,MAAM,CAAC,yBAAyB,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC7E,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,KAAK,CAAC,YAAY;QAChB,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;IAC1C,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,gBAAgB;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC;IACxC,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,SAAS;QACP,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;IAC1B,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,UAAU,CAAC,KAAa,EAAE,GAAW,EAAE,QAAiB;QACtD,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;IAC/C,CAAC;IAiDD,cAAc,CAAC,IAAiB,EAAE,cAAc,GAAG,CAAC,CAAC,EAAE,aAAa,GAAG,CAAC,CAAC,EAAE,WAAW,GAAG,KAAK,EAAE,KAAK,GAAG,CAAC;QACvG,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;YACzB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,cAAc,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC;YACjG,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;gBAClD,8CAA8C;gBAC9C,OAAO;oBACL,WAAW,EAAE,MAAM,CAAC,WAAW;oBAC/B,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC;iBAC1C,CAAC;YACJ,CAAC;YACD,yCAAyC;YACzC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAChD,CAAC;QAED,OAAO,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,cAAc,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,IAAI,CAAC,CAAW,CAAC;IACtG,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,SAAS,CAAC,IAAkB,IAAI;QAC9B,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC;QACnE,OAAO,IAAI,MAAM,CAAC,YAAY,CAAC,CAAC;IAClC,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,QAAQ,CAAC,GAAG,KAAqB;QAC/B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,CAAC;IACjC,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,UAAU,CAAC,GAAG,KAAqB;QACjC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,CAAC;IACnC,CAAC;IAED;;;;;;OAMG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;QACzB,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC;IAC3C,CAAC;CACF"}
1
+ {"version":3,"file":"format-context.js","sourceRoot":"","sources":["../../src/lib/format-context.ts"],"names":[],"mappings":"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"}
@@ -452,6 +452,20 @@ export interface NativeFormatContext extends AsyncDisposable {
452
452
  };
453
453
  setFlags(...flags: AVFormatFlag[]): void;
454
454
  clearFlags(...flags: AVFormatFlag[]): void;
455
+ getRTSPStreamInfo(): {
456
+ streamIndex: number;
457
+ controlUrl: string;
458
+ transport: 'tcp' | 'udp' | 'udp_multicast' | 'unknown';
459
+ payloadType: number;
460
+ codecId: AVCodecID;
461
+ mimeType: string;
462
+ sampleRate?: number;
463
+ channels?: number;
464
+ direction: 'sendonly' | 'recvonly' | 'sendrecv' | 'inactive';
465
+ fmtp?: string;
466
+ }[] | null;
467
+ sendRTSPPacket(streamIndex: number, rtpData: Buffer): Promise<number>;
468
+ sendRTSPPacketSync(streamIndex: number, rtpData: Buffer): number;
455
469
  [Symbol.dispose](): void;
456
470
  }
457
471
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "node-av",
3
- "version": "3.1.1",
3
+ "version": "3.1.2",
4
4
  "description": "FFmpeg bindings for Node.js",
5
5
  "author": "seydx (https://github.com/seydx/av)",
6
6
  "type": "module",
@@ -67,14 +67,14 @@
67
67
  "werift": "^0.22.2"
68
68
  },
69
69
  "optionalDependencies": {
70
- "@seydx/node-av-darwin-arm64": "^3.1.1",
71
- "@seydx/node-av-darwin-x64": "^3.1.1",
72
- "@seydx/node-av-linux-arm64": "^3.1.1",
73
- "@seydx/node-av-linux-x64": "^3.1.1",
74
- "@seydx/node-av-win32-arm64-mingw": "^3.1.1",
75
- "@seydx/node-av-win32-arm64-msvc": "^3.1.1",
76
- "@seydx/node-av-win32-x64-mingw": "^3.1.1",
77
- "@seydx/node-av-win32-x64-msvc": "^3.1.1"
70
+ "@seydx/node-av-darwin-arm64": "^3.1.2",
71
+ "@seydx/node-av-darwin-x64": "^3.1.2",
72
+ "@seydx/node-av-linux-arm64": "^3.1.2",
73
+ "@seydx/node-av-linux-x64": "^3.1.2",
74
+ "@seydx/node-av-win32-arm64-mingw": "^3.1.2",
75
+ "@seydx/node-av-win32-arm64-msvc": "^3.1.2",
76
+ "@seydx/node-av-win32-x64-mingw": "^3.1.2",
77
+ "@seydx/node-av-win32-x64-msvc": "^3.1.2"
78
78
  },
79
79
  "devDependencies": {
80
80
  "@stylistic/eslint-plugin": "^5.5.0",
@@ -88,7 +88,7 @@
88
88
  "cpy-cli": "^6.0.0",
89
89
  "cross-env": "^10.1.0",
90
90
  "eslint": "^9.38.0",
91
- "eslint-plugin-jsdoc": "^61.1.8",
91
+ "eslint-plugin-jsdoc": "^61.1.9",
92
92
  "globals": "^16.4.0",
93
93
  "node-addon-api": "^8.5.0",
94
94
  "node-gyp": "^11.5.0",
@@ -101,7 +101,7 @@
101
101
  "typedoc-vitepress-theme": "^1.1.2",
102
102
  "typescript": "^5.9.3",
103
103
  "typescript-eslint": "^8.46.2",
104
- "updates": "^16.8.2",
104
+ "updates": "^16.9.1",
105
105
  "vitepress": "^2.0.0-alpha.12",
106
106
  "ws": "^8.18.3"
107
107
  },