node-av 6.2.0-beta.25 → 6.2.0-beta.26
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 +1 -1
- package/dist/api/audio-frame-buffer.d.ts +368 -22
- package/dist/api/audio-frame-buffer.js +687 -100
- package/dist/api/audio-frame-buffer.js.map +1 -1
- package/dist/api/demuxer.d.ts +7 -3
- package/dist/api/demuxer.js +19 -7
- package/dist/api/demuxer.js.map +1 -1
- package/dist/api/encoder.d.ts +40 -3
- package/dist/api/encoder.js +61 -23
- package/dist/api/encoder.js.map +1 -1
- package/dist/api/fmp4-stream.d.ts +103 -3
- package/dist/api/fmp4-stream.js +151 -28
- package/dist/api/fmp4-stream.js.map +1 -1
- package/dist/api/index.d.ts +1 -1
- package/dist/api/index.js.map +1 -1
- package/dist/api/io-stream.js +21 -6
- package/dist/api/io-stream.js.map +1 -1
- package/dist/api/muxer.d.ts +275 -7
- package/dist/api/muxer.js +569 -62
- package/dist/api/muxer.js.map +1 -1
- package/dist/api/rtp-stream.d.ts +19 -2
- package/dist/api/rtp-stream.js +62 -15
- package/dist/api/rtp-stream.js.map +1 -1
- package/dist/api/scaler.d.ts +19 -4
- package/dist/api/scaler.js +21 -6
- package/dist/api/scaler.js.map +1 -1
- package/dist/api/utilities/packet-age-watchdog.d.ts +198 -0
- package/dist/api/utilities/packet-age-watchdog.js +594 -0
- package/dist/api/utilities/packet-age-watchdog.js.map +1 -0
- package/dist/lib/binding.d.ts +9 -1
- package/dist/lib/binding.js +13 -0
- package/dist/lib/binding.js.map +1 -1
- package/dist/lib/format-context.d.ts +7 -0
- package/dist/lib/format-context.js +7 -0
- package/dist/lib/format-context.js.map +1 -1
- package/dist/lib/frame.d.ts +6 -2
- package/dist/lib/frame.js +11 -3
- package/dist/lib/frame.js.map +1 -1
- package/dist/lib/native-types.d.ts +3 -1
- package/package.json +12 -12
package/dist/api/scaler.d.ts
CHANGED
|
@@ -31,6 +31,13 @@ export interface ScaleOptions {
|
|
|
31
31
|
resize?: ScalerResize;
|
|
32
32
|
/** Optional output pixel format. Omit to keep the source format. */
|
|
33
33
|
format?: ScaledImageFormat;
|
|
34
|
+
/**
|
|
35
|
+
* Optional buffer to write the result into instead of allocating a new one.
|
|
36
|
+
* It must be a Buffer of at least the result's size and must not overlap the
|
|
37
|
+
* source frame's data; the returned buffer is then a view of its first bytes.
|
|
38
|
+
* Do not read or write it until the call has settled.
|
|
39
|
+
*/
|
|
40
|
+
output?: Buffer;
|
|
34
41
|
}
|
|
35
42
|
/**
|
|
36
43
|
* Options for encoding a frame to JPEG.
|
|
@@ -131,15 +138,21 @@ export declare class Scaler implements Disposable {
|
|
|
131
138
|
*
|
|
132
139
|
* @param frame - Source frame (software or hardware; hardware frames are processed on the GPU and downloaded)
|
|
133
140
|
*
|
|
134
|
-
* @param options - Crop, resize, and
|
|
141
|
+
* @param options - Crop, resize, format, and output buffer options
|
|
135
142
|
*
|
|
136
|
-
* @returns Tightly packed pixel data
|
|
143
|
+
* @returns Tightly packed pixel data (a view of `options.output` when given)
|
|
137
144
|
*
|
|
138
145
|
* @throws {FFmpegError} If scaling fails
|
|
139
146
|
*
|
|
147
|
+
* @throws {TypeError} If `options.output` is not a Buffer or is smaller than the result
|
|
148
|
+
*
|
|
140
149
|
* @example
|
|
141
150
|
* ```typescript
|
|
142
151
|
* const gray = await scaler.toBuffer(frame, { resize: { width: 320, height: 180 }, format: 'gray' });
|
|
152
|
+
*
|
|
153
|
+
* // Reuse one buffer across frames
|
|
154
|
+
* const reused = Buffer.allocUnsafe(320 * 180);
|
|
155
|
+
* await scaler.toBuffer(frame, { resize: { width: 320, height: 180 }, format: 'gray', output: reused });
|
|
143
156
|
* ```
|
|
144
157
|
*
|
|
145
158
|
* @see {@link toBufferSync} For synchronous version
|
|
@@ -151,12 +164,14 @@ export declare class Scaler implements Disposable {
|
|
|
151
164
|
*
|
|
152
165
|
* @param frame - Source frame (software or hardware; hardware frames are processed on the GPU and downloaded)
|
|
153
166
|
*
|
|
154
|
-
* @param options - Crop, resize, and
|
|
167
|
+
* @param options - Crop, resize, format, and output buffer options
|
|
155
168
|
*
|
|
156
|
-
* @returns Tightly packed pixel data
|
|
169
|
+
* @returns Tightly packed pixel data (a view of `options.output` when given)
|
|
157
170
|
*
|
|
158
171
|
* @throws {FFmpegError} If scaling fails
|
|
159
172
|
*
|
|
173
|
+
* @throws {TypeError} If `options.output` is not a Buffer or is smaller than the result
|
|
174
|
+
*
|
|
160
175
|
* @example
|
|
161
176
|
* ```typescript
|
|
162
177
|
* const gray = scaler.toBufferSync(frame, { resize: { width: 320, height: 180 }, format: 'gray' });
|
package/dist/api/scaler.js
CHANGED
|
@@ -78,15 +78,21 @@ export class Scaler {
|
|
|
78
78
|
*
|
|
79
79
|
* @param frame - Source frame (software or hardware; hardware frames are processed on the GPU and downloaded)
|
|
80
80
|
*
|
|
81
|
-
* @param options - Crop, resize, and
|
|
81
|
+
* @param options - Crop, resize, format, and output buffer options
|
|
82
82
|
*
|
|
83
|
-
* @returns Tightly packed pixel data
|
|
83
|
+
* @returns Tightly packed pixel data (a view of `options.output` when given)
|
|
84
84
|
*
|
|
85
85
|
* @throws {FFmpegError} If scaling fails
|
|
86
86
|
*
|
|
87
|
+
* @throws {TypeError} If `options.output` is not a Buffer or is smaller than the result
|
|
88
|
+
*
|
|
87
89
|
* @example
|
|
88
90
|
* ```typescript
|
|
89
91
|
* const gray = await scaler.toBuffer(frame, { resize: { width: 320, height: 180 }, format: 'gray' });
|
|
92
|
+
*
|
|
93
|
+
* // Reuse one buffer across frames
|
|
94
|
+
* const reused = Buffer.allocUnsafe(320 * 180);
|
|
95
|
+
* await scaler.toBuffer(frame, { resize: { width: 320, height: 180 }, format: 'gray', output: reused });
|
|
90
96
|
* ```
|
|
91
97
|
*
|
|
92
98
|
* @see {@link toBufferSync} For synchronous version
|
|
@@ -95,6 +101,10 @@ export class Scaler {
|
|
|
95
101
|
if (this.disposed) {
|
|
96
102
|
throw new Error('Scaler has been disposed');
|
|
97
103
|
}
|
|
104
|
+
// The native side accepts any Uint8Array, but the result would then not be a Buffer
|
|
105
|
+
if (options.output !== undefined && !Buffer.isBuffer(options.output)) {
|
|
106
|
+
throw new TypeError('output must be a Buffer');
|
|
107
|
+
}
|
|
98
108
|
if (frame.isHwFrame()) {
|
|
99
109
|
// With a hardware context, crop/scale/convert on the GPU and download only
|
|
100
110
|
// the small result. Without one, fall back to downloading the full frame
|
|
@@ -102,7 +112,7 @@ export class Scaler {
|
|
|
102
112
|
if (this.hardware) {
|
|
103
113
|
const out = await this.toFrame(frame, options.crop, options.resize, options.format ?? 'nv12');
|
|
104
114
|
try {
|
|
105
|
-
return out.toBuffer();
|
|
115
|
+
return out.toBuffer(options.output);
|
|
106
116
|
}
|
|
107
117
|
finally {
|
|
108
118
|
out.free();
|
|
@@ -124,12 +134,14 @@ export class Scaler {
|
|
|
124
134
|
*
|
|
125
135
|
* @param frame - Source frame (software or hardware; hardware frames are processed on the GPU and downloaded)
|
|
126
136
|
*
|
|
127
|
-
* @param options - Crop, resize, and
|
|
137
|
+
* @param options - Crop, resize, format, and output buffer options
|
|
128
138
|
*
|
|
129
|
-
* @returns Tightly packed pixel data
|
|
139
|
+
* @returns Tightly packed pixel data (a view of `options.output` when given)
|
|
130
140
|
*
|
|
131
141
|
* @throws {FFmpegError} If scaling fails
|
|
132
142
|
*
|
|
143
|
+
* @throws {TypeError} If `options.output` is not a Buffer or is smaller than the result
|
|
144
|
+
*
|
|
133
145
|
* @example
|
|
134
146
|
* ```typescript
|
|
135
147
|
* const gray = scaler.toBufferSync(frame, { resize: { width: 320, height: 180 }, format: 'gray' });
|
|
@@ -141,11 +153,14 @@ export class Scaler {
|
|
|
141
153
|
if (this.disposed) {
|
|
142
154
|
throw new Error('Scaler has been disposed');
|
|
143
155
|
}
|
|
156
|
+
if (options.output !== undefined && !Buffer.isBuffer(options.output)) {
|
|
157
|
+
throw new TypeError('output must be a Buffer');
|
|
158
|
+
}
|
|
144
159
|
if (frame.isHwFrame()) {
|
|
145
160
|
if (this.hardware) {
|
|
146
161
|
const out = this.toFrameSync(frame, options.crop, options.resize, options.format ?? 'nv12');
|
|
147
162
|
try {
|
|
148
|
-
return out.toBuffer();
|
|
163
|
+
return out.toBuffer(options.output);
|
|
149
164
|
}
|
|
150
165
|
finally {
|
|
151
166
|
out.free();
|
package/dist/api/scaler.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scaler.js","sourceRoot":"","sources":["../../src/api/scaler.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"scaler.js","sourceRoot":"","sources":["../../src/api/scaler.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Bounds how long an fMP4 muxer may hold a packet before emitting it in a fragment.
|
|
3
|
+
*
|
|
4
|
+
* Remembers when each packet reached the muxer, per output stream and in order, and
|
|
5
|
+
* forgets packets as the fragments carrying them are written. When the oldest pending
|
|
6
|
+
* packet of any stream is older than the limit, the next packet write fails with a
|
|
7
|
+
* descriptive error. The age does not depend on packet timestamps, so it also bounds
|
|
8
|
+
* retention caused by missing, constant or runaway timestamps. It counts the time
|
|
9
|
+
* while packets arrive: a pause of the whole input counts at most 2 s, so a source
|
|
10
|
+
* that goes quiet and resumes is not mistaken for a stalled muxer.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```typescript
|
|
14
|
+
* const watchdog = new PacketAgeWatchdog(60, (index) => `stream ${index}`);
|
|
15
|
+
* const output = await Muxer.open(
|
|
16
|
+
* {
|
|
17
|
+
* write: (chunk) => {
|
|
18
|
+
* watchdog.consumeChunk(chunk);
|
|
19
|
+
* return chunk.length;
|
|
20
|
+
* },
|
|
21
|
+
* },
|
|
22
|
+
* { format: 'mp4', options: { movflags: '+frag_keyframe+empty_moov' } },
|
|
23
|
+
* );
|
|
24
|
+
* output.setPacketObserver(watchdog);
|
|
25
|
+
* ```
|
|
26
|
+
*
|
|
27
|
+
* @see {@link Muxer.setPacketObserver} For registering it with a muxer
|
|
28
|
+
*
|
|
29
|
+
* @internal
|
|
30
|
+
*/
|
|
31
|
+
export declare class PacketAgeWatchdog {
|
|
32
|
+
private readonly limitMs;
|
|
33
|
+
private readonly limitSeconds;
|
|
34
|
+
private readonly describeStream;
|
|
35
|
+
private queues;
|
|
36
|
+
private clock;
|
|
37
|
+
private lastArrival;
|
|
38
|
+
private header;
|
|
39
|
+
private headerFill;
|
|
40
|
+
private skipRemaining;
|
|
41
|
+
private partialBox;
|
|
42
|
+
private partialFill;
|
|
43
|
+
private blind;
|
|
44
|
+
/**
|
|
45
|
+
* @param limitSeconds - Maximum age of a pending packet in seconds (> 0)
|
|
46
|
+
*
|
|
47
|
+
* @param describeStream - Label for an output stream in the error message (e.g. its media type)
|
|
48
|
+
*
|
|
49
|
+
* @internal
|
|
50
|
+
*/
|
|
51
|
+
constructor(limitSeconds: number, describeStream: (streamIndex: number) => string);
|
|
52
|
+
/**
|
|
53
|
+
* Number of packets of a stream that have not been emitted in a fragment yet.
|
|
54
|
+
*
|
|
55
|
+
* @param streamIndex - Output stream index
|
|
56
|
+
*
|
|
57
|
+
* @returns Pending packet count
|
|
58
|
+
*
|
|
59
|
+
* @internal
|
|
60
|
+
*/
|
|
61
|
+
pendingPackets(streamIndex: number): number;
|
|
62
|
+
/**
|
|
63
|
+
* Age of the oldest pending packet of a stream, as the next packet would see it.
|
|
64
|
+
*
|
|
65
|
+
* @param streamIndex - Output stream index
|
|
66
|
+
*
|
|
67
|
+
* @param now - Current time in ms (performance.now() clock)
|
|
68
|
+
*
|
|
69
|
+
* @returns Age in ms of input time, or 0 when nothing is pending
|
|
70
|
+
*
|
|
71
|
+
* @internal
|
|
72
|
+
*/
|
|
73
|
+
pendingAge(streamIndex: number, now?: number): number;
|
|
74
|
+
/**
|
|
75
|
+
* Record a packet the muxer accepted.
|
|
76
|
+
*
|
|
77
|
+
* Checks every stream first, so a stream that is held back is caught by the
|
|
78
|
+
* packets of the streams that still flow.
|
|
79
|
+
*
|
|
80
|
+
* @param streamIndex - Output stream index
|
|
81
|
+
*
|
|
82
|
+
* @throws {Error} If a pending packet of any stream is older than the limit
|
|
83
|
+
*
|
|
84
|
+
* @internal
|
|
85
|
+
*/
|
|
86
|
+
onPacket(streamIndex: number): void;
|
|
87
|
+
/**
|
|
88
|
+
* Forget a packet of a stream that the muxer accepted but dropped.
|
|
89
|
+
*
|
|
90
|
+
* @param streamIndex - Output stream index
|
|
91
|
+
*
|
|
92
|
+
* @internal
|
|
93
|
+
*/
|
|
94
|
+
onPacketRejected(streamIndex: number): void;
|
|
95
|
+
/**
|
|
96
|
+
* Stop judging packet ages for the rest of the session.
|
|
97
|
+
*
|
|
98
|
+
* For a caller that frames the output itself and lost the box boundaries:
|
|
99
|
+
* emitted samples can no longer be counted, and pending packets would
|
|
100
|
+
* otherwise look stalled. Drops what it has recorded and records nothing
|
|
101
|
+
* more, so a blind session holds no state.
|
|
102
|
+
*
|
|
103
|
+
* @internal
|
|
104
|
+
*/
|
|
105
|
+
onFramingLost(): void;
|
|
106
|
+
/**
|
|
107
|
+
* Account for one complete top-level box of the muxer output.
|
|
108
|
+
*
|
|
109
|
+
* Only `moof` (fragment samples) and `moov` (samples of a first fragment
|
|
110
|
+
* written without `empty_moov`) matter; other boxes are ignored.
|
|
111
|
+
*
|
|
112
|
+
* @param box - The whole box including its header
|
|
113
|
+
*
|
|
114
|
+
* @internal
|
|
115
|
+
*/
|
|
116
|
+
consumeBox(box: Buffer): void;
|
|
117
|
+
/**
|
|
118
|
+
* Account for a raw chunk of the muxer output.
|
|
119
|
+
*
|
|
120
|
+
* Frames top-level boxes across chunk boundaries without buffering media
|
|
121
|
+
* data: only `moof`/`moov` boxes are collected, everything else is skipped.
|
|
122
|
+
* If the framing breaks (a size the muxer never writes), the watchdog stops
|
|
123
|
+
* judging ages for the rest of the session instead of guessing.
|
|
124
|
+
*
|
|
125
|
+
* @param chunk - Output chunk in stream order
|
|
126
|
+
*
|
|
127
|
+
* @internal
|
|
128
|
+
*/
|
|
129
|
+
consumeChunk(chunk: Buffer): void;
|
|
130
|
+
/**
|
|
131
|
+
* Drain the samples of every track fragment in a moof.
|
|
132
|
+
*
|
|
133
|
+
* @param buf - Buffer holding the moof
|
|
134
|
+
*
|
|
135
|
+
* @param start - Offset of the moof payload
|
|
136
|
+
*
|
|
137
|
+
* @param end - End offset of the moof
|
|
138
|
+
*
|
|
139
|
+
* @internal
|
|
140
|
+
*/
|
|
141
|
+
private drainFragment;
|
|
142
|
+
/**
|
|
143
|
+
* Drain the samples of one traf: its tfhd names the track, each trun counts samples.
|
|
144
|
+
*
|
|
145
|
+
* movenc writes several truns per traf when the sample data is not contiguous.
|
|
146
|
+
*
|
|
147
|
+
* @param buf - Buffer holding the traf
|
|
148
|
+
*
|
|
149
|
+
* @param start - Offset of the traf payload
|
|
150
|
+
*
|
|
151
|
+
* @param end - End offset of the traf
|
|
152
|
+
*
|
|
153
|
+
* @internal
|
|
154
|
+
*/
|
|
155
|
+
private drainTrackFragment;
|
|
156
|
+
/**
|
|
157
|
+
* Drain samples a moov carries in its sample tables.
|
|
158
|
+
*
|
|
159
|
+
* With `empty_moov` the tables are empty. Without it movenc writes the first
|
|
160
|
+
* fragment's samples into the moov instead of a moof.
|
|
161
|
+
*
|
|
162
|
+
* @param buf - Buffer holding the moov
|
|
163
|
+
*
|
|
164
|
+
* @param start - Offset of the moov payload
|
|
165
|
+
*
|
|
166
|
+
* @param end - End offset of the moov
|
|
167
|
+
*
|
|
168
|
+
* @internal
|
|
169
|
+
*/
|
|
170
|
+
private drainInitSegment;
|
|
171
|
+
/**
|
|
172
|
+
* Remove emitted samples from the queue of the stream behind a track.
|
|
173
|
+
*
|
|
174
|
+
* movenc numbers the tracks of the muxer's streams stream index + 1; tracks
|
|
175
|
+
* it adds itself (chapters, timecode) have no queue and are ignored.
|
|
176
|
+
*
|
|
177
|
+
* @param trackId - mp4 track_ID
|
|
178
|
+
*
|
|
179
|
+
* @param samples - Number of emitted samples
|
|
180
|
+
*
|
|
181
|
+
* @internal
|
|
182
|
+
*/
|
|
183
|
+
private drain;
|
|
184
|
+
/**
|
|
185
|
+
* Build the error for a stream whose oldest pending packet is too old.
|
|
186
|
+
*
|
|
187
|
+
* @param streamIndex - Output stream index
|
|
188
|
+
*
|
|
189
|
+
* @param ageMs - Age of its oldest pending packet in ms
|
|
190
|
+
*
|
|
191
|
+
* @param pending - Number of its pending packets
|
|
192
|
+
*
|
|
193
|
+
* @returns Error describing the stalled stream
|
|
194
|
+
*
|
|
195
|
+
* @internal
|
|
196
|
+
*/
|
|
197
|
+
private violation;
|
|
198
|
+
}
|