@remotion/cli 4.0.87 → 4.0.88

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 CHANGED
@@ -243,6 +243,8 @@ const benchmarkCommand = async (remotionRoot, args, logLevel) => {
243
243
  }).serializedString,
244
244
  offthreadVideoCacheSizeInBytes,
245
245
  colorSpace,
246
+ repro: false,
247
+ finishRenderProgress: () => undefined,
246
248
  }, (run, progress) => {
247
249
  benchmarkProgress.update(makeBenchmarkProgressBar({
248
250
  totalRuns: runs,
@@ -273,6 +273,10 @@ declare global {
273
273
  * Whether the Remotion Studio should play a beep sound when a render has finished.
274
274
  */
275
275
  readonly setBeepOnFinish: (beepOnFinish: boolean) => void;
276
+ /**
277
+ * Collect information that you can submit to Remotion if asked for a reproduction.
278
+ */
279
+ readonly setRepro: (enableRepro: boolean) => void;
276
280
  }
277
281
  }
278
282
  type FlatConfig = RemotionConfigObject & RemotionBundlingOptions & {
@@ -346,6 +350,7 @@ export declare const ConfigInternals: {
346
350
  getWebpackCaching: () => boolean;
347
351
  getOutputLocation: () => string | null;
348
352
  getBeepOnFinish: () => boolean;
353
+ getRepro: () => boolean;
349
354
  Logging: typeof Logging;
350
355
  setFrameRangeFromCli: (newFrameRange: string | number) => void;
351
356
  setStillFrame: (frame: number) => void;
@@ -81,6 +81,7 @@ const pixel_format_2 = require("./pixel-format");
81
81
  const preview_server_2 = require("./preview-server");
82
82
  const prores_profile_2 = require("./prores-profile");
83
83
  const public_dir_1 = require("./public-dir");
84
+ const repro_1 = require("./repro");
84
85
  const scale_2 = require("./scale");
85
86
  const timeout_2 = require("./timeout");
86
87
  const user_agent_1 = require("./user-agent");
@@ -167,6 +168,7 @@ exports.Config = {
167
168
  setColorSpace: color_space_1.setColorSpace,
168
169
  setBeepOnFinish: beep_on_finish_1.setBeepOnFinish,
169
170
  setEnableFolderExpiry: enable_folder_expiry_1.setEnableFolderExpiry,
171
+ setRepro: repro_1.setRepro,
170
172
  };
171
173
  exports.ConfigInternals = {
172
174
  getRange: frame_range_1.getRange,
@@ -199,6 +201,7 @@ exports.ConfigInternals = {
199
201
  getWebpackCaching: webpack_caching_1.getWebpackCaching,
200
202
  getOutputLocation: output_location_1.getOutputLocation,
201
203
  getBeepOnFinish: beep_on_finish_1.getBeepOnFinish,
204
+ getRepro: repro_1.getRepro,
202
205
  Logging,
203
206
  setFrameRangeFromCli: frame_range_1.setFrameRangeFromCli,
204
207
  setStillFrame: still_frame_1.setStillFrame,
@@ -0,0 +1,2 @@
1
+ export declare const setRepro: (should: boolean) => void;
2
+ export declare const getRepro: () => boolean;
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getRepro = exports.setRepro = void 0;
4
+ let enableRepro = false;
5
+ const setRepro = (should) => {
6
+ enableRepro = should;
7
+ };
8
+ exports.setRepro = setRepro;
9
+ const getRepro = () => enableRepro;
10
+ exports.getRepro = getRepro;
@@ -40,4 +40,5 @@ export declare const getCliOptions: (options: {
40
40
  offthreadVideoCacheSizeInBytes: number | null;
41
41
  deleteAfter: ("1-day" | "3-days" | "7-days" | "30-days") | null;
42
42
  colorSpace: "default" | "bt709" | "bt2020-ncl";
43
+ repro: boolean;
43
44
  }>;
@@ -141,6 +141,7 @@ const getCliOptions = async (options) => {
141
141
  offthreadVideoCacheSizeInBytes: config_1.ConfigInternals.getOffthreadVideoCacheSizeInBytes(),
142
142
  deleteAfter: config_1.ConfigInternals.getDeleteAfter(),
143
143
  colorSpace: config_1.ConfigInternals.getColorSpace(),
144
+ repro: config_1.ConfigInternals.getRepro(),
144
145
  };
145
146
  };
146
147
  exports.getCliOptions = getCliOptions;
@@ -36,6 +36,7 @@ const getRenderDefaults = () => {
36
36
  const maxConcurrency = renderer_1.RenderInternals.getMaxConcurrency();
37
37
  const minConcurrency = renderer_1.RenderInternals.getMinConcurrency();
38
38
  const multiProcessOnLinux = config_1.ConfigInternals.getChromiumMultiProcessOnLinux();
39
+ const repro = config_1.ConfigInternals.getRepro();
39
40
  return {
40
41
  jpegQuality: defaultJpegQuality !== null && defaultJpegQuality !== void 0 ? defaultJpegQuality : renderer_1.RenderInternals.DEFAULT_JPEG_QUALITY,
41
42
  scale: defaultScale !== null && defaultScale !== void 0 ? defaultScale : 1,
@@ -68,6 +69,7 @@ const getRenderDefaults = () => {
68
69
  multiProcessOnLinux,
69
70
  userAgent,
70
71
  beepOnFinish,
72
+ repro,
71
73
  };
72
74
  };
73
75
  exports.getRenderDefaults = getRenderDefaults;
package/dist/index.d.ts CHANGED
@@ -110,6 +110,7 @@ export declare const CliInternals: {
110
110
  offthreadVideoCacheSizeInBytes: number | null;
111
111
  deleteAfter: ("1-day" | "3-days" | "7-days" | "30-days") | null;
112
112
  colorSpace: "default" | "bt709" | "bt2020-ncl";
113
+ repro: boolean;
113
114
  }>;
114
115
  loadConfig: (remotionRoot: string) => Promise<string | null>;
115
116
  initializeCli: (remotionRoot: string) => Promise<"verbose" | "info" | "warn" | "error">;
@@ -168,6 +169,7 @@ export declare const CliInternals: {
168
169
  browser: string;
169
170
  "browser-args": string;
170
171
  "user-agent": string;
172
+ repro: boolean;
171
173
  "number-of-gif-loops": number;
172
174
  "offthreadvideo-cache-size-in-bytes": number | null;
173
175
  "color-space": "default" | "bt709" | "bt2020-ncl";
@@ -125,6 +125,7 @@ type CommandLineOptions = {
125
125
  [deleteAfterOption.cliFlag]: string | undefined;
126
126
  [folderExpiryOption.cliFlag]: boolean | undefined;
127
127
  [enableMultiprocessOnLinuxOption.cliFlag]: boolean;
128
+ repro: boolean;
128
129
  };
129
130
  export declare const BooleanFlags: string[];
130
131
  export declare const parsedCli: CommandLineOptions & {
@@ -34,11 +34,15 @@ exports.BooleanFlags = [
34
34
  'default-only',
35
35
  'no-open',
36
36
  beepOnFinishOption.cliFlag,
37
+ 'repro',
37
38
  ];
38
39
  exports.parsedCli = (0, minimist_1.default)(process.argv.slice(2), {
39
40
  boolean: exports.BooleanFlags,
40
41
  });
41
42
  const parseCommandLine = () => {
43
+ if (exports.parsedCli.repro) {
44
+ config_1.Config.setRepro(true);
45
+ }
42
46
  if (exports.parsedCli['pixel-format']) {
43
47
  config_1.Config.setPixelFormat(exports.parsedCli['pixel-format']);
44
48
  }
@@ -1,7 +1,7 @@
1
1
  import type { AudioCodec, Browser, BrowserExecutable, CancelSignal, ChromiumOptions, Codec, ColorSpace, Crf, FfmpegOverrideFn, FrameRange, LogLevel, PixelFormat, ProResProfile, VideoImageFormat, X264Preset } from '@remotion/renderer';
2
2
  import type { JobProgressCallback } from '@remotion/studio';
3
3
  import type { Loop } from '../config/number-of-gif-loops';
4
- export declare const renderVideoFlow: ({ remotionRoot, fullEntryPoint, indent, logLevel, browserExecutable, browser, chromiumOptions, scale, shouldOutputImageSequence, publicDir, envVariables, puppeteerTimeout, port, height, width, 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, colorSpace, }: {
4
+ export declare const renderVideoFlow: ({ remotionRoot, fullEntryPoint, indent, logLevel, browserExecutable, browser, chromiumOptions, scale, shouldOutputImageSequence, publicDir, envVariables, puppeteerTimeout, port, height, width, 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, colorSpace, repro, }: {
5
5
  remotionRoot: string;
6
6
  fullEntryPoint: string;
7
7
  entryPointReason: string;
@@ -49,4 +49,5 @@ export declare const renderVideoFlow: ({ remotionRoot, fullEntryPoint, indent, l
49
49
  disallowParallelEncoding: boolean;
50
50
  offthreadVideoCacheSizeInBytes: number | null;
51
51
  colorSpace: ColorSpace;
52
+ repro: boolean;
52
53
  }) => Promise<void>;
@@ -47,7 +47,7 @@ const setup_cache_1 = require("../setup-cache");
47
47
  const should_use_non_overlaying_logger_1 = require("../should-use-non-overlaying-logger");
48
48
  const truthy_1 = require("../truthy");
49
49
  const user_passed_output_location_1 = require("../user-passed-output-location");
50
- const renderVideoFlow = async ({ remotionRoot, fullEntryPoint, indent, logLevel, browserExecutable, browser, chromiumOptions, scale, shouldOutputImageSequence, publicDir, envVariables, puppeteerTimeout, port, height, width, 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, colorSpace, }) => {
50
+ const renderVideoFlow = async ({ remotionRoot, fullEntryPoint, indent, logLevel, browserExecutable, browser, chromiumOptions, scale, shouldOutputImageSequence, publicDir, envVariables, puppeteerTimeout, port, height, width, 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, colorSpace, repro, }) => {
51
51
  var _a;
52
52
  const downloads = [];
53
53
  const browserInstance = renderer_1.RenderInternals.internalOpenBrowser({
@@ -327,8 +327,11 @@ const renderVideoFlow = async ({ remotionRoot, fullEntryPoint, indent, logLevel,
327
327
  }).serializedString,
328
328
  offthreadVideoCacheSizeInBytes,
329
329
  colorSpace,
330
+ repro: repro !== null && repro !== void 0 ? repro : false,
331
+ finishRenderProgress: () => {
332
+ updateRenderProgress({ newline: true, printToConsole: true });
333
+ },
330
334
  });
331
- updateRenderProgress({ newline: true, printToConsole: true });
332
335
  log_1.Log.infoAdvanced({ indent, logLevel }, chalk_1.chalk.blue(`${exists ? '○' : '+'} ${absoluteOutputFile}`));
333
336
  log_1.Log.verbose({ indent, logLevel }, `Slowest frames:`);
334
337
  slowestFrames.forEach(({ frame, time }) => {
@@ -65,6 +65,7 @@ const processVideoJob = async ({ job, remotionRoot, entryPoint, onProgress, addC
65
65
  disallowParallelEncoding: job.type === 'video' ? job.disallowParallelEncoding : false,
66
66
  offthreadVideoCacheSizeInBytes: job.offthreadVideoCacheSizeInBytes,
67
67
  colorSpace: job.type === 'video' ? job.colorSpace : 'default',
68
+ repro: job.repro,
68
69
  });
69
70
  };
70
71
  exports.processVideoJob = processVideoJob;
package/dist/render.js CHANGED
@@ -25,7 +25,7 @@ const render = async (remotionRoot, args, logLevel) => {
25
25
  log_1.Log.error('--frame flag was passed to the `render` command. This flag only works with the `still` command. Did you mean `--frames`? See reference: https://www.remotion.dev/docs/cli/');
26
26
  process.exit(1);
27
27
  }
28
- const { concurrency, frameRange, shouldOutputImageSequence, overwrite, inputProps, envVariables, jpegQuality, browser, browserExecutable, scale, chromiumOptions, everyNthFrame, puppeteerTimeout, publicDir, height, width, crf, ffmpegOverride, audioBitrate, muted, enforceAudioTrack, proResProfile, x264Preset, pixelFormat, videoBitrate, encodingMaxRate, encodingBufferSize, numberOfGifLoops, offthreadVideoCacheSizeInBytes, colorSpace, } = await (0, get_cli_options_1.getCliOptions)({
28
+ const { concurrency, frameRange, shouldOutputImageSequence, overwrite, inputProps, envVariables, jpegQuality, browser, browserExecutable, scale, chromiumOptions, everyNthFrame, puppeteerTimeout, publicDir, height, width, crf, ffmpegOverride, audioBitrate, muted, enforceAudioTrack, proResProfile, x264Preset, pixelFormat, videoBitrate, encodingMaxRate, encodingBufferSize, numberOfGifLoops, offthreadVideoCacheSizeInBytes, colorSpace, repro, } = await (0, get_cli_options_1.getCliOptions)({
29
29
  isLambda: false,
30
30
  type: 'series',
31
31
  remotionRoot,
@@ -86,6 +86,7 @@ const render = async (remotionRoot, args, logLevel) => {
86
86
  disallowParallelEncoding: false,
87
87
  offthreadVideoCacheSizeInBytes,
88
88
  colorSpace,
89
+ repro,
89
90
  });
90
91
  };
91
92
  exports.render = render;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@remotion/cli",
3
- "version": "4.0.87",
3
+ "version": "4.0.88",
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/player": "4.0.87",
35
- "@remotion/bundler": "4.0.87",
36
- "@remotion/studio": "4.0.87",
37
- "remotion": "4.0.87",
38
- "@remotion/renderer": "4.0.87",
39
- "@remotion/media-utils": "4.0.87"
34
+ "@remotion/bundler": "4.0.88",
35
+ "@remotion/media-utils": "4.0.88",
36
+ "@remotion/renderer": "4.0.88",
37
+ "remotion": "4.0.88",
38
+ "@remotion/studio": "4.0.88",
39
+ "@remotion/player": "4.0.88"
40
40
  },
41
41
  "peerDependencies": {
42
42
  "react": ">=16.8.0",
@@ -61,8 +61,8 @@
61
61
  "react-dom": "18.2.0",
62
62
  "vitest": "0.31.1",
63
63
  "zod": "^3.22.3",
64
- "@remotion/tailwind": "4.0.87",
65
- "@remotion/zod-types": "4.0.87"
64
+ "@remotion/zod-types": "4.0.88",
65
+ "@remotion/tailwind": "4.0.88"
66
66
  },
67
67
  "keywords": [
68
68
  "remotion",