@remotion/cli 4.0.215 → 4.0.217

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
@@ -22,7 +22,7 @@ const should_use_non_overlaying_logger_1 = require("./should-use-non-overlaying-
22
22
  const show_compositions_picker_1 = require("./show-compositions-picker");
23
23
  const truthy_1 = require("./truthy");
24
24
  const DEFAULT_RUNS = 3;
25
- const { audioBitrateOption, x264Option, offthreadVideoCacheSizeInBytesOption, scaleOption, crfOption, jpegQualityOption, videoBitrateOption, enforceAudioOption, mutedOption, videoCodecOption, colorSpaceOption, enableMultiprocessOnLinuxOption, glOption, numberOfGifLoopsOption, encodingMaxRateOption, encodingBufferSizeOption, delayRenderTimeoutInMillisecondsOption, headlessOption, overwriteOption, binariesDirectoryOption, forSeamlessAacConcatenationOption, publicPathOption, publicDirOption, } = client_1.BrowserSafeApis.options;
25
+ const { audioBitrateOption, x264Option, offthreadVideoCacheSizeInBytesOption, scaleOption, crfOption, jpegQualityOption, videoBitrateOption, enforceAudioOption, mutedOption, videoCodecOption, colorSpaceOption, enableMultiprocessOnLinuxOption, glOption, numberOfGifLoopsOption, encodingMaxRateOption, encodingBufferSizeOption, delayRenderTimeoutInMillisecondsOption, headlessOption, overwriteOption, binariesDirectoryOption, forSeamlessAacConcatenationOption, publicPathOption, publicDirOption, metadataOption, } = client_1.BrowserSafeApis.options;
26
26
  const getValidConcurrency = (cliConcurrency) => {
27
27
  const { concurrencies } = parsed_cli_1.parsedCli;
28
28
  if (!concurrencies) {
@@ -245,6 +245,7 @@ const benchmarkCommand = async (remotionRoot, args, logLevel) => {
245
245
  const overwrite = overwriteOption.getValue({
246
246
  commandLine: parsed_cli_1.parsedCli,
247
247
  }, true).value;
248
+ const metadata = metadataOption.getValue({ commandLine: parsed_cli_1.parsedCli }).value;
248
249
  for (const composition of compositions) {
249
250
  const { value: videoCodec, source: codecReason } = videoCodecOption.getValue({
250
251
  commandLine: parsed_cli_1.parsedCli,
@@ -337,6 +338,7 @@ const benchmarkCommand = async (remotionRoot, args, logLevel) => {
337
338
  compositionStart: 0,
338
339
  onBrowserDownload,
339
340
  onArtifact: () => undefined,
341
+ metadata,
340
342
  }, (run, progress) => {
341
343
  benchmarkProgress.update(makeBenchmarkProgressBar({
342
344
  totalRuns: runs,
@@ -315,6 +315,7 @@ type FlatConfig = RemotionConfigObject & RemotionBundlingOptions & {
315
315
  * Set the amount of milliseconds after which the Player in the Studio will display a buffering UI after the Player has entered a buffer state.
316
316
  */
317
317
  setBufferStateDelayInMilliseconds: (delay: number | null) => void;
318
+ setMetadata: (metadata: Record<string, string>) => void;
318
319
  /**
319
320
  * @deprecated 'The config format has changed. Change `Config.Bundling.*()` calls to `Config.*()` in your config file.'
320
321
  */
@@ -370,6 +371,7 @@ export declare const ConfigInternals: {
370
371
  getFfmpegOverrideFunction: () => import("@remotion/renderer").FfmpegOverrideFn;
371
372
  getHeight: () => number | null;
372
373
  getWidth: () => number | null;
374
+ getMetadata: () => Record<string, string>;
373
375
  getEntryPoint: () => string | null;
374
376
  getWebpackPolling: () => number | null;
375
377
  getShouldOpenBrowser: () => boolean;
@@ -30,6 +30,7 @@ const frame_range_2 = require("./frame-range");
30
30
  const height_1 = require("./height");
31
31
  const image_sequence_2 = require("./image-sequence");
32
32
  const keyboard_shortcuts_1 = require("./keyboard-shortcuts");
33
+ const metadata_1 = require("./metadata");
33
34
  const number_of_shared_audio_tags_1 = require("./number-of-shared-audio-tags");
34
35
  const open_browser_1 = require("./open-browser");
35
36
  const output_location_2 = require("./output-location");
@@ -95,6 +96,7 @@ exports.Config = {
95
96
  setJpegQuality: jpegQualityOption.setConfig,
96
97
  setStillImageFormat: image_format_1.setStillImageFormat,
97
98
  setVideoImageFormat: image_format_1.setVideoImageFormat,
99
+ setMetadata: metadata_1.setMetadata,
98
100
  setEncodingMaxRate: encodingMaxRateOption.setConfig,
99
101
  setEncodingBufferSize: encodingBufferSizeOption.setConfig,
100
102
  setFrameRange: frame_range_2.setFrameRange,
@@ -160,6 +162,7 @@ exports.ConfigInternals = {
160
162
  getFfmpegOverrideFunction: ffmpeg_override_1.getFfmpegOverrideFunction,
161
163
  getHeight: height_1.getHeight,
162
164
  getWidth: width_1.getWidth,
165
+ getMetadata: metadata_1.getMetadata,
163
166
  getEntryPoint: entry_point_1.getEntryPoint,
164
167
  getWebpackPolling: webpack_poll_1.getWebpackPolling,
165
168
  getShouldOpenBrowser: open_browser_1.getShouldOpenBrowser,
@@ -0,0 +1,2 @@
1
+ export declare const setMetadata: (metadata: Record<string, string>) => void;
2
+ export declare const getMetadata: () => Record<string, string>;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getMetadata = exports.setMetadata = void 0;
4
+ let specifiedMetadata;
5
+ const setMetadata = (metadata) => {
6
+ specifiedMetadata = metadata;
7
+ };
8
+ exports.setMetadata = setMetadata;
9
+ const getMetadata = () => {
10
+ return specifiedMetadata;
11
+ };
12
+ exports.getMetadata = getMetadata;
package/dist/ffmpeg.d.ts CHANGED
@@ -9,5 +9,5 @@ export declare const dynamicLibEnv: (indent: boolean, logLevel: LogLevel, binari
9
9
  LD_LIBRARY_PATH: string;
10
10
  RUST_BACKTRACE: string;
11
11
  };
12
- export declare const ffmpegCommand: (_root: string, args: string[], logLevel: LogLevel) => never;
13
- export declare const ffprobeCommand: (_root: string, args: string[], logLevel: LogLevel) => never;
12
+ export declare const ffmpegCommand: (args: string[], logLevel: LogLevel) => never;
13
+ export declare const ffprobeCommand: (args: string[], logLevel: LogLevel) => never;
package/dist/ffmpeg.js CHANGED
@@ -32,7 +32,7 @@ const dynamicLibEnv = (indent, logLevel, binariesDirectory) => {
32
32
  };
33
33
  };
34
34
  exports.dynamicLibEnv = dynamicLibEnv;
35
- const ffmpegCommand = (_root, args, logLevel) => {
35
+ const ffmpegCommand = (args, logLevel) => {
36
36
  const { value: binariesDirectory } = client_1.BrowserSafeApis.options.binariesDirectoryOption.getValue({
37
37
  commandLine: parsed_cli_1.parsedCli,
38
38
  });
@@ -46,11 +46,12 @@ const ffmpegCommand = (_root, args, logLevel) => {
46
46
  const done = (0, node_child_process_1.spawnSync)(binary, args, {
47
47
  stdio: 'inherit',
48
48
  env: (0, exports.dynamicLibEnv)(false, logLevel, binariesDirectory),
49
+ cwd: process.cwd(),
49
50
  });
50
51
  process.exit(done.status);
51
52
  };
52
53
  exports.ffmpegCommand = ffmpegCommand;
53
- const ffprobeCommand = (_root, args, logLevel) => {
54
+ const ffprobeCommand = (args, logLevel) => {
54
55
  const { value: binariesDirectory } = client_1.BrowserSafeApis.options.binariesDirectoryOption.getValue({
55
56
  commandLine: parsed_cli_1.parsedCli,
56
57
  });
@@ -62,7 +63,7 @@ const ffprobeCommand = (_root, args, logLevel) => {
62
63
  });
63
64
  renderer_1.RenderInternals.makeFileExecutableIfItIsNot(binary);
64
65
  const done = (0, node_child_process_1.spawnSync)(binary, args, {
65
- cwd: node_path_1.default.dirname(binary),
66
+ cwd: process.cwd(),
66
67
  stdio: 'inherit',
67
68
  env: (0, exports.dynamicLibEnv)(false, logLevel, binariesDirectory),
68
69
  });
@@ -79,6 +79,7 @@ const getRenderDefaults = () => {
79
79
  const disableWebSecurity = config_1.ConfigInternals.getChromiumDisableWebSecurity();
80
80
  const ignoreCertificateErrors = config_1.ConfigInternals.getIgnoreCertificateErrors();
81
81
  const userAgent = config_1.ConfigInternals.getChromiumUserAgent();
82
+ const metadata = config_1.ConfigInternals.getMetadata();
82
83
  const maxConcurrency = renderer_1.RenderInternals.getMaxConcurrency();
83
84
  const minConcurrency = renderer_1.RenderInternals.getMinConcurrency();
84
85
  return {
@@ -115,6 +116,7 @@ const getRenderDefaults = () => {
115
116
  numberOfGifLoops,
116
117
  beepOnFinish,
117
118
  forSeamlessAacConcatenation,
119
+ metadata,
118
120
  };
119
121
  };
120
122
  exports.getRenderDefaults = getRenderDefaults;
package/dist/index.js CHANGED
@@ -97,13 +97,13 @@ const cli = async () => {
97
97
  await (0, still_1.still)(remotionRoot, args, logLevel);
98
98
  }
99
99
  else if (command === 'ffmpeg') {
100
- (0, ffmpeg_1.ffmpegCommand)(remotionRoot, process.argv.slice(3), logLevel);
100
+ (0, ffmpeg_1.ffmpegCommand)(process.argv.slice(3), logLevel);
101
101
  }
102
102
  else if (command === 'gpu') {
103
103
  await (0, gpu_1.gpuCommand)(logLevel);
104
104
  }
105
105
  else if (command === 'ffprobe') {
106
- (0, ffmpeg_1.ffprobeCommand)(remotionRoot, process.argv.slice(3), logLevel);
106
+ (0, ffmpeg_1.ffprobeCommand)(process.argv.slice(3), logLevel);
107
107
  }
108
108
  else if (command === 'upgrade') {
109
109
  await (0, upgrade_1.upgrade)(remotionRoot, parsed_cli_1.parsedCli['package-manager'], parsed_cli_1.parsedCli.version, logLevel);
@@ -34,6 +34,8 @@ exports.listOfRemotionPackages = [
34
34
  '@remotion/tailwind',
35
35
  '@remotion/transitions',
36
36
  '@remotion/install-whisper-cpp',
37
+ '@remotion/openai-whisper',
38
+ '@remotion/captions',
37
39
  '@remotion/animation-utils',
38
40
  '@remotion/animated-emoji',
39
41
  '@remotion/media-parser',
@@ -1,6 +1,6 @@
1
1
  import type { AudioCodec, Browser, BrowserExecutable, CancelSignal, ChromiumOptions, Codec, ColorSpace, Crf, FfmpegOverrideFn, FrameRange, LogLevel, NumberOfGifLoops, PixelFormat, ProResProfile, VideoImageFormat, X264Preset } 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, 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, binariesDirectory, forSeamlessAacConcatenation, separateAudioTo, publicPath, }: {
3
+ 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, binariesDirectory, forSeamlessAacConcatenation, separateAudioTo, publicPath, metadata, }: {
4
4
  remotionRoot: string;
5
5
  fullEntryPoint: string;
6
6
  entryPointReason: string;
@@ -53,4 +53,5 @@ export declare const renderVideoFlow: ({ remotionRoot, fullEntryPoint, indent, l
53
53
  forSeamlessAacConcatenation: boolean;
54
54
  separateAudioTo: string | null;
55
55
  publicPath: string | null;
56
+ metadata: Record<string, string> | null;
56
57
  }) => Promise<void>;
@@ -51,7 +51,7 @@ const setup_cache_1 = require("../setup-cache");
51
51
  const should_use_non_overlaying_logger_1 = require("../should-use-non-overlaying-logger");
52
52
  const truthy_1 = require("../truthy");
53
53
  const user_passed_output_location_1 = require("../user-passed-output-location");
54
- 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, binariesDirectory, forSeamlessAacConcatenation, separateAudioTo, publicPath, }) => {
54
+ 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, binariesDirectory, forSeamlessAacConcatenation, separateAudioTo, publicPath, metadata, }) => {
55
55
  var _a;
56
56
  const isVerbose = renderer_1.RenderInternals.isEqualOrBelowLogLevel(logLevel, 'verbose');
57
57
  (0, progress_bar_1.printFact)('verbose')({
@@ -414,6 +414,7 @@ const renderVideoFlow = async ({ remotionRoot, fullEntryPoint, indent, logLevel,
414
414
  compositionStart: 0,
415
415
  onBrowserDownload,
416
416
  onArtifact,
417
+ metadata: metadata !== null && metadata !== void 0 ? metadata : null,
417
418
  });
418
419
  if (!updatesDontOverwrite) {
419
420
  updateRenderProgress({ newline: true, printToConsole: true });
@@ -75,6 +75,7 @@ const processVideoJob = async ({ job, remotionRoot, entryPoint, onProgress, addC
75
75
  forSeamlessAacConcatenation: job.type === 'video' ? job.forSeamlessAacConcatenation : false,
76
76
  separateAudioTo: job.type === 'video' ? job.separateAudioTo : null,
77
77
  publicPath: null,
78
+ metadata: job.metadata,
78
79
  });
79
80
  };
80
81
  exports.processVideoJob = processVideoJob;
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, enableMultiprocessOnLinuxOption, glOption, numberOfGifLoopsOption, encodingMaxRateOption, encodingBufferSizeOption, reproOption, delayRenderTimeoutInMillisecondsOption, headlessOption, overwriteOption, binariesDirectoryOption, forSeamlessAacConcatenationOption, separateAudioOption, audioCodecOption, publicPathOption, publicDirOption, } = client_1.BrowserSafeApis.options;
14
+ const { x264Option, audioBitrateOption, offthreadVideoCacheSizeInBytesOption, scaleOption, crfOption, jpegQualityOption, videoBitrateOption, enforceAudioOption, mutedOption, colorSpaceOption, enableMultiprocessOnLinuxOption, glOption, numberOfGifLoopsOption, encodingMaxRateOption, encodingBufferSizeOption, reproOption, delayRenderTimeoutInMillisecondsOption, headlessOption, overwriteOption, binariesDirectoryOption, forSeamlessAacConcatenationOption, separateAudioOption, audioCodecOption, publicPathOption, publicDirOption, metadataOption, } = 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) {
@@ -86,6 +86,7 @@ const render = async (remotionRoot, args, logLevel) => {
86
86
  const separateAudioTo = separateAudioOption.getValue({
87
87
  commandLine: parsed_cli_1.parsedCli,
88
88
  }).value;
89
+ const metadata = metadataOption.getValue({ commandLine: parsed_cli_1.parsedCli }).value;
89
90
  const publicPath = publicPathOption.getValue({ commandLine: parsed_cli_1.parsedCli }).value;
90
91
  const chromiumOptions = {
91
92
  disableWebSecurity,
@@ -156,6 +157,7 @@ const render = async (remotionRoot, args, logLevel) => {
156
157
  forSeamlessAacConcatenation,
157
158
  separateAudioTo,
158
159
  publicPath,
160
+ metadata,
159
161
  });
160
162
  };
161
163
  exports.render = render;
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.215",
6
+ "version": "4.0.217",
7
7
  "description": "Control Remotion features using the `npx remotion` command",
8
8
  "main": "dist/index.js",
9
9
  "sideEffects": false,
@@ -32,14 +32,14 @@
32
32
  "dotenv": "9.0.2",
33
33
  "minimist": "1.2.6",
34
34
  "prompts": "2.4.2",
35
- "@remotion/media-utils": "4.0.215",
36
- "@remotion/bundler": "4.0.215",
37
- "@remotion/player": "4.0.215",
38
- "@remotion/renderer": "4.0.215",
39
- "@remotion/studio-shared": "4.0.215",
40
- "@remotion/studio": "4.0.215",
41
- "remotion": "4.0.215",
42
- "@remotion/studio-server": "4.0.215"
35
+ "@remotion/bundler": "4.0.217",
36
+ "@remotion/player": "4.0.217",
37
+ "@remotion/media-utils": "4.0.217",
38
+ "@remotion/renderer": "4.0.217",
39
+ "@remotion/studio-server": "4.0.217",
40
+ "remotion": "4.0.217",
41
+ "@remotion/studio": "4.0.217",
42
+ "@remotion/studio-shared": "4.0.217"
43
43
  },
44
44
  "peerDependencies": {
45
45
  "react": ">=16.8.0",
@@ -52,10 +52,10 @@
52
52
  "react": "18.3.1",
53
53
  "react-dom": "18.3.1",
54
54
  "zod": "3.22.3",
55
- "@remotion/zod-types": "4.0.215",
56
- "@remotion/tailwind": "4.0.215",
57
- "@remotion/skia": "4.0.215",
58
- "@remotion/enable-scss": "4.0.215"
55
+ "@remotion/zod-types": "4.0.217",
56
+ "@remotion/enable-scss": "4.0.217",
57
+ "@remotion/skia": "4.0.217",
58
+ "@remotion/tailwind": "4.0.217"
59
59
  },
60
60
  "keywords": [
61
61
  "remotion",