node-av 3.1.3 → 5.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +88 -52
- package/binding.gyp +23 -11
- package/dist/api/audio-frame-buffer.d.ts +201 -0
- package/dist/api/audio-frame-buffer.js +275 -0
- package/dist/api/audio-frame-buffer.js.map +1 -0
- package/dist/api/bitstream-filter.d.ts +320 -78
- package/dist/api/bitstream-filter.js +684 -151
- package/dist/api/bitstream-filter.js.map +1 -1
- package/dist/api/constants.d.ts +44 -0
- package/dist/api/constants.js +45 -0
- package/dist/api/constants.js.map +1 -0
- package/dist/api/data/test_av1.ivf +0 -0
- package/dist/api/data/test_mjpeg.mjpeg +0 -0
- package/dist/api/data/test_vp8.ivf +0 -0
- package/dist/api/data/test_vp9.ivf +0 -0
- package/dist/api/decoder.d.ts +454 -77
- package/dist/api/decoder.js +1081 -271
- package/dist/api/decoder.js.map +1 -1
- package/dist/api/{media-input.d.ts → demuxer.d.ts} +295 -45
- package/dist/api/demuxer.js +1965 -0
- package/dist/api/demuxer.js.map +1 -0
- package/dist/api/encoder.d.ts +423 -132
- package/dist/api/encoder.js +1089 -240
- package/dist/api/encoder.js.map +1 -1
- package/dist/api/filter-complex.d.ts +769 -0
- package/dist/api/filter-complex.js +1596 -0
- package/dist/api/filter-complex.js.map +1 -0
- package/dist/api/filter-presets.d.ts +80 -5
- package/dist/api/filter-presets.js +117 -7
- package/dist/api/filter-presets.js.map +1 -1
- package/dist/api/filter.d.ts +561 -125
- package/dist/api/filter.js +1083 -274
- package/dist/api/filter.js.map +1 -1
- package/dist/api/{fmp4.d.ts → fmp4-stream.d.ts} +141 -140
- package/dist/api/fmp4-stream.js +539 -0
- package/dist/api/fmp4-stream.js.map +1 -0
- package/dist/api/hardware.d.ts +58 -6
- package/dist/api/hardware.js +127 -11
- package/dist/api/hardware.js.map +1 -1
- package/dist/api/index.d.ts +8 -4
- package/dist/api/index.js +17 -8
- package/dist/api/index.js.map +1 -1
- package/dist/api/io-stream.d.ts +6 -6
- package/dist/api/io-stream.js +5 -4
- package/dist/api/io-stream.js.map +1 -1
- package/dist/api/{media-output.d.ts → muxer.d.ts} +280 -66
- package/dist/api/muxer.js +1934 -0
- package/dist/api/muxer.js.map +1 -0
- package/dist/api/pipeline.d.ts +77 -29
- package/dist/api/pipeline.js +449 -439
- package/dist/api/pipeline.js.map +1 -1
- package/dist/api/rtp-stream.d.ts +312 -0
- package/dist/api/rtp-stream.js +630 -0
- package/dist/api/rtp-stream.js.map +1 -0
- package/dist/api/types.d.ts +533 -56
- package/dist/api/utilities/async-queue.d.ts +91 -0
- package/dist/api/utilities/async-queue.js +162 -0
- package/dist/api/utilities/async-queue.js.map +1 -0
- package/dist/api/utilities/audio-sample.d.ts +11 -1
- package/dist/api/utilities/audio-sample.js +10 -0
- package/dist/api/utilities/audio-sample.js.map +1 -1
- package/dist/api/utilities/channel-layout.d.ts +1 -0
- package/dist/api/utilities/channel-layout.js +1 -0
- package/dist/api/utilities/channel-layout.js.map +1 -1
- package/dist/api/utilities/image.d.ts +39 -1
- package/dist/api/utilities/image.js +38 -0
- package/dist/api/utilities/image.js.map +1 -1
- package/dist/api/utilities/index.d.ts +3 -0
- package/dist/api/utilities/index.js +6 -0
- package/dist/api/utilities/index.js.map +1 -1
- package/dist/api/utilities/media-type.d.ts +2 -1
- package/dist/api/utilities/media-type.js +1 -0
- package/dist/api/utilities/media-type.js.map +1 -1
- package/dist/api/utilities/pixel-format.d.ts +4 -1
- package/dist/api/utilities/pixel-format.js +3 -0
- package/dist/api/utilities/pixel-format.js.map +1 -1
- package/dist/api/utilities/sample-format.d.ts +6 -1
- package/dist/api/utilities/sample-format.js +5 -0
- package/dist/api/utilities/sample-format.js.map +1 -1
- package/dist/api/utilities/scheduler.d.ts +138 -0
- package/dist/api/utilities/scheduler.js +98 -0
- package/dist/api/utilities/scheduler.js.map +1 -0
- package/dist/api/utilities/streaming.d.ts +105 -15
- package/dist/api/utilities/streaming.js +201 -12
- package/dist/api/utilities/streaming.js.map +1 -1
- package/dist/api/utilities/timestamp.d.ts +15 -1
- package/dist/api/utilities/timestamp.js +14 -0
- package/dist/api/utilities/timestamp.js.map +1 -1
- package/dist/api/utilities/whisper-model.d.ts +310 -0
- package/dist/api/utilities/whisper-model.js +528 -0
- package/dist/api/utilities/whisper-model.js.map +1 -0
- package/dist/api/webrtc-stream.d.ts +288 -0
- package/dist/api/webrtc-stream.js +440 -0
- package/dist/api/webrtc-stream.js.map +1 -0
- package/dist/api/whisper.d.ts +324 -0
- package/dist/api/whisper.js +362 -0
- package/dist/api/whisper.js.map +1 -0
- package/dist/constants/constants.d.ts +54 -2
- package/dist/constants/constants.js +48 -1
- package/dist/constants/constants.js.map +1 -1
- package/dist/constants/encoders.d.ts +2 -1
- package/dist/constants/encoders.js +4 -3
- package/dist/constants/encoders.js.map +1 -1
- package/dist/constants/hardware.d.ts +26 -0
- package/dist/constants/hardware.js +27 -0
- package/dist/constants/hardware.js.map +1 -0
- package/dist/constants/index.d.ts +1 -0
- package/dist/constants/index.js +1 -0
- package/dist/constants/index.js.map +1 -1
- package/dist/ffmpeg/index.d.ts +3 -3
- package/dist/ffmpeg/index.js +3 -3
- package/dist/ffmpeg/utils.d.ts +27 -0
- package/dist/ffmpeg/utils.js +28 -16
- package/dist/ffmpeg/utils.js.map +1 -1
- package/dist/lib/binding.d.ts +22 -11
- package/dist/lib/binding.js.map +1 -1
- package/dist/lib/codec-context.d.ts +87 -0
- package/dist/lib/codec-context.js +125 -4
- package/dist/lib/codec-context.js.map +1 -1
- package/dist/lib/codec-parameters.d.ts +229 -1
- package/dist/lib/codec-parameters.js +264 -0
- package/dist/lib/codec-parameters.js.map +1 -1
- package/dist/lib/codec-parser.d.ts +23 -0
- package/dist/lib/codec-parser.js +25 -0
- package/dist/lib/codec-parser.js.map +1 -1
- package/dist/lib/codec.d.ts +26 -4
- package/dist/lib/codec.js +35 -0
- package/dist/lib/codec.js.map +1 -1
- package/dist/lib/dictionary.js +1 -0
- package/dist/lib/dictionary.js.map +1 -1
- package/dist/lib/error.js +1 -1
- package/dist/lib/error.js.map +1 -1
- package/dist/lib/fifo.d.ts +416 -0
- package/dist/lib/fifo.js +453 -0
- package/dist/lib/fifo.js.map +1 -0
- package/dist/lib/filter-context.d.ts +52 -11
- package/dist/lib/filter-context.js +56 -12
- package/dist/lib/filter-context.js.map +1 -1
- package/dist/lib/filter-graph.d.ts +9 -0
- package/dist/lib/filter-graph.js +13 -0
- package/dist/lib/filter-graph.js.map +1 -1
- package/dist/lib/filter.d.ts +21 -0
- package/dist/lib/filter.js +28 -0
- package/dist/lib/filter.js.map +1 -1
- package/dist/lib/format-context.d.ts +48 -14
- package/dist/lib/format-context.js +76 -7
- package/dist/lib/format-context.js.map +1 -1
- package/dist/lib/frame.d.ts +264 -1
- package/dist/lib/frame.js +351 -1
- package/dist/lib/frame.js.map +1 -1
- package/dist/lib/hardware-device-context.d.ts +3 -2
- package/dist/lib/hardware-device-context.js.map +1 -1
- package/dist/lib/index.d.ts +2 -0
- package/dist/lib/index.js +4 -0
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/input-format.d.ts +21 -0
- package/dist/lib/input-format.js +42 -2
- package/dist/lib/input-format.js.map +1 -1
- package/dist/lib/native-types.d.ts +76 -27
- package/dist/lib/option.d.ts +25 -13
- package/dist/lib/option.js +28 -0
- package/dist/lib/option.js.map +1 -1
- package/dist/lib/output-format.d.ts +22 -1
- package/dist/lib/output-format.js +28 -0
- package/dist/lib/output-format.js.map +1 -1
- package/dist/lib/packet.d.ts +35 -0
- package/dist/lib/packet.js +52 -2
- package/dist/lib/packet.js.map +1 -1
- package/dist/lib/rational.d.ts +18 -0
- package/dist/lib/rational.js +19 -0
- package/dist/lib/rational.js.map +1 -1
- package/dist/lib/stream.d.ts +126 -0
- package/dist/lib/stream.js +188 -5
- package/dist/lib/stream.js.map +1 -1
- package/dist/lib/sync-queue.d.ts +179 -0
- package/dist/lib/sync-queue.js +197 -0
- package/dist/lib/sync-queue.js.map +1 -0
- package/dist/lib/types.d.ts +49 -1
- package/dist/lib/utilities.d.ts +281 -53
- package/dist/lib/utilities.js +298 -55
- package/dist/lib/utilities.js.map +1 -1
- package/install/check.js +2 -2
- package/package.json +37 -26
- package/dist/api/fmp4.js +0 -710
- package/dist/api/fmp4.js.map +0 -1
- package/dist/api/media-input.js +0 -1075
- package/dist/api/media-input.js.map +0 -1
- package/dist/api/media-output.js +0 -1040
- package/dist/api/media-output.js.map +0 -1
- package/dist/api/webrtc.d.ts +0 -664
- package/dist/api/webrtc.js +0 -1132
- package/dist/api/webrtc.js.map +0 -1
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AsyncQueue provides a promise-based blocking queue similar to FFmpeg's ThreadQueue.
|
|
3
|
+
*
|
|
4
|
+
* Unlike FFmpeg's pthread-based blocking, this uses Promises to achieve
|
|
5
|
+
* non-blocking async behavior while maintaining queue semantics.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```typescript
|
|
9
|
+
* const queue = new AsyncQueue<Frame>(8);
|
|
10
|
+
*
|
|
11
|
+
* // Producer
|
|
12
|
+
* await queue.send(frame); // Blocks if queue full
|
|
13
|
+
*
|
|
14
|
+
* // Consumer
|
|
15
|
+
* const frame = await queue.receive(); // Blocks if queue empty
|
|
16
|
+
*
|
|
17
|
+
* // Cleanup
|
|
18
|
+
* queue.close();
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
export declare class AsyncQueue<T> {
|
|
22
|
+
private queue;
|
|
23
|
+
private sendWaiters;
|
|
24
|
+
private receiveWaiters;
|
|
25
|
+
private maxSize;
|
|
26
|
+
private closed;
|
|
27
|
+
/**
|
|
28
|
+
* Creates a new AsyncQueue.
|
|
29
|
+
*
|
|
30
|
+
* @param maxSize Maximum number of items in queue before send() blocks
|
|
31
|
+
*/
|
|
32
|
+
constructor(maxSize: number);
|
|
33
|
+
/**
|
|
34
|
+
* Current number of items in the queue.
|
|
35
|
+
*/
|
|
36
|
+
get size(): number;
|
|
37
|
+
/**
|
|
38
|
+
* Whether the queue is closed.
|
|
39
|
+
*/
|
|
40
|
+
get isClosed(): boolean;
|
|
41
|
+
/**
|
|
42
|
+
* Maximum queue size (from constructor).
|
|
43
|
+
*/
|
|
44
|
+
get capacity(): number;
|
|
45
|
+
/**
|
|
46
|
+
* Number of producers waiting to send (backpressure indicator).
|
|
47
|
+
*/
|
|
48
|
+
get waitingSenders(): number;
|
|
49
|
+
/**
|
|
50
|
+
* Number of consumers waiting to receive.
|
|
51
|
+
*/
|
|
52
|
+
get waitingReceivers(): number;
|
|
53
|
+
/**
|
|
54
|
+
* Sends an item to the queue.
|
|
55
|
+
*
|
|
56
|
+
* If the queue is full, this method blocks (awaits) until space is available.
|
|
57
|
+
*
|
|
58
|
+
* @param item Item to send
|
|
59
|
+
*
|
|
60
|
+
* @returns Promise that resolves when item is sent
|
|
61
|
+
*
|
|
62
|
+
* @example
|
|
63
|
+
* ```typescript
|
|
64
|
+
* await queue.send(item);
|
|
65
|
+
* ```
|
|
66
|
+
*/
|
|
67
|
+
send(item: T): Promise<void>;
|
|
68
|
+
/**
|
|
69
|
+
* Receives an item from the queue.
|
|
70
|
+
*
|
|
71
|
+
* If the queue is empty and not closed, this method blocks (awaits) until an item is available.
|
|
72
|
+
* If the queue is closed and empty, returns null.
|
|
73
|
+
*
|
|
74
|
+
* @returns Next item from queue, or null if closed and empty
|
|
75
|
+
*
|
|
76
|
+
* @example
|
|
77
|
+
* ```typescript
|
|
78
|
+
* const item = await queue.receive();
|
|
79
|
+
* ```
|
|
80
|
+
*/
|
|
81
|
+
receive(): Promise<T | null>;
|
|
82
|
+
/**
|
|
83
|
+
* Closes the queue, rejecting any pending sends and resolving pending receives with null.
|
|
84
|
+
*
|
|
85
|
+
* @example
|
|
86
|
+
* ```typescript
|
|
87
|
+
* queue.close();
|
|
88
|
+
* ```
|
|
89
|
+
*/
|
|
90
|
+
close(): void;
|
|
91
|
+
}
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AsyncQueue provides a promise-based blocking queue similar to FFmpeg's ThreadQueue.
|
|
3
|
+
*
|
|
4
|
+
* Unlike FFmpeg's pthread-based blocking, this uses Promises to achieve
|
|
5
|
+
* non-blocking async behavior while maintaining queue semantics.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```typescript
|
|
9
|
+
* const queue = new AsyncQueue<Frame>(8);
|
|
10
|
+
*
|
|
11
|
+
* // Producer
|
|
12
|
+
* await queue.send(frame); // Blocks if queue full
|
|
13
|
+
*
|
|
14
|
+
* // Consumer
|
|
15
|
+
* const frame = await queue.receive(); // Blocks if queue empty
|
|
16
|
+
*
|
|
17
|
+
* // Cleanup
|
|
18
|
+
* queue.close();
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
export class AsyncQueue {
|
|
22
|
+
queue = [];
|
|
23
|
+
sendWaiters = [];
|
|
24
|
+
receiveWaiters = [];
|
|
25
|
+
maxSize;
|
|
26
|
+
closed = false;
|
|
27
|
+
/**
|
|
28
|
+
* Creates a new AsyncQueue.
|
|
29
|
+
*
|
|
30
|
+
* @param maxSize Maximum number of items in queue before send() blocks
|
|
31
|
+
*/
|
|
32
|
+
constructor(maxSize) {
|
|
33
|
+
if (maxSize <= 0) {
|
|
34
|
+
maxSize = 1;
|
|
35
|
+
}
|
|
36
|
+
this.maxSize = maxSize;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Current number of items in the queue.
|
|
40
|
+
*/
|
|
41
|
+
get size() {
|
|
42
|
+
return this.queue.length;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Whether the queue is closed.
|
|
46
|
+
*/
|
|
47
|
+
get isClosed() {
|
|
48
|
+
return this.closed;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Maximum queue size (from constructor).
|
|
52
|
+
*/
|
|
53
|
+
get capacity() {
|
|
54
|
+
return this.maxSize;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Number of producers waiting to send (backpressure indicator).
|
|
58
|
+
*/
|
|
59
|
+
get waitingSenders() {
|
|
60
|
+
return this.sendWaiters.length;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Number of consumers waiting to receive.
|
|
64
|
+
*/
|
|
65
|
+
get waitingReceivers() {
|
|
66
|
+
return this.receiveWaiters.length;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Sends an item to the queue.
|
|
70
|
+
*
|
|
71
|
+
* If the queue is full, this method blocks (awaits) until space is available.
|
|
72
|
+
*
|
|
73
|
+
* @param item Item to send
|
|
74
|
+
*
|
|
75
|
+
* @returns Promise that resolves when item is sent
|
|
76
|
+
*
|
|
77
|
+
* @example
|
|
78
|
+
* ```typescript
|
|
79
|
+
* await queue.send(item);
|
|
80
|
+
* ```
|
|
81
|
+
*/
|
|
82
|
+
async send(item) {
|
|
83
|
+
if (this.closed) {
|
|
84
|
+
return;
|
|
85
|
+
}
|
|
86
|
+
// Block if queue full
|
|
87
|
+
while (this.queue.length >= this.maxSize && !this.closed) {
|
|
88
|
+
await new Promise((resolve) => this.sendWaiters.push(resolve));
|
|
89
|
+
}
|
|
90
|
+
if (this.closed) {
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
this.queue.push(item);
|
|
94
|
+
// Wake up one receiver if waiting (just signal, don't remove item)
|
|
95
|
+
const receiver = this.receiveWaiters.shift();
|
|
96
|
+
if (receiver) {
|
|
97
|
+
receiver(); // Signal that item is available
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Receives an item from the queue.
|
|
102
|
+
*
|
|
103
|
+
* If the queue is empty and not closed, this method blocks (awaits) until an item is available.
|
|
104
|
+
* If the queue is closed and empty, returns null.
|
|
105
|
+
*
|
|
106
|
+
* @returns Next item from queue, or null if closed and empty
|
|
107
|
+
*
|
|
108
|
+
* @example
|
|
109
|
+
* ```typescript
|
|
110
|
+
* const item = await queue.receive();
|
|
111
|
+
* ```
|
|
112
|
+
*/
|
|
113
|
+
async receive() {
|
|
114
|
+
// Loop until we get an item or queue is closed
|
|
115
|
+
while (true) {
|
|
116
|
+
// If queue has items, return immediately
|
|
117
|
+
if (this.queue.length > 0) {
|
|
118
|
+
const item = this.queue.shift();
|
|
119
|
+
// Wake up one sender if waiting
|
|
120
|
+
const sender = this.sendWaiters.shift();
|
|
121
|
+
if (sender) {
|
|
122
|
+
sender();
|
|
123
|
+
}
|
|
124
|
+
return item;
|
|
125
|
+
}
|
|
126
|
+
// If closed and empty, return null
|
|
127
|
+
if (this.closed) {
|
|
128
|
+
return null;
|
|
129
|
+
}
|
|
130
|
+
// Block until signaled
|
|
131
|
+
await new Promise((resolve) => {
|
|
132
|
+
this.receiveWaiters.push(resolve);
|
|
133
|
+
});
|
|
134
|
+
// After waking up, loop back to check queue again
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Closes the queue, rejecting any pending sends and resolving pending receives with null.
|
|
139
|
+
*
|
|
140
|
+
* @example
|
|
141
|
+
* ```typescript
|
|
142
|
+
* queue.close();
|
|
143
|
+
* ```
|
|
144
|
+
*/
|
|
145
|
+
close() {
|
|
146
|
+
if (this.closed) {
|
|
147
|
+
return;
|
|
148
|
+
}
|
|
149
|
+
this.closed = true;
|
|
150
|
+
// Wake up all waiting senders
|
|
151
|
+
const senders = this.sendWaiters.splice(0);
|
|
152
|
+
for (const sender of senders) {
|
|
153
|
+
sender();
|
|
154
|
+
}
|
|
155
|
+
// Wake up all waiting receivers (they will get null from empty queue check)
|
|
156
|
+
const receivers = this.receiveWaiters.splice(0);
|
|
157
|
+
for (const receiver of receivers) {
|
|
158
|
+
receiver();
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
//# sourceMappingURL=async-queue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"async-queue.js","sourceRoot":"","sources":["../../../src/api/utilities/async-queue.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { AVSampleFormat } from '../../constants/
|
|
1
|
+
import type { AVSampleFormat } from '../../constants/index.js';
|
|
2
2
|
/**
|
|
3
3
|
* Audio sample allocation result.
|
|
4
4
|
*/
|
|
@@ -52,10 +52,15 @@ export declare class AudioSampleUtils {
|
|
|
52
52
|
* Direct mapping to av_samples_alloc()
|
|
53
53
|
*
|
|
54
54
|
* @param nbChannels - Number of audio channels
|
|
55
|
+
*
|
|
55
56
|
* @param nbSamples - Number of samples per channel
|
|
57
|
+
*
|
|
56
58
|
* @param sampleFmt - Audio sample format
|
|
59
|
+
*
|
|
57
60
|
* @param align - Buffer alignment (0 for default)
|
|
61
|
+
*
|
|
58
62
|
* @returns Allocation result with buffers and size information
|
|
63
|
+
*
|
|
59
64
|
* @throws {FFmpegError} On allocation failure
|
|
60
65
|
*
|
|
61
66
|
* @example
|
|
@@ -81,10 +86,15 @@ export declare class AudioSampleUtils {
|
|
|
81
86
|
* Direct mapping to av_samples_get_buffer_size()
|
|
82
87
|
*
|
|
83
88
|
* @param nbChannels - Number of audio channels
|
|
89
|
+
*
|
|
84
90
|
* @param nbSamples - Number of samples per channel
|
|
91
|
+
*
|
|
85
92
|
* @param sampleFmt - Audio sample format
|
|
93
|
+
*
|
|
86
94
|
* @param align - Buffer alignment (0 for default)
|
|
95
|
+
*
|
|
87
96
|
* @returns Buffer size and line size information
|
|
97
|
+
*
|
|
88
98
|
* @throws {FFmpegError} On invalid parameters
|
|
89
99
|
*
|
|
90
100
|
* @example
|
|
@@ -34,10 +34,15 @@ export class AudioSampleUtils {
|
|
|
34
34
|
* Direct mapping to av_samples_alloc()
|
|
35
35
|
*
|
|
36
36
|
* @param nbChannels - Number of audio channels
|
|
37
|
+
*
|
|
37
38
|
* @param nbSamples - Number of samples per channel
|
|
39
|
+
*
|
|
38
40
|
* @param sampleFmt - Audio sample format
|
|
41
|
+
*
|
|
39
42
|
* @param align - Buffer alignment (0 for default)
|
|
43
|
+
*
|
|
40
44
|
* @returns Allocation result with buffers and size information
|
|
45
|
+
*
|
|
41
46
|
* @throws {FFmpegError} On allocation failure
|
|
42
47
|
*
|
|
43
48
|
* @example
|
|
@@ -69,10 +74,15 @@ export class AudioSampleUtils {
|
|
|
69
74
|
* Direct mapping to av_samples_get_buffer_size()
|
|
70
75
|
*
|
|
71
76
|
* @param nbChannels - Number of audio channels
|
|
77
|
+
*
|
|
72
78
|
* @param nbSamples - Number of samples per channel
|
|
79
|
+
*
|
|
73
80
|
* @param sampleFmt - Audio sample format
|
|
81
|
+
*
|
|
74
82
|
* @param align - Buffer alignment (0 for default)
|
|
83
|
+
*
|
|
75
84
|
* @returns Buffer size and line size information
|
|
85
|
+
*
|
|
76
86
|
* @throws {FFmpegError} On invalid parameters
|
|
77
87
|
*
|
|
78
88
|
* @example
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audio-sample.js","sourceRoot":"","sources":["../../../src/api/utilities/audio-sample.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AA0BjD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,OAAO,gBAAgB;IAC3B,+CAA+C;IAC/C,gBAAuB,CAAC;IAExB
|
|
1
|
+
{"version":3,"file":"audio-sample.js","sourceRoot":"","sources":["../../../src/api/utilities/audio-sample.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AA0BjD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,OAAO,gBAAgB;IAC3B,+CAA+C;IAC/C,gBAAuB,CAAC;IAExB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiCG;IACH,MAAM,CAAC,KAAK,CAAC,UAAkB,EAAE,SAAiB,EAAE,SAAyB,EAAE,KAAa;QAC1F,MAAM,MAAM,GAAG,QAAQ,CAAC,cAAc,CAAC,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QAChF,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC/B,WAAW,CAAC,YAAY,CAAC,MAAM,EAAE,kCAAkC,CAAC,CAAC;QACvE,CAAC;QACD,OAAO,MAA+B,CAAC;IACzC,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACH,MAAM,CAAC,aAAa,CAAC,UAAkB,EAAE,SAAiB,EAAE,SAAyB,EAAE,KAAa;QAClG,MAAM,MAAM,GAAG,QAAQ,CAAC,sBAAsB,CAAC,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QACxF,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC/B,WAAW,CAAC,YAAY,CAAC,MAAM,EAAE,iCAAiC,CAAC,CAAC;QACtE,CAAC;QACD,OAAO,MAA+B,CAAC;IACzC,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channel-layout.js","sourceRoot":"","sources":["../../../src/api/utilities/channel-layout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAIhD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,OAAO,kBAAkB;IAC7B,+CAA+C;IAC/C,gBAAuB,CAAC;IAExB
|
|
1
|
+
{"version":3,"file":"channel-layout.js","sourceRoot":"","sources":["../../../src/api/utilities/channel-layout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAIhD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,OAAO,kBAAkB;IAC7B,+CAA+C;IAC/C,gBAAuB,CAAC;IAExB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAsCG;IACH,MAAM,CAAC,QAAQ,CAAC,aAAqC;QACnD,OAAO,QAAQ,CAAC,uBAAuB,CAAC,aAAa,CAAC,CAAC;IACzD,CAAC;CACF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { AVPixelFormat } from '../../constants/
|
|
1
|
+
import type { AVPixelFormat } from '../../constants/index.js';
|
|
2
2
|
/**
|
|
3
3
|
* Image buffer allocation result.
|
|
4
4
|
*/
|
|
@@ -41,10 +41,15 @@ export declare class ImageUtils {
|
|
|
41
41
|
* Direct mapping to av_image_alloc()
|
|
42
42
|
*
|
|
43
43
|
* @param width - Image width in pixels
|
|
44
|
+
*
|
|
44
45
|
* @param height - Image height in pixels
|
|
46
|
+
*
|
|
45
47
|
* @param pixFmt - Pixel format
|
|
48
|
+
*
|
|
46
49
|
* @param align - Buffer alignment (typically 1, 16, or 32)
|
|
50
|
+
*
|
|
47
51
|
* @returns Allocation result with buffer, size, and line sizes
|
|
52
|
+
*
|
|
48
53
|
* @throws {FFmpegError} On allocation failure
|
|
49
54
|
*
|
|
50
55
|
* @example
|
|
@@ -68,11 +73,26 @@ export declare class ImageUtils {
|
|
|
68
73
|
* This is an alias for compatibility.
|
|
69
74
|
*
|
|
70
75
|
* @param width - Image width in pixels
|
|
76
|
+
*
|
|
71
77
|
* @param height - Image height in pixels
|
|
78
|
+
*
|
|
72
79
|
* @param pixFmt - Pixel format
|
|
80
|
+
*
|
|
73
81
|
* @param align - Buffer alignment
|
|
82
|
+
*
|
|
74
83
|
* @returns Allocation result
|
|
84
|
+
*
|
|
75
85
|
* @throws {FFmpegError} On allocation failure
|
|
86
|
+
*
|
|
87
|
+
* @example
|
|
88
|
+
* ```typescript
|
|
89
|
+
* import { ImageUtils } from 'node-av';
|
|
90
|
+
* import { AV_PIX_FMT_YUV420P } from 'node-av/constants';
|
|
91
|
+
*
|
|
92
|
+
* // Allocate image buffer using allocArrays
|
|
93
|
+
* const image = ImageUtils.allocArrays(1920, 1080, AV_PIX_FMT_YUV420P, 32);
|
|
94
|
+
* console.log(`Allocated ${image.size} bytes`);
|
|
95
|
+
* ```
|
|
76
96
|
*/
|
|
77
97
|
static allocArrays(width: number, height: number, pixFmt: AVPixelFormat, align: number): ImageAllocation;
|
|
78
98
|
/**
|
|
@@ -82,11 +102,17 @@ export declare class ImageUtils {
|
|
|
82
102
|
* Direct mapping to av_image_copy2()
|
|
83
103
|
*
|
|
84
104
|
* @param dstData - Destination data buffers (one per plane)
|
|
105
|
+
*
|
|
85
106
|
* @param dstLinesizes - Destination line sizes
|
|
107
|
+
*
|
|
86
108
|
* @param srcData - Source data buffers (one per plane)
|
|
109
|
+
*
|
|
87
110
|
* @param srcLinesizes - Source line sizes
|
|
111
|
+
*
|
|
88
112
|
* @param pixFmt - Pixel format
|
|
113
|
+
*
|
|
89
114
|
* @param width - Image width
|
|
115
|
+
*
|
|
90
116
|
* @param height - Image height
|
|
91
117
|
*
|
|
92
118
|
* @example
|
|
@@ -110,9 +136,13 @@ export declare class ImageUtils {
|
|
|
110
136
|
* Direct mapping to av_image_get_buffer_size()
|
|
111
137
|
*
|
|
112
138
|
* @param pixFmt - Pixel format
|
|
139
|
+
*
|
|
113
140
|
* @param width - Image width
|
|
141
|
+
*
|
|
114
142
|
* @param height - Image height
|
|
143
|
+
*
|
|
115
144
|
* @param align - Buffer alignment
|
|
145
|
+
*
|
|
116
146
|
* @returns Required buffer size in bytes
|
|
117
147
|
*
|
|
118
148
|
* @example
|
|
@@ -137,13 +167,21 @@ export declare class ImageUtils {
|
|
|
137
167
|
* Direct mapping to av_image_copy_to_buffer()
|
|
138
168
|
*
|
|
139
169
|
* @param dst - Destination buffer
|
|
170
|
+
*
|
|
140
171
|
* @param dstSize - Destination buffer size
|
|
172
|
+
*
|
|
141
173
|
* @param srcData - Source data buffers (one per plane), or null
|
|
174
|
+
*
|
|
142
175
|
* @param srcLinesize - Source line sizes, or null
|
|
176
|
+
*
|
|
143
177
|
* @param pixFmt - Pixel format
|
|
178
|
+
*
|
|
144
179
|
* @param width - Image width
|
|
180
|
+
*
|
|
145
181
|
* @param height - Image height
|
|
182
|
+
*
|
|
146
183
|
* @param align - Buffer alignment
|
|
184
|
+
*
|
|
147
185
|
* @returns Bytes written, or negative error code
|
|
148
186
|
*
|
|
149
187
|
* @example
|
|
@@ -32,10 +32,15 @@ export class ImageUtils {
|
|
|
32
32
|
* Direct mapping to av_image_alloc()
|
|
33
33
|
*
|
|
34
34
|
* @param width - Image width in pixels
|
|
35
|
+
*
|
|
35
36
|
* @param height - Image height in pixels
|
|
37
|
+
*
|
|
36
38
|
* @param pixFmt - Pixel format
|
|
39
|
+
*
|
|
37
40
|
* @param align - Buffer alignment (typically 1, 16, or 32)
|
|
41
|
+
*
|
|
38
42
|
* @returns Allocation result with buffer, size, and line sizes
|
|
43
|
+
*
|
|
39
44
|
* @throws {FFmpegError} On allocation failure
|
|
40
45
|
*
|
|
41
46
|
* @example
|
|
@@ -65,11 +70,26 @@ export class ImageUtils {
|
|
|
65
70
|
* This is an alias for compatibility.
|
|
66
71
|
*
|
|
67
72
|
* @param width - Image width in pixels
|
|
73
|
+
*
|
|
68
74
|
* @param height - Image height in pixels
|
|
75
|
+
*
|
|
69
76
|
* @param pixFmt - Pixel format
|
|
77
|
+
*
|
|
70
78
|
* @param align - Buffer alignment
|
|
79
|
+
*
|
|
71
80
|
* @returns Allocation result
|
|
81
|
+
*
|
|
72
82
|
* @throws {FFmpegError} On allocation failure
|
|
83
|
+
*
|
|
84
|
+
* @example
|
|
85
|
+
* ```typescript
|
|
86
|
+
* import { ImageUtils } from 'node-av';
|
|
87
|
+
* import { AV_PIX_FMT_YUV420P } from 'node-av/constants';
|
|
88
|
+
*
|
|
89
|
+
* // Allocate image buffer using allocArrays
|
|
90
|
+
* const image = ImageUtils.allocArrays(1920, 1080, AV_PIX_FMT_YUV420P, 32);
|
|
91
|
+
* console.log(`Allocated ${image.size} bytes`);
|
|
92
|
+
* ```
|
|
73
93
|
*/
|
|
74
94
|
static allocArrays(width, height, pixFmt, align) {
|
|
75
95
|
return ImageUtils.alloc(width, height, pixFmt, align);
|
|
@@ -81,11 +101,17 @@ export class ImageUtils {
|
|
|
81
101
|
* Direct mapping to av_image_copy2()
|
|
82
102
|
*
|
|
83
103
|
* @param dstData - Destination data buffers (one per plane)
|
|
104
|
+
*
|
|
84
105
|
* @param dstLinesizes - Destination line sizes
|
|
106
|
+
*
|
|
85
107
|
* @param srcData - Source data buffers (one per plane)
|
|
108
|
+
*
|
|
86
109
|
* @param srcLinesizes - Source line sizes
|
|
110
|
+
*
|
|
87
111
|
* @param pixFmt - Pixel format
|
|
112
|
+
*
|
|
88
113
|
* @param width - Image width
|
|
114
|
+
*
|
|
89
115
|
* @param height - Image height
|
|
90
116
|
*
|
|
91
117
|
* @example
|
|
@@ -111,9 +137,13 @@ export class ImageUtils {
|
|
|
111
137
|
* Direct mapping to av_image_get_buffer_size()
|
|
112
138
|
*
|
|
113
139
|
* @param pixFmt - Pixel format
|
|
140
|
+
*
|
|
114
141
|
* @param width - Image width
|
|
142
|
+
*
|
|
115
143
|
* @param height - Image height
|
|
144
|
+
*
|
|
116
145
|
* @param align - Buffer alignment
|
|
146
|
+
*
|
|
117
147
|
* @returns Required buffer size in bytes
|
|
118
148
|
*
|
|
119
149
|
* @example
|
|
@@ -140,13 +170,21 @@ export class ImageUtils {
|
|
|
140
170
|
* Direct mapping to av_image_copy_to_buffer()
|
|
141
171
|
*
|
|
142
172
|
* @param dst - Destination buffer
|
|
173
|
+
*
|
|
143
174
|
* @param dstSize - Destination buffer size
|
|
175
|
+
*
|
|
144
176
|
* @param srcData - Source data buffers (one per plane), or null
|
|
177
|
+
*
|
|
145
178
|
* @param srcLinesize - Source line sizes, or null
|
|
179
|
+
*
|
|
146
180
|
* @param pixFmt - Pixel format
|
|
181
|
+
*
|
|
147
182
|
* @param width - Image width
|
|
183
|
+
*
|
|
148
184
|
* @param height - Image height
|
|
185
|
+
*
|
|
149
186
|
* @param align - Buffer alignment
|
|
187
|
+
*
|
|
150
188
|
* @returns Bytes written, or negative error code
|
|
151
189
|
*
|
|
152
190
|
* @example
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"image.js","sourceRoot":"","sources":["../../../src/api/utilities/image.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAgBjD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,OAAO,UAAU;IACrB,+CAA+C;IAC/C,gBAAuB,CAAC;IAExB
|
|
1
|
+
{"version":3,"file":"image.js","sourceRoot":"","sources":["../../../src/api/utilities/image.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAgBjD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,OAAO,UAAU;IACrB,+CAA+C;IAC/C,gBAAuB,CAAC;IAExB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,MAAM,CAAC,KAAK,CAAC,KAAa,EAAE,MAAc,EAAE,MAAqB,EAAE,KAAa;QAC9E,MAAM,MAAM,GAAG,QAAQ,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;QACnE,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC/B,WAAW,CAAC,YAAY,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAAC;QAC/D,CAAC;QACD,OAAO,MAAyB,CAAC;IACnC,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,MAAM,CAAC,WAAW,CAAC,KAAa,EAAE,MAAc,EAAE,MAAqB,EAAE,KAAa;QACpF,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IACxD,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACH,MAAM,CAAC,IAAI,CAAC,OAAiB,EAAE,YAAsB,EAAE,OAAiB,EAAE,YAAsB,EAAE,MAAqB,EAAE,KAAa,EAAE,MAAc;QACpJ,QAAQ,CAAC,YAAY,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAC7F,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACH,MAAM,CAAC,aAAa,CAAC,MAAqB,EAAE,KAAa,EAAE,MAAc,EAAE,KAAa;QACtF,OAAO,QAAQ,CAAC,oBAAoB,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IACrE,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2CG;IACH,MAAM,CAAC,YAAY,CACjB,GAAW,EACX,OAAe,EACf,OAAwB,EACxB,WAA4B,EAC5B,MAAqB,EACrB,KAAa,EACb,MAAc,EACd,KAAa;QAEb,OAAO,QAAQ,CAAC,mBAAmB,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IACxG,CAAC;CACF"}
|
|
@@ -6,3 +6,6 @@ export { PixelFormatUtils } from './pixel-format.js';
|
|
|
6
6
|
export { SampleFormatUtils } from './sample-format.js';
|
|
7
7
|
export { TimestampUtils } from './timestamp.js';
|
|
8
8
|
export { StreamingUtils } from './streaming.js';
|
|
9
|
+
export { WhisperDownloader } from './whisper-model.js';
|
|
10
|
+
export { AsyncQueue } from './async-queue.js';
|
|
11
|
+
export { Scheduler } from './scheduler.js';
|
|
@@ -14,4 +14,10 @@ export { SampleFormatUtils } from './sample-format.js';
|
|
|
14
14
|
export { TimestampUtils } from './timestamp.js';
|
|
15
15
|
// Streaming
|
|
16
16
|
export { StreamingUtils } from './streaming.js';
|
|
17
|
+
// Whisper Model Downloader
|
|
18
|
+
export { WhisperDownloader } from './whisper-model.js';
|
|
19
|
+
// AsyncQueue
|
|
20
|
+
export { AsyncQueue } from './async-queue.js';
|
|
21
|
+
// Scheduler
|
|
22
|
+
export { Scheduler } from './scheduler.js';
|
|
17
23
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/utilities/index.ts"],"names":[],"mappings":"AAAA,QAAQ;AACR,OAAO,EAAE,gBAAgB,EAA0D,MAAM,mBAAmB,CAAC;AAE7G,kBAAkB;AAClB,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAEzD,QAAQ;AACR,OAAO,EAAE,UAAU,EAAwB,MAAM,YAAY,CAAC;AAE9D,QAAQ;AACR,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD,eAAe;AACf,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,gBAAgB;AAChB,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,YAAY;AACZ,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,YAAY;AACZ,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/utilities/index.ts"],"names":[],"mappings":"AAAA,QAAQ;AACR,OAAO,EAAE,gBAAgB,EAA0D,MAAM,mBAAmB,CAAC;AAE7G,kBAAkB;AAClB,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAEzD,QAAQ;AACR,OAAO,EAAE,UAAU,EAAwB,MAAM,YAAY,CAAC;AAE9D,QAAQ;AACR,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD,eAAe;AACf,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,gBAAgB;AAChB,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,YAAY;AACZ,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,YAAY;AACZ,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,2BAA2B;AAC3B,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,aAAa;AACb,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,YAAY;AACZ,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { AVMediaType } from '../../constants/
|
|
1
|
+
import type { AVMediaType } from '../../constants/index.js';
|
|
2
2
|
/**
|
|
3
3
|
* Media type utilities.
|
|
4
4
|
*
|
|
@@ -24,6 +24,7 @@ export declare class MediaTypeUtils {
|
|
|
24
24
|
* Direct mapping to av_get_media_type_string()
|
|
25
25
|
*
|
|
26
26
|
* @param type - Media type enum value
|
|
27
|
+
*
|
|
27
28
|
* @returns String representation, or null for invalid type
|
|
28
29
|
*
|
|
29
30
|
* @example
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"media-type.js","sourceRoot":"","sources":["../../../src/api/utilities/media-type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAIhD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,OAAO,cAAc;IACzB,+CAA+C;IAC/C,gBAAuB,CAAC;IAExB
|
|
1
|
+
{"version":3,"file":"media-type.js","sourceRoot":"","sources":["../../../src/api/utilities/media-type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAIhD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,OAAO,cAAc;IACzB,+CAA+C;IAC/C,gBAAuB,CAAC;IAExB;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,MAAM,CAAC,SAAS,CAAC,IAAiB;QAChC,OAAO,QAAQ,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;CACF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { AVPixelFormat } from '../../constants/
|
|
1
|
+
import type { AVPixelFormat } from '../../constants/index.js';
|
|
2
2
|
/**
|
|
3
3
|
* Video pixel format utilities.
|
|
4
4
|
*
|
|
@@ -28,6 +28,7 @@ export declare class PixelFormatUtils {
|
|
|
28
28
|
* Direct mapping to av_get_pix_fmt_name()
|
|
29
29
|
*
|
|
30
30
|
* @param format - Video pixel format
|
|
31
|
+
*
|
|
31
32
|
* @returns Format name string, or null for invalid format
|
|
32
33
|
*
|
|
33
34
|
* @example
|
|
@@ -47,6 +48,7 @@ export declare class PixelFormatUtils {
|
|
|
47
48
|
* Direct mapping to av_get_pix_fmt()
|
|
48
49
|
*
|
|
49
50
|
* @param name - Pixel format name string
|
|
51
|
+
*
|
|
50
52
|
* @returns Pixel format enum value, or AV_PIX_FMT_NONE for unknown formats
|
|
51
53
|
*
|
|
52
54
|
* @example
|
|
@@ -70,6 +72,7 @@ export declare class PixelFormatUtils {
|
|
|
70
72
|
* Direct mapping to av_pix_fmt_desc_get() and checking for AV_PIX_FMT_FLAG_HWACCEL
|
|
71
73
|
*
|
|
72
74
|
* @param format - Video pixel format
|
|
75
|
+
*
|
|
73
76
|
* @returns True if format is hardware accelerated
|
|
74
77
|
*
|
|
75
78
|
* @example
|
|
@@ -29,6 +29,7 @@ export class PixelFormatUtils {
|
|
|
29
29
|
* Direct mapping to av_get_pix_fmt_name()
|
|
30
30
|
*
|
|
31
31
|
* @param format - Video pixel format
|
|
32
|
+
*
|
|
32
33
|
* @returns Format name string, or null for invalid format
|
|
33
34
|
*
|
|
34
35
|
* @example
|
|
@@ -50,6 +51,7 @@ export class PixelFormatUtils {
|
|
|
50
51
|
* Direct mapping to av_get_pix_fmt()
|
|
51
52
|
*
|
|
52
53
|
* @param name - Pixel format name string
|
|
54
|
+
*
|
|
53
55
|
* @returns Pixel format enum value, or AV_PIX_FMT_NONE for unknown formats
|
|
54
56
|
*
|
|
55
57
|
* @example
|
|
@@ -75,6 +77,7 @@ export class PixelFormatUtils {
|
|
|
75
77
|
* Direct mapping to av_pix_fmt_desc_get() and checking for AV_PIX_FMT_FLAG_HWACCEL
|
|
76
78
|
*
|
|
77
79
|
* @param format - Video pixel format
|
|
80
|
+
*
|
|
78
81
|
* @returns True if format is hardware accelerated
|
|
79
82
|
*
|
|
80
83
|
* @example
|