@remotion/cli 4.0.446 → 4.0.448
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/benchmark.js +3 -1
- package/dist/config/index.d.ts +11 -1
- package/dist/config/index.js +3 -1
- package/dist/get-render-defaults.js +6 -1
- package/dist/list-of-remotion-packages.js +1 -0
- package/dist/parsed-cli.d.ts +33 -1
- package/dist/parsed-cli.js +3 -1
- package/dist/render-flows/render.d.ts +2 -1
- package/dist/render-flows/render.js +5 -1
- package/dist/render-flows/still.js +1 -0
- package/dist/render-queue/process-video.js +5 -1
- package/dist/render.js +3 -1
- package/package.json +14 -14
package/dist/benchmark.js
CHANGED
|
@@ -21,7 +21,7 @@ const setup_cache_1 = require("./setup-cache");
|
|
|
21
21
|
const should_use_non_overlaying_logger_1 = require("./should-use-non-overlaying-logger");
|
|
22
22
|
const show_compositions_picker_1 = require("./show-compositions-picker");
|
|
23
23
|
const truthy_1 = require("./truthy");
|
|
24
|
-
const { audioBitrateOption, x264Option, offthreadVideoCacheSizeInBytesOption, scaleOption, crfOption, jpegQualityOption, videoBitrateOption, enforceAudioOption, mutedOption, videoCodecOption, colorSpaceOption, disallowParallelEncodingOption, enableMultiprocessOnLinuxOption, glOption, numberOfGifLoopsOption, encodingMaxRateOption, encodingBufferSizeOption, delayRenderTimeoutInMillisecondsOption, headlessOption, overwriteOption, binariesDirectoryOption, forSeamlessAacConcatenationOption, publicPathOption, publicDirOption, metadataOption, hardwareAccelerationOption, chromeModeOption, offthreadVideoThreadsOption, mediaCacheSizeInBytesOption, darkModeOption, askAIOption, experimentalClientSideRenderingOption, experimentalVisualModeOption, keyboardShortcutsOption, rspackOption, pixelFormatOption, browserExecutableOption, everyNthFrameOption, proResProfileOption, userAgentOption, disableWebSecurityOption, ignoreCertificateErrorsOption, concurrencyOption, overrideHeightOption, overrideWidthOption, overrideFpsOption, overrideDurationOption, bundleCacheOption, runsOption, } = client_1.BrowserSafeApis.options;
|
|
24
|
+
const { audioBitrateOption, x264Option, offthreadVideoCacheSizeInBytesOption, scaleOption, crfOption, jpegQualityOption, videoBitrateOption, enforceAudioOption, mutedOption, videoCodecOption, colorSpaceOption, disallowParallelEncodingOption, enableMultiprocessOnLinuxOption, glOption, numberOfGifLoopsOption, encodingMaxRateOption, encodingBufferSizeOption, delayRenderTimeoutInMillisecondsOption, headlessOption, overwriteOption, binariesDirectoryOption, forSeamlessAacConcatenationOption, publicPathOption, publicDirOption, metadataOption, hardwareAccelerationOption, chromeModeOption, offthreadVideoThreadsOption, mediaCacheSizeInBytesOption, darkModeOption, askAIOption, experimentalClientSideRenderingOption, experimentalVisualModeOption, keyboardShortcutsOption, rspackOption, pixelFormatOption, browserExecutableOption, everyNthFrameOption, proResProfileOption, userAgentOption, disableWebSecurityOption, ignoreCertificateErrorsOption, concurrencyOption, overrideHeightOption, overrideWidthOption, overrideFpsOption, overrideDurationOption, bundleCacheOption, runsOption, sampleRateOption, } = client_1.BrowserSafeApis.options;
|
|
25
25
|
const { benchmarkConcurrenciesOption } = client_1.BrowserSafeApis.options;
|
|
26
26
|
const getValidConcurrency = (cliConcurrency) => {
|
|
27
27
|
const concurrencies = benchmarkConcurrenciesOption.getValue({
|
|
@@ -321,6 +321,7 @@ const benchmarkCommand = async (remotionRoot, args, logLevel) => {
|
|
|
321
321
|
commandLine: parsed_cli_1.parsedCli,
|
|
322
322
|
}, true).value;
|
|
323
323
|
const metadata = metadataOption.getValue({ commandLine: parsed_cli_1.parsedCli }).value;
|
|
324
|
+
const sampleRate = sampleRateOption.getValue({ commandLine: parsed_cli_1.parsedCli }).value;
|
|
324
325
|
for (const composition of compositions) {
|
|
325
326
|
const { value: videoCodec, source: codecReason } = videoCodecOption.getValue({
|
|
326
327
|
commandLine: parsed_cli_1.parsedCli,
|
|
@@ -372,6 +373,7 @@ const benchmarkCommand = async (remotionRoot, args, logLevel) => {
|
|
|
372
373
|
everyNthFrame,
|
|
373
374
|
logLevel,
|
|
374
375
|
muted,
|
|
376
|
+
sampleRate,
|
|
375
377
|
enforceAudioTrack,
|
|
376
378
|
browserExecutable,
|
|
377
379
|
ffmpegOverride,
|
package/dist/config/index.d.ts
CHANGED
|
@@ -61,6 +61,11 @@ declare global {
|
|
|
61
61
|
* @default false
|
|
62
62
|
*/
|
|
63
63
|
readonly setExperimentalClientSideRenderingEnabled: (enabled: boolean) => void;
|
|
64
|
+
/**
|
|
65
|
+
* Allow the experimental HTML-in-canvas capture path in Studio client-side renders.
|
|
66
|
+
* @default false
|
|
67
|
+
*/
|
|
68
|
+
readonly setAllowHtmlInCanvasEnabled: (enabled: boolean) => void;
|
|
64
69
|
/**
|
|
65
70
|
* Enable experimental Rspack bundler instead of Webpack.
|
|
66
71
|
* @param enabled Boolean whether to enable the Rspack bundler
|
|
@@ -353,7 +358,7 @@ declare global {
|
|
|
353
358
|
readonly setImageSequencePattern: (pattern: string | null) => void;
|
|
354
359
|
/**
|
|
355
360
|
* Set the public license key for your company license.
|
|
356
|
-
* Obtain it from
|
|
361
|
+
* Obtain it from https://remotion.pro (License keys page)
|
|
357
362
|
* Pass "free-license" if you are eligible for the free license.
|
|
358
363
|
*/
|
|
359
364
|
readonly setPublicLicenseKey: (key: string | null) => void;
|
|
@@ -417,6 +422,11 @@ type FlatConfig = RemotionConfigObject & RemotionBundlingOptions & {
|
|
|
417
422
|
* Default: null (uses the --concurrency value)
|
|
418
423
|
*/
|
|
419
424
|
setBenchmarkConcurrencies: (concurrencies: string | null) => void;
|
|
425
|
+
/**
|
|
426
|
+
* Set the audio sample rate for rendered output.
|
|
427
|
+
* Default: 48000
|
|
428
|
+
*/
|
|
429
|
+
setSampleRate: (sampleRate: number) => void;
|
|
420
430
|
/**
|
|
421
431
|
* @deprecated 'The config format has changed. Change `Config.Bundling.*()` calls to `Config.*()` in your config file.'
|
|
422
432
|
*/
|
package/dist/config/index.js
CHANGED
|
@@ -20,7 +20,7 @@ const preview_server_2 = require("./preview-server");
|
|
|
20
20
|
const still_frame_1 = require("./still-frame");
|
|
21
21
|
const webpack_caching_1 = require("./webpack-caching");
|
|
22
22
|
const webpack_poll_1 = require("./webpack-poll");
|
|
23
|
-
const { benchmarkConcurrenciesOption, concurrencyOption, offthreadVideoCacheSizeInBytesOption, x264Option, audioBitrateOption, videoBitrateOption, scaleOption, crfOption, jpegQualityOption, enforceAudioOption, overwriteOption, chromeModeOption, mutedOption, videoCodecOption, colorSpaceOption, disallowParallelEncodingOption, deleteAfterOption, folderExpiryOption, enableMultiprocessOnLinuxOption, glOption, headlessOption, numberOfGifLoopsOption, beepOnFinishOption, encodingMaxRateOption, encodingBufferSizeOption, reproOption, enableLambdaInsights, logLevelOption, delayRenderTimeoutInMillisecondsOption, publicDirOption, binariesDirectoryOption, preferLosslessOption, framesOption, forSeamlessAacConcatenationOption, audioCodecOption, publicPathOption, hardwareAccelerationOption, audioLatencyHintOption, enableCrossSiteIsolationOption, imageSequencePatternOption, darkModeOption, askAIOption, publicLicenseKeyOption, experimentalClientSideRenderingOption, experimentalVisualModeOption, keyboardShortcutsOption, forceNewStudioOption, numberOfSharedAudioTagsOption, ipv4Option, pixelFormatOption, browserExecutableOption, everyNthFrameOption, proResProfileOption, stillImageFormatOption, videoImageFormatOption, userAgentOption, disableWebSecurityOption, ignoreCertificateErrorsOption, overrideHeightOption, overrideWidthOption, overrideFpsOption, overrideDurationOption, rspackOption, outDirOption, webpackPollOption, imageSequenceOption, bundleCacheOption, envFileOption, runsOption, noOpenOption, } = client_1.BrowserSafeApis.options;
|
|
23
|
+
const { allowHtmlInCanvasOption, benchmarkConcurrenciesOption, concurrencyOption, offthreadVideoCacheSizeInBytesOption, x264Option, audioBitrateOption, videoBitrateOption, scaleOption, crfOption, jpegQualityOption, enforceAudioOption, overwriteOption, chromeModeOption, mutedOption, videoCodecOption, colorSpaceOption, disallowParallelEncodingOption, deleteAfterOption, folderExpiryOption, enableMultiprocessOnLinuxOption, glOption, headlessOption, numberOfGifLoopsOption, beepOnFinishOption, encodingMaxRateOption, encodingBufferSizeOption, reproOption, enableLambdaInsights, logLevelOption, delayRenderTimeoutInMillisecondsOption, publicDirOption, binariesDirectoryOption, preferLosslessOption, framesOption, forSeamlessAacConcatenationOption, audioCodecOption, publicPathOption, hardwareAccelerationOption, audioLatencyHintOption, enableCrossSiteIsolationOption, imageSequencePatternOption, darkModeOption, askAIOption, publicLicenseKeyOption, experimentalClientSideRenderingOption, experimentalVisualModeOption, keyboardShortcutsOption, forceNewStudioOption, numberOfSharedAudioTagsOption, ipv4Option, pixelFormatOption, browserExecutableOption, everyNthFrameOption, proResProfileOption, stillImageFormatOption, videoImageFormatOption, userAgentOption, disableWebSecurityOption, ignoreCertificateErrorsOption, overrideHeightOption, overrideWidthOption, overrideFpsOption, overrideDurationOption, rspackOption, outDirOption, webpackPollOption, imageSequenceOption, bundleCacheOption, envFileOption, runsOption, noOpenOption, sampleRateOption, } = client_1.BrowserSafeApis.options;
|
|
24
24
|
exports.Config = {
|
|
25
25
|
get Bundling() {
|
|
26
26
|
throw new Error('The config format has changed. Change `Config.Bundling.*()` calls to `Config.*()` in your config file.');
|
|
@@ -43,6 +43,7 @@ exports.Config = {
|
|
|
43
43
|
setMaxTimelineTracks: studio_server_1.StudioServerInternals.setMaxTimelineTracks,
|
|
44
44
|
setKeyboardShortcutsEnabled: keyboardShortcutsOption.setConfig,
|
|
45
45
|
setExperimentalClientSideRenderingEnabled: experimentalClientSideRenderingOption.setConfig,
|
|
46
|
+
setAllowHtmlInCanvasEnabled: allowHtmlInCanvasOption.setConfig,
|
|
46
47
|
setExperimentalRspackEnabled: rspackOption.setConfig,
|
|
47
48
|
setExperimentalVisualMode: experimentalVisualModeOption.setConfig,
|
|
48
49
|
setNumberOfSharedAudioTags: numberOfSharedAudioTagsOption.setConfig,
|
|
@@ -127,6 +128,7 @@ exports.Config = {
|
|
|
127
128
|
setBundleOutDir: outDirOption.setConfig,
|
|
128
129
|
setBenchmarkRuns: runsOption.setConfig,
|
|
129
130
|
setBenchmarkConcurrencies: benchmarkConcurrenciesOption.setConfig,
|
|
131
|
+
setSampleRate: sampleRateOption.setConfig,
|
|
130
132
|
};
|
|
131
133
|
exports.ConfigInternals = {
|
|
132
134
|
getBrowser: browser_1.getBrowser,
|
|
@@ -5,7 +5,7 @@ const renderer_1 = require("@remotion/renderer");
|
|
|
5
5
|
const client_1 = require("@remotion/renderer/client");
|
|
6
6
|
const config_1 = require("./config");
|
|
7
7
|
const parsed_cli_1 = require("./parsed-cli");
|
|
8
|
-
const { x264Option, audioBitrateOption, offthreadVideoCacheSizeInBytesOption, concurrencyOption, offthreadVideoThreadsOption, scaleOption, jpegQualityOption, videoBitrateOption, enforceAudioOption, mutedOption, colorSpaceOption, enableMultiprocessOnLinuxOption, glOption, numberOfGifLoopsOption, beepOnFinishOption, encodingMaxRateOption, encodingBufferSizeOption, reproOption, logLevelOption, delayRenderTimeoutInMillisecondsOption, headlessOption, forSeamlessAacConcatenationOption, audioCodecOption, hardwareAccelerationOption, chromeModeOption, mediaCacheSizeInBytesOption, darkModeOption, pixelFormatOption, everyNthFrameOption, proResProfileOption, userAgentOption, disableWebSecurityOption, ignoreCertificateErrorsOption, publicLicenseKeyOption, stillImageFormatOption, videoImageFormatOption, } = client_1.BrowserSafeApis.options;
|
|
8
|
+
const { allowHtmlInCanvasOption, x264Option, audioBitrateOption, offthreadVideoCacheSizeInBytesOption, concurrencyOption, offthreadVideoThreadsOption, scaleOption, jpegQualityOption, videoBitrateOption, enforceAudioOption, mutedOption, colorSpaceOption, enableMultiprocessOnLinuxOption, glOption, numberOfGifLoopsOption, beepOnFinishOption, encodingMaxRateOption, encodingBufferSizeOption, reproOption, logLevelOption, delayRenderTimeoutInMillisecondsOption, headlessOption, forSeamlessAacConcatenationOption, audioCodecOption, hardwareAccelerationOption, chromeModeOption, mediaCacheSizeInBytesOption, darkModeOption, pixelFormatOption, everyNthFrameOption, proResProfileOption, userAgentOption, disableWebSecurityOption, ignoreCertificateErrorsOption, publicLicenseKeyOption, stillImageFormatOption, videoImageFormatOption, sampleRateOption, } = client_1.BrowserSafeApis.options;
|
|
9
9
|
const getRenderDefaults = () => {
|
|
10
10
|
var _a;
|
|
11
11
|
const defaultJpegQuality = jpegQualityOption.getValue({
|
|
@@ -111,6 +111,9 @@ const getRenderDefaults = () => {
|
|
|
111
111
|
const userAgent = userAgentOption.getValue({ commandLine: parsed_cli_1.parsedCli }).value;
|
|
112
112
|
const metadata = config_1.ConfigInternals.getMetadata();
|
|
113
113
|
const outputLocation = config_1.ConfigInternals.getOutputLocation();
|
|
114
|
+
const allowHtmlInCanvas = allowHtmlInCanvasOption.getValue({
|
|
115
|
+
commandLine: parsed_cli_1.parsedCli,
|
|
116
|
+
}).value;
|
|
114
117
|
const maxConcurrency = renderer_1.RenderInternals.getMaxConcurrency();
|
|
115
118
|
const minConcurrency = renderer_1.RenderInternals.getMinConcurrency();
|
|
116
119
|
return {
|
|
@@ -155,6 +158,8 @@ const getRenderDefaults = () => {
|
|
|
155
158
|
mediaCacheSizeInBytes,
|
|
156
159
|
publicLicenseKey,
|
|
157
160
|
outputLocation,
|
|
161
|
+
allowHtmlInCanvas,
|
|
162
|
+
sampleRate: sampleRateOption.getValue({ commandLine: parsed_cli_1.parsedCli }).value,
|
|
158
163
|
};
|
|
159
164
|
};
|
|
160
165
|
exports.getRenderDefaults = getRenderDefaults;
|
package/dist/parsed-cli.d.ts
CHANGED
|
@@ -1,6 +1,21 @@
|
|
|
1
1
|
import type { AudioCodec, StillImageFormat, VideoImageFormat } from '@remotion/renderer';
|
|
2
2
|
import type { TypeOfOption } from '@remotion/renderer/client';
|
|
3
|
-
declare const
|
|
3
|
+
declare const allowHtmlInCanvasOption: {
|
|
4
|
+
name: string;
|
|
5
|
+
cliFlag: "allow-html-in-canvas";
|
|
6
|
+
description: () => import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
ssrName: null;
|
|
8
|
+
docLink: string;
|
|
9
|
+
type: boolean;
|
|
10
|
+
getValue: ({ commandLine }: {
|
|
11
|
+
commandLine: Record<string, unknown>;
|
|
12
|
+
}) => {
|
|
13
|
+
value: boolean;
|
|
14
|
+
source: string;
|
|
15
|
+
};
|
|
16
|
+
setConfig(value: boolean): void;
|
|
17
|
+
id: "allow-html-in-canvas";
|
|
18
|
+
}, benchmarkConcurrenciesOption: {
|
|
4
19
|
name: string;
|
|
5
20
|
cliFlag: "concurrencies";
|
|
6
21
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1071,6 +1086,21 @@ declare const benchmarkConcurrenciesOption: {
|
|
|
1071
1086
|
setConfig: () => never;
|
|
1072
1087
|
type: string | null;
|
|
1073
1088
|
id: "browser";
|
|
1089
|
+
}, sampleRateOption: {
|
|
1090
|
+
name: string;
|
|
1091
|
+
cliFlag: "sample-rate";
|
|
1092
|
+
description: () => import("react/jsx-runtime").JSX.Element;
|
|
1093
|
+
ssrName: "sampleRate";
|
|
1094
|
+
docLink: string;
|
|
1095
|
+
type: number;
|
|
1096
|
+
getValue: ({ commandLine }: {
|
|
1097
|
+
commandLine: Record<string, unknown>;
|
|
1098
|
+
}, compositionSampleRate?: number | null | undefined) => {
|
|
1099
|
+
value: number;
|
|
1100
|
+
source: string;
|
|
1101
|
+
};
|
|
1102
|
+
setConfig: (value: number) => void;
|
|
1103
|
+
id: "sample-rate";
|
|
1074
1104
|
};
|
|
1075
1105
|
export type CommandLineOptions = {
|
|
1076
1106
|
[browserExecutableOption.cliFlag]: TypeOfOption<typeof browserExecutableOption>;
|
|
@@ -1120,6 +1150,7 @@ export type CommandLineOptions = {
|
|
|
1120
1150
|
[stillFrameOption.cliFlag]: TypeOfOption<typeof stillFrameOption>;
|
|
1121
1151
|
[headlessOption.cliFlag]: TypeOfOption<typeof headlessOption>;
|
|
1122
1152
|
[keyboardShortcutsOption.cliFlag]: TypeOfOption<typeof keyboardShortcutsOption>;
|
|
1153
|
+
[allowHtmlInCanvasOption.cliFlag]: TypeOfOption<typeof allowHtmlInCanvasOption>;
|
|
1123
1154
|
[experimentalClientSideRenderingOption.cliFlag]: TypeOfOption<typeof experimentalClientSideRenderingOption>;
|
|
1124
1155
|
[experimentalVisualModeOption.cliFlag]: TypeOfOption<typeof experimentalVisualModeOption>;
|
|
1125
1156
|
[mutedOption.cliFlag]: TypeOfOption<typeof mutedOption>;
|
|
@@ -1148,6 +1179,7 @@ export type CommandLineOptions = {
|
|
|
1148
1179
|
'license-key': string;
|
|
1149
1180
|
[publicLicenseKeyOption.cliFlag]: string;
|
|
1150
1181
|
[forceNewStudioOption.cliFlag]: TypeOfOption<typeof forceNewStudioOption>;
|
|
1182
|
+
[sampleRateOption.cliFlag]: TypeOfOption<typeof sampleRateOption>;
|
|
1151
1183
|
};
|
|
1152
1184
|
export declare const BooleanFlags: string[];
|
|
1153
1185
|
export declare const parsedCli: CommandLineOptions & {
|
package/dist/parsed-cli.js
CHANGED
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.quietFlagProvided = exports.parsedCli = exports.BooleanFlags = void 0;
|
|
7
7
|
const client_1 = require("@remotion/renderer/client");
|
|
8
8
|
const minimist_1 = __importDefault(require("minimist"));
|
|
9
|
-
const { benchmarkConcurrenciesOption, beepOnFinishOption, colorSpaceOption, concurrencyOption, disallowParallelEncodingOption, offthreadVideoCacheSizeInBytesOption, encodingBufferSizeOption, encodingMaxRateOption, deleteAfterOption, folderExpiryOption, enableMultiprocessOnLinuxOption, numberOfGifLoopsOption, x264Option, enforceAudioOption, jpegQualityOption, audioBitrateOption, videoBitrateOption, audioCodecOption, publicPathOption, audioLatencyHintOption, darkModeOption, publicLicenseKeyOption, forceNewStudioOption, numberOfSharedAudioTagsOption, ipv4Option, pixelFormatOption, browserExecutableOption, everyNthFrameOption, proResProfileOption, userAgentOption, disableWebSecurityOption, ignoreCertificateErrorsOption, overrideHeightOption, overrideWidthOption, overrideFpsOption, overrideDurationOption, outDirOption, packageManagerOption, webpackPollOption, keyboardShortcutsOption, experimentalClientSideRenderingOption, experimentalVisualModeOption, imageSequencePatternOption, scaleOption, overwriteOption, crfOption, logLevelOption, videoCodecOption, stillFrameOption, imageSequenceOption, versionFlagOption, bundleCacheOption, envFileOption, glOption, runsOption, reproOption, mutedOption, headlessOption, disableGitSourceOption, delayRenderTimeoutInMillisecondsOption, framesOption, forSeamlessAacConcatenationOption, isProductionOption, noOpenOption, portOption, propsOption, configOption, browserOption, } = client_1.BrowserSafeApis.options;
|
|
9
|
+
const { allowHtmlInCanvasOption, benchmarkConcurrenciesOption, beepOnFinishOption, colorSpaceOption, concurrencyOption, disallowParallelEncodingOption, offthreadVideoCacheSizeInBytesOption, encodingBufferSizeOption, encodingMaxRateOption, deleteAfterOption, folderExpiryOption, enableMultiprocessOnLinuxOption, numberOfGifLoopsOption, x264Option, enforceAudioOption, jpegQualityOption, audioBitrateOption, videoBitrateOption, audioCodecOption, publicPathOption, audioLatencyHintOption, darkModeOption, publicLicenseKeyOption, forceNewStudioOption, numberOfSharedAudioTagsOption, ipv4Option, pixelFormatOption, browserExecutableOption, everyNthFrameOption, proResProfileOption, userAgentOption, disableWebSecurityOption, ignoreCertificateErrorsOption, overrideHeightOption, overrideWidthOption, overrideFpsOption, overrideDurationOption, outDirOption, packageManagerOption, webpackPollOption, keyboardShortcutsOption, experimentalClientSideRenderingOption, experimentalVisualModeOption, imageSequencePatternOption, scaleOption, overwriteOption, crfOption, logLevelOption, videoCodecOption, stillFrameOption, imageSequenceOption, versionFlagOption, bundleCacheOption, envFileOption, glOption, runsOption, reproOption, mutedOption, headlessOption, disableGitSourceOption, delayRenderTimeoutInMillisecondsOption, framesOption, forSeamlessAacConcatenationOption, isProductionOption, noOpenOption, portOption, propsOption, configOption, browserOption, sampleRateOption, } = client_1.BrowserSafeApis.options;
|
|
10
10
|
exports.BooleanFlags = [
|
|
11
11
|
overwriteOption.cliFlag,
|
|
12
12
|
imageSequenceOption.cliFlag,
|
|
@@ -20,6 +20,7 @@ exports.BooleanFlags = [
|
|
|
20
20
|
ignoreCertificateErrorsOption.cliFlag,
|
|
21
21
|
headlessOption.cliFlag,
|
|
22
22
|
keyboardShortcutsOption.cliFlag,
|
|
23
|
+
allowHtmlInCanvasOption.cliFlag,
|
|
23
24
|
experimentalClientSideRenderingOption.cliFlag,
|
|
24
25
|
experimentalVisualModeOption.cliFlag,
|
|
25
26
|
ipv4Option.cliFlag,
|
|
@@ -37,6 +38,7 @@ exports.parsedCli = (0, minimist_1.default)(process.argv.slice(2), {
|
|
|
37
38
|
default: {
|
|
38
39
|
[overwriteOption.cliFlag]: true,
|
|
39
40
|
[bundleCacheOption.cliFlag]: null,
|
|
41
|
+
[allowHtmlInCanvasOption.cliFlag]: null,
|
|
40
42
|
[experimentalClientSideRenderingOption.cliFlag]: null,
|
|
41
43
|
[experimentalVisualModeOption.cliFlag]: null,
|
|
42
44
|
[mutedOption.cliFlag]: null,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { BrowserExecutable, CancelSignal, ChromiumOptions, Crf, FfmpegOverrideFn, FrameRange, NumberOfGifLoops } from '@remotion/renderer';
|
|
2
2
|
import type { JobProgressCallback } from '@remotion/studio-server';
|
|
3
|
-
export declare const renderVideoFlow: ({ remotionRoot, fullEntryPoint, indent, logLevel, browserExecutable, browser, chromiumOptions, scale, shouldOutputImageSequence, publicDir, envVariables, puppeteerTimeout, port, height, width, fps, durationInFrames, remainingArgs, compositionIdFromUi, entryPointReason, overwrite, quiet, concurrency, frameRange, everyNthFrame, outputLocationFromUI, jpegQuality, onProgress, addCleanupCallback, cancelSignal, crf, uiCodec, uiImageFormat, ffmpegOverride, audioBitrate, muted, enforceAudioTrack, proResProfile, x264Preset, pixelFormat, videoBitrate, encodingMaxRate, encodingBufferSize, numberOfGifLoops, audioCodec, serializedInputPropsWithCustomSchema, disallowParallelEncoding, offthreadVideoCacheSizeInBytes, offthreadVideoThreads, colorSpace, repro, binariesDirectory, forSeamlessAacConcatenation, separateAudioTo, publicPath, metadata, hardwareAcceleration, chromeMode, audioLatencyHint, imageSequencePattern, mediaCacheSizeInBytes, rspack, askAIEnabled, experimentalClientSideRenderingEnabled, experimentalVisualModeEnabled, keyboardShortcutsEnabled, shouldCache, }: {
|
|
3
|
+
export declare const renderVideoFlow: ({ remotionRoot, fullEntryPoint, indent, logLevel, browserExecutable, browser, chromiumOptions, scale, shouldOutputImageSequence, publicDir, envVariables, puppeteerTimeout, port, height, width, fps, durationInFrames, remainingArgs, compositionIdFromUi, entryPointReason, overwrite, quiet, concurrency, frameRange, everyNthFrame, outputLocationFromUI, jpegQuality, onProgress, addCleanupCallback, cancelSignal, crf, uiCodec, uiImageFormat, ffmpegOverride, audioBitrate, muted, enforceAudioTrack, proResProfile, x264Preset, pixelFormat, videoBitrate, encodingMaxRate, encodingBufferSize, numberOfGifLoops, audioCodec, serializedInputPropsWithCustomSchema, disallowParallelEncoding, offthreadVideoCacheSizeInBytes, offthreadVideoThreads, colorSpace, repro, binariesDirectory, forSeamlessAacConcatenation, separateAudioTo, publicPath, metadata, hardwareAcceleration, chromeMode, audioLatencyHint, imageSequencePattern, mediaCacheSizeInBytes, rspack, askAIEnabled, experimentalClientSideRenderingEnabled, experimentalVisualModeEnabled, keyboardShortcutsEnabled, shouldCache, sampleRate, }: {
|
|
4
4
|
remotionRoot: string;
|
|
5
5
|
fullEntryPoint: string;
|
|
6
6
|
entryPointReason: string;
|
|
@@ -68,4 +68,5 @@ export declare const renderVideoFlow: ({ remotionRoot, fullEntryPoint, indent, l
|
|
|
68
68
|
experimentalVisualModeEnabled: boolean;
|
|
69
69
|
keyboardShortcutsEnabled: boolean;
|
|
70
70
|
shouldCache: boolean;
|
|
71
|
+
sampleRate: number;
|
|
71
72
|
}) => Promise<void>;
|
|
@@ -62,7 +62,7 @@ const should_use_non_overlaying_logger_1 = require("../should-use-non-overlaying
|
|
|
62
62
|
const truthy_1 = require("../truthy");
|
|
63
63
|
const user_passed_output_location_1 = require("../user-passed-output-location");
|
|
64
64
|
const add_log_to_aggregate_progress_1 = require("./add-log-to-aggregate-progress");
|
|
65
|
-
const renderVideoFlow = async ({ remotionRoot, fullEntryPoint, indent, logLevel, browserExecutable, browser, chromiumOptions, scale, shouldOutputImageSequence, publicDir, envVariables, puppeteerTimeout, port, height, width, fps, durationInFrames, remainingArgs, compositionIdFromUi, entryPointReason, overwrite, quiet, concurrency, frameRange, everyNthFrame, outputLocationFromUI, jpegQuality, onProgress, addCleanupCallback, cancelSignal, crf, uiCodec, uiImageFormat, ffmpegOverride, audioBitrate, muted, enforceAudioTrack, proResProfile, x264Preset, pixelFormat, videoBitrate, encodingMaxRate, encodingBufferSize, numberOfGifLoops, audioCodec, serializedInputPropsWithCustomSchema, disallowParallelEncoding, offthreadVideoCacheSizeInBytes, offthreadVideoThreads, colorSpace, repro, binariesDirectory, forSeamlessAacConcatenation, separateAudioTo, publicPath, metadata, hardwareAcceleration, chromeMode, audioLatencyHint, imageSequencePattern, mediaCacheSizeInBytes, rspack, askAIEnabled, experimentalClientSideRenderingEnabled, experimentalVisualModeEnabled, keyboardShortcutsEnabled, shouldCache, }) => {
|
|
65
|
+
const renderVideoFlow = async ({ remotionRoot, fullEntryPoint, indent, logLevel, browserExecutable, browser, chromiumOptions, scale, shouldOutputImageSequence, publicDir, envVariables, puppeteerTimeout, port, height, width, fps, durationInFrames, remainingArgs, compositionIdFromUi, entryPointReason, overwrite, quiet, concurrency, frameRange, everyNthFrame, outputLocationFromUI, jpegQuality, onProgress, addCleanupCallback, cancelSignal, crf, uiCodec, uiImageFormat, ffmpegOverride, audioBitrate, muted, enforceAudioTrack, proResProfile, x264Preset, pixelFormat, videoBitrate, encodingMaxRate, encodingBufferSize, numberOfGifLoops, audioCodec, serializedInputPropsWithCustomSchema, disallowParallelEncoding, offthreadVideoCacheSizeInBytes, offthreadVideoThreads, colorSpace, repro, binariesDirectory, forSeamlessAacConcatenation, separateAudioTo, publicPath, metadata, hardwareAcceleration, chromeMode, audioLatencyHint, imageSequencePattern, mediaCacheSizeInBytes, rspack, askAIEnabled, experimentalClientSideRenderingEnabled, experimentalVisualModeEnabled, keyboardShortcutsEnabled, shouldCache, sampleRate, }) => {
|
|
66
66
|
var _a;
|
|
67
67
|
renderer_1.RenderInternals.validateConcurrency({
|
|
68
68
|
value: concurrency,
|
|
@@ -216,6 +216,7 @@ const renderVideoFlow = async ({ remotionRoot, fullEntryPoint, indent, logLevel,
|
|
|
216
216
|
offthreadVideoCacheSizeInBytes,
|
|
217
217
|
binariesDirectory,
|
|
218
218
|
forceIPv4: false,
|
|
219
|
+
sampleRate,
|
|
219
220
|
});
|
|
220
221
|
addCleanupCallback(`Close server`, () => server.closeServer(false));
|
|
221
222
|
const { compositionId, config, reason, argsAfterComposition } = await (0, get_composition_with_dimension_override_1.getCompositionWithDimensionOverride)({
|
|
@@ -263,6 +264,7 @@ const renderVideoFlow = async ({ remotionRoot, fullEntryPoint, indent, logLevel,
|
|
|
263
264
|
uiCodec,
|
|
264
265
|
compositionCodec: config.defaultCodec,
|
|
265
266
|
});
|
|
267
|
+
const resolvedSampleRate = client_1.BrowserSafeApis.options.sampleRateOption.getValue({ commandLine: parsed_cli_1.parsedCli }, config.defaultSampleRate).value;
|
|
266
268
|
renderer_1.RenderInternals.validateEvenDimensionsWithCodec({
|
|
267
269
|
width: config.width,
|
|
268
270
|
height: config.height,
|
|
@@ -397,6 +399,7 @@ const renderVideoFlow = async ({ remotionRoot, fullEntryPoint, indent, logLevel,
|
|
|
397
399
|
server,
|
|
398
400
|
indent,
|
|
399
401
|
muted,
|
|
402
|
+
sampleRate: resolvedSampleRate,
|
|
400
403
|
onBrowserLog: null,
|
|
401
404
|
onFrameBuffer: null,
|
|
402
405
|
logLevel,
|
|
@@ -514,6 +517,7 @@ const renderVideoFlow = async ({ remotionRoot, fullEntryPoint, indent, logLevel,
|
|
|
514
517
|
onLog,
|
|
515
518
|
licenseKey: null,
|
|
516
519
|
isProduction: null,
|
|
520
|
+
sampleRate: resolvedSampleRate,
|
|
517
521
|
});
|
|
518
522
|
if (!updatesDontOverwrite) {
|
|
519
523
|
updateRenderProgress({ newline: true, printToConsole: true });
|
|
@@ -126,6 +126,7 @@ const renderStillFlow = async ({ remotionRoot, fullEntryPoint, entryPointReason,
|
|
|
126
126
|
offthreadVideoCacheSizeInBytes,
|
|
127
127
|
binariesDirectory,
|
|
128
128
|
forceIPv4: false,
|
|
129
|
+
sampleRate: 48000,
|
|
129
130
|
});
|
|
130
131
|
addCleanupCallback(`Close server`, () => server.closeServer(false));
|
|
131
132
|
addCleanupCallback(`Cleanup bundle`, () => cleanupBundle());
|
|
@@ -7,7 +7,7 @@ const convert_entry_point_to_serve_url_1 = require("../convert-entry-point-to-se
|
|
|
7
7
|
const get_cli_options_1 = require("../get-cli-options");
|
|
8
8
|
const parsed_cli_1 = require("../parsed-cli");
|
|
9
9
|
const render_1 = require("../render-flows/render");
|
|
10
|
-
const { publicDirOption, askAIOption, experimentalClientSideRenderingOption, experimentalVisualModeOption, keyboardShortcutsOption, rspackOption, browserExecutableOption, bundleCacheOption, } = client_1.BrowserSafeApis.options;
|
|
10
|
+
const { publicDirOption, askAIOption, experimentalClientSideRenderingOption, experimentalVisualModeOption, keyboardShortcutsOption, rspackOption, browserExecutableOption, bundleCacheOption, sampleRateOption, } = client_1.BrowserSafeApis.options;
|
|
11
11
|
const processVideoJob = async ({ job, remotionRoot, entryPoint, onProgress, addCleanupCallback, logLevel, }) => {
|
|
12
12
|
var _a, _b, _c;
|
|
13
13
|
if (job.type !== 'video' && job.type !== 'sequence') {
|
|
@@ -32,9 +32,13 @@ const processVideoJob = async ({ job, remotionRoot, entryPoint, onProgress, addC
|
|
|
32
32
|
commandLine: parsed_cli_1.parsedCli,
|
|
33
33
|
}).value;
|
|
34
34
|
const rspack = rspackOption.getValue({ commandLine: parsed_cli_1.parsedCli }).value;
|
|
35
|
+
const sampleRate = job.type === 'video'
|
|
36
|
+
? job.sampleRate
|
|
37
|
+
: sampleRateOption.getValue({ commandLine: parsed_cli_1.parsedCli }).value;
|
|
35
38
|
const fullEntryPoint = (0, convert_entry_point_to_serve_url_1.convertEntryPointToServeUrl)(entryPoint);
|
|
36
39
|
await (0, render_1.renderVideoFlow)({
|
|
37
40
|
remotionRoot,
|
|
41
|
+
sampleRate,
|
|
38
42
|
browser: 'chrome',
|
|
39
43
|
browserExecutable,
|
|
40
44
|
chromiumOptions: job.chromiumOptions,
|
package/dist/render.js
CHANGED
|
@@ -11,7 +11,7 @@ const get_cli_options_1 = require("./get-cli-options");
|
|
|
11
11
|
const log_1 = require("./log");
|
|
12
12
|
const parsed_cli_1 = require("./parsed-cli");
|
|
13
13
|
const render_1 = require("./render-flows/render");
|
|
14
|
-
const { x264Option, audioBitrateOption, offthreadVideoCacheSizeInBytesOption, scaleOption, crfOption, jpegQualityOption, videoBitrateOption, enforceAudioOption, mutedOption, colorSpaceOption, disallowParallelEncodingOption, enableMultiprocessOnLinuxOption, glOption, numberOfGifLoopsOption, encodingMaxRateOption, encodingBufferSizeOption, reproOption, delayRenderTimeoutInMillisecondsOption, headlessOption, overwriteOption, binariesDirectoryOption, forSeamlessAacConcatenationOption, separateAudioOption, audioCodecOption, publicPathOption, publicDirOption, metadataOption, hardwareAccelerationOption, chromeModeOption, offthreadVideoThreadsOption, audioLatencyHintOption, imageSequencePatternOption, mediaCacheSizeInBytesOption, darkModeOption, askAIOption, experimentalClientSideRenderingOption, experimentalVisualModeOption, keyboardShortcutsOption, rspackOption, pixelFormatOption, browserExecutableOption, everyNthFrameOption, proResProfileOption, userAgentOption, disableWebSecurityOption, ignoreCertificateErrorsOption, concurrencyOption, overrideHeightOption, overrideWidthOption, overrideFpsOption, overrideDurationOption, bundleCacheOption, } = client_1.BrowserSafeApis.options;
|
|
14
|
+
const { x264Option, audioBitrateOption, offthreadVideoCacheSizeInBytesOption, scaleOption, crfOption, jpegQualityOption, videoBitrateOption, enforceAudioOption, mutedOption, colorSpaceOption, disallowParallelEncodingOption, enableMultiprocessOnLinuxOption, glOption, numberOfGifLoopsOption, encodingMaxRateOption, encodingBufferSizeOption, reproOption, delayRenderTimeoutInMillisecondsOption, headlessOption, overwriteOption, binariesDirectoryOption, forSeamlessAacConcatenationOption, separateAudioOption, audioCodecOption, publicPathOption, publicDirOption, metadataOption, hardwareAccelerationOption, chromeModeOption, offthreadVideoThreadsOption, audioLatencyHintOption, imageSequencePatternOption, mediaCacheSizeInBytesOption, darkModeOption, askAIOption, experimentalClientSideRenderingOption, experimentalVisualModeOption, keyboardShortcutsOption, rspackOption, pixelFormatOption, browserExecutableOption, everyNthFrameOption, proResProfileOption, userAgentOption, disableWebSecurityOption, ignoreCertificateErrorsOption, concurrencyOption, overrideHeightOption, overrideWidthOption, overrideFpsOption, overrideDurationOption, bundleCacheOption, sampleRateOption, } = client_1.BrowserSafeApis.options;
|
|
15
15
|
const render = async (remotionRoot, args, logLevel) => {
|
|
16
16
|
const { file, remainingArgs, reason: entryPointReason, } = (0, entry_point_1.findEntryPoint)({ args, remotionRoot, logLevel, allowDirectory: true });
|
|
17
17
|
if (!file) {
|
|
@@ -133,6 +133,7 @@ const render = async (remotionRoot, args, logLevel) => {
|
|
|
133
133
|
commandLine: parsed_cli_1.parsedCli,
|
|
134
134
|
}).value;
|
|
135
135
|
const rspack = rspackOption.getValue({ commandLine: parsed_cli_1.parsedCli }).value;
|
|
136
|
+
const sampleRate = sampleRateOption.getValue({ commandLine: parsed_cli_1.parsedCli }).value;
|
|
136
137
|
const chromiumOptions = {
|
|
137
138
|
disableWebSecurity,
|
|
138
139
|
enableMultiProcessOnLinux,
|
|
@@ -238,6 +239,7 @@ const render = async (remotionRoot, args, logLevel) => {
|
|
|
238
239
|
experimentalVisualModeEnabled,
|
|
239
240
|
keyboardShortcutsEnabled,
|
|
240
241
|
rspack,
|
|
242
|
+
sampleRate,
|
|
241
243
|
shouldCache,
|
|
242
244
|
});
|
|
243
245
|
};
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"url": "https://github.com/remotion-dev/remotion/tree/main/packages/cli"
|
|
4
4
|
},
|
|
5
5
|
"name": "@remotion/cli",
|
|
6
|
-
"version": "4.0.
|
|
6
|
+
"version": "4.0.448",
|
|
7
7
|
"description": "Control Remotion features using the `npx remotion` command",
|
|
8
8
|
"main": "dist/index.js",
|
|
9
9
|
"sideEffects": false,
|
|
@@ -37,17 +37,17 @@
|
|
|
37
37
|
"author": "Jonny Burger <jonny@remotion.dev>",
|
|
38
38
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
39
39
|
"dependencies": {
|
|
40
|
-
"@remotion/bundler": "4.0.
|
|
41
|
-
"@remotion/media-utils": "4.0.
|
|
42
|
-
"@remotion/player": "4.0.
|
|
43
|
-
"@remotion/renderer": "4.0.
|
|
44
|
-
"@remotion/studio-shared": "4.0.
|
|
45
|
-
"@remotion/studio-server": "4.0.
|
|
46
|
-
"@remotion/studio": "4.0.
|
|
40
|
+
"@remotion/bundler": "4.0.448",
|
|
41
|
+
"@remotion/media-utils": "4.0.448",
|
|
42
|
+
"@remotion/player": "4.0.448",
|
|
43
|
+
"@remotion/renderer": "4.0.448",
|
|
44
|
+
"@remotion/studio-shared": "4.0.448",
|
|
45
|
+
"@remotion/studio-server": "4.0.448",
|
|
46
|
+
"@remotion/studio": "4.0.448",
|
|
47
47
|
"dotenv": "17.3.1",
|
|
48
48
|
"minimist": "1.2.6",
|
|
49
49
|
"prompts": "2.4.2",
|
|
50
|
-
"remotion": "4.0.
|
|
50
|
+
"remotion": "4.0.448"
|
|
51
51
|
},
|
|
52
52
|
"peerDependencies": {
|
|
53
53
|
"react": ">=16.8.0",
|
|
@@ -58,14 +58,14 @@
|
|
|
58
58
|
"@types/prompts": "^2.4.1",
|
|
59
59
|
"@types/prettier": "^2.7.2",
|
|
60
60
|
"@types/node": "20.12.14",
|
|
61
|
-
"@remotion/zod-types": "4.0.
|
|
62
|
-
"@remotion/tailwind-v4": "4.0.
|
|
63
|
-
"@remotion/enable-scss": "4.0.
|
|
64
|
-
"@remotion/skia": "4.0.
|
|
61
|
+
"@remotion/zod-types": "4.0.448",
|
|
62
|
+
"@remotion/tailwind-v4": "4.0.448",
|
|
63
|
+
"@remotion/enable-scss": "4.0.448",
|
|
64
|
+
"@remotion/skia": "4.0.448",
|
|
65
65
|
"react": "19.2.3",
|
|
66
66
|
"react-dom": "19.2.3",
|
|
67
67
|
"zod": "4.3.6",
|
|
68
|
-
"@remotion/eslint-config-internal": "4.0.
|
|
68
|
+
"@remotion/eslint-config-internal": "4.0.448",
|
|
69
69
|
"eslint": "9.19.0",
|
|
70
70
|
"@typescript/native-preview": "7.0.0-dev.20260217.1"
|
|
71
71
|
},
|