@modernized/fluent-ffmpeg 0.1.1 → 0.1.3
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 +66 -0
- package/dist/lib/capabilities.d.ts +3 -2
- package/dist/lib/capabilities.d.ts.map +1 -1
- package/dist/lib/capabilities.js +43 -11
- package/dist/lib/capabilities.js.map +1 -1
- package/dist/lib/ffprobe.d.ts +3 -2
- package/dist/lib/ffprobe.d.ts.map +1 -1
- package/dist/lib/ffprobe.js +39 -10
- package/dist/lib/ffprobe.js.map +1 -1
- package/dist/lib/fluent-ffmpeg.d.ts +20 -1
- package/dist/lib/fluent-ffmpeg.d.ts.map +1 -1
- package/dist/lib/fluent-ffmpeg.js +37 -3
- package/dist/lib/fluent-ffmpeg.js.map +1 -1
- package/dist/lib/options/custom.d.ts +21 -1
- package/dist/lib/options/custom.d.ts.map +1 -1
- package/dist/lib/options/custom.js +47 -15
- package/dist/lib/options/custom.js.map +1 -1
- package/dist/lib/options/inputs.d.ts.map +1 -1
- package/dist/lib/options/inputs.js +15 -1
- package/dist/lib/options/inputs.js.map +1 -1
- package/dist/lib/options/misc.d.ts.map +1 -1
- package/dist/lib/options/misc.js +17 -3
- package/dist/lib/options/misc.js.map +1 -1
- package/dist/lib/processor.d.ts.map +1 -1
- package/dist/lib/processor.js +76 -8
- package/dist/lib/processor.js.map +1 -1
- package/dist/lib/recipes.d.ts.map +1 -1
- package/dist/lib/recipes.js +18 -5
- package/dist/lib/recipes.js.map +1 -1
- package/dist/lib/types.d.ts +12 -0
- package/dist/lib/types.d.ts.map +1 -1
- package/dist/lib/utils.d.ts +1 -1
- package/dist/lib/utils.d.ts.map +1 -1
- package/dist/lib/utils.js +25 -6
- package/dist/lib/utils.js.map +1 -1
- package/package.json +4 -1
package/README.md
CHANGED
|
@@ -22,7 +22,73 @@ yarn add @modernized/fluent-ffmpeg
|
|
|
22
22
|
npm install @modernized/fluent-ffmpeg
|
|
23
23
|
```
|
|
24
24
|
|
|
25
|
+
## Migrating from `fluent-ffmpeg` + `@types/fluent-ffmpeg`
|
|
26
|
+
|
|
27
|
+
The runtime API and the public type surface track the original
|
|
28
|
+
[`@types/fluent-ffmpeg`](https://www.npmjs.com/package/@types/fluent-ffmpeg)
|
|
29
|
+
on DefinitelyTyped. The same chainable methods, the same
|
|
30
|
+
`FfprobeData` / `FfprobeStream` / `FfprobeFormat` shapes, the same
|
|
31
|
+
`on()` event-listener overloads. Drop-in replace:
|
|
32
|
+
|
|
33
|
+
```diff
|
|
34
|
+
- "fluent-ffmpeg": "^2.1.3",
|
|
35
|
+
- "@types/fluent-ffmpeg": "^2.1.28",
|
|
36
|
+
+ "@modernized/fluent-ffmpeg": "^0.1.1",
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
```diff
|
|
40
|
+
- import ffmpeg from "fluent-ffmpeg";
|
|
41
|
+
+ import ffmpeg from "@modernized/fluent-ffmpeg";
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
There is **one type-side difference** to be aware of: namespace-style
|
|
45
|
+
type access (`ffmpeg.FfmpegCommand`, `ffmpeg.FfprobeData`, …) does
|
|
46
|
+
**not** work in this fork. Upstream merges `declare function Ffmpeg`
|
|
47
|
+
with `declare namespace Ffmpeg { … }`; this fork exports the runtime
|
|
48
|
+
factory as `const FfmpegCommand: FfmpegCommandStatic`, and TypeScript
|
|
49
|
+
does not allow a `const` declaration to merge with a same-named
|
|
50
|
+
namespace. Use `ReturnType<typeof ffmpeg>` for the instance type:
|
|
51
|
+
|
|
52
|
+
```ts
|
|
53
|
+
type FfmpegCommand = ReturnType<typeof ffmpeg>;
|
|
54
|
+
const cmd: FfmpegCommand = ffmpeg("input.mp4");
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
The full per-field shape of `FfprobeData` / `FfprobeStream` /
|
|
58
|
+
`FfprobeFormat` (and the rest of the upstream public types) is
|
|
59
|
+
declared internally and used at every call site — your consumer code
|
|
60
|
+
that relied on those shapes against `@types/fluent-ffmpeg` will keep
|
|
61
|
+
type-checking unchanged. Type inference on event-listener arguments
|
|
62
|
+
works exactly like upstream — no manual annotation needed. The package's `.d.ts` declares
|
|
63
|
+
typed overloads for `start` / `progress` / `stderr` / `codecData` /
|
|
64
|
+
`error` / `filenames` / `end`:
|
|
65
|
+
|
|
66
|
+
```ts
|
|
67
|
+
ffmpeg("input.mp4")
|
|
68
|
+
.on("start", (cmdLine) => { // cmdLine: string
|
|
69
|
+
console.log("ffmpeg:", cmdLine);
|
|
70
|
+
})
|
|
71
|
+
.on("error", (err, stdout, stderr) => { // err: Error, stdout/stderr: string | null
|
|
72
|
+
console.error(err);
|
|
73
|
+
});
|
|
74
|
+
```
|
|
25
75
|
|
|
76
|
+
### Upstream behaviour divergence
|
|
77
|
+
|
|
78
|
+
This fork ships **one runtime-behaviour fix** that diverges from upstream
|
|
79
|
+
`fluent-ffmpeg`: the long-standing `'Output stream closed'` race in
|
|
80
|
+
`.pipe()` / `.writeToStream()` (upstream issues
|
|
81
|
+
[#597](https://github.com/fluent-ffmpeg/node-fluent-ffmpeg/issues/597),
|
|
82
|
+
[#1067](https://github.com/fluent-ffmpeg/node-fluent-ffmpeg/issues/1067),
|
|
83
|
+
[#1135](https://github.com/fluent-ffmpeg/node-fluent-ffmpeg/issues/1135),
|
|
84
|
+
[#1199](https://github.com/fluent-ffmpeg/node-fluent-ffmpeg/issues/1199),
|
|
85
|
+
[#1223](https://github.com/fluent-ffmpeg/node-fluent-ffmpeg/issues/1223),
|
|
86
|
+
open since 2016) is fixed. The 20 ms grace between `target.on('close')`
|
|
87
|
+
and `ffmpegProc.on('exit')` was too short on Windows GH Actions, which
|
|
88
|
+
caused successful encodes to fire `'error'` instead of `'end'`. This
|
|
89
|
+
fork extends the grace and re-checks `ffmpegProc.exitCode` inside the
|
|
90
|
+
timeout, so the `'error'` only fires when ffmpeg is genuinely hanging.
|
|
91
|
+
See [issue #30](https://github.com/modernized-js/node-fluent-ffmpeg/issues/30).
|
|
26
92
|
|
|
27
93
|
## Usage
|
|
28
94
|
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import type { FfmpegCommandPrototype } from './types.js';
|
|
1
|
+
import type { FfmpegCommandPrototype, FormatInfo } from './types.js';
|
|
2
|
+
export declare function parseFormatsOutput(stdout: string): Record<string, FormatInfo>;
|
|
2
3
|
declare function applyCapabilities(proto: FfmpegCommandPrototype): void;
|
|
3
|
-
export
|
|
4
|
+
export default applyCapabilities;
|
|
4
5
|
//# sourceMappingURL=capabilities.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../lib/capabilities.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAGV,sBAAsB,
|
|
1
|
+
{"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../lib/capabilities.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAGV,sBAAsB,EAGtB,UAAU,EAEX,MAAM,YAAY,CAAC;AA+MpB,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAc7E;AA4CD,iBAAS,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,GAAG,IAAI,CAoM9D;AAED,eAAe,iBAAiB,CAAC"}
|
package/dist/lib/capabilities.js
CHANGED
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.parseFormatsOutput = parseFormatsOutput;
|
|
5
7
|
const promises_1 = require("node:fs/promises");
|
|
6
8
|
const node_path_1 = __importDefault(require("node:path"));
|
|
7
9
|
const utils_js_1 = __importDefault(require("./utils.js"));
|
|
@@ -10,7 +12,9 @@ const ffCodecRegexp = /^\s*([D.])([E.])([VAS])([I.])([L.])([S.]) ([^ ]+) +(.*)$/
|
|
|
10
12
|
const ffEncodersRegexp = /\(encoders:([^)]+)\)/;
|
|
11
13
|
const ffDecodersRegexp = /\(decoders:([^)]+)\)/;
|
|
12
14
|
const encodersRegexp = /^\s*([VAS.])([F.])([S.])([X.])([B.])([D.]) ([^ ]+) +(.*)$/;
|
|
13
|
-
|
|
15
|
+
// The 3rd flag column [d ] is for device demuxers/muxers (e.g. `D d lavfi`)
|
|
16
|
+
// — ffmpeg emits a 3-column flag area for those. Optional `[d ]?` consumes it.
|
|
17
|
+
const formatRegexp = /^\s*([D ])([E ])[d ]?\s+([^ ]+)\s+(.*)$/;
|
|
14
18
|
const lineBreakRegexp = /\r\n|\r|\n/;
|
|
15
19
|
const filterRegexp = /^(?: [T.][S.][C.] )?([^ ]+) +(AA?|VV?|\|)->(AA?|VV?|\|) +(.*)$/;
|
|
16
20
|
const codecTypeByLetter = {
|
|
@@ -75,7 +79,7 @@ async function resolveFlvtoolPath() {
|
|
|
75
79
|
return whichAsync('flvtool2');
|
|
76
80
|
}
|
|
77
81
|
function callbackify(promise, callback) {
|
|
78
|
-
promise.then((value) => callback(null, value), (err) => callback(err));
|
|
82
|
+
promise.then((value) => callback(null, value), (err) => callback(err instanceof Error ? err : new Error(String(err))));
|
|
79
83
|
}
|
|
80
84
|
function parseCodecAvLine(line, data) {
|
|
81
85
|
const match = line.match(avCodecRegexp);
|
|
@@ -200,9 +204,11 @@ function findUnavailableFormats(containers, formats, predicate) {
|
|
|
200
204
|
const found = container.options.find('-f', 1);
|
|
201
205
|
if (!found)
|
|
202
206
|
return acc;
|
|
203
|
-
const
|
|
204
|
-
if (
|
|
205
|
-
acc
|
|
207
|
+
const head = found[0];
|
|
208
|
+
if (typeof head !== 'string')
|
|
209
|
+
return acc;
|
|
210
|
+
if (!(head in formats) || !predicate(formats[head]))
|
|
211
|
+
acc.push(head);
|
|
206
212
|
return acc;
|
|
207
213
|
}, []);
|
|
208
214
|
}
|
|
@@ -212,11 +218,13 @@ function findUnavailableCodecs(outputs, encoders, kind, flag) {
|
|
|
212
218
|
const found = list.find(flag, 1);
|
|
213
219
|
if (!found)
|
|
214
220
|
return acc;
|
|
215
|
-
const
|
|
216
|
-
if (
|
|
221
|
+
const head = found[0];
|
|
222
|
+
if (typeof head !== 'string')
|
|
223
|
+
return acc;
|
|
224
|
+
if (head === 'copy')
|
|
217
225
|
return acc;
|
|
218
|
-
if (!(
|
|
219
|
-
acc.push(
|
|
226
|
+
if (!(head in encoders) || encoders[head].type !== kind)
|
|
227
|
+
acc.push(head);
|
|
220
228
|
return acc;
|
|
221
229
|
}, []);
|
|
222
230
|
}
|
|
@@ -229,10 +237,33 @@ function unavailableError(label, names) {
|
|
|
229
237
|
function applyCapabilities(proto) {
|
|
230
238
|
proto.setFfmpegPath = function (ffmpegPath) {
|
|
231
239
|
cache.ffmpegPath = ffmpegPath;
|
|
240
|
+
// Swapping the binary makes any previously-cached capability table
|
|
241
|
+
// (codecs / encoders / formats / filters) stale — drop them so the
|
|
242
|
+
// next run re-probes the new binary. Use `undefined` rather than
|
|
243
|
+
// `delete` so @typescript-eslint/no-dynamic-delete stays happy.
|
|
244
|
+
cache.codecs = undefined;
|
|
245
|
+
cache.encoders = undefined;
|
|
246
|
+
cache.formats = undefined;
|
|
247
|
+
cache.filters = undefined;
|
|
248
|
+
// Auto-derived ffprobePath is sibling-of-ffmpeg (or env / PATH); a
|
|
249
|
+
// new ffmpeg location invalidates that derivation. Leave an explicit
|
|
250
|
+
// user-supplied ffprobe path alone — that's their declared intent.
|
|
251
|
+
// Path cache uses `'X' in cache` presence checks, so we must `delete`
|
|
252
|
+
// (the no-dynamic-delete rule is off for this file).
|
|
253
|
+
if (!cache.ffprobePathExplicit) {
|
|
254
|
+
delete cache.ffprobePath;
|
|
255
|
+
}
|
|
232
256
|
return this;
|
|
233
257
|
};
|
|
234
258
|
proto.setFfprobePath = function (ffprobePath) {
|
|
235
259
|
cache.ffprobePath = ffprobePath;
|
|
260
|
+
cache.ffprobePathExplicit = true;
|
|
261
|
+
// ffprobe doesn't own the codec / format tables (those come from
|
|
262
|
+
// ffmpeg), but invalidating them on a probe-path swap is symmetrical
|
|
263
|
+
// with setFfmpegPath and avoids surprises if the user runs only the
|
|
264
|
+
// ffprobe sidecar against a mismatched build.
|
|
265
|
+
cache.codecs = undefined;
|
|
266
|
+
cache.formats = undefined;
|
|
236
267
|
return this;
|
|
237
268
|
};
|
|
238
269
|
proto.setFlvtoolPath = function (flvtool) {
|
|
@@ -242,6 +273,7 @@ function applyCapabilities(proto) {
|
|
|
242
273
|
proto._forgetPaths = function () {
|
|
243
274
|
delete cache.ffmpegPath;
|
|
244
275
|
delete cache.ffprobePath;
|
|
276
|
+
delete cache.ffprobePathExplicit;
|
|
245
277
|
delete cache.flvtoolPath;
|
|
246
278
|
};
|
|
247
279
|
proto._getFfmpegPath = function (callback) {
|
|
@@ -355,8 +387,8 @@ function applyCapabilities(proto) {
|
|
|
355
387
|
const videoErr = unavailableError('Video codec', badVideo);
|
|
356
388
|
if (videoErr)
|
|
357
389
|
throw videoErr;
|
|
358
|
-
})().then(() => callback(), (err) => callback(err));
|
|
390
|
+
})().then(() => callback(), (err) => callback(err instanceof Error ? err : new Error(String(err))));
|
|
359
391
|
};
|
|
360
392
|
}
|
|
361
|
-
|
|
393
|
+
exports.default = applyCapabilities;
|
|
362
394
|
//# sourceMappingURL=capabilities.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../../lib/capabilities.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../../lib/capabilities.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/ffprobe.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import type { FfmpegCommandPrototype } from './types.js';
|
|
1
|
+
import type { FfmpegCommandPrototype, InputState } from './types.js';
|
|
2
|
+
export declare function buildFfprobeArgv(input: InputState, options: string[], src: string): string[];
|
|
2
3
|
declare function applyFfprobe(proto: FfmpegCommandPrototype): void;
|
|
3
|
-
export
|
|
4
|
+
export default applyFfprobe;
|
|
4
5
|
//# sourceMappingURL=ffprobe.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ffprobe.d.ts","sourceRoot":"","sources":["../../lib/ffprobe.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ffprobe.d.ts","sourceRoot":"","sources":["../../lib/ffprobe.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,sBAAsB,EAItB,UAAU,EACX,MAAM,YAAY,CAAC;AAsJpB,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAG5F;AAgFD,iBAAS,YAAY,CAAC,KAAK,EAAE,sBAAsB,GAAG,IAAI,CAoBzD;AAED,eAAe,YAAY,CAAC"}
|
package/dist/lib/ffprobe.js
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.buildFfprobeArgv = buildFfprobeArgv;
|
|
2
4
|
const node_child_process_1 = require("node:child_process");
|
|
3
5
|
const blockEndRegexp = /^\[\/(.+)]$/;
|
|
4
6
|
const sectionStartRegexp = /^\[/;
|
|
@@ -47,12 +49,20 @@ function parseFfprobeOutput(out) {
|
|
|
47
49
|
}
|
|
48
50
|
return data;
|
|
49
51
|
}
|
|
52
|
+
function assertsRecord(value) {
|
|
53
|
+
if (typeof value !== 'object' || value === null || Array.isArray(value)) {
|
|
54
|
+
throw new TypeError('expected a Record bag, got something else');
|
|
55
|
+
}
|
|
56
|
+
}
|
|
50
57
|
function liftLegacyKeys(target, prefix, dest) {
|
|
51
58
|
const matchingKeys = Object.keys(target).filter((k) => prefix.test(k));
|
|
52
59
|
if (matchingKeys.length === 0)
|
|
53
60
|
return;
|
|
54
61
|
target[dest] ??= {};
|
|
55
62
|
const bag = target[dest];
|
|
63
|
+
// ??= just guaranteed `bag` is at least `{}`; narrow the unknown
|
|
64
|
+
// index-signature value to Record<string, unknown> via an assertion.
|
|
65
|
+
assertsRecord(bag);
|
|
56
66
|
const sliceFrom = dest === 'tags' ? 4 : 12;
|
|
57
67
|
matchingKeys.forEach((key) => {
|
|
58
68
|
bag[key.slice(sliceFrom)] = target[key];
|
|
@@ -69,6 +79,13 @@ function normaliseLegacyOutput(data) {
|
|
|
69
79
|
});
|
|
70
80
|
}
|
|
71
81
|
function parseFfprobeArgs(args) {
|
|
82
|
+
// The three `as` casts below stay: the FfmpegCommand.ffprobe overloads
|
|
83
|
+
// (and the static Ffmpeg.ffprobe) declare the parameter shapes, so by
|
|
84
|
+
// contract `args[length-1]` is an `FfprobeCallback`, and the 3-arg form
|
|
85
|
+
// is `(index: number, options: string[], cb)`. Replacing the casts
|
|
86
|
+
// with runtime typeof / Array.isArray throws would change the failure
|
|
87
|
+
// mode for malformed callers (silent drop vs. early TypeError) without
|
|
88
|
+
// a behavioural justification — keep the trust-the-overload pattern.
|
|
72
89
|
const callback = args[args.length - 1];
|
|
73
90
|
let index = null;
|
|
74
91
|
let options = [];
|
|
@@ -103,6 +120,16 @@ function pickInput(index, currentInput, inputs) {
|
|
|
103
120
|
// failed call's payload isolated — a consumer that mutates the
|
|
104
121
|
// returned object cannot poison subsequent failures.
|
|
105
122
|
const emptyFfprobeData = () => ({ streams: [], format: {}, chapters: [] });
|
|
123
|
+
// Build the argv passed to the ffprobe child. The input's stored
|
|
124
|
+
// `inputOptions` (e.g. `-headers`, `-rtsp_transport`, `-allowed_extensions`)
|
|
125
|
+
// must be forwarded to the sidecar — without them the probe silently fails
|
|
126
|
+
// on auth-protected URLs / RTSP feeds and the resulting `progress.percent`
|
|
127
|
+
// is forever undefined. Caller-supplied `options` come last so an explicit
|
|
128
|
+
// `ffprobe(idx, opts, cb)` override still wins on conflicting flags.
|
|
129
|
+
function buildFfprobeArgv(input, options, src) {
|
|
130
|
+
const inputOpts = input.options.get().map(String);
|
|
131
|
+
return [...inputOpts, '-show_streams', '-show_format', ...options, src];
|
|
132
|
+
}
|
|
106
133
|
function runFfprobe(probePath, input, options, callback) {
|
|
107
134
|
const state = {
|
|
108
135
|
stdout: '',
|
|
@@ -135,22 +162,24 @@ function runFfprobe(probePath, input, options, callback) {
|
|
|
135
162
|
normaliseLegacyOutput(data);
|
|
136
163
|
handleCallback(null, data);
|
|
137
164
|
};
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
});
|
|
142
|
-
|
|
165
|
+
// `input.isStream` flag alone doesn't narrow the source union for TS;
|
|
166
|
+
// the typeof check picks up the string side without an `as` cast.
|
|
167
|
+
const src = !input.isStream && typeof input.source === 'string' ? input.source : 'pipe:0';
|
|
168
|
+
const child = (0, node_child_process_1.spawn)(probePath, buildFfprobeArgv(input, options, src), { windowsHide: true });
|
|
169
|
+
// isStream=true implies source is Readable (caller-side contract);
|
|
170
|
+
// the typeof check narrows the union for TS without an `as` cast.
|
|
171
|
+
if (input.isStream && typeof input.source !== 'string') {
|
|
172
|
+
const source = input.source;
|
|
143
173
|
child.stdin.on('error', (err) => {
|
|
144
174
|
if (err.code && stdinIgnorableErrors.has(err.code))
|
|
145
175
|
return;
|
|
146
176
|
handleCallback(err, emptyFfprobeData());
|
|
147
177
|
});
|
|
148
178
|
child.stdin.on('close', () => {
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
stream.unpipe(child.stdin);
|
|
179
|
+
source.pause();
|
|
180
|
+
source.unpipe(child.stdin);
|
|
152
181
|
});
|
|
153
|
-
|
|
182
|
+
source.pipe(child.stdin);
|
|
154
183
|
}
|
|
155
184
|
child.on('error', (err) => handleCallback(err, emptyFfprobeData()));
|
|
156
185
|
child.on('exit', (code, signal) => {
|
|
@@ -198,5 +227,5 @@ function applyFfprobe(proto) {
|
|
|
198
227
|
});
|
|
199
228
|
};
|
|
200
229
|
}
|
|
201
|
-
|
|
230
|
+
exports.default = applyFfprobe;
|
|
202
231
|
//# sourceMappingURL=ffprobe.js.map
|
package/dist/lib/ffprobe.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ffprobe.js","sourceRoot":"","sources":["../../lib/ffprobe.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"ffprobe.js","sourceRoot":"","sources":["../../lib/ffprobe.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,6 +24,25 @@ interface FfmpegCommandStatic {
|
|
|
24
24
|
ffprobe(file: string, index: number, callback: FfprobeCallback): void;
|
|
25
25
|
ffprobe(file: string, index: number, options: string[], callback: FfprobeCallback): void;
|
|
26
26
|
}
|
|
27
|
+
/**
|
|
28
|
+
* Resolve the bundled `presets/` directory path in a way that survives
|
|
29
|
+
* both the regular CJS dist (where `__dirname` is defined) and the
|
|
30
|
+
* ESM-bundler scenario (SvelteKit / Vite SSR / esbuild ESM mode) where
|
|
31
|
+
* a downstream tool re-emits our compiled CJS as part of an ESM bundle
|
|
32
|
+
* and `__dirname` is undefined. See issue #43 / upstream #1283.
|
|
33
|
+
*
|
|
34
|
+
* The `dirname` parameter exists for testability — production callers
|
|
35
|
+
* pass the default (current `__dirname` if defined, else undefined).
|
|
36
|
+
*
|
|
37
|
+
* In the ESM-bundle branch we return the relative string `'presets'`
|
|
38
|
+
* rather than trying to recover the absolute path from `import.meta`:
|
|
39
|
+
* indirect-`eval` of an `import.meta` reference is parsed as Script and
|
|
40
|
+
* always SyntaxErrors, so any such recovery is dead code in practice.
|
|
41
|
+
* The relative-path fallback lets module load succeed; preset loading
|
|
42
|
+
* will surface the existing 'preset … could not be loaded' error
|
|
43
|
+
* instead of crashing the import with `ReferenceError`.
|
|
44
|
+
*/
|
|
45
|
+
export declare function resolveBundledPresetsDir(dirname?: string | undefined): string;
|
|
27
46
|
declare const FfmpegCommand: FfmpegCommandStatic;
|
|
28
|
-
export
|
|
47
|
+
export default FfmpegCommand;
|
|
29
48
|
//# sourceMappingURL=fluent-ffmpeg.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fluent-ffmpeg.d.ts","sourceRoot":"","sources":["../../lib/fluent-ffmpeg.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"fluent-ffmpeg.d.ts","sourceRoot":"","sources":["../../lib/fluent-ffmpeg.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.resolveBundledPresetsDir = resolveBundledPresetsDir;
|
|
5
7
|
const node_events_1 = require("node:events");
|
|
6
8
|
const node_path_1 = __importDefault(require("node:path"));
|
|
7
9
|
const utils_js_1 = __importDefault(require("./utils.js"));
|
|
@@ -26,14 +28,44 @@ const NULL_LOGGER = {
|
|
|
26
28
|
function isOptionsObject(value) {
|
|
27
29
|
return typeof value === 'object' && value !== null && !('readable' in value);
|
|
28
30
|
}
|
|
31
|
+
/**
|
|
32
|
+
* Resolve the bundled `presets/` directory path in a way that survives
|
|
33
|
+
* both the regular CJS dist (where `__dirname` is defined) and the
|
|
34
|
+
* ESM-bundler scenario (SvelteKit / Vite SSR / esbuild ESM mode) where
|
|
35
|
+
* a downstream tool re-emits our compiled CJS as part of an ESM bundle
|
|
36
|
+
* and `__dirname` is undefined. See issue #43 / upstream #1283.
|
|
37
|
+
*
|
|
38
|
+
* The `dirname` parameter exists for testability — production callers
|
|
39
|
+
* pass the default (current `__dirname` if defined, else undefined).
|
|
40
|
+
*
|
|
41
|
+
* In the ESM-bundle branch we return the relative string `'presets'`
|
|
42
|
+
* rather than trying to recover the absolute path from `import.meta`:
|
|
43
|
+
* indirect-`eval` of an `import.meta` reference is parsed as Script and
|
|
44
|
+
* always SyntaxErrors, so any such recovery is dead code in practice.
|
|
45
|
+
* The relative-path fallback lets module load succeed; preset loading
|
|
46
|
+
* will surface the existing 'preset … could not be loaded' error
|
|
47
|
+
* instead of crashing the import with `ReferenceError`.
|
|
48
|
+
*/
|
|
49
|
+
function resolveBundledPresetsDir(dirname = typeof __dirname !== 'undefined' ? __dirname : undefined) {
|
|
50
|
+
if (dirname) {
|
|
51
|
+
return node_path_1.default.join(dirname, 'presets');
|
|
52
|
+
}
|
|
53
|
+
return 'presets';
|
|
54
|
+
}
|
|
29
55
|
function applyDefaults(options) {
|
|
30
56
|
options.stdoutLines = 'stdoutLines' in options ? options.stdoutLines : DEFAULT_STDOUT_LINES;
|
|
31
57
|
// Legacy used `||` (falsy fallback). Keep that exactly so '' presets and
|
|
32
58
|
// niceness:0 with a priority set still inherit the right value.
|
|
33
|
-
options.presets = options.presets || options.preset ||
|
|
59
|
+
options.presets = options.presets || options.preset || resolveBundledPresetsDir();
|
|
34
60
|
options.niceness = options.niceness || options.priority || 0;
|
|
35
61
|
}
|
|
36
62
|
function FfmpegCommandImpl(input, options) {
|
|
63
|
+
// Three structural `as` casts remain in this file (here, line 134, line
|
|
64
|
+
// 138). They wire a function `FfmpegCommandImpl` up to the
|
|
65
|
+
// `FfmpegCommandStatic` shape (callable + `new`-able + static methods),
|
|
66
|
+
// which TypeScript cannot express without converting the whole factory
|
|
67
|
+
// to a class — a refactor that would also lose the legacy "callable
|
|
68
|
+
// without new" semantic that consumers depend on.
|
|
37
69
|
if (!(this instanceof FfmpegCommand)) {
|
|
38
70
|
return new FfmpegCommand(input, options);
|
|
39
71
|
}
|
|
@@ -45,7 +77,9 @@ function FfmpegCommandImpl(input, options) {
|
|
|
45
77
|
else {
|
|
46
78
|
// Match legacy: unconditional source assignment, including undefined,
|
|
47
79
|
// so `new FfmpegCommand(undefined, { source: 'foo' })` clears `source`
|
|
48
|
-
// exactly the way the legacy constructor did.
|
|
80
|
+
// exactly the way the legacy constructor did. The else-branch narrows
|
|
81
|
+
// `input` to `Exclude<FfmpegInput, FfmpegCommandOptions>` =
|
|
82
|
+
// `string | Readable | undefined`, which is structurally `opts.source`.
|
|
49
83
|
opts = options ?? {};
|
|
50
84
|
opts.source = input;
|
|
51
85
|
}
|
|
@@ -141,5 +175,5 @@ FfmpegCommand.ffprobe = function (file, ...args) {
|
|
|
141
175
|
const inst = new FfmpegCommand(file);
|
|
142
176
|
inst.ffprobe(...args);
|
|
143
177
|
};
|
|
144
|
-
|
|
178
|
+
exports.default = FfmpegCommand;
|
|
145
179
|
//# sourceMappingURL=fluent-ffmpeg.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fluent-ffmpeg.js","sourceRoot":"","sources":["../../lib/fluent-ffmpeg.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"fluent-ffmpeg.js","sourceRoot":"","sources":["../../lib/fluent-ffmpeg.ts"],"names":[],"mappings":";;;;;AAsGA,4DAOC;AA7GD,6CAA2C;AAC3C,0DAA6B;AAG7B,0DAA+B;AAC/B,oEAA8C;AAC9C,kEAA4C;AAC5C,kEAA4C;AAC5C,0EAAoD;AACpD,oEAA8C;AAC9C,oEAA8C;AAC9C,gEAA0C;AAC1C,kEAA4C;AAC5C,wEAAkD;AAClD,8DAAwC;AACxC,8DAAwC;AAexC,MAAM,oBAAoB,GAAG,GAAG,CAAC;AAEjC,MAAM,WAAW,GAAW;IAC1B,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC;IACf,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC;IACd,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC;IACd,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC;CAChB,CAAC;AA2CF,SAAS,eAAe,CAAC,KAAc;IACrC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,CAAC,UAAU,IAAI,KAAK,CAAC,CAAC;AAC/E,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAgB,wBAAwB,CACtC,UAA8B,OAAO,SAAS,KAAK,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;IAEtF,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,mBAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,aAAa,CAAC,OAA6B;IAClD,OAAO,CAAC,WAAW,GAAG,aAAa,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,oBAAoB,CAAC;IAC5F,yEAAyE;IACzE,gEAAgE;IAChE,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,IAAI,wBAAwB,EAAE,CAAC;IAClF,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC;AAC/D,CAAC;AAED,SAAS,iBAAiB,CAExB,KAAmB,EACnB,OAA8B;IAE9B,wEAAwE;IACxE,2DAA2D;IAC3D,wEAAwE;IACxE,uEAAuE;IACvE,oEAAoE;IACpE,kDAAkD;IAClD,IAAI,CAAC,CAAC,IAAI,YAAY,aAAa,CAAC,EAAE,CAAC;QACrC,OAAO,IAAK,aAAkF,CAC5F,KAAK,EACL,OAAO,CACR,CAAC;IACJ,CAAC;IACD,0BAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAExB,IAAI,IAA0B,CAAC;IAC/B,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,IAAI,GAAG,KAAK,CAAC;IACf,CAAC;SAAM,CAAC;QACN,sEAAsE;QACtE,uEAAuE;QACvE,sEAAsE;QACtE,4DAA4D;QAC5D,wEAAwE;QACxE,IAAI,GAAG,OAAO,IAAI,EAAE,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC;IAED,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;IAClB,IAAI,IAAI,CAAC,MAAM;QAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAEzC,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;IACnB,IAAI,CAAC,MAAM,EAAE,CAAC;IAEd,IAAI,CAAC,OAAO,GAAG,kBAAK,CAAC,IAAI,EAAE,CAAC;IAC5B,IAAI,CAAC,eAAe,GAAG,kBAAK,CAAC,IAAI,EAAE,CAAC;IAEpC,aAAa,CAAC,IAAI,CAAC,CAAC;IACpB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACpB,yEAAyE;IACzE,6EAA6E;IAC7E,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,WAAW,CAAC;IACzC,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,aAAa,GAAG,iBAAmD,CAAC;AAE1E,MAAM,CAAC,cAAc,CAAC,aAAa,CAAC,SAAS,EAAE,0BAAY,CAAC,SAAS,CAAC,CAAC;AAEvE,MAAM,KAAK,GAAG,aAAa,CAAC,SAA8C,CAAC;AAC3E,IAAA,mBAAW,EAAC,KAAK,CAAC,CAAC;AACnB,IAAA,kBAAU,EAAC,KAAK,CAAC,CAAC;AAClB,IAAA,kBAAU,EAAC,KAAK,CAAC,CAAC;AAClB,IAAA,sBAAc,EAAC,KAAK,CAAC,CAAC;AACtB,IAAA,mBAAW,EAAC,KAAK,CAAC,CAAC;AACnB,IAAA,mBAAW,EAAC,KAAK,CAAC,CAAC;AACnB,IAAA,iBAAS,EAAC,KAAK,CAAC,CAAC;AACjB,IAAA,sBAAc,EAAC,KAAK,CAAC,CAAC;AACtB,IAAA,yBAAiB,EAAC,KAAK,CAAC,CAAC;AACzB,IAAA,oBAAY,EAAC,KAAK,CAAC,CAAC;AACpB,IAAA,oBAAY,EAAC,KAAK,CAAC,CAAC;AAEpB,SAAS,gBAAgB,CAAC,GAA4B;IACpD,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAC;IAC3B,MAAM,IAAI,GAAgB;QACxB,KAAK,EAAE,EAAE,GAAG,GAAG,CAAC,KAAK,EAAE;QACvB,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE;QACxB,YAAY,EAAE,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE;QACtC,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE;QACxB,YAAY,EAAE,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE;QACtC,WAAW,EAAE,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE;QACpC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE;KAC7B,CAAC;IACF,IAAI,GAAG,CAAC,QAAQ;QAAE,IAAI,CAAC,QAAQ,GAAG,EAAE,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;IACtD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,aAAa,CAAC,SAAS,CAAC,KAAK,GAAG;IAC9B,MAAM,CAAC,GAAG,IAAI,aAAa,EAAE,CAAC;IAC9B,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IACzB,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAEvB,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACvC,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE;KAC/B,CAAC,CAAC,CAAC;IAEJ,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,CAAC,CAAC,QAAQ,GAAG,EAAE,CAAC;QAChB,CAAC,CAAC,MAAM,EAAE,CAAC;IACb,CAAC;SAAM,CAAC;QACN,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAE,CAAC;QACnD,CAAC,CAAC,QAAQ,GAAG,CAAC,MAAM,CAAC,CAAC;QACtB,CAAC,CAAC,cAAc,GAAG,MAAM,CAAC;IAC5B,CAAC;IAED,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;IACjC,CAAC,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;IACjD,OAAO,CAAC,CAAC;AACX,CAAC,CAAC;AAEF,aAAa,CAAC,aAAa,GAAG,CAAC,CAAS,EAAE,EAAE;IAC1C,IAAI,aAAa,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;AACvC,CAAC,CAAC;AACF,aAAa,CAAC,cAAc,GAAG,CAAC,CAAS,EAAE,EAAE;IAC3C,IAAI,aAAa,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;AACxC,CAAC,CAAC;AACF,aAAa,CAAC,cAAc,GAAG,CAAC,CAAS,EAAE,EAAE;IAC3C,IAAI,aAAa,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;AACxC,CAAC,CAAC;AACF,aAAa,CAAC,gBAAgB,GAAG,aAAa,CAAC,mBAAmB,GAAG,CAAC,EAAE,EAAE,EAAE;IAC1E,IAAI,aAAa,EAAE,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;AAC3C,CAAC,CAAC;AACF,aAAa,CAAC,eAAe,GAAG,aAAa,CAAC,kBAAkB,GAAG,CAAC,EAAE,EAAE,EAAE;IACxE,IAAI,aAAa,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;AAC1C,CAAC,CAAC;AACF,aAAa,CAAC,gBAAgB,GAAG,aAAa,CAAC,mBAAmB,GAAG,CAAC,EAAE,EAAE,EAAE;IAC1E,IAAI,aAAa,EAAE,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;AAC3C,CAAC,CAAC;AACF,aAAa,CAAC,iBAAiB,GAAG,aAAa,CAAC,oBAAoB,GAAG,CAAC,EAAE,EAAE,EAAE;IAC5E,IAAI,aAAa,EAAE,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;AAC5C,CAAC,CAAC;AACF,aAAa,CAAC,OAAO,GAAG,UAAU,IAAY,EAAE,GAAG,IAAe;IAChE,MAAM,IAAI,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC;IACpC,IAAI,CAAC,OAAqC,CAAC,GAAG,IAAI,CAAC,CAAC;AACvD,CAAC,CAAC;AAEF,kBAAe,aAAa,CAAC"}
|
|
@@ -1,4 +1,24 @@
|
|
|
1
1
|
import type { FfmpegCommandPrototype } from '../types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Normalise the variadic shape of `inputOptions` / `outputOptions` /
|
|
4
|
+
* `addOption` / etc. into a flat string[] suitable for ffmpeg argv.
|
|
5
|
+
*
|
|
6
|
+
* Three invocation forms (preserved from upstream `fluent-ffmpeg`):
|
|
7
|
+
*
|
|
8
|
+
* cmd.inputOption('-ss 00:00:10') // single string with space
|
|
9
|
+
* cmd.inputOptions('-c:v', 'libx264') // positional varargs
|
|
10
|
+
* cmd.inputOptions(['-flag1 val1', '-flag2 v2']) // array of flag-value pairs
|
|
11
|
+
* cmd.inputOptions(['-headers', 'Cookie: a=b']) // array of pre-split tokens
|
|
12
|
+
*
|
|
13
|
+
* The legacy split-on-space behaviour for array entries was over-eager:
|
|
14
|
+
* `['-headers', 'Cookie: a=b']` had its second item split into
|
|
15
|
+
* `['Cookie:', 'a=b']`, mangling the header value (upstream issue
|
|
16
|
+
* #1151, open since 2021). The fix below splits an entry only when
|
|
17
|
+
* its first part starts with `-` — distinguishing a flag-value pair
|
|
18
|
+
* (`'-me_method umh'`, valid preset shape) from a value-with-space
|
|
19
|
+
* (`'Cookie: a=b'`, raw user data).
|
|
20
|
+
*/
|
|
21
|
+
export declare function flattenOptions(args: (string | string[])[]): string[];
|
|
2
22
|
declare function applyCustomOptions(proto: FfmpegCommandPrototype): void;
|
|
3
|
-
export
|
|
23
|
+
export default applyCustomOptions;
|
|
4
24
|
//# sourceMappingURL=custom.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"custom.d.ts","sourceRoot":"","sources":["../../../lib/options/custom.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAiC,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"custom.d.ts","sourceRoot":"","sources":["../../../lib/options/custom.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAiC,MAAM,aAAa,CAAC;AAEzF;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC,EAAE,GAAG,MAAM,EAAE,CAuBpE;AAED,iBAAS,kBAAkB,CAAC,KAAK,EAAE,sBAAsB,GAAG,IAAI,CA8C/D;AAED,eAAe,kBAAkB,CAAC"}
|