node-av 0.0.1 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +48 -117
- package/binding.gyp +1 -1
- package/dist/api/encoder.js +5 -7
- package/dist/api/encoder.js.map +1 -1
- package/dist/lib/binding.d.ts +3 -3
- package/dist/lib/binding.js +12 -36
- package/dist/lib/binding.js.map +1 -1
- package/dist/lib/constants.d.ts +0 -19
- package/dist/lib/constants.js +0 -13
- package/dist/lib/constants.js.map +1 -1
- package/dist/lib/error.d.ts +64 -12
- package/dist/lib/error.js +85 -15
- package/dist/lib/error.js.map +1 -1
- package/dist/lib/index.d.ts +1 -1
- package/dist/lib/index.js +2 -2
- package/dist/lib/index.js.map +1 -1
- package/install/check.js +76 -66
- package/install/ffmpeg.js +26 -112
- package/package.json +16 -18
- package/release_notes.md +11 -0
package/README.md
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
# NodeAV
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
Node.js bindings for FFmpeg libraries, providing both low-level and high-level APIs for audio/video processing. Built from the ground up with TypeScript, NodeAV offers complete type safety and IntelliSense support throughout your media processing workflows. The library seamlessly bridges the gap between FFmpeg's powerful C APIs and modern JavaScript development, enabling developers to leverage the full capabilities of FFmpeg directly within Node.js applications without sacrificing performance or functionality. Whether you need direct control over codecs, formats, and filters through low-level bindings, or prefer the convenience of high-level abstractions with automatic resource management and async/await support, NodeAV provides a unified, type-safe interface for all your audio and video processing needs.
|
|
3
|
+
Native Node.js bindings for FFmpeg with full TypeScript support. Provides direct access to FFmpeg's C APIs through N-API. Includes both raw FFmpeg bindings for full control and higher-level abstractions. Automatic resource management via Disposable pattern, hardware acceleration support and prebuilt binaries for Windows, Linux, and macOS.
|
|
6
4
|
|
|
7
5
|
## Installation
|
|
8
6
|
|
|
@@ -10,155 +8,98 @@ Node.js bindings for FFmpeg libraries, providing both low-level and high-level A
|
|
|
10
8
|
npm install node-av
|
|
11
9
|
```
|
|
12
10
|
|
|
13
|
-
## Requirements
|
|
14
|
-
|
|
15
|
-
**For Users**
|
|
16
|
-
- Node.js v20 or higher
|
|
17
|
-
- No FFmpeg installation required - all necessary libraries are bundled
|
|
18
|
-
|
|
19
|
-
**For Development**
|
|
20
|
-
- Node.js v20 or higher
|
|
21
|
-
- FFmpeg 7.1+ development headers
|
|
22
|
-
- TypeScript 5.0+ (for TypeScript development)
|
|
23
|
-
- C++ build tools (for building native bindings)
|
|
24
|
-
|
|
25
11
|
## Quick Start
|
|
26
12
|
|
|
27
13
|
### High-Level API
|
|
28
14
|
|
|
29
15
|
```typescript
|
|
30
|
-
import {
|
|
31
|
-
import { AV_PIX_FMT_YUV420P } from 'node-av/constants';
|
|
16
|
+
import { Decoder, Encoder, MediaInput, MediaOutput } from 'node-av/api';
|
|
32
17
|
|
|
33
18
|
// Open media
|
|
34
|
-
|
|
35
|
-
|
|
19
|
+
await using input = await MediaInput.open('input.mp4');
|
|
20
|
+
await using output = await MediaOutput.open('output.mp4');
|
|
36
21
|
|
|
37
22
|
// Get video stream
|
|
38
23
|
const videoStream = input.video();
|
|
39
24
|
|
|
40
25
|
// Create decoder/encoder
|
|
41
|
-
|
|
42
|
-
|
|
26
|
+
using decoder = await Decoder.create(videoStream!);
|
|
27
|
+
using encoder = await Encoder.create('libx264', videoStream!, {
|
|
43
28
|
bitrate: '2M',
|
|
44
|
-
gopSize: 60
|
|
29
|
+
gopSize: 60,
|
|
45
30
|
});
|
|
46
31
|
|
|
47
32
|
// Add stream to output
|
|
48
33
|
const outputIndex = output.addStream(encoder);
|
|
49
34
|
await output.writeHeader();
|
|
50
35
|
|
|
51
|
-
// Process
|
|
36
|
+
// Process packets
|
|
52
37
|
for await (const packet of input.packets()) {
|
|
53
|
-
if (packet.streamIndex === videoStream
|
|
54
|
-
|
|
38
|
+
if (packet.streamIndex === videoStream!.index) {
|
|
39
|
+
using frame = await decoder.decode(packet);
|
|
55
40
|
if (frame) {
|
|
56
|
-
|
|
41
|
+
using encoded = await encoder.encode(frame);
|
|
57
42
|
if (encoded) {
|
|
58
43
|
await output.writePacket(encoded, outputIndex);
|
|
59
|
-
encoded.free();
|
|
60
44
|
}
|
|
61
|
-
frame.free();
|
|
62
45
|
}
|
|
63
46
|
}
|
|
64
|
-
packet.free();
|
|
65
47
|
}
|
|
66
48
|
|
|
67
|
-
//
|
|
49
|
+
// Flush decoder/encoder
|
|
50
|
+
for await (const frame of decoder.flushFrames()) {
|
|
51
|
+
using encoded = await encoder.encode(frame);
|
|
52
|
+
if (encoded) {
|
|
53
|
+
await output.writePacket(encoded, outputIndex);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
for await (const packet of encoder.flushPackets()) {
|
|
58
|
+
await output.writePacket(packet, outputIndex);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
// End
|
|
68
62
|
await output.writeTrailer();
|
|
69
|
-
await output.close();
|
|
70
|
-
await input.close();
|
|
71
63
|
```
|
|
72
64
|
|
|
73
65
|
### Pipeline API
|
|
74
66
|
|
|
75
|
-
The Pipeline API provides streamlined media processing with automatic flow control. It supports two modes:
|
|
76
|
-
|
|
77
|
-
#### Simple Pipeline (single stream)
|
|
78
|
-
|
|
79
67
|
```typescript
|
|
80
|
-
import { pipeline, MediaInput, MediaOutput, Decoder, Encoder
|
|
68
|
+
import { pipeline, MediaInput, MediaOutput, Decoder, Encoder } from 'node-av/api';
|
|
81
69
|
|
|
82
|
-
//
|
|
70
|
+
// Simple transcode pipeline: input → decoder → encoder → output
|
|
83
71
|
const input = await MediaInput.open('input.mp4');
|
|
84
72
|
const output = await MediaOutput.open('output.mp4');
|
|
85
73
|
const decoder = await Decoder.create(input.video());
|
|
86
|
-
const encoder = await Encoder.create('libx264', {
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
height: 1080,
|
|
90
|
-
pixelFormat: AV_PIX_FMT_YUV420P,
|
|
91
|
-
timeBase: { num: 1, den: 30 }
|
|
92
|
-
}, {
|
|
93
|
-
bitrate: '2M'
|
|
74
|
+
const encoder = await Encoder.create('libx264', input.video(), {
|
|
75
|
+
bitrate: '2M',
|
|
76
|
+
gopSize: 60
|
|
94
77
|
});
|
|
95
78
|
|
|
96
79
|
const control = pipeline(input, decoder, encoder, output);
|
|
97
80
|
await control.completion;
|
|
98
81
|
|
|
99
|
-
//
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
// Stream copy (no re-encoding): input → output
|
|
105
|
-
const control3 = pipeline(input, output);
|
|
106
|
-
await control3.completion;
|
|
82
|
+
// The pipeline automatically handles:
|
|
83
|
+
// - Flow control between components
|
|
84
|
+
// - Resource management and cleanup
|
|
85
|
+
// - Error propagation
|
|
86
|
+
// - Backpressure handling
|
|
107
87
|
```
|
|
108
88
|
|
|
109
|
-
|
|
89
|
+
## More Examples
|
|
110
90
|
|
|
111
|
-
|
|
112
|
-
// Process multiple streams with named routing
|
|
113
|
-
const control = pipeline(
|
|
114
|
-
{ video: videoInput, audio: audioInput },
|
|
115
|
-
{
|
|
116
|
-
video: [videoDecoder, videoFilter, videoEncoder],
|
|
117
|
-
audio: [audioDecoder, audioFilter, audioEncoder]
|
|
118
|
-
},
|
|
119
|
-
{ video: videoOutput, audio: audioOutput }
|
|
120
|
-
);
|
|
121
|
-
await control.completion;
|
|
122
|
-
|
|
123
|
-
// With single output (muxing)
|
|
124
|
-
const control2 = pipeline(
|
|
125
|
-
{ video: videoInput, audio: audioInput },
|
|
126
|
-
{
|
|
127
|
-
video: [videoDecoder, videoEncoder],
|
|
128
|
-
audio: 'passthrough' // Stream copy
|
|
129
|
-
},
|
|
130
|
-
output
|
|
131
|
-
);
|
|
132
|
-
await control2.completion;
|
|
133
|
-
```
|
|
91
|
+
The `examples/` directory contains comprehensive examples for all API levels:
|
|
134
92
|
|
|
135
|
-
|
|
93
|
+
**High-Level API** (`api-*.ts`)
|
|
94
|
+
- Hardware acceleration, muxing, streaming, custom I/O, and more
|
|
136
95
|
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
const frames = pipeline(input, decoder);
|
|
140
|
-
for await (const frame of frames) {
|
|
141
|
-
// Process frames
|
|
142
|
-
frame.free();
|
|
143
|
-
}
|
|
96
|
+
**Low-Level API** (direct FFmpeg bindings)
|
|
97
|
+
- Ported FFmpeg C examples showing fine-grained control
|
|
144
98
|
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
for await (const frame of filteredFrames) {
|
|
148
|
-
// Process filtered frames
|
|
149
|
-
frame.free();
|
|
150
|
-
}
|
|
99
|
+
**Pipeline API** (`api-pipeline-*.ts`)
|
|
100
|
+
- Complex workflows with automatic flow control
|
|
151
101
|
|
|
152
|
-
|
|
153
|
-
const generators = pipeline(
|
|
154
|
-
{ video: videoInput, audio: audioInput },
|
|
155
|
-
{
|
|
156
|
-
video: [videoDecoder, videoFilter],
|
|
157
|
-
audio: [audioDecoder]
|
|
158
|
-
}
|
|
159
|
-
);
|
|
160
|
-
// generators.video and generators.audio are async generators
|
|
161
|
-
```
|
|
102
|
+
See the [Examples Table](#examples) for a complete list.
|
|
162
103
|
|
|
163
104
|
## Hardware Acceleration
|
|
164
105
|
|
|
@@ -265,20 +206,6 @@ const rawAudio = await MediaInput.open({
|
|
|
265
206
|
});
|
|
266
207
|
```
|
|
267
208
|
|
|
268
|
-
## Error Handling
|
|
269
|
-
|
|
270
|
-
```typescript
|
|
271
|
-
import { FFmpegError } from 'node-av';
|
|
272
|
-
|
|
273
|
-
try {
|
|
274
|
-
const media = await MediaInput.open('input.mp4');
|
|
275
|
-
} catch (error) {
|
|
276
|
-
if (error instanceof FFmpegError) {
|
|
277
|
-
console.error(`FFmpeg error ${error.code}: ${error.message}`);
|
|
278
|
-
}
|
|
279
|
-
}
|
|
280
|
-
```
|
|
281
|
-
|
|
282
209
|
## Resource Management
|
|
283
210
|
|
|
284
211
|
The library supports automatic resource cleanup using the Disposable pattern:
|
|
@@ -374,4 +301,8 @@ For issues and questions, please use the GitHub issue tracker.
|
|
|
374
301
|
|
|
375
302
|
- [FFmpeg Documentation](https://ffmpeg.org/documentation.html)
|
|
376
303
|
- [FFmpeg Doxygen](https://ffmpeg.org/doxygen/trunk/)
|
|
377
|
-
- [Jellyfin FFmpeg](https://github.com/jellyfin/jellyfin-ffmpeg)
|
|
304
|
+
- [Jellyfin FFmpeg](https://github.com/jellyfin/jellyfin-ffmpeg)
|
|
305
|
+
|
|
306
|
+
---
|
|
307
|
+
|
|
308
|
+
*Part of the [camera.ui](https://github.com/seydx/camera.ui) ecosystem - A comprehensive camera management solution.*
|
package/binding.gyp
CHANGED
package/dist/api/encoder.js
CHANGED
|
@@ -183,10 +183,7 @@ export class Encoder {
|
|
|
183
183
|
const videoInfo = input;
|
|
184
184
|
codecContext.width = videoInfo.width;
|
|
185
185
|
codecContext.height = videoInfo.height;
|
|
186
|
-
|
|
187
|
-
if (videoInfo.pixelFormat !== undefined) {
|
|
188
|
-
codecContext.pixelFormat = videoInfo.pixelFormat;
|
|
189
|
-
}
|
|
186
|
+
codecContext.pixelFormat = videoInfo.pixelFormat;
|
|
190
187
|
// Set pkt_timebase and timeBase to input timebase
|
|
191
188
|
codecContext.pktTimebase = new Rational(videoInfo.timeBase.num, videoInfo.timeBase.den);
|
|
192
189
|
codecContext.timeBase = new Rational(videoInfo.timeBase.num, videoInfo.timeBase.den);
|
|
@@ -262,12 +259,10 @@ export class Encoder {
|
|
|
262
259
|
}
|
|
263
260
|
// Apply hardware acceleration if provided and encoder supports it
|
|
264
261
|
if (options.hardware && isHardwareEncoder) {
|
|
265
|
-
// For hardware encoders, always set the hardware pixel format
|
|
266
|
-
// (overrides what was copied from stream parameters)
|
|
267
|
-
codecContext.pixelFormat = options.hardware.getHardwarePixelFormat();
|
|
268
262
|
// Check if frames context already available (shared from decoder)
|
|
269
263
|
if (options.hardware.framesContext) {
|
|
270
264
|
codecContext.hwFramesCtx = options.hardware.framesContext;
|
|
265
|
+
codecContext.pixelFormat = options.hardware.getHardwarePixelFormat();
|
|
271
266
|
}
|
|
272
267
|
// Else: Will set hwFramesCtx later in encode() when first frame arrives
|
|
273
268
|
// DO NOT create frames context here - wait for first frame!
|
|
@@ -333,6 +328,9 @@ export class Encoder {
|
|
|
333
328
|
this.hardware.ensureFramesContext(frame.width, frame.height);
|
|
334
329
|
this.codecContext.hwFramesCtx = this.hardware.framesContext ?? null;
|
|
335
330
|
}
|
|
331
|
+
if (this.codecContext.hwFramesCtx) {
|
|
332
|
+
this.codecContext.pixelFormat = this.hardware.getHardwarePixelFormat();
|
|
333
|
+
}
|
|
336
334
|
}
|
|
337
335
|
// Software encoder completely ignores hardware context
|
|
338
336
|
// NO MANUAL RESCALING! FFmpeg's avcodec_send_frame() does this internally
|
package/dist/api/encoder.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encoder.js","sourceRoot":"","sources":["../../src/api/encoder.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"encoder.js","sourceRoot":"","sources":["../../src/api/encoder.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/binding.d.ts
CHANGED
|
@@ -4,7 +4,8 @@
|
|
|
4
4
|
* This module loads the native C++ bindings compiled by node-gyp.
|
|
5
5
|
* All native classes are accessed through this single entry point.
|
|
6
6
|
*/
|
|
7
|
-
import type { AVHWDeviceType, AVLogLevel, AVMediaType, AVOptionSearchFlags, AVPixelFormat, AVSampleFormat } from './constants.js';
|
|
7
|
+
import type { AVError, AVHWDeviceType, AVLogLevel, AVMediaType, AVOptionSearchFlags, AVPixelFormat, AVSampleFormat } from './constants.js';
|
|
8
|
+
import type { PosixError } from './error.js';
|
|
8
9
|
import type { NativeAudioFifo, NativeBitStreamFilter, NativeBitStreamFilterContext, NativeCodec, NativeCodecContext, NativeCodecParameters, NativeCodecParser, NativeDictionary, NativeFFmpegError, NativeFilter, NativeFilterContext, NativeFilterGraph, NativeFilterInOut, NativeFormatContext, NativeFrame, NativeHardwareDeviceContext, NativeHardwareFramesContext, NativeInputFormat, NativeIOContext, NativeLog, NativeOption, NativeOutputFormat, NativePacket, NativeSoftwareResampleContext, NativeSoftwareScaleContext, NativeStream } from './native-types.js';
|
|
9
10
|
import type { ChannelLayout, IRational } from './types.js';
|
|
10
11
|
type NativePacketConstructor = new () => NativePacket;
|
|
@@ -41,8 +42,7 @@ type NativeDictionaryConstructor = new () => NativeDictionary;
|
|
|
41
42
|
interface NativeFFmpegErrorConstructor {
|
|
42
43
|
new (code?: number): NativeFFmpegError;
|
|
43
44
|
strerror(errnum: number): string;
|
|
44
|
-
|
|
45
|
-
isError(code: number): boolean;
|
|
45
|
+
getAverror(errorName: PosixError): AVError;
|
|
46
46
|
}
|
|
47
47
|
interface NativeFilterConstructor {
|
|
48
48
|
new (): NativeFilter;
|
package/dist/lib/binding.js
CHANGED
|
@@ -14,55 +14,31 @@ function loadBinding() {
|
|
|
14
14
|
const platform = process.platform;
|
|
15
15
|
const arch = process.arch;
|
|
16
16
|
const platformArch = `${platform}-${arch}`;
|
|
17
|
-
//
|
|
17
|
+
// Local build directory (--build-from-source)
|
|
18
18
|
try {
|
|
19
|
-
const
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
}
|
|
25
|
-
// Try 2: Local build directory (development)
|
|
26
|
-
try {
|
|
27
|
-
const localPath = join(process.cwd(), 'build', 'Release', 'node-av.node');
|
|
28
|
-
if (existsSync(localPath)) {
|
|
29
|
-
return require(localPath);
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
catch (err) {
|
|
33
|
-
errors.push(new Error(`Local build not found: ${err}`));
|
|
34
|
-
}
|
|
35
|
-
// Try 3: Binary directory (postinstall)
|
|
36
|
-
try {
|
|
37
|
-
const binaryPath = join(process.cwd(), 'binary', 'node-av.node');
|
|
38
|
-
if (existsSync(binaryPath)) {
|
|
39
|
-
return require(binaryPath);
|
|
19
|
+
const localPath = [join(process.cwd(), 'build', 'Release', 'node-av.node'), join(process.cwd(), 'binary', 'node-av.node'), join(process.cwd(), 'node-av.node')];
|
|
20
|
+
for (const path of localPath) {
|
|
21
|
+
if (existsSync(path)) {
|
|
22
|
+
return require(path);
|
|
23
|
+
}
|
|
40
24
|
}
|
|
41
25
|
}
|
|
42
26
|
catch (err) {
|
|
43
|
-
errors.push(new Error(`
|
|
27
|
+
errors.push(new Error(`Local build not found or loading failed: ${err}`));
|
|
44
28
|
}
|
|
45
|
-
//
|
|
29
|
+
// Platform-specific package (optionalDependencies)
|
|
46
30
|
try {
|
|
47
|
-
const
|
|
48
|
-
|
|
49
|
-
return require(gypBuildPath);
|
|
50
|
-
}
|
|
31
|
+
const packageName = `@seydx/node-av-${platformArch}`;
|
|
32
|
+
return require(`${packageName}/node-av.node`);
|
|
51
33
|
}
|
|
52
34
|
catch (err) {
|
|
53
|
-
errors.push(new Error(`
|
|
35
|
+
errors.push(new Error(`Platform package not found or loading failed: ${err}`));
|
|
54
36
|
}
|
|
55
37
|
// All attempts failed
|
|
56
38
|
const errorMessages = errors.map((e) => e.message).join('\n ');
|
|
57
39
|
// prettier-ignore
|
|
58
40
|
throw new Error(`Could not load the node-av native binding for ${platformArch}.\n` +
|
|
59
|
-
`Attempted locations:\n ${errorMessages}\n\n`
|
|
60
|
-
'Possible solutions:\n' +
|
|
61
|
-
"1. Run 'npm install' to download the prebuilt binary\n" +
|
|
62
|
-
"2. Run 'npm install --build-from-source' to compile from source\n" +
|
|
63
|
-
'3. Ensure you have the required dependencies for your platform\n' +
|
|
64
|
-
'\n' +
|
|
65
|
-
'See https://github.com/seydx/av for more information.');
|
|
41
|
+
`Attempted locations:\n ${errorMessages}\n\n`);
|
|
66
42
|
}
|
|
67
43
|
// Load the native binding with fallback logic
|
|
68
44
|
const bindings = loadBinding();
|
package/dist/lib/binding.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"binding.js","sourceRoot":"","sources":["../../src/lib/binding.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AA+Q5B,SAAS,WAAW;IAClB,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAY,EAAE,CAAC;IAE3B,kBAAkB;IAClB,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAClC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC1B,MAAM,YAAY,GAAG,GAAG,QAAQ,IAAI,IAAI,EAAE,CAAC;IAE3C,
|
|
1
|
+
{"version":3,"file":"binding.js","sourceRoot":"","sources":["../../src/lib/binding.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AA+Q5B,SAAS,WAAW;IAClB,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAY,EAAE,CAAC;IAE3B,kBAAkB;IAClB,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAClC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC1B,MAAM,YAAY,GAAG,GAAG,QAAQ,IAAI,IAAI,EAAE,CAAC;IAE3C,8CAA8C;IAC9C,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,cAAc,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,cAAc,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC;QAChK,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;YAC7B,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrB,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,4CAA4C,GAAG,EAAE,CAAC,CAAC,CAAC;IAC5E,CAAC;IAED,mDAAmD;IACnD,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,kBAAkB,YAAY,EAAE,CAAC;QACrD,OAAO,OAAO,CAAC,GAAG,WAAW,eAAe,CAAC,CAAC;IAChD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,iDAAiD,GAAG,EAAE,CAAC,CAAC,CAAC;IACjF,CAAC;IAED,sBAAsB;IACtB,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChE,kBAAkB;IAClB,MAAM,IAAI,KAAK,CACb,iDAAiD,YAAY,KAAK;QAClE,2BAA2B,aAAa,MAAM,CAC/C,CAAC;AACJ,CAAC;AAED,8CAA8C;AAC9C,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;AAE/B,OAAO,EAAE,QAAQ,EAAE,CAAC"}
|
package/dist/lib/constants.d.ts
CHANGED
|
@@ -652,16 +652,6 @@ export declare const AV_STREAM_GROUP_PARAMS_IAMF_AUDIO_ELEMENT: AVStreamGroupPar
|
|
|
652
652
|
export declare const AV_STREAM_GROUP_PARAMS_IAMF_MIX_PRESENTATION: AVStreamGroupParamsType;
|
|
653
653
|
export declare const AV_STREAM_GROUP_PARAMS_TILE_GRID: AVStreamGroupParamsType;
|
|
654
654
|
export declare const AV_STREAM_GROUP_PARAMS_LCEVC: AVStreamGroupParamsType;
|
|
655
|
-
export type AVLangCodespace = number & {
|
|
656
|
-
readonly [__ffmpeg_brand]: 'AVLangCodespace';
|
|
657
|
-
};
|
|
658
|
-
export declare const AV_LANG_ISO639_2_BIBL: AVLangCodespace;
|
|
659
|
-
export declare const AV_LANG_ISO639_2_TERM: AVLangCodespace;
|
|
660
|
-
export declare const AV_LANG_ISO639_1: AVLangCodespace;
|
|
661
|
-
export type AVWriteUncodedFrameFlags = number & {
|
|
662
|
-
readonly [__ffmpeg_brand]: 'AVWriteUncodedFrameFlags';
|
|
663
|
-
};
|
|
664
|
-
export declare const AV_WRITE_UNCODED_FRAME_QUERY: AVWriteUncodedFrameFlags;
|
|
665
655
|
export type AVEscapeMode = number & {
|
|
666
656
|
readonly [__ffmpeg_brand]: 'AVEscapeMode';
|
|
667
657
|
};
|
|
@@ -1988,7 +1978,6 @@ export type SWRFlag = number & {
|
|
|
1988
1978
|
readonly [__ffmpeg_brand]: 'SWRFlag';
|
|
1989
1979
|
};
|
|
1990
1980
|
export declare const SWR_FLAG_RESAMPLE: SWRFlag;
|
|
1991
|
-
export declare const SWR_CH_MAX: SWRFlag;
|
|
1992
1981
|
export declare const AV_CODEC_HW_CONFIG_METHOD_HW_DEVICE_CTX = 1;
|
|
1993
1982
|
export declare const AV_CODEC_HW_CONFIG_METHOD_HW_FRAMES_CTX = 2;
|
|
1994
1983
|
export declare const AV_CODEC_HW_CONFIG_METHOD_INTERNAL = 4;
|
|
@@ -2024,14 +2013,6 @@ export declare const AVERROR_HTTP_SERVER_ERROR: AVError;
|
|
|
2024
2013
|
export declare const AVERROR_EXPERIMENTAL: AVError;
|
|
2025
2014
|
export declare const AVERROR_INPUT_CHANGED: AVError;
|
|
2026
2015
|
export declare const AVERROR_OUTPUT_CHANGED: AVError;
|
|
2027
|
-
export declare const AVERROR_EAGAIN: AVError;
|
|
2028
|
-
export declare const AVERROR_ENOMEM: AVError;
|
|
2029
|
-
export declare const AVERROR_EINVAL: AVError;
|
|
2030
|
-
export declare const AVERROR_EPIPE: AVError;
|
|
2031
|
-
export declare const AVERROR_ENOSYS: AVError;
|
|
2032
|
-
export declare const AVERROR_EIO: AVError;
|
|
2033
|
-
export declare const AVERROR_EPERM: AVError;
|
|
2034
|
-
export declare const AVERROR_ETIMEDOUT: AVError;
|
|
2035
2016
|
export declare const AV_NOPTS_VALUE = -9223372036854775808n;
|
|
2036
2017
|
export declare function cast<T>(value: number): T;
|
|
2037
2018
|
export {};
|
package/dist/lib/constants.js
CHANGED
|
@@ -621,10 +621,6 @@ export const AV_STREAM_GROUP_PARAMS_IAMF_AUDIO_ELEMENT = 1;
|
|
|
621
621
|
export const AV_STREAM_GROUP_PARAMS_IAMF_MIX_PRESENTATION = 2;
|
|
622
622
|
export const AV_STREAM_GROUP_PARAMS_TILE_GRID = 3;
|
|
623
623
|
export const AV_STREAM_GROUP_PARAMS_LCEVC = 4;
|
|
624
|
-
export const AV_LANG_ISO639_2_BIBL = 0;
|
|
625
|
-
export const AV_LANG_ISO639_2_TERM = 1;
|
|
626
|
-
export const AV_LANG_ISO639_1 = 2;
|
|
627
|
-
export const AV_WRITE_UNCODED_FRAME_QUERY = 1;
|
|
628
624
|
export const AV_ESCAPE_MODE_AUTO = 0;
|
|
629
625
|
export const AV_ESCAPE_MODE_BACKSLASH = 1;
|
|
630
626
|
export const AV_ESCAPE_MODE_QUOTE = 2;
|
|
@@ -1606,7 +1602,6 @@ export const SWS_CS_SMPTE240M = 7;
|
|
|
1606
1602
|
export const SWS_CS_DEFAULT = 5;
|
|
1607
1603
|
export const SWS_CS_BT2020 = 9;
|
|
1608
1604
|
export const SWR_FLAG_RESAMPLE = 1;
|
|
1609
|
-
export const SWR_CH_MAX = 64;
|
|
1610
1605
|
// ============================================================================
|
|
1611
1606
|
// AV_CODEC_HW_CONFIG_METHOD - Hardware configuration methods
|
|
1612
1607
|
// ============================================================================
|
|
@@ -1642,14 +1637,6 @@ export const AVERROR_HTTP_SERVER_ERROR = -1482175992;
|
|
|
1642
1637
|
export const AVERROR_EXPERIMENTAL = -733130664;
|
|
1643
1638
|
export const AVERROR_INPUT_CHANGED = -1668179713;
|
|
1644
1639
|
export const AVERROR_OUTPUT_CHANGED = -1668179714;
|
|
1645
|
-
export const AVERROR_EAGAIN = -35;
|
|
1646
|
-
export const AVERROR_ENOMEM = -12;
|
|
1647
|
-
export const AVERROR_EINVAL = -22;
|
|
1648
|
-
export const AVERROR_EPIPE = -32;
|
|
1649
|
-
export const AVERROR_ENOSYS = -78;
|
|
1650
|
-
export const AVERROR_EIO = -5;
|
|
1651
|
-
export const AVERROR_EPERM = -1;
|
|
1652
|
-
export const AVERROR_ETIMEDOUT = -60;
|
|
1653
1640
|
// Special time constants
|
|
1654
1641
|
export const AV_NOPTS_VALUE = -9223372036854775808n; // INT64_MIN
|
|
1655
1642
|
// Helper function to cast numbers to branded types
|