@remotion/studio 4.0.410 → 4.0.412
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/components/Modals.js +1 -1
- package/dist/components/RenderButton.js +14 -0
- package/dist/components/RenderModal/WebRenderModal.js +22 -18
- package/dist/components/RenderQueue/client-side-render-types.d.ts +6 -6
- package/dist/esm/{chunk-nqxpz7r0.js → chunk-t3rf3vkq.js} +66 -28
- package/dist/esm/internals.mjs +66 -28
- package/dist/esm/previewEntry.mjs +66 -28
- package/dist/esm/renderEntry.mjs +1 -1
- package/dist/helpers/retry-payload.js +16 -0
- package/dist/state/modals.d.ts +15 -0
- package/package.json +9 -9
|
@@ -23,7 +23,7 @@ const Modals = ({ readOnlyStudio }) => {
|
|
|
23
23
|
const { selectedModal: modalContextType } = (0, react_1.useContext)(modals_1.ModalsContext);
|
|
24
24
|
const canRender = (0, react_1.useContext)(client_id_1.StudioServerConnectionCtx).previewServerState.type ===
|
|
25
25
|
'connected';
|
|
26
|
-
return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [modalContextType && modalContextType.type === 'duplicate-comp' && ((0, jsx_runtime_1.jsx)(DuplicateComposition_1.DuplicateComposition, { compositionType: modalContextType.compositionType, compositionId: modalContextType.compositionId })), modalContextType && modalContextType.type === 'delete-comp' && ((0, jsx_runtime_1.jsx)(DeleteComposition_1.DeleteComposition, { compositionId: modalContextType.compositionId })), modalContextType && modalContextType.type === 'rename-comp' && ((0, jsx_runtime_1.jsx)(RenameComposition_1.RenameComposition, { compositionId: modalContextType.compositionId })), modalContextType && modalContextType.type === 'input-props-override' && ((0, jsx_runtime_1.jsx)(OverrideInputProps_1.OverrideInputPropsModal, {})), modalContextType && modalContextType.type === 'web-render' && ((0, jsx_runtime_1.jsx)(WebRenderModal_1.WebRenderModalWithLoader, {
|
|
26
|
+
return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [modalContextType && modalContextType.type === 'duplicate-comp' && ((0, jsx_runtime_1.jsx)(DuplicateComposition_1.DuplicateComposition, { compositionType: modalContextType.compositionType, compositionId: modalContextType.compositionId })), modalContextType && modalContextType.type === 'delete-comp' && ((0, jsx_runtime_1.jsx)(DeleteComposition_1.DeleteComposition, { compositionId: modalContextType.compositionId })), modalContextType && modalContextType.type === 'rename-comp' && ((0, jsx_runtime_1.jsx)(RenameComposition_1.RenameComposition, { compositionId: modalContextType.compositionId })), modalContextType && modalContextType.type === 'input-props-override' && ((0, jsx_runtime_1.jsx)(OverrideInputProps_1.OverrideInputPropsModal, {})), modalContextType && modalContextType.type === 'web-render' && ((0, jsx_runtime_1.jsx)(WebRenderModal_1.WebRenderModalWithLoader, { ...modalContextType })), modalContextType &&
|
|
27
27
|
canRender &&
|
|
28
28
|
modalContextType.type === 'server-render' && ((0, jsx_runtime_1.jsx)(ServerRenderModal_1.RenderModalWithLoader, { initialFrame: modalContextType.initialFrame, initialDarkMode: modalContextType.initialDarkMode, compositionId: modalContextType.compositionId, initialVideoImageFormat: modalContextType.initialVideoImageFormat, initialJpegQuality: modalContextType.initialJpegQuality, initialScale: modalContextType.initialScale, initialLogLevel: modalContextType.initialLogLevel, initialOffthreadVideoCacheSizeInBytes: modalContextType.initialOffthreadVideoCacheSizeInBytes, initialOffthreadVideoThreads: modalContextType.initialOffthreadVideoThreads, initialMediaCacheSizeInBytes: modalContextType.initialMediaCacheSizeInBytes, initialConcurrency: modalContextType.initialConcurrency, maxConcurrency: modalContextType.maxConcurrency, minConcurrency: modalContextType.minConcurrency, initialStillImageFormat: modalContextType.initialStillImageFormat, initialMuted: modalContextType.initialMuted, initialEnforceAudioTrack: modalContextType.initialEnforceAudioTrack, initialProResProfile: modalContextType.initialProResProfile, initialx264Preset: modalContextType.initialx264Preset, initialPixelFormat: modalContextType.initialPixelFormat, initialAudioBitrate: modalContextType.initialAudioBitrate, initialVideoBitrate: modalContextType.initialVideoBitrate, initialEveryNthFrame: modalContextType.initialEveryNthFrame, initialNumberOfGifLoops: modalContextType.initialNumberOfGifLoops, initialDelayRenderTimeout: modalContextType.initialDelayRenderTimeout, initialEnvVariables: modalContextType.initialEnvVariables, initialDisableWebSecurity: modalContextType.initialDisableWebSecurity, initialGl: modalContextType.initialOpenGlRenderer, initialHeadless: modalContextType.initialHeadless, initialIgnoreCertificateErrors: modalContextType.initialIgnoreCertificateErrors, initialEncodingBufferSize: modalContextType.initialEncodingBufferSize, initialEncodingMaxRate: modalContextType.initialEncodingMaxRate, initialUserAgent: modalContextType.initialUserAgent, initialColorSpace: modalContextType.initialColorSpace, initialMultiProcessOnLinux: modalContextType.initialMultiProcessOnLinux, initialRepro: modalContextType.initialRepro, initialBeep: modalContextType.initialBeep, initialForSeamlessAacConcatenation: modalContextType.initialForSeamlessAacConcatenation, defaultProps: modalContextType.defaultProps, inFrameMark: modalContextType.inFrameMark, outFrameMark: modalContextType.outFrameMark, defaultConfigurationAudioCodec: modalContextType.defaultConfigurationAudioCodec, defaultConfigurationVideoCodec: modalContextType.defaultConfigurationVideoCodec, renderTypeOfLastRender: modalContextType.renderTypeOfLastRender, defaultMetadata: modalContextType.defaulMetadata, initialHardwareAcceleration: modalContextType.initialHardwareAcceleration, initialChromeMode: modalContextType.initialChromeMode, renderDefaults: modalContextType.renderDefaults })), modalContextType && modalContextType.type === 'render-progress' && ((0, jsx_runtime_1.jsx)(RenderStatusModal_1.RenderStatusModal, { jobId: modalContextType.jobId })), modalContextType && modalContextType.type === 'update' && ((0, jsx_runtime_1.jsx)(UpdateModal_1.UpdateModal, { info: modalContextType.info, knownBugs: modalContextType.knownBugs })), modalContextType && modalContextType.type === 'install-packages' && ((0, jsx_runtime_1.jsx)(InstallPackage_1.InstallPackageModal, { packageManager: modalContextType.packageManager })), modalContextType && modalContextType.type === 'quick-switcher' && ((0, jsx_runtime_1.jsx)(QuickSwitcher_1.default, { readOnlyStudio: readOnlyStudio, invocationTimestamp: modalContextType.invocationTimestamp, initialMode: modalContextType.mode })), process.env.ASK_AI_ENABLED && (0, jsx_runtime_1.jsx)(AskAiModal_1.AskAiModal, {})] }));
|
|
29
29
|
};
|
|
@@ -225,6 +225,20 @@ const RenderButton = ({ readOnlyStudio, }) => {
|
|
|
225
225
|
outFrameMark: outFrame,
|
|
226
226
|
initialLogLevel: defaults.logLevel,
|
|
227
227
|
initialLicenseKey: defaults.publicLicenseKey,
|
|
228
|
+
initialStillImageFormat: defaults.stillImageFormat,
|
|
229
|
+
initialScale: defaults.scale,
|
|
230
|
+
initialDelayRenderTimeout: defaults.delayRenderTimeout,
|
|
231
|
+
initialDefaultOutName: null,
|
|
232
|
+
initialContainer: null,
|
|
233
|
+
initialVideoCodec: null,
|
|
234
|
+
initialAudioCodec: null,
|
|
235
|
+
initialAudioBitrate: null,
|
|
236
|
+
initialVideoBitrate: null,
|
|
237
|
+
initialHardwareAcceleration: null,
|
|
238
|
+
initialKeyframeIntervalInSeconds: null,
|
|
239
|
+
initialTransparent: null,
|
|
240
|
+
initialMuted: null,
|
|
241
|
+
initialMediaCacheSizeInBytes: defaults.mediaCacheSizeInBytes,
|
|
228
242
|
});
|
|
229
243
|
}, [video, setSelectedModal, getCurrentFrame, props, inFrame, outFrame]);
|
|
230
244
|
const onClick = (0, react_1.useCallback)(() => {
|
|
@@ -81,7 +81,8 @@ const validateOutnameForStill = ({ outName, stillImageFormat, }) => {
|
|
|
81
81
|
// TODO: Shortcut: Shift + R
|
|
82
82
|
// TODO: Apply defaultCodec
|
|
83
83
|
// TODO: Apply defaultOutName
|
|
84
|
-
const WebRenderModal = ({ initialFrame, defaultProps, inFrameMark, outFrameMark, initialLogLevel, initialLicenseKey, }) => {
|
|
84
|
+
const WebRenderModal = ({ initialFrame, defaultProps, inFrameMark, outFrameMark, initialLogLevel, initialLicenseKey, initialStillImageFormat, initialDefaultOutName, initialScale, initialDelayRenderTimeout, initialMediaCacheSizeInBytes, initialContainer, initialVideoCodec, initialAudioCodec, initialAudioBitrate, initialVideoBitrate, initialHardwareAcceleration, initialKeyframeIntervalInSeconds, initialTransparent, initialMuted, }) => {
|
|
85
|
+
var _a;
|
|
85
86
|
const context = (0, react_1.useContext)(ResolveCompositionBeforeModal_1.ResolvedCompositionContext);
|
|
86
87
|
const { setSelectedModal } = (0, react_1.useContext)(modals_1.ModalsContext);
|
|
87
88
|
const { setSidebarCollapsedState } = (0, react_1.useContext)(sidebar_1.SidebarContext);
|
|
@@ -97,26 +98,26 @@ const WebRenderModal = ({ initialFrame, defaultProps, inFrameMark, outFrameMark,
|
|
|
97
98
|
});
|
|
98
99
|
const [renderMode, setRenderMode] = (0, react_1.useState)(isVideo ? 'video' : 'still');
|
|
99
100
|
const [tab, setTab] = (0, react_1.useState)('general');
|
|
100
|
-
const [imageFormat, setImageFormat] = (0, react_1.useState)('png');
|
|
101
|
+
const [imageFormat, setImageFormat] = (0, react_1.useState)(() => initialStillImageFormat !== null && initialStillImageFormat !== void 0 ? initialStillImageFormat : 'png');
|
|
101
102
|
const [frame, setFrame] = (0, react_1.useState)(() => initialFrame);
|
|
102
103
|
const [logLevel, setLogLevel] = (0, react_1.useState)(() => initialLogLevel);
|
|
103
104
|
const [inputProps, setInputProps] = (0, react_1.useState)(() => defaultProps);
|
|
104
|
-
const [delayRenderTimeout, setDelayRenderTimeout] = (0, react_1.useState)(30000);
|
|
105
|
-
const [mediaCacheSizeInBytes, setMediaCacheSizeInBytes] = (0, react_1.useState)(
|
|
105
|
+
const [delayRenderTimeout, setDelayRenderTimeout] = (0, react_1.useState)(initialDelayRenderTimeout !== null && initialDelayRenderTimeout !== void 0 ? initialDelayRenderTimeout : 30000);
|
|
106
|
+
const [mediaCacheSizeInBytes, setMediaCacheSizeInBytes] = (0, react_1.useState)(initialMediaCacheSizeInBytes);
|
|
106
107
|
const [saving, setSaving] = (0, react_1.useState)(false);
|
|
107
108
|
// Video-specific state
|
|
108
|
-
const [codec, setCodec] = (0, react_1.useState)('h264');
|
|
109
|
-
const [container, setContainer] = (0, react_1.useState)('mp4');
|
|
110
|
-
const [audioCodec, setAudioCodec] = (0, react_1.useState)('aac');
|
|
111
|
-
const [audioBitrate, setAudioBitrate] = (0, react_1.useState)('medium');
|
|
112
|
-
const [videoBitrate, setVideoBitrate] = (0, react_1.useState)('high');
|
|
113
|
-
const [hardwareAcceleration, setHardwareAcceleration] = (0, react_1.useState)('no-preference');
|
|
114
|
-
const [keyframeIntervalInSeconds, setKeyframeIntervalInSeconds] = (0, react_1.useState)(5);
|
|
115
|
-
const [startFrame, setStartFrame] = (0, react_1.useState)(() => inFrameMark
|
|
116
|
-
const [endFrame, setEndFrame] = (0, react_1.useState)(() => outFrameMark
|
|
117
|
-
const [transparent, setTransparent] = (0, react_1.useState)(false);
|
|
118
|
-
const [muted, setMuted] = (0, react_1.useState)(false);
|
|
119
|
-
const [scale, setScale] = (0, react_1.useState)(1);
|
|
109
|
+
const [codec, setCodec] = (0, react_1.useState)(initialVideoCodec !== null && initialVideoCodec !== void 0 ? initialVideoCodec : 'h264');
|
|
110
|
+
const [container, setContainer] = (0, react_1.useState)(initialContainer !== null && initialContainer !== void 0 ? initialContainer : 'mp4');
|
|
111
|
+
const [audioCodec, setAudioCodec] = (0, react_1.useState)(initialAudioCodec !== null && initialAudioCodec !== void 0 ? initialAudioCodec : 'aac');
|
|
112
|
+
const [audioBitrate, setAudioBitrate] = (0, react_1.useState)(initialAudioBitrate !== null && initialAudioBitrate !== void 0 ? initialAudioBitrate : 'medium');
|
|
113
|
+
const [videoBitrate, setVideoBitrate] = (0, react_1.useState)(initialVideoBitrate !== null && initialVideoBitrate !== void 0 ? initialVideoBitrate : 'high');
|
|
114
|
+
const [hardwareAcceleration, setHardwareAcceleration] = (0, react_1.useState)((_a = initialHardwareAcceleration) !== null && _a !== void 0 ? _a : 'no-preference');
|
|
115
|
+
const [keyframeIntervalInSeconds, setKeyframeIntervalInSeconds] = (0, react_1.useState)(initialKeyframeIntervalInSeconds !== null && initialKeyframeIntervalInSeconds !== void 0 ? initialKeyframeIntervalInSeconds : 5);
|
|
116
|
+
const [startFrame, setStartFrame] = (0, react_1.useState)(() => inFrameMark);
|
|
117
|
+
const [endFrame, setEndFrame] = (0, react_1.useState)(() => outFrameMark);
|
|
118
|
+
const [transparent, setTransparent] = (0, react_1.useState)(initialTransparent !== null && initialTransparent !== void 0 ? initialTransparent : false);
|
|
119
|
+
const [muted, setMuted] = (0, react_1.useState)(initialMuted !== null && initialMuted !== void 0 ? initialMuted : false);
|
|
120
|
+
const [scale, setScale] = (0, react_1.useState)(initialScale !== null && initialScale !== void 0 ? initialScale : 1);
|
|
120
121
|
const [licenseKey, setLicenseKey] = (0, react_1.useState)(initialLicenseKey);
|
|
121
122
|
const encodableAudioCodecs = (0, use_encodable_audio_codecs_1.useEncodableAudioCodecs)(container);
|
|
122
123
|
const encodableVideoCodecs = (0, use_encodable_video_codecs_1.useEncodableVideoCodecs)(container);
|
|
@@ -146,7 +147,10 @@ const WebRenderModal = ({ initialFrame, defaultProps, inFrameMark, outFrameMark,
|
|
|
146
147
|
}
|
|
147
148
|
return Math.max(0, Math.min(finalEndFrame, startFrame));
|
|
148
149
|
}, [finalEndFrame, startFrame]);
|
|
149
|
-
const [
|
|
150
|
+
const [initialOutNameState] = (0, react_1.useState)(() => {
|
|
151
|
+
if (initialDefaultOutName) {
|
|
152
|
+
return initialDefaultOutName;
|
|
153
|
+
}
|
|
150
154
|
return (0, studio_shared_1.getDefaultOutLocation)({
|
|
151
155
|
compositionName: resolvedComposition.id,
|
|
152
156
|
defaultExtension: renderMode === 'still'
|
|
@@ -159,7 +163,7 @@ const WebRenderModal = ({ initialFrame, defaultProps, inFrameMark, outFrameMark,
|
|
|
159
163
|
clientSideRender: true,
|
|
160
164
|
});
|
|
161
165
|
});
|
|
162
|
-
const [outName, setOutName] = (0, react_1.useState)(() =>
|
|
166
|
+
const [outName, setOutName] = (0, react_1.useState)(() => initialOutNameState);
|
|
163
167
|
const setStillFormat = (0, react_1.useCallback)((format) => {
|
|
164
168
|
setImageFormat(format);
|
|
165
169
|
setOutName((prev) => {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { RenderStillOnWebImageFormat } from '@remotion/web-renderer';
|
|
1
|
+
import type { RenderStillOnWebImageFormat, WebRendererAudioCodec, WebRendererContainer, WebRendererQuality, WebRendererVideoCodec } from '@remotion/web-renderer';
|
|
2
2
|
import type { LogLevel } from 'remotion';
|
|
3
3
|
export type ClientRenderJobProgress = {
|
|
4
4
|
renderedFrames: number;
|
|
@@ -48,13 +48,13 @@ export type ClientStillRenderJob = ClientRenderJobBase & {
|
|
|
48
48
|
} & ClientRenderJobDynamicStatus;
|
|
49
49
|
export type ClientVideoRenderJob = ClientRenderJobBase & {
|
|
50
50
|
type: 'client-video';
|
|
51
|
-
container:
|
|
52
|
-
videoCodec:
|
|
53
|
-
audioCodec:
|
|
51
|
+
container: WebRendererContainer;
|
|
52
|
+
videoCodec: WebRendererVideoCodec;
|
|
53
|
+
audioCodec: WebRendererAudioCodec;
|
|
54
54
|
startFrame: number;
|
|
55
55
|
endFrame: number;
|
|
56
|
-
audioBitrate:
|
|
57
|
-
videoBitrate:
|
|
56
|
+
audioBitrate: WebRendererQuality;
|
|
57
|
+
videoBitrate: WebRendererQuality;
|
|
58
58
|
hardwareAcceleration: string;
|
|
59
59
|
keyframeIntervalInSeconds: number;
|
|
60
60
|
transparent: boolean;
|
|
@@ -16468,7 +16468,21 @@ var makeClientRetryPayload = (job) => {
|
|
|
16468
16468
|
initialLicenseKey: job.licenseKey,
|
|
16469
16469
|
defaultProps: job.inputProps,
|
|
16470
16470
|
inFrameMark: job.type === "client-video" ? job.startFrame : null,
|
|
16471
|
-
outFrameMark: job.type === "client-video" ? job.endFrame : null
|
|
16471
|
+
outFrameMark: job.type === "client-video" ? job.endFrame : null,
|
|
16472
|
+
initialDefaultOutName: job.outName,
|
|
16473
|
+
initialScale: job.scale,
|
|
16474
|
+
initialDelayRenderTimeout: job.delayRenderTimeout,
|
|
16475
|
+
initialMediaCacheSizeInBytes: job.mediaCacheSizeInBytes,
|
|
16476
|
+
initialAudioBitrate: job.type === "client-video" ? job.audioBitrate : null,
|
|
16477
|
+
initialAudioCodec: job.type === "client-video" ? job.audioCodec : null,
|
|
16478
|
+
initialContainer: job.type === "client-video" ? job.container : null,
|
|
16479
|
+
initialHardwareAcceleration: job.type === "client-video" ? job.hardwareAcceleration : null,
|
|
16480
|
+
initialVideoBitrate: job.type === "client-video" ? job.videoBitrate : null,
|
|
16481
|
+
initialVideoCodec: job.type === "client-video" ? job.videoCodec : null,
|
|
16482
|
+
initialStillImageFormat: job.type === "client-still" ? job.imageFormat : "png",
|
|
16483
|
+
initialKeyframeIntervalInSeconds: job.type === "client-video" ? job.keyframeIntervalInSeconds : null,
|
|
16484
|
+
initialMuted: job.type === "client-video" ? job.muted : null,
|
|
16485
|
+
initialTransparent: job.type === "client-video" ? job.transparent : null
|
|
16472
16486
|
};
|
|
16473
16487
|
};
|
|
16474
16488
|
|
|
@@ -18325,7 +18339,21 @@ var RenderButton = ({
|
|
|
18325
18339
|
inFrameMark: inFrame,
|
|
18326
18340
|
outFrameMark: outFrame,
|
|
18327
18341
|
initialLogLevel: defaults.logLevel,
|
|
18328
|
-
initialLicenseKey: defaults.publicLicenseKey
|
|
18342
|
+
initialLicenseKey: defaults.publicLicenseKey,
|
|
18343
|
+
initialStillImageFormat: defaults.stillImageFormat,
|
|
18344
|
+
initialScale: defaults.scale,
|
|
18345
|
+
initialDelayRenderTimeout: defaults.delayRenderTimeout,
|
|
18346
|
+
initialDefaultOutName: null,
|
|
18347
|
+
initialContainer: null,
|
|
18348
|
+
initialVideoCodec: null,
|
|
18349
|
+
initialAudioCodec: null,
|
|
18350
|
+
initialAudioBitrate: null,
|
|
18351
|
+
initialVideoBitrate: null,
|
|
18352
|
+
initialHardwareAcceleration: null,
|
|
18353
|
+
initialKeyframeIntervalInSeconds: null,
|
|
18354
|
+
initialTransparent: null,
|
|
18355
|
+
initialMuted: null,
|
|
18356
|
+
initialMediaCacheSizeInBytes: defaults.mediaCacheSizeInBytes
|
|
18329
18357
|
});
|
|
18330
18358
|
}, [video, setSelectedModal, getCurrentFrame2, props, inFrame, outFrame]);
|
|
18331
18359
|
const onClick = useCallback88(() => {
|
|
@@ -45758,7 +45786,21 @@ var WebRenderModal = ({
|
|
|
45758
45786
|
inFrameMark,
|
|
45759
45787
|
outFrameMark,
|
|
45760
45788
|
initialLogLevel,
|
|
45761
|
-
initialLicenseKey
|
|
45789
|
+
initialLicenseKey,
|
|
45790
|
+
initialStillImageFormat,
|
|
45791
|
+
initialDefaultOutName,
|
|
45792
|
+
initialScale,
|
|
45793
|
+
initialDelayRenderTimeout,
|
|
45794
|
+
initialMediaCacheSizeInBytes,
|
|
45795
|
+
initialContainer,
|
|
45796
|
+
initialVideoCodec,
|
|
45797
|
+
initialAudioCodec,
|
|
45798
|
+
initialAudioBitrate,
|
|
45799
|
+
initialVideoBitrate,
|
|
45800
|
+
initialHardwareAcceleration,
|
|
45801
|
+
initialKeyframeIntervalInSeconds,
|
|
45802
|
+
initialTransparent,
|
|
45803
|
+
initialMuted
|
|
45762
45804
|
}) => {
|
|
45763
45805
|
const context = useContext84(ResolvedCompositionContext);
|
|
45764
45806
|
const { setSelectedModal } = useContext84(ModalsContext);
|
|
@@ -45776,25 +45818,25 @@ var WebRenderModal = ({
|
|
|
45776
45818
|
});
|
|
45777
45819
|
const [renderMode, setRenderMode] = useState85(isVideo ? "video" : "still");
|
|
45778
45820
|
const [tab, setTab] = useState85("general");
|
|
45779
|
-
const [imageFormat, setImageFormat] = useState85("png");
|
|
45821
|
+
const [imageFormat, setImageFormat] = useState85(() => initialStillImageFormat ?? "png");
|
|
45780
45822
|
const [frame2, setFrame] = useState85(() => initialFrame);
|
|
45781
45823
|
const [logLevel, setLogLevel] = useState85(() => initialLogLevel);
|
|
45782
45824
|
const [inputProps, setInputProps] = useState85(() => defaultProps);
|
|
45783
|
-
const [delayRenderTimeout, setDelayRenderTimeout] = useState85(30000);
|
|
45784
|
-
const [mediaCacheSizeInBytes, setMediaCacheSizeInBytes] = useState85(
|
|
45825
|
+
const [delayRenderTimeout, setDelayRenderTimeout] = useState85(initialDelayRenderTimeout ?? 30000);
|
|
45826
|
+
const [mediaCacheSizeInBytes, setMediaCacheSizeInBytes] = useState85(initialMediaCacheSizeInBytes);
|
|
45785
45827
|
const [saving, setSaving] = useState85(false);
|
|
45786
|
-
const [codec, setCodec] = useState85("h264");
|
|
45787
|
-
const [container61, setContainer] = useState85("mp4");
|
|
45788
|
-
const [audioCodec, setAudioCodec] = useState85("aac");
|
|
45789
|
-
const [audioBitrate, setAudioBitrate] = useState85("medium");
|
|
45790
|
-
const [videoBitrate, setVideoBitrate] = useState85("high");
|
|
45791
|
-
const [hardwareAcceleration, setHardwareAcceleration] = useState85("no-preference");
|
|
45792
|
-
const [keyframeIntervalInSeconds, setKeyframeIntervalInSeconds] = useState85(5);
|
|
45793
|
-
const [startFrame, setStartFrame] = useState85(() => inFrameMark
|
|
45794
|
-
const [endFrame, setEndFrame] = useState85(() => outFrameMark
|
|
45795
|
-
const [transparent, setTransparent] = useState85(false);
|
|
45796
|
-
const [muted, setMuted] = useState85(false);
|
|
45797
|
-
const [scale, setScale] = useState85(1);
|
|
45828
|
+
const [codec, setCodec] = useState85(initialVideoCodec ?? "h264");
|
|
45829
|
+
const [container61, setContainer] = useState85(initialContainer ?? "mp4");
|
|
45830
|
+
const [audioCodec, setAudioCodec] = useState85(initialAudioCodec ?? "aac");
|
|
45831
|
+
const [audioBitrate, setAudioBitrate] = useState85(initialAudioBitrate ?? "medium");
|
|
45832
|
+
const [videoBitrate, setVideoBitrate] = useState85(initialVideoBitrate ?? "high");
|
|
45833
|
+
const [hardwareAcceleration, setHardwareAcceleration] = useState85(initialHardwareAcceleration ?? "no-preference");
|
|
45834
|
+
const [keyframeIntervalInSeconds, setKeyframeIntervalInSeconds] = useState85(initialKeyframeIntervalInSeconds ?? 5);
|
|
45835
|
+
const [startFrame, setStartFrame] = useState85(() => inFrameMark);
|
|
45836
|
+
const [endFrame, setEndFrame] = useState85(() => outFrameMark);
|
|
45837
|
+
const [transparent, setTransparent] = useState85(initialTransparent ?? false);
|
|
45838
|
+
const [muted, setMuted] = useState85(initialMuted ?? false);
|
|
45839
|
+
const [scale, setScale] = useState85(initialScale ?? 1);
|
|
45798
45840
|
const [licenseKey, setLicenseKey] = useState85(initialLicenseKey);
|
|
45799
45841
|
const encodableAudioCodecs = useEncodableAudioCodecs(container61);
|
|
45800
45842
|
const encodableVideoCodecs = useEncodableVideoCodecs(container61);
|
|
@@ -45822,7 +45864,10 @@ var WebRenderModal = ({
|
|
|
45822
45864
|
}
|
|
45823
45865
|
return Math.max(0, Math.min(finalEndFrame, startFrame));
|
|
45824
45866
|
}, [finalEndFrame, startFrame]);
|
|
45825
|
-
const [
|
|
45867
|
+
const [initialOutNameState] = useState85(() => {
|
|
45868
|
+
if (initialDefaultOutName) {
|
|
45869
|
+
return initialDefaultOutName;
|
|
45870
|
+
}
|
|
45826
45871
|
return getDefaultOutLocation2({
|
|
45827
45872
|
compositionName: resolvedComposition.id,
|
|
45828
45873
|
defaultExtension: renderMode === "still" ? imageFormat : isVideo ? container61 : imageFormat,
|
|
@@ -45831,7 +45876,7 @@ var WebRenderModal = ({
|
|
|
45831
45876
|
clientSideRender: true
|
|
45832
45877
|
});
|
|
45833
45878
|
});
|
|
45834
|
-
const [outName, setOutName] = useState85(() =>
|
|
45879
|
+
const [outName, setOutName] = useState85(() => initialOutNameState);
|
|
45835
45880
|
const setStillFormat = useCallback131((format) => {
|
|
45836
45881
|
setImageFormat(format);
|
|
45837
45882
|
setOutName((prev) => {
|
|
@@ -46538,14 +46583,7 @@ var Modals = ({ readOnlyStudio }) => {
|
|
|
46538
46583
|
}),
|
|
46539
46584
|
modalContextType && modalContextType.type === "input-props-override" && /* @__PURE__ */ jsx273(OverrideInputPropsModal, {}),
|
|
46540
46585
|
modalContextType && modalContextType.type === "web-render" && /* @__PURE__ */ jsx273(WebRenderModalWithLoader, {
|
|
46541
|
-
|
|
46542
|
-
initialFrame: modalContextType.initialFrame,
|
|
46543
|
-
compositionId: modalContextType.compositionId,
|
|
46544
|
-
defaultProps: modalContextType.defaultProps,
|
|
46545
|
-
inFrameMark: modalContextType.inFrameMark,
|
|
46546
|
-
outFrameMark: modalContextType.outFrameMark,
|
|
46547
|
-
initialLogLevel: modalContextType.initialLogLevel,
|
|
46548
|
-
initialLicenseKey: modalContextType.initialLicenseKey
|
|
46586
|
+
...modalContextType
|
|
46549
46587
|
}),
|
|
46550
46588
|
modalContextType && canRender && modalContextType.type === "server-render" && /* @__PURE__ */ jsx273(RenderModalWithLoader, {
|
|
46551
46589
|
initialFrame: modalContextType.initialFrame,
|
package/dist/esm/internals.mjs
CHANGED
|
@@ -16487,7 +16487,21 @@ var makeClientRetryPayload = (job) => {
|
|
|
16487
16487
|
initialLicenseKey: job.licenseKey,
|
|
16488
16488
|
defaultProps: job.inputProps,
|
|
16489
16489
|
inFrameMark: job.type === "client-video" ? job.startFrame : null,
|
|
16490
|
-
outFrameMark: job.type === "client-video" ? job.endFrame : null
|
|
16490
|
+
outFrameMark: job.type === "client-video" ? job.endFrame : null,
|
|
16491
|
+
initialDefaultOutName: job.outName,
|
|
16492
|
+
initialScale: job.scale,
|
|
16493
|
+
initialDelayRenderTimeout: job.delayRenderTimeout,
|
|
16494
|
+
initialMediaCacheSizeInBytes: job.mediaCacheSizeInBytes,
|
|
16495
|
+
initialAudioBitrate: job.type === "client-video" ? job.audioBitrate : null,
|
|
16496
|
+
initialAudioCodec: job.type === "client-video" ? job.audioCodec : null,
|
|
16497
|
+
initialContainer: job.type === "client-video" ? job.container : null,
|
|
16498
|
+
initialHardwareAcceleration: job.type === "client-video" ? job.hardwareAcceleration : null,
|
|
16499
|
+
initialVideoBitrate: job.type === "client-video" ? job.videoBitrate : null,
|
|
16500
|
+
initialVideoCodec: job.type === "client-video" ? job.videoCodec : null,
|
|
16501
|
+
initialStillImageFormat: job.type === "client-still" ? job.imageFormat : "png",
|
|
16502
|
+
initialKeyframeIntervalInSeconds: job.type === "client-video" ? job.keyframeIntervalInSeconds : null,
|
|
16503
|
+
initialMuted: job.type === "client-video" ? job.muted : null,
|
|
16504
|
+
initialTransparent: job.type === "client-video" ? job.transparent : null
|
|
16491
16505
|
};
|
|
16492
16506
|
};
|
|
16493
16507
|
|
|
@@ -18344,7 +18358,21 @@ var RenderButton = ({
|
|
|
18344
18358
|
inFrameMark: inFrame,
|
|
18345
18359
|
outFrameMark: outFrame,
|
|
18346
18360
|
initialLogLevel: defaults.logLevel,
|
|
18347
|
-
initialLicenseKey: defaults.publicLicenseKey
|
|
18361
|
+
initialLicenseKey: defaults.publicLicenseKey,
|
|
18362
|
+
initialStillImageFormat: defaults.stillImageFormat,
|
|
18363
|
+
initialScale: defaults.scale,
|
|
18364
|
+
initialDelayRenderTimeout: defaults.delayRenderTimeout,
|
|
18365
|
+
initialDefaultOutName: null,
|
|
18366
|
+
initialContainer: null,
|
|
18367
|
+
initialVideoCodec: null,
|
|
18368
|
+
initialAudioCodec: null,
|
|
18369
|
+
initialAudioBitrate: null,
|
|
18370
|
+
initialVideoBitrate: null,
|
|
18371
|
+
initialHardwareAcceleration: null,
|
|
18372
|
+
initialKeyframeIntervalInSeconds: null,
|
|
18373
|
+
initialTransparent: null,
|
|
18374
|
+
initialMuted: null,
|
|
18375
|
+
initialMediaCacheSizeInBytes: defaults.mediaCacheSizeInBytes
|
|
18348
18376
|
});
|
|
18349
18377
|
}, [video, setSelectedModal, getCurrentFrame2, props, inFrame, outFrame]);
|
|
18350
18378
|
const onClick = useCallback88(() => {
|
|
@@ -45777,7 +45805,21 @@ var WebRenderModal = ({
|
|
|
45777
45805
|
inFrameMark,
|
|
45778
45806
|
outFrameMark,
|
|
45779
45807
|
initialLogLevel,
|
|
45780
|
-
initialLicenseKey
|
|
45808
|
+
initialLicenseKey,
|
|
45809
|
+
initialStillImageFormat,
|
|
45810
|
+
initialDefaultOutName,
|
|
45811
|
+
initialScale,
|
|
45812
|
+
initialDelayRenderTimeout,
|
|
45813
|
+
initialMediaCacheSizeInBytes,
|
|
45814
|
+
initialContainer,
|
|
45815
|
+
initialVideoCodec,
|
|
45816
|
+
initialAudioCodec,
|
|
45817
|
+
initialAudioBitrate,
|
|
45818
|
+
initialVideoBitrate,
|
|
45819
|
+
initialHardwareAcceleration,
|
|
45820
|
+
initialKeyframeIntervalInSeconds,
|
|
45821
|
+
initialTransparent,
|
|
45822
|
+
initialMuted
|
|
45781
45823
|
}) => {
|
|
45782
45824
|
const context = useContext84(ResolvedCompositionContext);
|
|
45783
45825
|
const { setSelectedModal } = useContext84(ModalsContext);
|
|
@@ -45795,25 +45837,25 @@ var WebRenderModal = ({
|
|
|
45795
45837
|
});
|
|
45796
45838
|
const [renderMode, setRenderMode] = useState85(isVideo ? "video" : "still");
|
|
45797
45839
|
const [tab, setTab] = useState85("general");
|
|
45798
|
-
const [imageFormat, setImageFormat] = useState85("png");
|
|
45840
|
+
const [imageFormat, setImageFormat] = useState85(() => initialStillImageFormat ?? "png");
|
|
45799
45841
|
const [frame2, setFrame] = useState85(() => initialFrame);
|
|
45800
45842
|
const [logLevel, setLogLevel] = useState85(() => initialLogLevel);
|
|
45801
45843
|
const [inputProps, setInputProps] = useState85(() => defaultProps);
|
|
45802
|
-
const [delayRenderTimeout, setDelayRenderTimeout] = useState85(30000);
|
|
45803
|
-
const [mediaCacheSizeInBytes, setMediaCacheSizeInBytes] = useState85(
|
|
45844
|
+
const [delayRenderTimeout, setDelayRenderTimeout] = useState85(initialDelayRenderTimeout ?? 30000);
|
|
45845
|
+
const [mediaCacheSizeInBytes, setMediaCacheSizeInBytes] = useState85(initialMediaCacheSizeInBytes);
|
|
45804
45846
|
const [saving, setSaving] = useState85(false);
|
|
45805
|
-
const [codec, setCodec] = useState85("h264");
|
|
45806
|
-
const [container61, setContainer] = useState85("mp4");
|
|
45807
|
-
const [audioCodec, setAudioCodec] = useState85("aac");
|
|
45808
|
-
const [audioBitrate, setAudioBitrate] = useState85("medium");
|
|
45809
|
-
const [videoBitrate, setVideoBitrate] = useState85("high");
|
|
45810
|
-
const [hardwareAcceleration, setHardwareAcceleration] = useState85("no-preference");
|
|
45811
|
-
const [keyframeIntervalInSeconds, setKeyframeIntervalInSeconds] = useState85(5);
|
|
45812
|
-
const [startFrame, setStartFrame] = useState85(() => inFrameMark
|
|
45813
|
-
const [endFrame, setEndFrame] = useState85(() => outFrameMark
|
|
45814
|
-
const [transparent, setTransparent] = useState85(false);
|
|
45815
|
-
const [muted, setMuted] = useState85(false);
|
|
45816
|
-
const [scale, setScale] = useState85(1);
|
|
45847
|
+
const [codec, setCodec] = useState85(initialVideoCodec ?? "h264");
|
|
45848
|
+
const [container61, setContainer] = useState85(initialContainer ?? "mp4");
|
|
45849
|
+
const [audioCodec, setAudioCodec] = useState85(initialAudioCodec ?? "aac");
|
|
45850
|
+
const [audioBitrate, setAudioBitrate] = useState85(initialAudioBitrate ?? "medium");
|
|
45851
|
+
const [videoBitrate, setVideoBitrate] = useState85(initialVideoBitrate ?? "high");
|
|
45852
|
+
const [hardwareAcceleration, setHardwareAcceleration] = useState85(initialHardwareAcceleration ?? "no-preference");
|
|
45853
|
+
const [keyframeIntervalInSeconds, setKeyframeIntervalInSeconds] = useState85(initialKeyframeIntervalInSeconds ?? 5);
|
|
45854
|
+
const [startFrame, setStartFrame] = useState85(() => inFrameMark);
|
|
45855
|
+
const [endFrame, setEndFrame] = useState85(() => outFrameMark);
|
|
45856
|
+
const [transparent, setTransparent] = useState85(initialTransparent ?? false);
|
|
45857
|
+
const [muted, setMuted] = useState85(initialMuted ?? false);
|
|
45858
|
+
const [scale, setScale] = useState85(initialScale ?? 1);
|
|
45817
45859
|
const [licenseKey, setLicenseKey] = useState85(initialLicenseKey);
|
|
45818
45860
|
const encodableAudioCodecs = useEncodableAudioCodecs(container61);
|
|
45819
45861
|
const encodableVideoCodecs = useEncodableVideoCodecs(container61);
|
|
@@ -45841,7 +45883,10 @@ var WebRenderModal = ({
|
|
|
45841
45883
|
}
|
|
45842
45884
|
return Math.max(0, Math.min(finalEndFrame, startFrame));
|
|
45843
45885
|
}, [finalEndFrame, startFrame]);
|
|
45844
|
-
const [
|
|
45886
|
+
const [initialOutNameState] = useState85(() => {
|
|
45887
|
+
if (initialDefaultOutName) {
|
|
45888
|
+
return initialDefaultOutName;
|
|
45889
|
+
}
|
|
45845
45890
|
return getDefaultOutLocation2({
|
|
45846
45891
|
compositionName: resolvedComposition.id,
|
|
45847
45892
|
defaultExtension: renderMode === "still" ? imageFormat : isVideo ? container61 : imageFormat,
|
|
@@ -45850,7 +45895,7 @@ var WebRenderModal = ({
|
|
|
45850
45895
|
clientSideRender: true
|
|
45851
45896
|
});
|
|
45852
45897
|
});
|
|
45853
|
-
const [outName, setOutName] = useState85(() =>
|
|
45898
|
+
const [outName, setOutName] = useState85(() => initialOutNameState);
|
|
45854
45899
|
const setStillFormat = useCallback131((format) => {
|
|
45855
45900
|
setImageFormat(format);
|
|
45856
45901
|
setOutName((prev) => {
|
|
@@ -46557,14 +46602,7 @@ var Modals = ({ readOnlyStudio }) => {
|
|
|
46557
46602
|
}),
|
|
46558
46603
|
modalContextType && modalContextType.type === "input-props-override" && /* @__PURE__ */ jsx273(OverrideInputPropsModal, {}),
|
|
46559
46604
|
modalContextType && modalContextType.type === "web-render" && /* @__PURE__ */ jsx273(WebRenderModalWithLoader, {
|
|
46560
|
-
|
|
46561
|
-
initialFrame: modalContextType.initialFrame,
|
|
46562
|
-
compositionId: modalContextType.compositionId,
|
|
46563
|
-
defaultProps: modalContextType.defaultProps,
|
|
46564
|
-
inFrameMark: modalContextType.inFrameMark,
|
|
46565
|
-
outFrameMark: modalContextType.outFrameMark,
|
|
46566
|
-
initialLogLevel: modalContextType.initialLogLevel,
|
|
46567
|
-
initialLicenseKey: modalContextType.initialLicenseKey
|
|
46605
|
+
...modalContextType
|
|
46568
46606
|
}),
|
|
46569
46607
|
modalContextType && canRender && modalContextType.type === "server-render" && /* @__PURE__ */ jsx273(RenderModalWithLoader, {
|
|
46570
46608
|
initialFrame: modalContextType.initialFrame,
|
|
@@ -16767,7 +16767,21 @@ var makeClientRetryPayload = (job) => {
|
|
|
16767
16767
|
initialLicenseKey: job.licenseKey,
|
|
16768
16768
|
defaultProps: job.inputProps,
|
|
16769
16769
|
inFrameMark: job.type === "client-video" ? job.startFrame : null,
|
|
16770
|
-
outFrameMark: job.type === "client-video" ? job.endFrame : null
|
|
16770
|
+
outFrameMark: job.type === "client-video" ? job.endFrame : null,
|
|
16771
|
+
initialDefaultOutName: job.outName,
|
|
16772
|
+
initialScale: job.scale,
|
|
16773
|
+
initialDelayRenderTimeout: job.delayRenderTimeout,
|
|
16774
|
+
initialMediaCacheSizeInBytes: job.mediaCacheSizeInBytes,
|
|
16775
|
+
initialAudioBitrate: job.type === "client-video" ? job.audioBitrate : null,
|
|
16776
|
+
initialAudioCodec: job.type === "client-video" ? job.audioCodec : null,
|
|
16777
|
+
initialContainer: job.type === "client-video" ? job.container : null,
|
|
16778
|
+
initialHardwareAcceleration: job.type === "client-video" ? job.hardwareAcceleration : null,
|
|
16779
|
+
initialVideoBitrate: job.type === "client-video" ? job.videoBitrate : null,
|
|
16780
|
+
initialVideoCodec: job.type === "client-video" ? job.videoCodec : null,
|
|
16781
|
+
initialStillImageFormat: job.type === "client-still" ? job.imageFormat : "png",
|
|
16782
|
+
initialKeyframeIntervalInSeconds: job.type === "client-video" ? job.keyframeIntervalInSeconds : null,
|
|
16783
|
+
initialMuted: job.type === "client-video" ? job.muted : null,
|
|
16784
|
+
initialTransparent: job.type === "client-video" ? job.transparent : null
|
|
16771
16785
|
};
|
|
16772
16786
|
};
|
|
16773
16787
|
|
|
@@ -18624,7 +18638,21 @@ var RenderButton = ({
|
|
|
18624
18638
|
inFrameMark: inFrame,
|
|
18625
18639
|
outFrameMark: outFrame,
|
|
18626
18640
|
initialLogLevel: defaults.logLevel,
|
|
18627
|
-
initialLicenseKey: defaults.publicLicenseKey
|
|
18641
|
+
initialLicenseKey: defaults.publicLicenseKey,
|
|
18642
|
+
initialStillImageFormat: defaults.stillImageFormat,
|
|
18643
|
+
initialScale: defaults.scale,
|
|
18644
|
+
initialDelayRenderTimeout: defaults.delayRenderTimeout,
|
|
18645
|
+
initialDefaultOutName: null,
|
|
18646
|
+
initialContainer: null,
|
|
18647
|
+
initialVideoCodec: null,
|
|
18648
|
+
initialAudioCodec: null,
|
|
18649
|
+
initialAudioBitrate: null,
|
|
18650
|
+
initialVideoBitrate: null,
|
|
18651
|
+
initialHardwareAcceleration: null,
|
|
18652
|
+
initialKeyframeIntervalInSeconds: null,
|
|
18653
|
+
initialTransparent: null,
|
|
18654
|
+
initialMuted: null,
|
|
18655
|
+
initialMediaCacheSizeInBytes: defaults.mediaCacheSizeInBytes
|
|
18628
18656
|
});
|
|
18629
18657
|
}, [video, setSelectedModal, getCurrentFrame2, props, inFrame, outFrame]);
|
|
18630
18658
|
const onClick = useCallback89(() => {
|
|
@@ -46057,7 +46085,21 @@ var WebRenderModal = ({
|
|
|
46057
46085
|
inFrameMark,
|
|
46058
46086
|
outFrameMark,
|
|
46059
46087
|
initialLogLevel,
|
|
46060
|
-
initialLicenseKey
|
|
46088
|
+
initialLicenseKey,
|
|
46089
|
+
initialStillImageFormat,
|
|
46090
|
+
initialDefaultOutName,
|
|
46091
|
+
initialScale,
|
|
46092
|
+
initialDelayRenderTimeout,
|
|
46093
|
+
initialMediaCacheSizeInBytes,
|
|
46094
|
+
initialContainer,
|
|
46095
|
+
initialVideoCodec,
|
|
46096
|
+
initialAudioCodec,
|
|
46097
|
+
initialAudioBitrate,
|
|
46098
|
+
initialVideoBitrate,
|
|
46099
|
+
initialHardwareAcceleration,
|
|
46100
|
+
initialKeyframeIntervalInSeconds,
|
|
46101
|
+
initialTransparent,
|
|
46102
|
+
initialMuted
|
|
46061
46103
|
}) => {
|
|
46062
46104
|
const context = useContext84(ResolvedCompositionContext);
|
|
46063
46105
|
const { setSelectedModal } = useContext84(ModalsContext);
|
|
@@ -46075,25 +46117,25 @@ var WebRenderModal = ({
|
|
|
46075
46117
|
});
|
|
46076
46118
|
const [renderMode, setRenderMode] = useState86(isVideo ? "video" : "still");
|
|
46077
46119
|
const [tab, setTab] = useState86("general");
|
|
46078
|
-
const [imageFormat, setImageFormat] = useState86("png");
|
|
46120
|
+
const [imageFormat, setImageFormat] = useState86(() => initialStillImageFormat ?? "png");
|
|
46079
46121
|
const [frame2, setFrame] = useState86(() => initialFrame);
|
|
46080
46122
|
const [logLevel, setLogLevel] = useState86(() => initialLogLevel);
|
|
46081
46123
|
const [inputProps, setInputProps] = useState86(() => defaultProps);
|
|
46082
|
-
const [delayRenderTimeout, setDelayRenderTimeout] = useState86(30000);
|
|
46083
|
-
const [mediaCacheSizeInBytes, setMediaCacheSizeInBytes] = useState86(
|
|
46124
|
+
const [delayRenderTimeout, setDelayRenderTimeout] = useState86(initialDelayRenderTimeout ?? 30000);
|
|
46125
|
+
const [mediaCacheSizeInBytes, setMediaCacheSizeInBytes] = useState86(initialMediaCacheSizeInBytes);
|
|
46084
46126
|
const [saving, setSaving] = useState86(false);
|
|
46085
|
-
const [codec, setCodec] = useState86("h264");
|
|
46086
|
-
const [container61, setContainer] = useState86("mp4");
|
|
46087
|
-
const [audioCodec, setAudioCodec] = useState86("aac");
|
|
46088
|
-
const [audioBitrate, setAudioBitrate] = useState86("medium");
|
|
46089
|
-
const [videoBitrate, setVideoBitrate] = useState86("high");
|
|
46090
|
-
const [hardwareAcceleration, setHardwareAcceleration] = useState86("no-preference");
|
|
46091
|
-
const [keyframeIntervalInSeconds, setKeyframeIntervalInSeconds] = useState86(5);
|
|
46092
|
-
const [startFrame, setStartFrame] = useState86(() => inFrameMark
|
|
46093
|
-
const [endFrame, setEndFrame] = useState86(() => outFrameMark
|
|
46094
|
-
const [transparent, setTransparent] = useState86(false);
|
|
46095
|
-
const [muted, setMuted] = useState86(false);
|
|
46096
|
-
const [scale, setScale] = useState86(1);
|
|
46127
|
+
const [codec, setCodec] = useState86(initialVideoCodec ?? "h264");
|
|
46128
|
+
const [container61, setContainer] = useState86(initialContainer ?? "mp4");
|
|
46129
|
+
const [audioCodec, setAudioCodec] = useState86(initialAudioCodec ?? "aac");
|
|
46130
|
+
const [audioBitrate, setAudioBitrate] = useState86(initialAudioBitrate ?? "medium");
|
|
46131
|
+
const [videoBitrate, setVideoBitrate] = useState86(initialVideoBitrate ?? "high");
|
|
46132
|
+
const [hardwareAcceleration, setHardwareAcceleration] = useState86(initialHardwareAcceleration ?? "no-preference");
|
|
46133
|
+
const [keyframeIntervalInSeconds, setKeyframeIntervalInSeconds] = useState86(initialKeyframeIntervalInSeconds ?? 5);
|
|
46134
|
+
const [startFrame, setStartFrame] = useState86(() => inFrameMark);
|
|
46135
|
+
const [endFrame, setEndFrame] = useState86(() => outFrameMark);
|
|
46136
|
+
const [transparent, setTransparent] = useState86(initialTransparent ?? false);
|
|
46137
|
+
const [muted, setMuted] = useState86(initialMuted ?? false);
|
|
46138
|
+
const [scale, setScale] = useState86(initialScale ?? 1);
|
|
46097
46139
|
const [licenseKey, setLicenseKey] = useState86(initialLicenseKey);
|
|
46098
46140
|
const encodableAudioCodecs = useEncodableAudioCodecs(container61);
|
|
46099
46141
|
const encodableVideoCodecs = useEncodableVideoCodecs(container61);
|
|
@@ -46121,7 +46163,10 @@ var WebRenderModal = ({
|
|
|
46121
46163
|
}
|
|
46122
46164
|
return Math.max(0, Math.min(finalEndFrame, startFrame));
|
|
46123
46165
|
}, [finalEndFrame, startFrame]);
|
|
46124
|
-
const [
|
|
46166
|
+
const [initialOutNameState] = useState86(() => {
|
|
46167
|
+
if (initialDefaultOutName) {
|
|
46168
|
+
return initialDefaultOutName;
|
|
46169
|
+
}
|
|
46125
46170
|
return getDefaultOutLocation2({
|
|
46126
46171
|
compositionName: resolvedComposition.id,
|
|
46127
46172
|
defaultExtension: renderMode === "still" ? imageFormat : isVideo ? container61 : imageFormat,
|
|
@@ -46130,7 +46175,7 @@ var WebRenderModal = ({
|
|
|
46130
46175
|
clientSideRender: true
|
|
46131
46176
|
});
|
|
46132
46177
|
});
|
|
46133
|
-
const [outName, setOutName] = useState86(() =>
|
|
46178
|
+
const [outName, setOutName] = useState86(() => initialOutNameState);
|
|
46134
46179
|
const setStillFormat = useCallback132((format) => {
|
|
46135
46180
|
setImageFormat(format);
|
|
46136
46181
|
setOutName((prev) => {
|
|
@@ -46837,14 +46882,7 @@ var Modals = ({ readOnlyStudio }) => {
|
|
|
46837
46882
|
}),
|
|
46838
46883
|
modalContextType && modalContextType.type === "input-props-override" && /* @__PURE__ */ jsx274(OverrideInputPropsModal, {}),
|
|
46839
46884
|
modalContextType && modalContextType.type === "web-render" && /* @__PURE__ */ jsx274(WebRenderModalWithLoader, {
|
|
46840
|
-
|
|
46841
|
-
initialFrame: modalContextType.initialFrame,
|
|
46842
|
-
compositionId: modalContextType.compositionId,
|
|
46843
|
-
defaultProps: modalContextType.defaultProps,
|
|
46844
|
-
inFrameMark: modalContextType.inFrameMark,
|
|
46845
|
-
outFrameMark: modalContextType.outFrameMark,
|
|
46846
|
-
initialLogLevel: modalContextType.initialLogLevel,
|
|
46847
|
-
initialLicenseKey: modalContextType.initialLicenseKey
|
|
46885
|
+
...modalContextType
|
|
46848
46886
|
}),
|
|
46849
46887
|
modalContextType && canRender && modalContextType.type === "server-render" && /* @__PURE__ */ jsx274(RenderModalWithLoader, {
|
|
46850
46888
|
initialFrame: modalContextType.initialFrame,
|
package/dist/esm/renderEntry.mjs
CHANGED
|
@@ -206,7 +206,7 @@ var renderContent = (Root) => {
|
|
|
206
206
|
renderToDOM(/* @__PURE__ */ jsx("div", {
|
|
207
207
|
children: /* @__PURE__ */ jsx(DelayedSpinner, {})
|
|
208
208
|
}));
|
|
209
|
-
import("./chunk-
|
|
209
|
+
import("./chunk-t3rf3vkq.js").then(({ StudioInternals }) => {
|
|
210
210
|
window.remotion_isStudio = true;
|
|
211
211
|
window.remotion_isReadOnlyStudio = true;
|
|
212
212
|
window.remotion_inputProps = "{}";
|
|
@@ -177,6 +177,22 @@ const makeClientRetryPayload = (job) => {
|
|
|
177
177
|
defaultProps: job.inputProps,
|
|
178
178
|
inFrameMark: job.type === 'client-video' ? job.startFrame : null,
|
|
179
179
|
outFrameMark: job.type === 'client-video' ? job.endFrame : null,
|
|
180
|
+
initialDefaultOutName: job.outName,
|
|
181
|
+
initialScale: job.scale,
|
|
182
|
+
initialDelayRenderTimeout: job.delayRenderTimeout,
|
|
183
|
+
initialMediaCacheSizeInBytes: job.mediaCacheSizeInBytes,
|
|
184
|
+
initialAudioBitrate: job.type === 'client-video' ? job.audioBitrate : null,
|
|
185
|
+
initialAudioCodec: job.type === 'client-video' ? job.audioCodec : null,
|
|
186
|
+
initialContainer: job.type === 'client-video' ? job.container : null,
|
|
187
|
+
initialHardwareAcceleration: job.type === 'client-video'
|
|
188
|
+
? job.hardwareAcceleration
|
|
189
|
+
: null,
|
|
190
|
+
initialVideoBitrate: job.type === 'client-video' ? job.videoBitrate : null,
|
|
191
|
+
initialVideoCodec: job.type === 'client-video' ? job.videoCodec : null,
|
|
192
|
+
initialStillImageFormat: job.type === 'client-still' ? job.imageFormat : 'png',
|
|
193
|
+
initialKeyframeIntervalInSeconds: job.type === 'client-video' ? job.keyframeIntervalInSeconds : null,
|
|
194
|
+
initialMuted: job.type === 'client-video' ? job.muted : null,
|
|
195
|
+
initialTransparent: job.type === 'client-video' ? job.transparent : null,
|
|
180
196
|
};
|
|
181
197
|
};
|
|
182
198
|
exports.makeClientRetryPayload = makeClientRetryPayload;
|
package/dist/state/modals.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { AudioCodec, ChromeMode, Codec, ColorSpace, LogLevel, OpenGlRenderer, PixelFormat, StillImageFormat, VideoImageFormat, X264Preset } from '@remotion/renderer';
|
|
2
2
|
import type { HardwareAccelerationOption } from '@remotion/renderer/client';
|
|
3
3
|
import type { PackageManager, RenderDefaults } from '@remotion/studio-shared';
|
|
4
|
+
import type { RenderStillOnWebImageFormat, WebRendererAudioCodec, WebRendererContainer, WebRendererHardwareAcceleration, WebRendererQuality, WebRendererVideoCodec } from '@remotion/web-renderer';
|
|
4
5
|
import type React from 'react';
|
|
5
6
|
import type { _InternalTypes } from 'remotion';
|
|
6
7
|
import type { CompType } from '../components/NewComposition/DuplicateComposition';
|
|
@@ -15,7 +16,21 @@ export type WebRenderModalState = {
|
|
|
15
16
|
inFrameMark: number | null;
|
|
16
17
|
outFrameMark: number | null;
|
|
17
18
|
initialLogLevel: LogLevel;
|
|
19
|
+
initialStillImageFormat: RenderStillOnWebImageFormat;
|
|
20
|
+
initialScale: number;
|
|
21
|
+
initialDelayRenderTimeout: number;
|
|
22
|
+
initialDefaultOutName: string | null;
|
|
23
|
+
initialContainer: WebRendererContainer | null;
|
|
24
|
+
initialVideoCodec: WebRendererVideoCodec | null;
|
|
25
|
+
initialAudioCodec: WebRendererAudioCodec | null;
|
|
26
|
+
initialAudioBitrate: WebRendererQuality | null;
|
|
27
|
+
initialVideoBitrate: WebRendererQuality | null;
|
|
28
|
+
initialHardwareAcceleration: WebRendererHardwareAcceleration | null;
|
|
29
|
+
initialKeyframeIntervalInSeconds: number | null;
|
|
30
|
+
initialTransparent: boolean | null;
|
|
31
|
+
initialMuted: boolean | null;
|
|
18
32
|
initialLicenseKey: string | null;
|
|
33
|
+
initialMediaCacheSizeInBytes: number | null;
|
|
19
34
|
};
|
|
20
35
|
export type RenderModalState = {
|
|
21
36
|
type: 'server-render';
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"url": "https://github.com/remotion-dev/remotion/tree/main/packages/studio"
|
|
4
4
|
},
|
|
5
5
|
"name": "@remotion/studio",
|
|
6
|
-
"version": "4.0.
|
|
6
|
+
"version": "4.0.412",
|
|
7
7
|
"description": "APIs for interacting with the Remotion Studio",
|
|
8
8
|
"main": "dist",
|
|
9
9
|
"sideEffects": false,
|
|
@@ -25,13 +25,13 @@
|
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
27
|
"semver": "7.5.3",
|
|
28
|
-
"remotion": "4.0.
|
|
29
|
-
"@remotion/player": "4.0.
|
|
30
|
-
"@remotion/media-utils": "4.0.
|
|
31
|
-
"@remotion/renderer": "4.0.
|
|
32
|
-
"@remotion/web-renderer": "4.0.
|
|
33
|
-
"@remotion/studio-shared": "4.0.
|
|
34
|
-
"@remotion/zod-types": "4.0.
|
|
28
|
+
"remotion": "4.0.411",
|
|
29
|
+
"@remotion/player": "4.0.411",
|
|
30
|
+
"@remotion/media-utils": "4.0.411",
|
|
31
|
+
"@remotion/renderer": "4.0.411",
|
|
32
|
+
"@remotion/web-renderer": "4.0.411",
|
|
33
|
+
"@remotion/studio-shared": "4.0.411",
|
|
34
|
+
"@remotion/zod-types": "4.0.411",
|
|
35
35
|
"mediabunny": "1.29.0",
|
|
36
36
|
"memfs": "3.4.3",
|
|
37
37
|
"source-map": "0.7.3",
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"react": "19.2.3",
|
|
43
43
|
"react-dom": "19.2.3",
|
|
44
44
|
"@types/semver": "^7.3.4",
|
|
45
|
-
"@remotion/eslint-config-internal": "4.0.
|
|
45
|
+
"@remotion/eslint-config-internal": "4.0.411",
|
|
46
46
|
"eslint": "9.19.0"
|
|
47
47
|
},
|
|
48
48
|
"publishConfig": {
|