@remotion/cli 4.0.464 → 4.0.466
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 +5 -0
- package/dist/config/index.js +2 -1
- package/dist/get-render-defaults.js +5 -1
- package/dist/parsed-cli.d.ts +16 -0
- package/dist/parsed-cli.js +1 -1
- package/dist/render-flows/render.d.ts +2 -1
- package/dist/render-flows/render.js +2 -1
- package/dist/render-queue/process-video.js +1 -0
- package/dist/render.js +5 -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, keyboardShortcutsOption, rspackOption, pixelFormatOption, browserExecutableOption, everyNthFrameOption, proResProfileOption, userAgentOption, disableWebSecurityOption, ignoreCertificateErrorsOption, concurrencyOption, overrideHeightOption, overrideWidthOption, overrideFpsOption, overrideDurationOption, bundleCacheOption, runsOption, sampleRateOption, } = client_1.BrowserSafeApis.options;
|
|
24
|
+
const { audioBitrateOption, x264Option, offthreadVideoCacheSizeInBytesOption, scaleOption, crfOption, gopSizeOption, 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, 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({
|
|
@@ -288,6 +288,7 @@ const benchmarkCommand = async (remotionRoot, args, logLevel) => {
|
|
|
288
288
|
commandLine: parsed_cli_1.parsedCli,
|
|
289
289
|
}).value;
|
|
290
290
|
const configFileCrf = crfOption.getValue({ commandLine: parsed_cli_1.parsedCli }).value;
|
|
291
|
+
const gopSize = gopSizeOption.getValue({ commandLine: parsed_cli_1.parsedCli }).value;
|
|
291
292
|
const jpegQuality = jpegQualityOption.getValue({
|
|
292
293
|
commandLine: parsed_cli_1.parsedCli,
|
|
293
294
|
}).value;
|
|
@@ -350,6 +351,7 @@ const benchmarkCommand = async (remotionRoot, args, logLevel) => {
|
|
|
350
351
|
durationInFrames: durationInFrames !== null && durationInFrames !== void 0 ? durationInFrames : composition.durationInFrames,
|
|
351
352
|
},
|
|
352
353
|
crf: configFileCrf !== null && configFileCrf !== void 0 ? configFileCrf : null,
|
|
354
|
+
gopSize,
|
|
353
355
|
envVariables,
|
|
354
356
|
frameRange: defaultFrameRange,
|
|
355
357
|
imageFormat: (0, image_formats_1.getVideoImageFormat)({
|
package/dist/config/index.d.ts
CHANGED
|
@@ -246,6 +246,11 @@ declare global {
|
|
|
246
246
|
* possible values greatly differs between codecs.
|
|
247
247
|
*/
|
|
248
248
|
readonly setCrf: (newCrf: Crf) => void;
|
|
249
|
+
/**
|
|
250
|
+
* Set the maximum number of frames between two keyframes.
|
|
251
|
+
* Default: null, which lets the encoder decide.
|
|
252
|
+
*/
|
|
253
|
+
readonly setGopSize: (gopSize: number | null) => void;
|
|
249
254
|
/**
|
|
250
255
|
* Set to true if don't want a video but an image sequence as the output.
|
|
251
256
|
*/
|
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 { 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, 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;
|
|
23
|
+
const { allowHtmlInCanvasOption, benchmarkConcurrenciesOption, concurrencyOption, offthreadVideoCacheSizeInBytesOption, x264Option, audioBitrateOption, videoBitrateOption, scaleOption, crfOption, jpegQualityOption, enforceAudioOption, overwriteOption, chromeModeOption, mutedOption, videoCodecOption, colorSpaceOption, disallowParallelEncodingOption, deleteAfterOption, folderExpiryOption, enableMultiprocessOnLinuxOption, glOption, gopSizeOption, headlessOption, numberOfGifLoopsOption, beepOnFinishOption, encodingMaxRateOption, encodingBufferSizeOption, reproOption, enableLambdaInsights, logLevelOption, delayRenderTimeoutInMillisecondsOption, publicDirOption, binariesDirectoryOption, preferLosslessOption, framesOption, forSeamlessAacConcatenationOption, audioCodecOption, publicPathOption, hardwareAccelerationOption, audioLatencyHintOption, enableCrossSiteIsolationOption, imageSequencePatternOption, darkModeOption, askAIOption, publicLicenseKeyOption, experimentalClientSideRenderingOption, 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.');
|
|
@@ -94,6 +94,7 @@ exports.Config = {
|
|
|
94
94
|
setPixelFormat: pixelFormatOption.setConfig,
|
|
95
95
|
setCodec: videoCodecOption.setConfig,
|
|
96
96
|
setCrf: crfOption.setConfig,
|
|
97
|
+
setGopSize: gopSizeOption.setConfig,
|
|
97
98
|
setImageSequence: imageSequenceOption.setConfig,
|
|
98
99
|
setProResProfile: proResProfileOption.setConfig,
|
|
99
100
|
setX264Preset: x264Option.setConfig,
|
|
@@ -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 { 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;
|
|
8
|
+
const { allowHtmlInCanvasOption, x264Option, gopSizeOption, 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({
|
|
@@ -21,6 +21,9 @@ const getRenderDefaults = () => {
|
|
|
21
21
|
const x264Preset = x264Option.getValue({
|
|
22
22
|
commandLine: parsed_cli_1.parsedCli,
|
|
23
23
|
}).value;
|
|
24
|
+
const gopSize = gopSizeOption.getValue({
|
|
25
|
+
commandLine: parsed_cli_1.parsedCli,
|
|
26
|
+
}).value;
|
|
24
27
|
const audioBitrate = audioBitrateOption.getValue({
|
|
25
28
|
commandLine: parsed_cli_1.parsedCli,
|
|
26
29
|
}).value;
|
|
@@ -131,6 +134,7 @@ const getRenderDefaults = () => {
|
|
|
131
134
|
enforceAudioTrack,
|
|
132
135
|
proResProfile,
|
|
133
136
|
x264Preset: x264Preset !== null && x264Preset !== void 0 ? x264Preset : 'medium',
|
|
137
|
+
gopSize,
|
|
134
138
|
pixelFormat,
|
|
135
139
|
audioBitrate,
|
|
136
140
|
videoBitrate,
|
package/dist/parsed-cli.d.ts
CHANGED
|
@@ -891,6 +891,21 @@ declare const allowHtmlInCanvasOption: {
|
|
|
891
891
|
};
|
|
892
892
|
setConfig: (value: "angle" | "angle-egl" | "egl" | "swangle" | "swiftshader" | "vulkan" | null) => void;
|
|
893
893
|
id: "gl";
|
|
894
|
+
}, gopSizeOption: {
|
|
895
|
+
name: string;
|
|
896
|
+
cliFlag: "gop";
|
|
897
|
+
description: () => import("react/jsx-runtime").JSX.Element;
|
|
898
|
+
ssrName: string;
|
|
899
|
+
docLink: string;
|
|
900
|
+
type: number | null;
|
|
901
|
+
getValue: ({ commandLine }: {
|
|
902
|
+
commandLine: Record<string, unknown>;
|
|
903
|
+
}) => {
|
|
904
|
+
value: number | null;
|
|
905
|
+
source: string;
|
|
906
|
+
};
|
|
907
|
+
setConfig: (value: number | null) => void;
|
|
908
|
+
id: "gop";
|
|
894
909
|
}, runsOption: {
|
|
895
910
|
name: string;
|
|
896
911
|
cliFlag: "runs";
|
|
@@ -1118,6 +1133,7 @@ export type CommandLineOptions = {
|
|
|
1118
1133
|
[audioCodecOption.cliFlag]: AudioCodec;
|
|
1119
1134
|
[publicPathOption.cliFlag]: string;
|
|
1120
1135
|
[crfOption.cliFlag]: TypeOfOption<typeof crfOption>;
|
|
1136
|
+
[gopSizeOption.cliFlag]: TypeOfOption<typeof gopSizeOption>;
|
|
1121
1137
|
output: string | undefined;
|
|
1122
1138
|
[overwriteOption.cliFlag]: TypeOfOption<typeof overwriteOption>;
|
|
1123
1139
|
png: boolean;
|
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 { 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, 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;
|
|
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, imageSequencePatternOption, scaleOption, overwriteOption, crfOption, logLevelOption, videoCodecOption, stillFrameOption, imageSequenceOption, versionFlagOption, bundleCacheOption, envFileOption, glOption, gopSizeOption, 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,
|
|
@@ -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, keyboardShortcutsEnabled, shouldCache, sampleRate, }: {
|
|
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, gopSize, 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, keyboardShortcutsEnabled, shouldCache, sampleRate, }: {
|
|
4
4
|
remotionRoot: string;
|
|
5
5
|
fullEntryPoint: string;
|
|
6
6
|
entryPointReason: string;
|
|
@@ -32,6 +32,7 @@ export declare const renderVideoFlow: ({ remotionRoot, fullEntryPoint, indent, l
|
|
|
32
32
|
onProgress: JobProgressCallback;
|
|
33
33
|
addCleanupCallback: (label: string, cb: () => void) => void;
|
|
34
34
|
crf: Crf | null;
|
|
35
|
+
gopSize: number | null;
|
|
35
36
|
cancelSignal: CancelSignal | null;
|
|
36
37
|
uiCodec: "aac" | "av1" | "gif" | "h264" | "h264-mkv" | "h264-ts" | "h265" | "mp3" | "prores" | "vp8" | "vp9" | "wav" | null;
|
|
37
38
|
uiImageFormat: "jpeg" | "none" | "png" | null;
|
|
@@ -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, keyboardShortcutsEnabled, shouldCache, sampleRate, }) => {
|
|
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, gopSize, 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, keyboardShortcutsEnabled, shouldCache, sampleRate, }) => {
|
|
66
66
|
var _a;
|
|
67
67
|
renderer_1.RenderInternals.validateConcurrency({
|
|
68
68
|
value: concurrency,
|
|
@@ -444,6 +444,7 @@ const renderVideoFlow = async ({ remotionRoot, fullEntryPoint, indent, logLevel,
|
|
|
444
444
|
durationInFrames: durationInFrames !== null && durationInFrames !== void 0 ? durationInFrames : config.durationInFrames,
|
|
445
445
|
},
|
|
446
446
|
crf: crf !== null && crf !== void 0 ? crf : null,
|
|
447
|
+
gopSize,
|
|
447
448
|
envVariables,
|
|
448
449
|
frameRange,
|
|
449
450
|
serializedInputPropsWithCustomSchema,
|
|
@@ -72,6 +72,7 @@ const processVideoJob = async ({ job, remotionRoot, entryPoint, onProgress, addC
|
|
|
72
72
|
uiImageFormat: job.imageFormat,
|
|
73
73
|
cancelSignal: job.cancelToken.cancelSignal,
|
|
74
74
|
crf: job.type === 'video' ? job.crf : null,
|
|
75
|
+
gopSize: job.type === 'video' ? job.gopSize : null,
|
|
75
76
|
ffmpegOverride,
|
|
76
77
|
audioBitrate: job.type === 'video' ? job.audioBitrate : null,
|
|
77
78
|
muted: job.type === 'video' ? job.muted : true,
|
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, keyboardShortcutsOption, rspackOption, pixelFormatOption, browserExecutableOption, everyNthFrameOption, proResProfileOption, userAgentOption, disableWebSecurityOption, ignoreCertificateErrorsOption, concurrencyOption, overrideHeightOption, overrideWidthOption, overrideFpsOption, overrideDurationOption, bundleCacheOption, sampleRateOption, } = client_1.BrowserSafeApis.options;
|
|
14
|
+
const { x264Option, audioBitrateOption, offthreadVideoCacheSizeInBytesOption, scaleOption, crfOption, gopSizeOption, 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, 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) {
|
|
@@ -92,6 +92,9 @@ const render = async (remotionRoot, args, logLevel) => {
|
|
|
92
92
|
const crf = shouldOutputImageSequence
|
|
93
93
|
? null
|
|
94
94
|
: crfOption.getValue({ commandLine: parsed_cli_1.parsedCli }).value;
|
|
95
|
+
const gopSize = shouldOutputImageSequence
|
|
96
|
+
? null
|
|
97
|
+
: gopSizeOption.getValue({ commandLine: parsed_cli_1.parsedCli }).value;
|
|
95
98
|
const enableMultiProcessOnLinux = enableMultiprocessOnLinuxOption.getValue({
|
|
96
99
|
commandLine: parsed_cli_1.parsedCli,
|
|
97
100
|
}).value;
|
|
@@ -204,6 +207,7 @@ const render = async (remotionRoot, args, logLevel) => {
|
|
|
204
207
|
uiImageFormat: null,
|
|
205
208
|
cancelSignal: null,
|
|
206
209
|
crf,
|
|
210
|
+
gopSize,
|
|
207
211
|
ffmpegOverride,
|
|
208
212
|
audioBitrate,
|
|
209
213
|
muted,
|
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.466",
|
|
7
7
|
"description": "Control Remotion features using the `npx remotion` command",
|
|
8
8
|
"main": "dist/index.js",
|
|
9
9
|
"bin": {
|
|
@@ -36,17 +36,17 @@
|
|
|
36
36
|
"author": "Jonny Burger <jonny@remotion.dev>",
|
|
37
37
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
38
38
|
"dependencies": {
|
|
39
|
-
"@remotion/bundler": "4.0.
|
|
40
|
-
"@remotion/media-utils": "4.0.
|
|
41
|
-
"@remotion/player": "4.0.
|
|
42
|
-
"@remotion/renderer": "4.0.
|
|
43
|
-
"@remotion/studio-shared": "4.0.
|
|
44
|
-
"@remotion/studio-server": "4.0.
|
|
45
|
-
"@remotion/studio": "4.0.
|
|
39
|
+
"@remotion/bundler": "4.0.466",
|
|
40
|
+
"@remotion/media-utils": "4.0.466",
|
|
41
|
+
"@remotion/player": "4.0.466",
|
|
42
|
+
"@remotion/renderer": "4.0.466",
|
|
43
|
+
"@remotion/studio-shared": "4.0.466",
|
|
44
|
+
"@remotion/studio-server": "4.0.466",
|
|
45
|
+
"@remotion/studio": "4.0.466",
|
|
46
46
|
"dotenv": "17.3.1",
|
|
47
47
|
"minimist": "1.2.6",
|
|
48
48
|
"prompts": "2.4.2",
|
|
49
|
-
"remotion": "4.0.
|
|
49
|
+
"remotion": "4.0.466"
|
|
50
50
|
},
|
|
51
51
|
"peerDependencies": {
|
|
52
52
|
"react": ">=16.8.0",
|
|
@@ -57,14 +57,14 @@
|
|
|
57
57
|
"@types/prompts": "2.4.9",
|
|
58
58
|
"@types/prettier": "2.7.2",
|
|
59
59
|
"@types/node": "20.12.14",
|
|
60
|
-
"@remotion/zod-types": "4.0.
|
|
61
|
-
"@remotion/tailwind-v4": "4.0.
|
|
62
|
-
"@remotion/enable-scss": "4.0.
|
|
63
|
-
"@remotion/skia": "4.0.
|
|
60
|
+
"@remotion/zod-types": "4.0.466",
|
|
61
|
+
"@remotion/tailwind-v4": "4.0.466",
|
|
62
|
+
"@remotion/enable-scss": "4.0.466",
|
|
63
|
+
"@remotion/skia": "4.0.466",
|
|
64
64
|
"react": "19.2.3",
|
|
65
65
|
"react-dom": "19.2.3",
|
|
66
66
|
"zod": "4.3.6",
|
|
67
|
-
"@remotion/eslint-config-internal": "4.0.
|
|
67
|
+
"@remotion/eslint-config-internal": "4.0.466",
|
|
68
68
|
"eslint": "9.19.0",
|
|
69
69
|
"@typescript/native-preview": "7.0.0-dev.20260217.1"
|
|
70
70
|
},
|