@remotion/cli 4.0.0-newpathfunctions.13 → 4.0.0-newpaths.1

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.
Files changed (67) hide show
  1. package/dist/benchmark.js +1 -6
  2. package/dist/compositions.js +1 -6
  3. package/dist/config/log.d.ts +1 -1
  4. package/dist/editor/components/Modals.js +1 -1
  5. package/dist/editor/components/RenderButton.js +29 -8
  6. package/dist/editor/components/RenderModal/CrfSetting.d.ts +2 -2
  7. package/dist/editor/components/RenderModal/CrfSetting.js +11 -24
  8. package/dist/editor/components/RenderModal/EveryNthFrameSetting.d.ts +5 -0
  9. package/dist/editor/components/RenderModal/EveryNthFrameSetting.js +9 -0
  10. package/dist/editor/components/RenderModal/NumberOfLoopsSetting.d.ts +5 -0
  11. package/dist/editor/components/RenderModal/NumberOfLoopsSetting.js +26 -0
  12. package/dist/editor/components/RenderModal/NumberSetting.d.ts +9 -0
  13. package/dist/editor/components/RenderModal/NumberSetting.js +26 -0
  14. package/dist/editor/components/RenderModal/RenderModal.d.ts +19 -5
  15. package/dist/editor/components/RenderModal/RenderModal.js +225 -181
  16. package/dist/editor/components/RenderModal/RenderModalAdvanced.d.ts +11 -0
  17. package/dist/editor/components/RenderModal/RenderModalAdvanced.js +15 -0
  18. package/dist/editor/components/RenderModal/RenderModalAudio.d.ts +13 -0
  19. package/dist/editor/components/RenderModal/RenderModalAudio.js +22 -0
  20. package/dist/editor/components/RenderModal/RenderModalBasic.d.ts +22 -0
  21. package/dist/editor/components/RenderModal/RenderModalBasic.js +70 -0
  22. package/dist/editor/components/RenderModal/RenderModalGeneral.d.ts +0 -0
  23. package/dist/editor/components/RenderModal/RenderModalGeneral.js +1 -0
  24. package/dist/editor/components/RenderModal/RenderModalGif.d.ts +9 -0
  25. package/dist/editor/components/RenderModal/RenderModalGif.js +16 -0
  26. package/dist/editor/components/RenderModal/RenderModalHr.d.ts +2 -0
  27. package/dist/editor/components/RenderModal/RenderModalHr.js +18 -0
  28. package/dist/editor/components/RenderModal/RenderModalPicture.d.ts +28 -0
  29. package/dist/editor/components/RenderModal/RenderModalPicture.js +51 -0
  30. package/dist/editor/components/RenderModal/ScaleSetting.js +2 -18
  31. package/dist/editor/components/RenderModal/human-readable-codec.d.ts +2 -0
  32. package/dist/editor/components/RenderModal/human-readable-codec.js +36 -0
  33. package/dist/editor/components/RenderModal/layout.d.ts +1 -0
  34. package/dist/editor/components/RenderModal/layout.js +8 -2
  35. package/dist/editor/components/RenderQueue/RenderQueueRemoveItem.js +2 -1
  36. package/dist/editor/components/RenderQueue/actions.d.ts +15 -2
  37. package/dist/editor/components/RenderQueue/actions.js +14 -1
  38. package/dist/editor/components/RenderToolbarIcon.js +30 -8
  39. package/dist/editor/components/SegmentedControl.js +1 -1
  40. package/dist/editor/components/SidebarContent.js +2 -1
  41. package/dist/editor/icons/audio.d.ts +2 -0
  42. package/dist/editor/icons/audio.js +6 -0
  43. package/dist/editor/icons/file.d.ts +2 -0
  44. package/dist/editor/icons/file.js +6 -0
  45. package/dist/editor/icons/frame.d.ts +2 -0
  46. package/dist/editor/icons/frame.js +6 -0
  47. package/dist/editor/icons/gear.d.ts +2 -0
  48. package/dist/editor/icons/gear.js +6 -0
  49. package/dist/editor/icons/gif.d.ts +2 -0
  50. package/dist/editor/icons/gif.js +6 -0
  51. package/dist/entry-point.js +49 -6
  52. package/dist/get-cli-options.d.ts +1 -1
  53. package/dist/handle-common-errors.js +2 -1
  54. package/dist/index.d.ts +2 -1
  55. package/dist/index.js +2 -0
  56. package/dist/list-of-remotion-packages.js +1 -0
  57. package/dist/preview-server/render-queue/get-default-video-contexts.d.ts +1 -1
  58. package/dist/preview-server/render-queue/job.d.ts +27 -1
  59. package/dist/preview-server/render-queue/make-retry-payload.js +52 -10
  60. package/dist/preview-server/render-queue/process-video.js +16 -9
  61. package/dist/preview-server/routes/add-render.js +13 -0
  62. package/dist/preview.js +1 -2
  63. package/dist/render-flows/render.d.ts +14 -4
  64. package/dist/render-flows/render.js +40 -13
  65. package/dist/render.js +3 -6
  66. package/dist/still.js +2 -5
  67. package/package.json +7 -7
