@remotion/cli 4.0.83 → 4.0.85
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/dist/config/beep-on-finish.d.ts +2 -0
- package/dist/config/beep-on-finish.js +10 -0
- package/dist/config/index.d.ts +6 -1
- package/dist/config/index.js +3 -0
- package/dist/get-cli-options.d.ts +1 -1
- package/dist/get-render-defaults.js +2 -0
- package/dist/index.d.ts +6 -5
- package/dist/parse-command-line.d.ts +73 -13
- package/dist/parse-command-line.js +7 -2
- package/dist/progress-bar.js +2 -2
- package/package.json +11 -11
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getBeepOnFinish = exports.setBeepOnFinish = void 0;
|
|
4
|
+
let beepOnFinish = false;
|
|
5
|
+
const setBeepOnFinish = (should) => {
|
|
6
|
+
beepOnFinish = should;
|
|
7
|
+
};
|
|
8
|
+
exports.setBeepOnFinish = setBeepOnFinish;
|
|
9
|
+
const getBeepOnFinish = () => beepOnFinish;
|
|
10
|
+
exports.getBeepOnFinish = getBeepOnFinish;
|
package/dist/config/index.d.ts
CHANGED
|
@@ -269,6 +269,10 @@ declare global {
|
|
|
269
269
|
distributions or if window server libraries are missing.
|
|
270
270
|
*/
|
|
271
271
|
readonly setChromiumMultiProcessOnLinux: (multiProcessOnLinux: boolean) => void;
|
|
272
|
+
/**
|
|
273
|
+
* Whether the Remotion Studio should play a beep sound when a render has finished.
|
|
274
|
+
*/
|
|
275
|
+
readonly setBeepOnFinish: (beepOnFinish: boolean) => void;
|
|
272
276
|
}
|
|
273
277
|
}
|
|
274
278
|
type FlatConfig = RemotionConfigObject & RemotionBundlingOptions & {
|
|
@@ -341,6 +345,7 @@ export declare const ConfigInternals: {
|
|
|
341
345
|
getWebpackOverrideFn: () => WebpackOverrideFn;
|
|
342
346
|
getWebpackCaching: () => boolean;
|
|
343
347
|
getOutputLocation: () => string | null;
|
|
348
|
+
getBeepOnFinish: () => boolean;
|
|
344
349
|
Logging: typeof Logging;
|
|
345
350
|
setFrameRangeFromCli: (newFrameRange: string | number) => void;
|
|
346
351
|
setStillFrame: (frame: number) => void;
|
|
@@ -367,7 +372,7 @@ export declare const ConfigInternals: {
|
|
|
367
372
|
getChromiumUserAgent: () => string | null;
|
|
368
373
|
getOffthreadVideoCacheSizeInBytes: () => number | null;
|
|
369
374
|
getDeleteAfter: () => ("1-day" | "3-days" | "7-days" | "30-days") | null;
|
|
370
|
-
getColorSpace: () => "default" | "bt709";
|
|
375
|
+
getColorSpace: () => "default" | "bt709" | "bt2020-ncl";
|
|
371
376
|
getEnableFolderExpiry: () => boolean | null;
|
|
372
377
|
getChromiumMultiProcessOnLinux: () => boolean;
|
|
373
378
|
};
|
package/dist/config/index.js
CHANGED
|
@@ -50,6 +50,7 @@ const webpack_caching_1 = require("./webpack-caching");
|
|
|
50
50
|
const x264_preset_1 = require("./x264-preset");
|
|
51
51
|
const studio_1 = require("@remotion/studio");
|
|
52
52
|
const audio_codec_1 = require("./audio-codec");
|
|
53
|
+
const beep_on_finish_1 = require("./beep-on-finish");
|
|
53
54
|
const bitrate_1 = require("./bitrate");
|
|
54
55
|
const browser_executable_2 = require("./browser-executable");
|
|
55
56
|
const chromium_flags_2 = require("./chromium-flags");
|
|
@@ -164,6 +165,7 @@ exports.Config = {
|
|
|
164
165
|
setOffthreadVideoCacheSizeInBytes: offthread_video_cache_size_1.setOffthreadVideoCacheSizeInBytes,
|
|
165
166
|
setDeleteAfter: render_folder_expiry_1.setDeleteAfter,
|
|
166
167
|
setColorSpace: color_space_1.setColorSpace,
|
|
168
|
+
setBeepOnFinish: beep_on_finish_1.setBeepOnFinish,
|
|
167
169
|
setEnableFolderExpiry: enable_folder_expiry_1.setEnableFolderExpiry,
|
|
168
170
|
};
|
|
169
171
|
exports.ConfigInternals = {
|
|
@@ -196,6 +198,7 @@ exports.ConfigInternals = {
|
|
|
196
198
|
getWebpackOverrideFn: override_webpack_1.getWebpackOverrideFn,
|
|
197
199
|
getWebpackCaching: webpack_caching_1.getWebpackCaching,
|
|
198
200
|
getOutputLocation: output_location_1.getOutputLocation,
|
|
201
|
+
getBeepOnFinish: beep_on_finish_1.getBeepOnFinish,
|
|
199
202
|
Logging,
|
|
200
203
|
setFrameRangeFromCli: frame_range_1.setFrameRangeFromCli,
|
|
201
204
|
setStillFrame: still_frame_1.setStillFrame,
|
|
@@ -39,5 +39,5 @@ export declare const getCliOptions: (options: {
|
|
|
39
39
|
configFileImageFormat: "png" | "jpeg" | "none" | undefined;
|
|
40
40
|
offthreadVideoCacheSizeInBytes: number | null;
|
|
41
41
|
deleteAfter: ("1-day" | "3-days" | "7-days" | "30-days") | null;
|
|
42
|
-
colorSpace: "default" | "bt709";
|
|
42
|
+
colorSpace: "default" | "bt709" | "bt2020-ncl";
|
|
43
43
|
}>;
|
|
@@ -26,6 +26,7 @@ const getRenderDefaults = () => {
|
|
|
26
26
|
const stillImageFormat = config_1.ConfigInternals.getUserPreferredStillImageFormat();
|
|
27
27
|
const videoImageFormat = config_1.ConfigInternals.getUserPreferredVideoImageFormat();
|
|
28
28
|
const disableWebSecurity = config_1.ConfigInternals.getChromiumDisableWebSecurity();
|
|
29
|
+
const beepOnFinish = config_1.ConfigInternals.getBeepOnFinish();
|
|
29
30
|
const headless = config_1.ConfigInternals.getChromiumHeadlessMode();
|
|
30
31
|
const ignoreCertificateErrors = config_1.ConfigInternals.getIgnoreCertificateErrors();
|
|
31
32
|
const openGlRenderer = config_1.ConfigInternals.getChromiumOpenGlRenderer();
|
|
@@ -66,6 +67,7 @@ const getRenderDefaults = () => {
|
|
|
66
67
|
colorSpace,
|
|
67
68
|
multiProcessOnLinux,
|
|
68
69
|
userAgent,
|
|
70
|
+
beepOnFinish,
|
|
69
71
|
};
|
|
70
72
|
};
|
|
71
73
|
exports.getRenderDefaults = getRenderDefaults;
|
package/dist/index.d.ts
CHANGED
|
@@ -109,7 +109,7 @@ export declare const CliInternals: {
|
|
|
109
109
|
configFileImageFormat: "png" | "jpeg" | "none" | undefined;
|
|
110
110
|
offthreadVideoCacheSizeInBytes: number | null;
|
|
111
111
|
deleteAfter: ("1-day" | "3-days" | "7-days" | "30-days") | null;
|
|
112
|
-
colorSpace: "default" | "bt709";
|
|
112
|
+
colorSpace: "default" | "bt709" | "bt2020-ncl";
|
|
113
113
|
}>;
|
|
114
114
|
loadConfig: (remotionRoot: string) => Promise<string | null>;
|
|
115
115
|
initializeCli: (remotionRoot: string) => Promise<"verbose" | "info" | "warn" | "error">;
|
|
@@ -118,7 +118,7 @@ export declare const CliInternals: {
|
|
|
118
118
|
parsedCli: {
|
|
119
119
|
"browser-executable": import("@remotion/renderer").BrowserExecutable;
|
|
120
120
|
"pixel-format": "yuv420p" | "yuva420p" | "yuv422p" | "yuv444p" | "yuv420p10le" | "yuv422p10le" | "yuv444p10le" | "yuva444p10le";
|
|
121
|
-
"image-format": "png" | "jpeg" | "
|
|
121
|
+
"image-format": "png" | "jpeg" | "pdf" | "webp" | "none";
|
|
122
122
|
"prores-profile": "4444-xq" | "4444" | "hq" | "standard" | "light" | "proxy";
|
|
123
123
|
"x264-preset": "ultrafast" | "superfast" | "veryfast" | "faster" | "fast" | "medium" | "slow" | "slower" | "veryslow" | "placebo";
|
|
124
124
|
"bundle-cache": string;
|
|
@@ -126,7 +126,6 @@ export declare const CliInternals: {
|
|
|
126
126
|
"ignore-certificate-errors": string;
|
|
127
127
|
"disable-web-security": string;
|
|
128
128
|
"every-nth-frame": number;
|
|
129
|
-
"number-of-gif-loops": number;
|
|
130
129
|
"number-of-shared-audio-tags": number;
|
|
131
130
|
version: string;
|
|
132
131
|
codec: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif";
|
|
@@ -169,8 +168,10 @@ export declare const CliInternals: {
|
|
|
169
168
|
browser: string;
|
|
170
169
|
"browser-args": string;
|
|
171
170
|
"user-agent": string;
|
|
171
|
+
"number-of-gif-loops": number;
|
|
172
172
|
"offthreadvideo-cache-size-in-bytes": number | null;
|
|
173
|
-
"color-space": "default" | "bt709";
|
|
173
|
+
"color-space": "default" | "bt709" | "bt2020-ncl";
|
|
174
|
+
"beep-on-finish": boolean;
|
|
174
175
|
"buffer-size": string | null;
|
|
175
176
|
"max-rate": string | null;
|
|
176
177
|
"delete-after": string | undefined;
|
|
@@ -191,7 +192,7 @@ export declare const CliInternals: {
|
|
|
191
192
|
downloadName: string | null;
|
|
192
193
|
outName: string | null;
|
|
193
194
|
configImageFormat: "png" | "jpeg" | "pdf" | "webp" | null;
|
|
194
|
-
cliFlag: "png" | "jpeg" | "
|
|
195
|
+
cliFlag: "png" | "jpeg" | "pdf" | "webp" | "none" | null;
|
|
195
196
|
isLambda: boolean;
|
|
196
197
|
fromUi: "png" | "jpeg" | "pdf" | "webp" | null;
|
|
197
198
|
}) => {
|
|
@@ -1,5 +1,68 @@
|
|
|
1
1
|
import type { AudioCodec, BrowserExecutable, Codec, OpenGlRenderer, PixelFormat, ProResProfile, StillImageFormat, VideoImageFormat, X264Preset } from '@remotion/renderer';
|
|
2
|
-
|
|
2
|
+
declare const beepOnFinishOption: {
|
|
3
|
+
name: string;
|
|
4
|
+
cliFlag: "beep-on-finish";
|
|
5
|
+
description: () => JSX.Element;
|
|
6
|
+
ssrName: null;
|
|
7
|
+
docLink: string;
|
|
8
|
+
type: boolean;
|
|
9
|
+
}, colorSpaceOption: {
|
|
10
|
+
name: string;
|
|
11
|
+
cliFlag: "color-space";
|
|
12
|
+
description: () => JSX.Element;
|
|
13
|
+
docLink: string;
|
|
14
|
+
ssrName: string;
|
|
15
|
+
type: "default" | "bt709" | "bt2020-ncl";
|
|
16
|
+
}, offthreadVideoCacheSizeInBytes: {
|
|
17
|
+
name: string;
|
|
18
|
+
cliFlag: "offthreadvideo-cache-size-in-bytes";
|
|
19
|
+
description: () => JSX.Element;
|
|
20
|
+
ssrName: "offthreadVideoCacheSizeInBytes";
|
|
21
|
+
docLink: string;
|
|
22
|
+
type: number | null;
|
|
23
|
+
}, encodingBufferSizeOption: {
|
|
24
|
+
name: string;
|
|
25
|
+
cliFlag: "buffer-size";
|
|
26
|
+
description: () => JSX.Element;
|
|
27
|
+
ssrName: "encodingBufferSize";
|
|
28
|
+
docLink: string;
|
|
29
|
+
type: string | null;
|
|
30
|
+
}, encodingMaxRateOption: {
|
|
31
|
+
name: string;
|
|
32
|
+
cliFlag: "max-rate";
|
|
33
|
+
description: () => JSX.Element;
|
|
34
|
+
ssrName: "encodingMaxRate";
|
|
35
|
+
docLink: string;
|
|
36
|
+
type: string | null;
|
|
37
|
+
}, deleteAfterOption: {
|
|
38
|
+
name: string;
|
|
39
|
+
cliFlag: "delete-after";
|
|
40
|
+
description: () => JSX.Element;
|
|
41
|
+
ssrName: "deleteAfter";
|
|
42
|
+
docLink: string;
|
|
43
|
+
type: string | null;
|
|
44
|
+
}, folderExpiryOption: {
|
|
45
|
+
name: string;
|
|
46
|
+
cliFlag: "enable-folder-expiry";
|
|
47
|
+
description: () => JSX.Element;
|
|
48
|
+
ssrName: "enableFolderExpiry";
|
|
49
|
+
docLink: string;
|
|
50
|
+
type: boolean | null;
|
|
51
|
+
}, enableMultiprocessOnLinuxOption: {
|
|
52
|
+
name: string;
|
|
53
|
+
cliFlag: "enable-multiprocess-on-linux";
|
|
54
|
+
description: () => JSX.Element;
|
|
55
|
+
ssrName: string;
|
|
56
|
+
docLink: string;
|
|
57
|
+
type: boolean;
|
|
58
|
+
}, numberOfGifLoopsOption: {
|
|
59
|
+
name: string;
|
|
60
|
+
cliFlag: "number-of-gif-loops";
|
|
61
|
+
description: () => JSX.Element;
|
|
62
|
+
ssrName: "numberOfGifLoops";
|
|
63
|
+
docLink: string;
|
|
64
|
+
type: number | null;
|
|
65
|
+
};
|
|
3
66
|
type CommandLineOptions = {
|
|
4
67
|
['browser-executable']: BrowserExecutable;
|
|
5
68
|
['pixel-format']: PixelFormat;
|
|
@@ -11,12 +74,11 @@ type CommandLineOptions = {
|
|
|
11
74
|
['ignore-certificate-errors']: string;
|
|
12
75
|
['disable-web-security']: string;
|
|
13
76
|
['every-nth-frame']: number;
|
|
14
|
-
[
|
|
77
|
+
[numberOfGifLoopsOption.cliFlag]: number;
|
|
15
78
|
['number-of-shared-audio-tags']: number;
|
|
16
|
-
[
|
|
17
|
-
|
|
18
|
-
[
|
|
19
|
-
.cliFlag]: typeof BrowserSafeApis.options.colorSpaceOption.type;
|
|
79
|
+
[offthreadVideoCacheSizeInBytes.cliFlag]: typeof offthreadVideoCacheSizeInBytes.type;
|
|
80
|
+
[colorSpaceOption.cliFlag]: typeof colorSpaceOption.type;
|
|
81
|
+
[beepOnFinishOption.cliFlag]: typeof beepOnFinishOption.type;
|
|
20
82
|
version: string;
|
|
21
83
|
codec: Codec;
|
|
22
84
|
concurrency: number;
|
|
@@ -25,10 +87,8 @@ type CommandLineOptions = {
|
|
|
25
87
|
['public-dir']: string;
|
|
26
88
|
['audio-bitrate']: string;
|
|
27
89
|
['video-bitrate']: string;
|
|
28
|
-
[
|
|
29
|
-
|
|
30
|
-
[BrowserSafeApis.options.encodingMaxRateOption
|
|
31
|
-
.cliFlag]: typeof BrowserSafeApis.options.encodingMaxRateOption.type;
|
|
90
|
+
[encodingBufferSizeOption.cliFlag]: typeof encodingBufferSizeOption.type;
|
|
91
|
+
[encodingMaxRateOption.cliFlag]: typeof encodingMaxRateOption.type;
|
|
32
92
|
['audio-codec']: AudioCodec;
|
|
33
93
|
crf: number;
|
|
34
94
|
force: boolean;
|
|
@@ -62,9 +122,9 @@ type CommandLineOptions = {
|
|
|
62
122
|
['browser']: string;
|
|
63
123
|
['browser-args']: string;
|
|
64
124
|
['user-agent']: string;
|
|
65
|
-
[
|
|
66
|
-
[
|
|
67
|
-
[
|
|
125
|
+
[deleteAfterOption.cliFlag]: string | undefined;
|
|
126
|
+
[folderExpiryOption.cliFlag]: boolean | undefined;
|
|
127
|
+
[enableMultiprocessOnLinuxOption.cliFlag]: boolean;
|
|
68
128
|
};
|
|
69
129
|
export declare const BooleanFlags: string[];
|
|
70
130
|
export declare const parsedCli: CommandLineOptions & {
|
|
@@ -9,6 +9,7 @@ const client_1 = require("@remotion/renderer/client");
|
|
|
9
9
|
const minimist_1 = __importDefault(require("minimist"));
|
|
10
10
|
const config_1 = require("./config");
|
|
11
11
|
const log_1 = require("./log");
|
|
12
|
+
const { beepOnFinishOption, colorSpaceOption, offthreadVideoCacheSizeInBytes, encodingBufferSizeOption, encodingMaxRateOption, deleteAfterOption, folderExpiryOption, enableMultiprocessOnLinuxOption, numberOfGifLoopsOption, } = client_1.BrowserSafeApis.options;
|
|
12
13
|
exports.BooleanFlags = [
|
|
13
14
|
'force',
|
|
14
15
|
'overwrite',
|
|
@@ -32,6 +33,7 @@ exports.BooleanFlags = [
|
|
|
32
33
|
'disable-keyboard-shortcuts',
|
|
33
34
|
'default-only',
|
|
34
35
|
'no-open',
|
|
36
|
+
beepOnFinishOption.cliFlag,
|
|
35
37
|
];
|
|
36
38
|
exports.parsedCli = (0, minimist_1.default)(process.argv.slice(2), {
|
|
37
39
|
boolean: exports.BooleanFlags,
|
|
@@ -43,8 +45,8 @@ const parseCommandLine = () => {
|
|
|
43
45
|
if (exports.parsedCli['browser-executable']) {
|
|
44
46
|
config_1.Config.setBrowserExecutable(exports.parsedCli['browser-executable']);
|
|
45
47
|
}
|
|
46
|
-
if (exports.parsedCli[
|
|
47
|
-
config_1.Config.setNumberOfGifLoops(exports.parsedCli[
|
|
48
|
+
if (exports.parsedCli[numberOfGifLoopsOption.cliFlag]) {
|
|
49
|
+
config_1.Config.setNumberOfGifLoops(exports.parsedCli[numberOfGifLoopsOption.cliFlag]);
|
|
48
50
|
}
|
|
49
51
|
if (typeof exports.parsedCli['bundle-cache'] !== 'undefined') {
|
|
50
52
|
config_1.Config.setCachingEnabled(exports.parsedCli['bundle-cache'] !== 'false');
|
|
@@ -150,6 +152,9 @@ const parseCommandLine = () => {
|
|
|
150
152
|
if (typeof exports.parsedCli['max-rate'] !== 'undefined') {
|
|
151
153
|
config_1.Config.setEncodingMaxRate(exports.parsedCli['max-rate']);
|
|
152
154
|
}
|
|
155
|
+
if (typeof exports.parsedCli['beep-on-finish'] !== 'undefined') {
|
|
156
|
+
config_1.Config.setBeepOnFinish(exports.parsedCli['beep-on-finish']);
|
|
157
|
+
}
|
|
153
158
|
if (typeof exports.parsedCli['offthreadvideo-cache-size-in-bytes'] !== 'undefined') {
|
|
154
159
|
config_1.Config.setOffthreadVideoCacheSizeInBytes(exports.parsedCli['offthreadvideo-cache-size-in-bytes']);
|
|
155
160
|
}
|
package/dist/progress-bar.js
CHANGED
|
@@ -179,7 +179,7 @@ const getGuiProgressSubtitle = (progress) => {
|
|
|
179
179
|
}
|
|
180
180
|
const allRendered = progress.rendering.frames === progress.rendering.totalFrames;
|
|
181
181
|
if (!allRendered || !progress.stitching || progress.stitching.frames === 0) {
|
|
182
|
-
return `
|
|
182
|
+
return `Rendered ${progress.rendering.frames}/${progress.rendering.totalFrames}`;
|
|
183
183
|
}
|
|
184
|
-
return `
|
|
184
|
+
return `Stitched ${progress.stitching.frames}/${progress.stitching.totalFrames}`;
|
|
185
185
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@remotion/cli",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.85",
|
|
4
4
|
"description": "CLI for Remotion",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"sideEffects": false,
|
|
@@ -31,12 +31,12 @@
|
|
|
31
31
|
"dotenv": "9.0.2",
|
|
32
32
|
"minimist": "1.2.6",
|
|
33
33
|
"prompts": "2.4.2",
|
|
34
|
-
"@remotion/bundler": "4.0.
|
|
35
|
-
"@remotion/
|
|
36
|
-
"@remotion/
|
|
37
|
-
"
|
|
38
|
-
"@remotion/studio": "4.0.
|
|
39
|
-
"remotion": "4.0.
|
|
34
|
+
"@remotion/bundler": "4.0.85",
|
|
35
|
+
"@remotion/player": "4.0.85",
|
|
36
|
+
"@remotion/renderer": "4.0.85",
|
|
37
|
+
"remotion": "4.0.85",
|
|
38
|
+
"@remotion/studio": "4.0.85",
|
|
39
|
+
"@remotion/media-utils": "4.0.85"
|
|
40
40
|
},
|
|
41
41
|
"peerDependencies": {
|
|
42
42
|
"react": ">=16.8.0",
|
|
@@ -55,14 +55,14 @@
|
|
|
55
55
|
"eslint-plugin-10x": "1.5.2",
|
|
56
56
|
"eslint-plugin-react": "7.32.2",
|
|
57
57
|
"eslint-plugin-react-hooks": "4.4.0",
|
|
58
|
-
"prettier": "3.
|
|
59
|
-
"prettier-plugin-organize-imports": "
|
|
58
|
+
"prettier": "3.1.1",
|
|
59
|
+
"prettier-plugin-organize-imports": "3.2.4",
|
|
60
60
|
"react": "18.2.0",
|
|
61
61
|
"react-dom": "18.2.0",
|
|
62
62
|
"vitest": "0.31.1",
|
|
63
63
|
"zod": "^3.22.3",
|
|
64
|
-
"@remotion/zod-types": "4.0.
|
|
65
|
-
"@remotion/tailwind": "4.0.
|
|
64
|
+
"@remotion/zod-types": "4.0.85",
|
|
65
|
+
"@remotion/tailwind": "4.0.85"
|
|
66
66
|
},
|
|
67
67
|
"keywords": [
|
|
68
68
|
"remotion",
|