@remotion/cli 4.0.226 → 4.0.228

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, metadataOption, } = 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, hardwareAccelerationOption, } = client_1.BrowserSafeApis.options;
26
26
  const getValidConcurrency = (cliConcurrency) => {
27
27
  const { concurrencies } = parsed_cli_1.parsedCli;
28
28
  if (!concurrencies) {
@@ -339,6 +339,9 @@ const benchmarkCommand = async (remotionRoot, args, logLevel) => {
339
339
  onBrowserDownload,
340
340
  onArtifact: () => undefined,
341
341
  metadata,
342
+ hardwareAcceleration: hardwareAccelerationOption.getValue({
343
+ commandLine: parsed_cli_1.parsedCli,
344
+ }).value,
342
345
  }, (run, progress) => {
343
346
  benchmarkProgress.update(makeBenchmarkProgressBar({
344
347
  totalRuns: runs,
@@ -1,5 +1,6 @@
1
1
  import type { WebpackConfiguration } from '@remotion/bundler';
2
2
  import type { BrowserExecutable, CodecOrUndefined, ColorSpace, Crf, DeleteAfter, FrameRange, NumberOfGifLoops, StillImageFormat, VideoImageFormat } from '@remotion/renderer';
3
+ import type { HardwareAccelerationOption } from '@remotion/renderer/client';
3
4
  import type { Concurrency } from './concurrency';
4
5
  import type { WebpackOverrideFn } from './override-webpack';
5
6
  export type { Concurrency, WebpackConfiguration, WebpackOverrideFn };
@@ -315,7 +316,14 @@ type FlatConfig = RemotionConfigObject & RemotionBundlingOptions & {
315
316
  * 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
317
  */
317
318
  setBufferStateDelayInMilliseconds: (delay: number | null) => void;
319
+ /**
320
+ * Metadata to be embedded into the output video file.
321
+ */
318
322
  setMetadata: (metadata: Record<string, string>) => void;
323
+ /**
324
+ *
325
+ */
326
+ setHardwareAcceleration: (hardwareAccelerationOption: HardwareAccelerationOption) => void;
319
327
  /**
320
328
  * @deprecated 'The config format has changed. Change `Config.Bundling.*()` calls to `Config.*()` in your config file.'
321
329
  */
@@ -42,7 +42,7 @@ const user_agent_1 = require("./user-agent");
42
42
  const webpack_caching_2 = require("./webpack-caching");
43
43
  const webpack_poll_1 = require("./webpack-poll");
44
44
  const width_1 = require("./width");
45
- const { offthreadVideoCacheSizeInBytesOption, x264Option, audioBitrateOption, videoBitrateOption, scaleOption, crfOption, jpegQualityOption, enforceAudioOption, overwriteOption, mutedOption, videoCodecOption, colorSpaceOption, deleteAfterOption, folderExpiryOption, enableMultiprocessOnLinuxOption, glOption, headlessOption, numberOfGifLoopsOption, beepOnFinishOption, encodingMaxRateOption, encodingBufferSizeOption, reproOption, enableLambdaInsights, logLevelOption, delayRenderTimeoutInMillisecondsOption, publicDirOption, binariesDirectoryOption, preferLosslessOption, forSeamlessAacConcatenationOption, audioCodecOption, publicPathOption, } = client_1.BrowserSafeApis.options;
45
+ const { offthreadVideoCacheSizeInBytesOption, x264Option, audioBitrateOption, videoBitrateOption, scaleOption, crfOption, jpegQualityOption, enforceAudioOption, overwriteOption, mutedOption, videoCodecOption, colorSpaceOption, deleteAfterOption, folderExpiryOption, enableMultiprocessOnLinuxOption, glOption, headlessOption, numberOfGifLoopsOption, beepOnFinishOption, encodingMaxRateOption, encodingBufferSizeOption, reproOption, enableLambdaInsights, logLevelOption, delayRenderTimeoutInMillisecondsOption, publicDirOption, binariesDirectoryOption, preferLosslessOption, forSeamlessAacConcatenationOption, audioCodecOption, publicPathOption, hardwareAccelerationOption, } = client_1.BrowserSafeApis.options;
46
46
  exports.Config = {
47
47
  get Bundling() {
48
48
  throw new Error('The config format has changed. Change `Config.Bundling.*()` calls to `Config.*()` in your config file.');
@@ -132,6 +132,7 @@ exports.Config = {
132
132
  setBinariesDirectory: binariesDirectoryOption.setConfig,
133
133
  setPreferLosslessAudio: preferLosslessOption.setConfig,
134
134
  setPublicPath: publicPathOption.setConfig,
135
+ setHardwareAcceleration: hardwareAccelerationOption.setConfig,
135
136
  };
136
137
  exports.ConfigInternals = {
137
138
  getRange: frame_range_1.getRange,
@@ -87,7 +87,7 @@ const getGifRef = () => {
87
87
  try {
88
88
  return (0, child_process_1.execSync)('git rev-parse --abbrev-ref HEAD').toString('utf-8').trim();
89
89
  }
90
- catch (err) {
90
+ catch (_a) {
91
91
  return null;
92
92
  }
93
93
  };
@@ -23,7 +23,7 @@ const getInputProps = (onUpdate, logLevel) => {
23
23
  onUpdate(JSON.parse(node_fs_1.default.readFileSync(jsonFile, 'utf-8')));
24
24
  log_1.Log.info({ indent: false, logLevel }, `Updated input props from ${jsonFile}.`);
25
25
  }
26
- catch (err) {
26
+ catch (_a) {
27
27
  log_1.Log.error({ indent: false, logLevel }, `${jsonFile} contains invalid JSON. Did not apply new input props.`);
28
28
  }
29
29
  });
@@ -32,7 +32,7 @@ const getInputProps = (onUpdate, logLevel) => {
32
32
  }
33
33
  return JSON.parse(parsed_cli_1.parsedCli.props);
34
34
  }
35
- catch (err) {
35
+ catch (_a) {
36
36
  log_1.Log.error({ indent: false, logLevel }, 'You passed --props but it was neither valid JSON nor a file path to a valid JSON file. Provided value: ' +
37
37
  parsed_cli_1.parsedCli.props);
38
38
  log_1.Log.info({ indent: false, logLevel }, 'Got the following value:', parsed_cli_1.parsedCli.props);
@@ -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, scaleOption, jpegQualityOption, videoBitrateOption, enforceAudioOption, mutedOption, colorSpaceOption, enableMultiprocessOnLinuxOption, glOption, numberOfGifLoopsOption, beepOnFinishOption, encodingMaxRateOption, encodingBufferSizeOption, reproOption, logLevelOption, delayRenderTimeoutInMillisecondsOption, headlessOption, forSeamlessAacConcatenationOption, audioCodecOption, } = client_1.BrowserSafeApis.options;
8
+ const { x264Option, audioBitrateOption, offthreadVideoCacheSizeInBytesOption, scaleOption, jpegQualityOption, videoBitrateOption, enforceAudioOption, mutedOption, colorSpaceOption, enableMultiprocessOnLinuxOption, glOption, numberOfGifLoopsOption, beepOnFinishOption, encodingMaxRateOption, encodingBufferSizeOption, reproOption, logLevelOption, delayRenderTimeoutInMillisecondsOption, headlessOption, forSeamlessAacConcatenationOption, audioCodecOption, hardwareAccelerationOption, } = client_1.BrowserSafeApis.options;
9
9
  const getRenderDefaults = () => {
10
10
  var _a;
11
11
  const defaultJpegQuality = jpegQualityOption.getValue({
@@ -73,6 +73,9 @@ const getRenderDefaults = () => {
73
73
  const audioCodec = audioCodecOption.getValue({
74
74
  commandLine: parsed_cli_1.parsedCli,
75
75
  }).value;
76
+ const hardwareAcceleration = hardwareAccelerationOption.getValue({
77
+ commandLine: parsed_cli_1.parsedCli,
78
+ }).value;
76
79
  const everyNthFrame = config_1.ConfigInternals.getEveryNthFrame();
77
80
  const stillImageFormat = config_1.ConfigInternals.getUserPreferredStillImageFormat();
78
81
  const videoImageFormat = config_1.ConfigInternals.getUserPreferredVideoImageFormat();
@@ -117,6 +120,7 @@ const getRenderDefaults = () => {
117
120
  beepOnFinish,
118
121
  forSeamlessAacConcatenation,
119
122
  metadata,
123
+ hardwareAcceleration,
120
124
  };
121
125
  };
122
126
  exports.getRenderDefaults = getRenderDefaults;
@@ -55,7 +55,6 @@ function supportsHyperlink() {
55
55
  case 'WezTerm':
56
56
  return version.major >= 20200620 ? 'Click' : false;
57
57
  case 'vscode':
58
- // eslint-disable-next-line no-mixed-operators
59
58
  return version.major > 1 ||
60
59
  (version.major === 1 && version.minor >= 72)
61
60
  ? process.platform === 'darwin'
package/dist/index.d.ts CHANGED
@@ -62,12 +62,12 @@ export declare const CliInternals: {
62
62
  Log: {
63
63
  verbose: (options: import("@remotion/renderer/dist/logger").LogOptions & {
64
64
  tag?: string;
65
- }, ...args: Parameters<typeof console.log>) => void;
66
- info: (options: import("@remotion/renderer/dist/logger").LogOptions, ...args: Parameters<typeof console.log>) => void;
67
- warn: (options: import("@remotion/renderer/dist/logger").LogOptions, ...args: Parameters<typeof console.log>) => void;
65
+ }, ...args: Parameters<typeof console.log>) => boolean | void;
66
+ info: (options: import("@remotion/renderer/dist/logger").LogOptions, ...args: Parameters<typeof console.log>) => boolean | void;
67
+ warn: (options: import("@remotion/renderer/dist/logger").LogOptions, ...args: Parameters<typeof console.log>) => boolean | void;
68
68
  error: (options: import("@remotion/renderer/dist/logger").LogOptions & {
69
69
  tag?: string;
70
- }, ...args: Parameters<typeof console.log>) => void;
70
+ }, ...args: Parameters<typeof console.log>) => boolean | void;
71
71
  };
72
72
  getCliOptions: (options: {
73
73
  isStill: boolean;
package/dist/log.d.ts CHANGED
@@ -1,10 +1,10 @@
1
1
  export declare const Log: {
2
2
  verbose: (options: import("@remotion/renderer/dist/logger").LogOptions & {
3
3
  tag?: string;
4
- }, ...args: Parameters<typeof console.log>) => void;
5
- info: (options: import("@remotion/renderer/dist/logger").LogOptions, ...args: Parameters<typeof console.log>) => void;
6
- warn: (options: import("@remotion/renderer/dist/logger").LogOptions, ...args: Parameters<typeof console.log>) => void;
4
+ }, ...args: Parameters<typeof console.log>) => boolean | void;
5
+ info: (options: import("@remotion/renderer/dist/logger").LogOptions, ...args: Parameters<typeof console.log>) => boolean | void;
6
+ warn: (options: import("@remotion/renderer/dist/logger").LogOptions, ...args: Parameters<typeof console.log>) => boolean | void;
7
7
  error: (options: import("@remotion/renderer/dist/logger").LogOptions & {
8
8
  tag?: string;
9
- }, ...args: Parameters<typeof console.log>) => void;
9
+ }, ...args: Parameters<typeof console.log>) => boolean | void;
10
10
  };
package/dist/log.js CHANGED
@@ -1,6 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Log = void 0;
4
- /* eslint-disable no-console */
5
4
  const renderer_1 = require("@remotion/renderer");
6
5
  exports.Log = renderer_1.RenderInternals.Log;
@@ -1,6 +1,7 @@
1
1
  import type { AudioCodec, Browser, BrowserExecutable, CancelSignal, ChromiumOptions, Codec, ColorSpace, Crf, FfmpegOverrideFn, FrameRange, LogLevel, NumberOfGifLoops, PixelFormat, ProResProfile, VideoImageFormat, X264Preset } from '@remotion/renderer';
2
+ import type { HardwareAccelerationOption } from '@remotion/renderer/client';
2
3
  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, metadata, }: {
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, binariesDirectory, forSeamlessAacConcatenation, separateAudioTo, publicPath, metadata, hardwareAcceleration, }: {
4
5
  remotionRoot: string;
5
6
  fullEntryPoint: string;
6
7
  entryPointReason: string;
@@ -54,4 +55,5 @@ export declare const renderVideoFlow: ({ remotionRoot, fullEntryPoint, indent, l
54
55
  separateAudioTo: string | null;
55
56
  publicPath: string | null;
56
57
  metadata: Record<string, string> | null;
58
+ hardwareAcceleration: HardwareAccelerationOption;
57
59
  }) => 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, metadata, }) => {
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, hardwareAcceleration, }) => {
55
55
  var _a;
56
56
  const isVerbose = renderer_1.RenderInternals.isEqualOrBelowLogLevel(logLevel, 'verbose');
57
57
  (0, progress_bar_1.printFact)('verbose')({
@@ -415,6 +415,7 @@ const renderVideoFlow = async ({ remotionRoot, fullEntryPoint, indent, logLevel,
415
415
  onBrowserDownload,
416
416
  onArtifact,
417
417
  metadata: metadata !== null && metadata !== void 0 ? metadata : null,
418
+ hardwareAcceleration,
418
419
  });
419
420
  if (!updatesDontOverwrite) {
420
421
  updateRenderProgress({ newline: true, printToConsole: true });
@@ -76,6 +76,7 @@ const processVideoJob = async ({ job, remotionRoot, entryPoint, onProgress, addC
76
76
  separateAudioTo: job.type === 'video' ? job.separateAudioTo : null,
77
77
  publicPath: null,
78
78
  metadata: job.metadata,
79
+ hardwareAcceleration: job.type === 'video' ? job.hardwareAcceleration : 'disable',
79
80
  });
80
81
  };
81
82
  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, metadataOption, } = 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, hardwareAccelerationOption, } = 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) {
@@ -98,6 +98,9 @@ const render = async (remotionRoot, args, logLevel) => {
98
98
  };
99
99
  const audioCodec = audioCodecOption.getValue({ commandLine: parsed_cli_1.parsedCli }).value;
100
100
  const publicDir = publicDirOption.getValue({ commandLine: parsed_cli_1.parsedCli }).value;
101
+ const hardwareAcceleration = hardwareAccelerationOption.getValue({
102
+ commandLine: parsed_cli_1.parsedCli,
103
+ }).value;
101
104
  await (0, render_1.renderVideoFlow)({
102
105
  fullEntryPoint,
103
106
  remotionRoot,
@@ -158,6 +161,7 @@ const render = async (remotionRoot, args, logLevel) => {
158
161
  separateAudioTo,
159
162
  publicPath,
160
163
  metadata,
164
+ hardwareAcceleration,
161
165
  });
162
166
  };
163
167
  exports.render = render;
package/dist/versions.js CHANGED
@@ -19,7 +19,7 @@ const getVersion = async (remotionRoot, p) => {
19
19
  const packageJson = JSON.parse(file);
20
20
  return { version: packageJson.version, path: remotionPkgJson };
21
21
  }
22
- catch (err) {
22
+ catch (_a) {
23
23
  return null;
24
24
  }
25
25
  };
@@ -0,0 +1,43 @@
1
+ import {remotionFlatConfig} from '@remotion/eslint-config-internal';
2
+
3
+ const config = remotionFlatConfig({react: true});
4
+
5
+ export default {
6
+ ...config,
7
+ rules: {
8
+ ...config.rules,
9
+ 'no-console': 'error',
10
+ 'no-negated-condition': 'off',
11
+ 'no-restricted-imports': [
12
+ 'error',
13
+ {
14
+ patterns: [
15
+ '@remotion/*/src/*',
16
+ '@remotion/*/src',
17
+ 'remotion/src/*',
18
+ '@remotion/*/dist/*',
19
+ '@remotion/*/dist',
20
+ 'remotion/dist/*',
21
+ ],
22
+ },
23
+ ],
24
+ '@typescript-eslint/no-use-before-define': 'off',
25
+ '@typescript-eslint/no-restricted-imports': [
26
+ 'error',
27
+ {
28
+ paths: [
29
+ {
30
+ name: 'zod',
31
+ message: 'Can only import zod as a type',
32
+ allowTypeImports: true,
33
+ },
34
+ {
35
+ name: '@remotion/zod-types',
36
+ message: 'Can only import @remotion/zod-types as a type',
37
+ allowTypeImports: true,
38
+ },
39
+ ],
40
+ },
41
+ ],
42
+ },
43
+ };
package/package.json CHANGED
@@ -3,13 +3,14 @@
3
3
  "url": "https://github.com/remotion-dev/remotion/tree/main/packages/cli"
4
4
  },
5
5
  "name": "@remotion/cli",
6
- "version": "4.0.226",
6
+ "version": "4.0.228",
7
7
  "description": "Control Remotion features using the `npx remotion` command",
8
8
  "main": "dist/index.js",
9
9
  "sideEffects": false,
10
10
  "bin": {
11
11
  "remotion": "remotion-cli.js",
12
- "remotionb": "remotionb-cli.js"
12
+ "remotionb": "remotionb-cli.js",
13
+ "remotiond": "remotiond-cli.js"
13
14
  },
14
15
  "bugs": {
15
16
  "url": "https://github.com/remotion-dev/remotion/issues"
@@ -32,14 +33,14 @@
32
33
  "dotenv": "9.0.2",
33
34
  "minimist": "1.2.6",
34
35
  "prompts": "2.4.2",
35
- "@remotion/media-utils": "4.0.226",
36
- "@remotion/bundler": "4.0.226",
37
- "@remotion/player": "4.0.226",
38
- "@remotion/renderer": "4.0.226",
39
- "@remotion/studio-server": "4.0.226",
40
- "@remotion/studio": "4.0.226",
41
- "remotion": "4.0.226",
42
- "@remotion/studio-shared": "4.0.226"
36
+ "@remotion/bundler": "4.0.228",
37
+ "@remotion/media-utils": "4.0.228",
38
+ "@remotion/studio-shared": "4.0.228",
39
+ "@remotion/renderer": "4.0.228",
40
+ "@remotion/studio-server": "4.0.228",
41
+ "remotion": "4.0.228",
42
+ "@remotion/player": "4.0.228",
43
+ "@remotion/studio": "4.0.228"
43
44
  },
44
45
  "peerDependencies": {
45
46
  "react": ">=16.8.0",
@@ -52,10 +53,12 @@
52
53
  "react": "18.3.1",
53
54
  "react-dom": "18.3.1",
54
55
  "zod": "3.22.3",
55
- "@remotion/zod-types": "4.0.226",
56
- "@remotion/enable-scss": "4.0.226",
57
- "@remotion/tailwind": "4.0.226",
58
- "@remotion/skia": "4.0.226"
56
+ "eslint": "9.14.0",
57
+ "@remotion/zod-types": "4.0.228",
58
+ "@remotion/tailwind": "4.0.228",
59
+ "@remotion/enable-scss": "4.0.228",
60
+ "@remotion/skia": "4.0.228",
61
+ "@remotion/eslint-config-internal": "4.0.228"
59
62
  },
60
63
  "keywords": [
61
64
  "remotion",
@@ -70,7 +73,8 @@
70
73
  "homepage": "https://www.remotion.dev/docs/cli",
71
74
  "scripts": {
72
75
  "formatting": "prettier src --check",
73
- "lint": "eslint src --ext ts,tsx",
74
- "test": "bun test src"
76
+ "lint": "eslint src",
77
+ "test": "bun test src",
78
+ "make": "tsc -d"
75
79
  }
76
80
  }
@@ -0,0 +1,11 @@
1
+ #!/usr/bin/env deno --allow-env --allow-read --allow-write --allow-net --allow-run --allow-sys
2
+ const {cli} = require('./dist/index');
3
+
4
+ // Just like "remotion", but it uses Bun
5
+ cli()
6
+ .then(() => process.exit(0))
7
+ .catch((err) => {
8
+ // eslint-disable-next-line no-console
9
+ console.error(err);
10
+ process.exit(1);
11
+ });