package/dist/benchmark.js CHANGED
@@ -1,11 +1,7 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.benchmarkCommand = void 0;
7
4
  const renderer_1 = require("@remotion/renderer");
8
- const path_1 = __importDefault(require("path"));
9
5
  const chalk_1 = require("./chalk");
10
6
  const config_1 = require("./config");
11
7
  const entry_point_1 = require("./entry-point");
@@ -97,7 +93,6 @@ const benchmarkCommand = async (remotionRoot, args) => {
97
93
  log_1.Log.info(`$ remotion benchmark <entry file>`);
98
94
  process.exit(1);
99
95
  }
100
- const fullPath = path_1.default.join(process.cwd(), file);
101
96
  const { inputProps, envVariables, browserExecutable, ffmpegExecutable, ffprobeExecutable, chromiumOptions, port, puppeteerTimeout, browser, scale, publicDir, } = await (0, get_cli_options_1.getCliOptions)({
102
97
  isLambda: false,
103
98
  type: 'series',
@@ -111,7 +106,7 @@ const benchmarkCommand = async (remotionRoot, args) => {
111
106
  forceDeviceScaleFactor: scale,
112
107
  });
113
108
  const { urlOrBundle: bundleLocation, cleanup: cleanupBundle } = await (0, setup_cache_1.bundleOnCliOrTakeServeUrl)({
114
- fullPath,
109
+ fullPath: file,
115
110
  publicDir,
116
111
  remotionRoot,
117
112
  steps: ['bundling'],
@@ -1,11 +1,7 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.listCompositionsCommand = void 0;
7
4
  const renderer_1 = require("@remotion/renderer");
8
- const path_1 = __importDefault(require("path"));
9
5
  const entry_point_1 = require("./entry-point");
10
6
  const get_cli_options_1 = require("./get-cli-options");
11
7
  const get_config_file_name_1 = require("./get-config-file-name");
@@ -22,7 +18,6 @@ const listCompositionsCommand = async (remotionRoot, args) => {
22
18
  }
23
19
  log_1.Log.verbose('Entry point:', file, 'reason:', reason);
24
20
  const downloadMap = renderer_1.RenderInternals.makeDownloadMap();
25
- const fullPath = path_1.default.join(process.cwd(), file);
26
21
  await (0, get_config_file_name_1.loadConfig)(remotionRoot);
27
22
  const { browserExecutable, ffmpegExecutable, ffprobeExecutable, chromiumOptions, envVariables, inputProps, puppeteerTimeout, port, publicDir, } = await (0, get_cli_options_1.getCliOptions)({
28
23
  isLambda: false,
@@ -31,7 +26,7 @@ const listCompositionsCommand = async (remotionRoot, args) => {
31
26
  });
32
27
  const { urlOrBundle: bundled, cleanup: cleanupBundle } = await (0, setup_cache_1.bundleOnCliOrTakeServeUrl)({
33
28
  remotionRoot,
34
- fullPath,
29
+ fullPath: file,
35
30
  steps: ['bundling'],
36
31
  publicDir,
37
32
  });
@@ -1,3 +1,3 @@
1
1
  import type { LogLevel } from '@remotion/renderer';
2
- export declare const getLogLevel: () => "verbose" | "error" | "info" | "warn";
2
+ export declare const getLogLevel: () => "error" | "verbose" | "info" | "warn";
3
3
  export declare const setLogLevel: (newLogLevel: LogLevel) => void;
@@ -16,7 +16,7 @@ const UpdateModal_1 = require("./UpdateModal/UpdateModal");
16
16
  const Modals = () => {
17
17
  const { selectedModal: modalContextType } = (0, react_1.useContext)(modals_1.ModalsContext);
18
18
  const canRender = (0, react_1.useContext)(client_id_1.PreviewServerConnectionCtx).type === 'connected';
19
- return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [modalContextType && modalContextType.type === 'new-comp' && ((0, jsx_runtime_1.jsx)(NewComposition_1.default, { initialCompType: modalContextType.compType })), modalContextType && canRender && modalContextType.type === 'render' && ((0, jsx_runtime_1.jsx)(RenderModal_1.RenderModal, { initialFrame: modalContextType.initialFrame, compositionId: modalContextType.compositionId, initialImageFormat: modalContextType.initialImageFormat, initialQuality: modalContextType.initialQuality, initialOutName: modalContextType.initialOutName, initialScale: modalContextType.initialScale, initialVerbose: modalContextType.initialVerbose, initialRenderType: modalContextType.initialRenderType, initialCodec: modalContextType.initialCodec })), modalContextType &&
19
+ return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [modalContextType && modalContextType.type === 'new-comp' && ((0, jsx_runtime_1.jsx)(NewComposition_1.default, { initialCompType: modalContextType.compType })), modalContextType && canRender && modalContextType.type === 'render' && ((0, jsx_runtime_1.jsx)(RenderModal_1.RenderModal, { initialFrame: modalContextType.initialFrame, compositionId: modalContextType.compositionId, initialVideoImageFormat: modalContextType.initialVideoImageFormat, initialQuality: modalContextType.initialQuality, initialOutName: modalContextType.initialOutName, initialScale: modalContextType.initialScale, initialVerbose: modalContextType.initialVerbose, initialRenderType: modalContextType.initialRenderType, initialAudioCodec: modalContextType.initialAudioCodec, initialVideoCodec: modalContextType.initialVideoCodec, initialConcurrency: modalContextType.initialConcurrency, maxConcurrency: modalContextType.maxConcurrency, minConcurrency: modalContextType.minConcurrency, initialStillImageFormat: modalContextType.initialStillImageFormat, initialMuted: modalContextType.initialMuted, initialEnforceAudioTrack: modalContextType.initialEnforceAudioTrack, initialProResProfile: modalContextType.initialProResProfile, initialPixelFormat: modalContextType.initialPixelFormat, initialAudioBitrate: modalContextType.initialAudioBitrate, initialVideoBitrate: modalContextType.initialVideoBitrate, initialEveryNthFrame: modalContextType.initialEveryNthFrame, initialNumberOfGifLoops: modalContextType.initialNumberOfGifLoops, initialDelayRenderTimeout: modalContextType.initialDelayRenderTimeout })), modalContextType &&
20
20
  canRender &&
21
21
  modalContextType.type === 'render-error' && ((0, jsx_runtime_1.jsx)(RenderErrorModal_1.RenderErrorModal, { job: modalContextType.job })), modalContextType && modalContextType.type === 'update' && ((0, jsx_runtime_1.jsx)(UpdateModal_1.UpdateModal, { info: modalContextType.info })), modalContextType && modalContextType.type === 'quick-switcher' && ((0, jsx_runtime_1.jsx)(QuickSwitcher_1.default, { invocationTimestamp: modalContextType.invocationTimestamp, initialMode: modalContextType.mode }))] }));
22
22
  };
@@ -4,6 +4,7 @@ exports.RenderButton = void 0;
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
5
  const react_1 = require("react");
6
6
  const get_default_out_name_1 = require("../../get-default-out-name");
7
+ const get_default_video_contexts_1 = require("../../preview-server/render-queue/get-default-video-contexts");
7
8
  const render_1 = require("../icons/render");
8
9
  const modals_1 = require("../state/modals");
9
10
  const InlineAction_1 = require("./InlineAction");
@@ -18,24 +19,44 @@ const RenderButton = ({ composition, visible }) => {
18
19
  }, []);
19
20
  const isVideo = composition.durationInFrames > 1;
20
21
  const onClick = (0, react_1.useCallback)((e) => {
21
- var _a, _b, _c, _d, _e;
22
+ const defaults = window.remotion_renderDefaults;
23
+ if (!defaults) {
24
+ throw new Error('expected defaults');
25
+ }
22
26
  e.stopPropagation();
27
+ const { initialAudioCodec, initialRenderType, initialVideoCodec } = (0, get_default_video_contexts_1.getDefaultCodecs)({
28
+ defaultCodec: defaults.codec,
29
+ isStill: !isVideo,
30
+ });
23
31
  setSelectedModal({
24
32
  type: 'render',
25
33
  compositionId: composition.id,
26
34
  initialFrame: 0,
27
- initialImageFormat: isVideo ? 'jpeg' : 'png',
28
- // TODO: Determine defaults from config file
29
- initialQuality: (_b = (_a = window.remotion_renderDefaults) === null || _a === void 0 ? void 0 : _a.quality) !== null && _b !== void 0 ? _b : 80,
30
- initialScale: (_d = (_c = window.remotion_renderDefaults) === null || _c === void 0 ? void 0 : _c.scale) !== null && _d !== void 0 ? _d : 1,
31
- initialVerbose: ((_e = window.remotion_renderDefaults) === null || _e === void 0 ? void 0 : _e.logLevel) === 'verbose',
35
+ initialVideoImageFormat: defaults.videoImageFormat,
36
+ initialStillImageFormat: defaults.stillImageFormat,
37
+ initialQuality: defaults.quality,
38
+ initialScale: defaults.scale,
39
+ initialVerbose: defaults.logLevel === 'verbose',
32
40
  initialOutName: (0, get_default_out_name_1.getDefaultOutLocation)({
33
41
  compositionName: composition.id,
34
42
  defaultExtension: isVideo ? 'mp4' : 'png',
35
43
  type: 'asset',
36
44
  }),
37
- initialRenderType: isVideo ? 'video' : 'still',
38
- initialCodec: 'h264',
45
+ initialAudioCodec,
46
+ initialRenderType,
47
+ initialVideoCodec,
48
+ initialConcurrency: defaults.concurrency,
49
+ maxConcurrency: defaults.maxConcurrency,
50
+ minConcurrency: defaults.minConcurrency,
51
+ initialMuted: defaults.muted,
52
+ initialEnforceAudioTrack: defaults.enforceAudioTrack,
53
+ initialProResProfile: defaults.proResProfile,
54
+ initialPixelFormat: defaults.pixelFormat,
55
+ initialAudioBitrate: defaults.audioBitrate,
56
+ initialVideoBitrate: defaults.videoBitrate,
57
+ initialEveryNthFrame: defaults.everyNthFrame,
58
+ initialNumberOfGifLoops: defaults.numberOfGifLoops,
59
+ initialDelayRenderTimeout: defaults.delayRenderTimeout,
39
60
  });
40
61
  }, [composition.id, isVideo, setSelectedModal]);
41
62
  if (!visible) {
@@ -2,14 +2,14 @@
2
2
  import type { Codec } from '@remotion/renderer';
3
3
  export declare const useCrfState: (codec: Codec) => {
4
4
  crf: number;
5
- setCrf: (updater: (prev: number) => number) => void;
5
+ setCrf: import("react").Dispatch<import("react").SetStateAction<number>>;
6
6
  minCrf: number;
7
7
  maxCrf: number;
8
8
  shouldDisplayOption: boolean;
9
9
  };
10
10
  export declare const CrfSetting: React.FC<{
11
11
  crf: number;
12
- setCrf: (value: (prevVal: number) => number) => void;
12
+ setCrf: React.Dispatch<React.SetStateAction<number>>;
13
13
  min: number;
14
14
  max: number;
15
15
  }>;
@@ -4,9 +4,7 @@ exports.CrfSetting = exports.useCrfState = void 0;
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
5
  const client_1 = require("@remotion/renderer/client");
6
6
  const react_1 = require("react");
7
- const InputDragger_1 = require("../NewComposition/InputDragger");
8
- const RemInput_1 = require("../NewComposition/RemInput");
9
- const layout_1 = require("./layout");
7
+ const NumberSetting_1 = require("./NumberSetting");
10
8
  const getDefaultCrfState = () => {
11
9
  return client_1.BrowserSafeApis.validCodecs
12
10
  .map((c) => {
@@ -22,16 +20,17 @@ const getDefaultCrfState = () => {
22
20
  const useCrfState = (codec) => {
23
21
  const [state, setState] = (0, react_1.useState)(() => getDefaultCrfState());
24
22
  const range = client_1.BrowserSafeApis.getValidCrfRanges(codec);
23
+ const setCrf = (updater) => {
24
+ setState((q) => {
25
+ return {
26
+ ...q,
27
+ [codec]: typeof updater === 'number' ? updater : updater(q[codec]),
28
+ };
29
+ });
30
+ };
25
31
  return {
26
32
  crf: state[codec],
27
- setCrf: (updater) => {
28
- setState((q) => {
29
- return {
30
- ...q,
31
- [codec]: updater(q[codec]),
32
- };
33
- });
34
- },
33
+ setCrf,
35
34
  minCrf: range[0],
36
35
  maxCrf: range[1],
37
36
  shouldDisplayOption: range[0] !== range[1],
@@ -39,18 +38,6 @@ const useCrfState = (codec) => {
39
38
  };
40
39
  exports.useCrfState = useCrfState;
41
40
  const CrfSetting = ({ crf, setCrf, min, max }) => {
42
- const onCrfSetDirectly = (0, react_1.useCallback)((newCrf) => {
43
- setCrf(() => newCrf);
44
- }, [setCrf]);
45
- const onCrfChanged = (0, react_1.useCallback)((e) => {
46
- setCrf((q) => {
47
- const newCrf = parseFloat(e);
48
- if (Number.isNaN(newCrf)) {
49
- return q;
50
- }
51
- return Math.min(max, Math.max(newCrf, min));
52
- });
53
- }, [max, min, setCrf]);
54
- return ((0, jsx_runtime_1.jsxs)("div", { style: layout_1.optionRow, children: [(0, jsx_runtime_1.jsx)("div", { style: layout_1.label, children: "CRF" }), (0, jsx_runtime_1.jsx)("div", { style: layout_1.rightRow, children: (0, jsx_runtime_1.jsx)(RemInput_1.RightAlignInput, { children: (0, jsx_runtime_1.jsx)(InputDragger_1.InputDragger, { value: crf, onTextChange: onCrfChanged, placeholder: `${min}-${max}`, onValueChange: onCrfSetDirectly, name: "crf", step: 1, min: min, max: max }) }) })] }));
41
+ return ((0, jsx_runtime_1.jsx)(NumberSetting_1.NumberSetting, { min: min, max: max, name: "CRF", onValueChanged: setCrf, value: crf, step: 1 }));
55
42
  };
56
43
  exports.CrfSetting = CrfSetting;
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ export declare const EveryNthFrameSetting: React.FC<{
3
+ everyNthFrame: number;
4
+ setEveryNthFrameSetting: React.Dispatch<React.SetStateAction<number>>;
5
+ }>;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EveryNthFrameSetting = void 0;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const NumberSetting_1 = require("./NumberSetting");
6
+ const EveryNthFrameSetting = ({ everyNthFrame, setEveryNthFrameSetting }) => {
7
+ return ((0, jsx_runtime_1.jsx)(NumberSetting_1.NumberSetting, { name: "Every nth frame", min: 1, onValueChanged: setEveryNthFrameSetting, value: everyNthFrame }));
8
+ };
9
+ exports.EveryNthFrameSetting = EveryNthFrameSetting;
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ export declare const NumberOfLoopsSetting: React.FC<{
3
+ numberOfGifLoops: number;
4
+ setNumberOfGifLoops: React.Dispatch<React.SetStateAction<number>>;
5
+ }>;
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NumberOfLoopsSetting = void 0;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const react_1 = require("react");
6
+ const InputDragger_1 = require("../NewComposition/InputDragger");
7
+ const RemInput_1 = require("../NewComposition/RemInput");
8
+ const layout_1 = require("./layout");
9
+ const min = 0;
10
+ const NumberOfLoopsSetting = ({ numberOfGifLoops, setNumberOfGifLoops }) => {
11
+ const onNumberOfGifLoopsChangedDirectly = (0, react_1.useCallback)((newConcurrency) => {
12
+ setNumberOfGifLoops(newConcurrency);
13
+ }, [setNumberOfGifLoops]);
14
+ const onNumberOfGifLoopsChanged = (0, react_1.useCallback)((e) => {
15
+ setNumberOfGifLoops((q) => {
16
+ const newConcurrency = parseInt(e, 10);
17
+ if (Number.isNaN(newConcurrency)) {
18
+ return q;
19
+ }
20
+ const newConcurrencyClamped = Math.max(newConcurrency, min);
21
+ return newConcurrencyClamped;
22
+ });
23
+ }, [setNumberOfGifLoops]);
24
+ return ((0, jsx_runtime_1.jsxs)("div", { style: layout_1.optionRow, children: [(0, jsx_runtime_1.jsx)("div", { style: layout_1.label, children: "Number of loops" }), (0, jsx_runtime_1.jsx)("div", { style: layout_1.rightRow, children: (0, jsx_runtime_1.jsx)(RemInput_1.RightAlignInput, { children: (0, jsx_runtime_1.jsx)(InputDragger_1.InputDragger, { value: numberOfGifLoops, onTextChange: onNumberOfGifLoopsChanged, placeholder: `${min}-`, onValueChange: onNumberOfGifLoopsChangedDirectly, name: "number-of-gif-loops", step: 1, min: min }) }) })] }));
25
+ };
26
+ exports.NumberOfLoopsSetting = NumberOfLoopsSetting;
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ export declare const NumberSetting: React.FC<{
3
+ name: string;
4
+ value: number;
5
+ onValueChanged: React.Dispatch<React.SetStateAction<number>>;
6
+ max?: number;
7
+ min: number;
8
+ step: number;
9
+ }>;
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NumberSetting = void 0;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const react_1 = require("react");
6
+ const InputDragger_1 = require("../NewComposition/InputDragger");
7
+ const RemInput_1 = require("../NewComposition/RemInput");
8
+ const layout_1 = require("./layout");
9
+ const NumberSetting = ({ name, value, step, onValueChanged, max, min }) => {
10
+ const onTextChanged = (0, react_1.useCallback)((e) => {
11
+ onValueChanged((q) => {
12
+ const newSetting = parseInt(e, 10);
13
+ if (Number.isNaN(newSetting)) {
14
+ return q;
15
+ }
16
+ return Math.min(max !== null && max !== void 0 ? max : Infinity, Math.max(newSetting, min));
17
+ });
18
+ }, [max, min, onValueChanged]);
19
+ const onValueChange = (0, react_1.useCallback)((newConcurrency) => {
20
+ onValueChanged(newConcurrency);
21
+ }, [onValueChanged]);
22
+ return ((0, jsx_runtime_1.jsxs)("div", { style: layout_1.optionRow, children: [(0, jsx_runtime_1.jsx)("div", { style: layout_1.label, children: name }), (0, jsx_runtime_1.jsx)("div", { style: layout_1.rightRow, children: (0, jsx_runtime_1.jsx)(RemInput_1.RightAlignInput, { children: (0, jsx_runtime_1.jsx)(InputDragger_1.InputDragger, { value: value, name: name.toLowerCase(), onTextChange: onTextChanged, onValueChange: onValueChange, step: step, placeholder: [min, max]
23
+ .map((f) => (f !== null && f !== undefined ? f : ''))
24
+ .join('-'), min: min, max: max }) }) })] }));
25
+ };
26
+ exports.NumberSetting = NumberSetting;
@@ -1,14 +1,28 @@
1
- import type { Codec, StillImageFormat } from '@remotion/renderer';
1
+ import type { Codec, PixelFormat, ProResProfile, StillImageFormat } from '@remotion/renderer';
2
2
  import React from 'react';
3
- export declare type RenderType = 'still' | 'video';
3
+ import type { RenderType } from './RenderModalAdvanced';
4
4
  export declare const RenderModal: React.FC<{
5
5
  compositionId: string;
6
6
  initialFrame: number;
7
- initialImageFormat: StillImageFormat;
8
- initialQuality: number | null;
7
+ initialVideoImageFormat: StillImageFormat;
8
+ initialStillImageFormat: StillImageFormat;
9
+ initialQuality: number;
9
10
  initialScale: number;
10
11
  initialVerbose: boolean;
11
12
  initialOutName: string;
12
13
  initialRenderType: RenderType;
13
- initialCodec: Codec;
14
+ initialAudioCodec: Codec;
15
+ initialVideoCodec: Codec;
16
+ initialConcurrency: number;
17
+ minConcurrency: number;
18
+ maxConcurrency: number;
19
+ initialMuted: boolean;
20
+ initialEnforceAudioTrack: boolean;
21
+ initialProResProfile: ProResProfile;
22
+ initialPixelFormat: PixelFormat;
23
+ initialVideoBitrate: string | null;
24
+ initialAudioBitrate: string | null;
25
+ initialEveryNthFrame: number;
26
+ initialNumberOfGifLoops: number | null;
27
+ initialDelayRenderTimeout: number;
14
28
  }>;