@remotion/studio 4.0.433 → 4.0.434
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/CurrentCompositionSideEffects.js +2 -4
- package/dist/components/Modals.js +3 -2
- package/dist/components/PreviewToolbar.js +1 -2
- package/dist/components/RenderButton.d.ts +1 -1
- package/dist/components/RenderButton.js +64 -17
- package/dist/components/RenderModal/RenderModalBasic.d.ts +1 -0
- package/dist/components/RenderModal/RenderModalBasic.js +2 -2
- package/dist/components/RenderModal/ServerRenderModal.d.ts +1 -0
- package/dist/components/RenderModal/ServerRenderModal.js +170 -5
- package/dist/components/RenderModal/WebRenderModalAudio.js +3 -2
- package/dist/components/SidebarRenderButton.js +1 -0
- package/dist/esm/{chunk-bd1bkakk.js → chunk-t3wtt582.js} +505 -79
- package/dist/esm/internals.mjs +505 -79
- package/dist/esm/previewEntry.mjs +505 -79
- package/dist/esm/renderEntry.mjs +1 -1
- package/dist/helpers/make-render-command.d.ts +51 -0
- package/dist/helpers/make-render-command.js +201 -0
- package/dist/helpers/retry-payload.js +3 -0
- package/dist/state/modals.d.ts +1 -0
- package/package.json +9 -9
- package/dist/helpers/should-show-render-button.d.ts +0 -1
- package/dist/helpers/should-show-render-button.js +0 -11
package/dist/esm/renderEntry.mjs
CHANGED
|
@@ -208,7 +208,7 @@ var renderContent = (Root) => {
|
|
|
208
208
|
renderToDOM(/* @__PURE__ */ jsx("div", {
|
|
209
209
|
children: /* @__PURE__ */ jsx(DelayedSpinner, {})
|
|
210
210
|
}));
|
|
211
|
-
import("./chunk-
|
|
211
|
+
import("./chunk-t3wtt582.js").then(({ StudioInternals }) => {
|
|
212
212
|
window.remotion_isStudio = true;
|
|
213
213
|
window.remotion_isReadOnlyStudio = true;
|
|
214
214
|
window.remotion_inputProps = "{}";
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import type { RenderFramesOptions, RenderMediaOptions, RenderStillOptions } from '@remotion/renderer';
|
|
2
|
+
import type { RenderDefaults } from '@remotion/studio-shared';
|
|
3
|
+
import type { renderMediaOnWeb } from '@remotion/web-renderer';
|
|
4
|
+
type RenderMode = 'still' | 'video' | 'audio' | 'sequence';
|
|
5
|
+
export declare const getNpmRemotionCommandPrefix: (version: string) => string;
|
|
6
|
+
export declare const normalizeServeUrlForRenderCommand: ({ locationHref, compositionId, }: {
|
|
7
|
+
locationHref: string;
|
|
8
|
+
compositionId: string;
|
|
9
|
+
}) => string;
|
|
10
|
+
type StrictRequired<T> = {
|
|
11
|
+
[K in keyof T]-?: Exclude<T[K], undefined>;
|
|
12
|
+
};
|
|
13
|
+
type RenderMediaCommandOptions = Omit<StrictRequired<Pick<RenderMediaOptions, 'codec' | 'crf' | 'concurrency' | 'disallowParallelEncoding' | 'muted' | 'enforceAudioTrack' | 'everyNthFrame' | 'numberOfGifLoops' | 'colorSpace' | 'scale' | 'logLevel' | 'repro' | 'metadata' | 'jpegQuality' | 'pixelFormat' | 'proResProfile' | 'x264Preset' | 'audioCodec' | 'forSeamlessAacConcatenation' | 'separateAudioTo' | 'hardwareAcceleration' | 'chromeMode' | 'offthreadVideoCacheSizeInBytes' | 'offthreadVideoThreads' | 'mediaCacheSizeInBytes' | 'audioBitrate' | 'videoBitrate' | 'encodingMaxRate' | 'encodingBufferSize'>>, 'audioBitrate' | 'videoBitrate' | 'encodingMaxRate' | 'encodingBufferSize' | 'jpegQuality' | 'proResProfile'> & {
|
|
14
|
+
audioBitrate: string | null;
|
|
15
|
+
videoBitrate: string | null;
|
|
16
|
+
encodingMaxRate: string | null;
|
|
17
|
+
encodingBufferSize: string | null;
|
|
18
|
+
jpegQuality: Exclude<RenderMediaOptions['jpegQuality'], undefined> | null;
|
|
19
|
+
proResProfile: Exclude<RenderMediaOptions['proResProfile'], undefined> | null;
|
|
20
|
+
};
|
|
21
|
+
type RenderStillCommandOptions = StrictRequired<Pick<RenderStillOptions, 'frame'>>;
|
|
22
|
+
type RenderFramesSharedOptions = StrictRequired<Pick<RenderFramesOptions, 'concurrency' | 'everyNthFrame' | 'scale' | 'logLevel'>>;
|
|
23
|
+
type RenderMediaOnWebInput = Parameters<typeof renderMediaOnWeb>[0];
|
|
24
|
+
type CrossRendererOptions = StrictRequired<Pick<RenderMediaOnWebInput, 'muted' | 'scale' | 'logLevel'>>;
|
|
25
|
+
type ReadOnlyStudioRenderCommandInput = RenderMediaCommandOptions & RenderStillCommandOptions & RenderFramesSharedOptions & CrossRendererOptions & {
|
|
26
|
+
remotionVersion: string;
|
|
27
|
+
locationHref: string;
|
|
28
|
+
compositionId: string;
|
|
29
|
+
outName: string;
|
|
30
|
+
renderMode: RenderMode;
|
|
31
|
+
renderDefaults: RenderDefaults;
|
|
32
|
+
durationInFrames: number;
|
|
33
|
+
startFrame: number;
|
|
34
|
+
endFrame: number;
|
|
35
|
+
stillImageFormat: RenderDefaults['stillImageFormat'];
|
|
36
|
+
sequenceImageFormat: RenderDefaults['videoImageFormat'];
|
|
37
|
+
videoImageFormat: RenderDefaults['videoImageFormat'];
|
|
38
|
+
delayRenderTimeout: number;
|
|
39
|
+
headless: boolean;
|
|
40
|
+
disableWebSecurity: boolean;
|
|
41
|
+
ignoreCertificateErrors: boolean;
|
|
42
|
+
gl: RenderDefaults['openGlRenderer'];
|
|
43
|
+
userAgent: string | null;
|
|
44
|
+
multiProcessOnLinux: boolean;
|
|
45
|
+
darkMode: boolean;
|
|
46
|
+
beepOnFinish: boolean;
|
|
47
|
+
envVariables: Record<string, string>;
|
|
48
|
+
inputProps: Record<string, unknown>;
|
|
49
|
+
};
|
|
50
|
+
export declare const makeReadOnlyStudioRenderCommand: ({ remotionVersion, locationHref, compositionId, outName, renderMode, renderDefaults, durationInFrames, concurrency, frame, startFrame, endFrame, stillImageFormat, sequenceImageFormat, videoImageFormat, jpegQuality, codec, muted, enforceAudioTrack, proResProfile, x264Preset, pixelFormat, crf, videoBitrate, audioBitrate, audioCodec, everyNthFrame, numberOfGifLoops, disallowParallelEncoding, encodingBufferSize, encodingMaxRate, forSeamlessAacConcatenation, separateAudioTo, colorSpace, scale, logLevel, delayRenderTimeout, hardwareAcceleration, chromeMode, headless, disableWebSecurity, ignoreCertificateErrors, gl, userAgent, multiProcessOnLinux, darkMode, offthreadVideoCacheSizeInBytes, offthreadVideoThreads, mediaCacheSizeInBytes, beepOnFinish, repro, metadata, envVariables, inputProps, }: ReadOnlyStudioRenderCommandInput) => string;
|
|
51
|
+
export {};
|
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.makeReadOnlyStudioRenderCommand = exports.normalizeServeUrlForRenderCommand = exports.getNpmRemotionCommandPrefix = void 0;
|
|
4
|
+
const client_1 = require("@remotion/renderer/client");
|
|
5
|
+
const shellQuote = (value) => {
|
|
6
|
+
return `'${value.replace(/'/g, "'\\''")}'`;
|
|
7
|
+
};
|
|
8
|
+
const addFlagWithValue = (flags, flag, value) => {
|
|
9
|
+
if (value === null || value === undefined) {
|
|
10
|
+
return;
|
|
11
|
+
}
|
|
12
|
+
flags.push(`--${flag}=${shellQuote(String(value))}`);
|
|
13
|
+
};
|
|
14
|
+
const addBooleanFlag = (flags, flag, value) => {
|
|
15
|
+
if (value) {
|
|
16
|
+
flags.push(`--${flag}`);
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
const valueFlag = (flag, value, defaultValue) => {
|
|
20
|
+
return { flag, value, defaultValue };
|
|
21
|
+
};
|
|
22
|
+
const booleanFlag = (flag, value, defaultValue) => {
|
|
23
|
+
return { flag, value, defaultValue };
|
|
24
|
+
};
|
|
25
|
+
const addValueFlagsIfChanged = (flags, mappings) => {
|
|
26
|
+
for (const mapping of mappings) {
|
|
27
|
+
if (mapping.value !== mapping.defaultValue) {
|
|
28
|
+
addFlagWithValue(flags, mapping.flag, mapping.value);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
const addTrueBooleanFlagsIfChanged = (flags, mappings) => {
|
|
33
|
+
for (const mapping of mappings) {
|
|
34
|
+
if (mapping.value && mapping.value !== mapping.defaultValue) {
|
|
35
|
+
addBooleanFlag(flags, mapping.flag, true);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
const getNpmRemotionCommandPrefix = (version) => {
|
|
40
|
+
return version.trim() === ''
|
|
41
|
+
? 'npx --yes --location=global -p @remotion/cli remotion'
|
|
42
|
+
: `npx --yes --location=global -p @remotion/cli@${version} remotion`;
|
|
43
|
+
};
|
|
44
|
+
exports.getNpmRemotionCommandPrefix = getNpmRemotionCommandPrefix;
|
|
45
|
+
const normalizeServeUrlForRenderCommand = ({ locationHref, compositionId, }) => {
|
|
46
|
+
const parsed = new URL(locationHref);
|
|
47
|
+
parsed.hash = '';
|
|
48
|
+
parsed.search = '';
|
|
49
|
+
const suffix = `/${compositionId}`;
|
|
50
|
+
if (parsed.pathname === suffix) {
|
|
51
|
+
parsed.pathname = '/';
|
|
52
|
+
}
|
|
53
|
+
else if (parsed.pathname.endsWith(suffix)) {
|
|
54
|
+
const basePath = parsed.pathname.slice(0, -suffix.length);
|
|
55
|
+
parsed.pathname = basePath === '' ? '/' : basePath;
|
|
56
|
+
}
|
|
57
|
+
if (parsed.pathname !== '/' && parsed.pathname.endsWith('/')) {
|
|
58
|
+
parsed.pathname = parsed.pathname.slice(0, -1);
|
|
59
|
+
}
|
|
60
|
+
return `${parsed.origin}${parsed.pathname === '/' ? '' : parsed.pathname}`;
|
|
61
|
+
};
|
|
62
|
+
exports.normalizeServeUrlForRenderCommand = normalizeServeUrlForRenderCommand;
|
|
63
|
+
const trimDefaultOutPrefix = (outName) => {
|
|
64
|
+
if (outName.startsWith('out/')) {
|
|
65
|
+
const trimmed = outName.slice('out/'.length);
|
|
66
|
+
return trimmed.length === 0 ? outName : trimmed;
|
|
67
|
+
}
|
|
68
|
+
if (outName.startsWith('./out/')) {
|
|
69
|
+
const trimmed = outName.slice('./out/'.length);
|
|
70
|
+
return trimmed.length === 0 ? outName : trimmed;
|
|
71
|
+
}
|
|
72
|
+
return outName;
|
|
73
|
+
};
|
|
74
|
+
const getRenderMediaFlag = (option) => {
|
|
75
|
+
return client_1.BrowserSafeApis.optionsMap.renderMedia[option].cliFlag;
|
|
76
|
+
};
|
|
77
|
+
const renderMediaValueFlag = (option, value, defaultValue) => {
|
|
78
|
+
return valueFlag(getRenderMediaFlag(option), value, defaultValue);
|
|
79
|
+
};
|
|
80
|
+
const renderMediaBooleanFlag = (option, value, defaultValue) => {
|
|
81
|
+
return booleanFlag(getRenderMediaFlag(option), value, defaultValue);
|
|
82
|
+
};
|
|
83
|
+
const makeReadOnlyStudioRenderCommand = ({ remotionVersion, locationHref, compositionId, outName, renderMode, renderDefaults, durationInFrames, concurrency, frame, startFrame, endFrame, stillImageFormat, sequenceImageFormat, videoImageFormat, jpegQuality, codec, muted, enforceAudioTrack, proResProfile, x264Preset, pixelFormat, crf, videoBitrate, audioBitrate, audioCodec, everyNthFrame, numberOfGifLoops, disallowParallelEncoding, encodingBufferSize, encodingMaxRate, forSeamlessAacConcatenation, separateAudioTo, colorSpace, scale, logLevel, delayRenderTimeout, hardwareAcceleration, chromeMode, headless, disableWebSecurity, ignoreCertificateErrors, gl, userAgent, multiProcessOnLinux, darkMode, offthreadVideoCacheSizeInBytes, offthreadVideoThreads, mediaCacheSizeInBytes, beepOnFinish, repro, metadata, envVariables, inputProps, }) => {
|
|
84
|
+
var _a;
|
|
85
|
+
const serveUrl = (0, exports.normalizeServeUrlForRenderCommand)({
|
|
86
|
+
locationHref,
|
|
87
|
+
compositionId,
|
|
88
|
+
});
|
|
89
|
+
const isStillRender = renderMode === 'still';
|
|
90
|
+
const isSequenceRender = renderMode === 'sequence';
|
|
91
|
+
const hasCodecSpecificOptions = !isSequenceRender;
|
|
92
|
+
const commandType = isStillRender ? 'still' : 'render';
|
|
93
|
+
const command = (0, exports.getNpmRemotionCommandPrefix)(remotionVersion);
|
|
94
|
+
const { options } = client_1.BrowserSafeApis;
|
|
95
|
+
const flags = [];
|
|
96
|
+
addValueFlagsIfChanged(flags, [
|
|
97
|
+
valueFlag(options.scaleOption.cliFlag, scale, renderDefaults.scale),
|
|
98
|
+
renderMediaValueFlag('logLevel', logLevel, renderDefaults.logLevel),
|
|
99
|
+
renderMediaValueFlag('timeoutInMilliseconds', delayRenderTimeout, renderDefaults.delayRenderTimeout),
|
|
100
|
+
renderMediaValueFlag('chromeMode', chromeMode, renderDefaults.chromeMode),
|
|
101
|
+
valueFlag(options.glOption.cliFlag, gl, renderDefaults.openGlRenderer),
|
|
102
|
+
valueFlag(options.userAgentOption.cliFlag, userAgent, renderDefaults.userAgent),
|
|
103
|
+
renderMediaValueFlag('offthreadVideoCacheSizeInBytes', offthreadVideoCacheSizeInBytes, renderDefaults.offthreadVideoCacheSizeInBytes),
|
|
104
|
+
renderMediaValueFlag('offthreadVideoThreads', offthreadVideoThreads, renderDefaults.offthreadVideoThreads),
|
|
105
|
+
renderMediaValueFlag('mediaCacheSizeInBytes', mediaCacheSizeInBytes, renderDefaults.mediaCacheSizeInBytes),
|
|
106
|
+
]);
|
|
107
|
+
if (headless !== renderDefaults.headless) {
|
|
108
|
+
addFlagWithValue(flags, options.headlessOption.cliFlag, !headless);
|
|
109
|
+
}
|
|
110
|
+
addTrueBooleanFlagsIfChanged(flags, [
|
|
111
|
+
booleanFlag(options.disableWebSecurityOption.cliFlag, disableWebSecurity, renderDefaults.disableWebSecurity),
|
|
112
|
+
booleanFlag(options.ignoreCertificateErrorsOption.cliFlag, ignoreCertificateErrors, renderDefaults.ignoreCertificateErrors),
|
|
113
|
+
booleanFlag(options.enableMultiprocessOnLinuxOption.cliFlag, multiProcessOnLinux, renderDefaults.multiProcessOnLinux),
|
|
114
|
+
booleanFlag(options.darkModeOption.cliFlag, darkMode, renderDefaults.darkMode),
|
|
115
|
+
booleanFlag(options.beepOnFinishOption.cliFlag, beepOnFinish, renderDefaults.beepOnFinish),
|
|
116
|
+
]);
|
|
117
|
+
if (isStillRender) {
|
|
118
|
+
addValueFlagsIfChanged(flags, [
|
|
119
|
+
valueFlag(options.stillFrameOption.cliFlag, frame, 0),
|
|
120
|
+
valueFlag(options.stillImageFormatOption.cliFlag, stillImageFormat, renderDefaults.stillImageFormat),
|
|
121
|
+
valueFlag(options.jpegQualityOption.cliFlag, jpegQuality, renderDefaults.jpegQuality),
|
|
122
|
+
]);
|
|
123
|
+
}
|
|
124
|
+
else {
|
|
125
|
+
addValueFlagsIfChanged(flags, [
|
|
126
|
+
valueFlag(options.concurrencyOption.cliFlag, concurrency, renderDefaults.concurrency),
|
|
127
|
+
]);
|
|
128
|
+
if (isSequenceRender) {
|
|
129
|
+
addBooleanFlag(flags, options.imageSequenceOption.cliFlag, true);
|
|
130
|
+
if (sequenceImageFormat !== 'jpeg') {
|
|
131
|
+
addFlagWithValue(flags, options.videoImageFormatOption.cliFlag, sequenceImageFormat);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
else {
|
|
135
|
+
addValueFlagsIfChanged(flags, [
|
|
136
|
+
valueFlag(options.videoImageFormatOption.cliFlag, videoImageFormat, renderDefaults.videoImageFormat),
|
|
137
|
+
renderMediaValueFlag('hardwareAcceleration', hardwareAcceleration, renderDefaults.hardwareAcceleration),
|
|
138
|
+
]);
|
|
139
|
+
}
|
|
140
|
+
if (hasCodecSpecificOptions && codec !== renderDefaults.codec) {
|
|
141
|
+
addFlagWithValue(flags, getRenderMediaFlag('codec'), codec);
|
|
142
|
+
}
|
|
143
|
+
if (startFrame !== 0 || endFrame !== durationInFrames - 1) {
|
|
144
|
+
addFlagWithValue(flags, options.framesOption.cliFlag, `${startFrame}-${endFrame}`);
|
|
145
|
+
}
|
|
146
|
+
if (hasCodecSpecificOptions) {
|
|
147
|
+
addTrueBooleanFlagsIfChanged(flags, [
|
|
148
|
+
renderMediaBooleanFlag('muted', muted, renderDefaults.muted),
|
|
149
|
+
booleanFlag(options.enforceAudioOption.cliFlag, enforceAudioTrack, renderDefaults.enforceAudioTrack),
|
|
150
|
+
renderMediaBooleanFlag('forSeamlessAacConcatenation', forSeamlessAacConcatenation, renderDefaults.forSeamlessAacConcatenation),
|
|
151
|
+
]);
|
|
152
|
+
addValueFlagsIfChanged(flags, [
|
|
153
|
+
valueFlag(options.pixelFormatOption.cliFlag, pixelFormat, renderDefaults.pixelFormat),
|
|
154
|
+
renderMediaValueFlag('colorSpace', colorSpace, renderDefaults.colorSpace),
|
|
155
|
+
valueFlag(options.proResProfileOption.cliFlag, proResProfile, renderDefaults.proResProfile),
|
|
156
|
+
renderMediaValueFlag('x264Preset', x264Preset, renderDefaults.x264Preset),
|
|
157
|
+
valueFlag(options.crfOption.cliFlag, crf, null),
|
|
158
|
+
valueFlag(options.jpegQualityOption.cliFlag, jpegQuality, renderDefaults.jpegQuality),
|
|
159
|
+
renderMediaValueFlag('videoBitrate', videoBitrate, renderDefaults.videoBitrate),
|
|
160
|
+
renderMediaValueFlag('audioBitrate', audioBitrate, renderDefaults.audioBitrate),
|
|
161
|
+
valueFlag(options.everyNthFrameOption.cliFlag, everyNthFrame, renderDefaults.everyNthFrame),
|
|
162
|
+
renderMediaValueFlag('numberOfGifLoops', numberOfGifLoops, renderDefaults.numberOfGifLoops),
|
|
163
|
+
renderMediaValueFlag('encodingBufferSize', encodingBufferSize, renderDefaults.encodingBufferSize),
|
|
164
|
+
renderMediaValueFlag('encodingMaxRate', encodingMaxRate, renderDefaults.encodingMaxRate),
|
|
165
|
+
renderMediaValueFlag('separateAudioTo', separateAudioTo, null),
|
|
166
|
+
]);
|
|
167
|
+
const defaultAudioCodec = (_a = client_1.BrowserSafeApis.defaultAudioCodecs[codec]) === null || _a === void 0 ? void 0 : _a.compressed;
|
|
168
|
+
if (audioCodec !== defaultAudioCodec) {
|
|
169
|
+
addFlagWithValue(flags, getRenderMediaFlag('audioCodec'), audioCodec);
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
addTrueBooleanFlagsIfChanged(flags, [
|
|
173
|
+
renderMediaBooleanFlag('disallowParallelEncoding', disallowParallelEncoding, false),
|
|
174
|
+
renderMediaBooleanFlag('repro', repro, renderDefaults.repro),
|
|
175
|
+
]);
|
|
176
|
+
}
|
|
177
|
+
if (metadata) {
|
|
178
|
+
for (const [key, value] of Object.entries(metadata)) {
|
|
179
|
+
addFlagWithValue(flags, options.metadataOption.cliFlag, `${key}=${value}`);
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
if (Object.keys(inputProps).length > 0) {
|
|
183
|
+
addFlagWithValue(flags, options.propsOption.cliFlag, JSON.stringify(inputProps));
|
|
184
|
+
}
|
|
185
|
+
const envArgs = Object.entries(envVariables)
|
|
186
|
+
.sort(([a], [b]) => a.localeCompare(b))
|
|
187
|
+
.map(([key, value]) => shellQuote(`${key}=${value}`));
|
|
188
|
+
const renderCommand = [
|
|
189
|
+
command,
|
|
190
|
+
commandType,
|
|
191
|
+
shellQuote(serveUrl),
|
|
192
|
+
shellQuote(compositionId),
|
|
193
|
+
shellQuote(trimDefaultOutPrefix(outName)),
|
|
194
|
+
...flags,
|
|
195
|
+
].join(' ');
|
|
196
|
+
if (envArgs.length === 0) {
|
|
197
|
+
return renderCommand;
|
|
198
|
+
}
|
|
199
|
+
return ['env', ...envArgs, renderCommand].join(' ');
|
|
200
|
+
};
|
|
201
|
+
exports.makeReadOnlyStudioRenderCommand = makeReadOnlyStudioRenderCommand;
|
|
@@ -58,6 +58,7 @@ const makeRetryPayload = (job) => {
|
|
|
58
58
|
initialChromeMode: job.chromeMode,
|
|
59
59
|
initialMediaCacheSizeInBytes: job.mediaCacheSizeInBytes,
|
|
60
60
|
renderDefaults: defaults,
|
|
61
|
+
readOnlyStudio: false,
|
|
61
62
|
};
|
|
62
63
|
}
|
|
63
64
|
if (job.type === 'sequence') {
|
|
@@ -110,6 +111,7 @@ const makeRetryPayload = (job) => {
|
|
|
110
111
|
initialChromeMode: job.chromeMode,
|
|
111
112
|
initialMediaCacheSizeInBytes: job.mediaCacheSizeInBytes,
|
|
112
113
|
renderDefaults: defaults,
|
|
114
|
+
readOnlyStudio: false,
|
|
113
115
|
};
|
|
114
116
|
}
|
|
115
117
|
if (job.type === 'video') {
|
|
@@ -162,6 +164,7 @@ const makeRetryPayload = (job) => {
|
|
|
162
164
|
initialChromeMode: job.chromeMode,
|
|
163
165
|
initialMediaCacheSizeInBytes: job.mediaCacheSizeInBytes,
|
|
164
166
|
renderDefaults: defaults,
|
|
167
|
+
readOnlyStudio: false,
|
|
165
168
|
};
|
|
166
169
|
}
|
|
167
170
|
throw new Error(`Job ${JSON.stringify(job)} Not implemented`);
|
package/dist/state/modals.d.ts
CHANGED
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.434",
|
|
7
7
|
"description": "APIs for interacting with the Remotion Studio",
|
|
8
8
|
"main": "dist",
|
|
9
9
|
"sideEffects": false,
|
|
@@ -26,13 +26,13 @@
|
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
28
|
"semver": "7.5.3",
|
|
29
|
-
"remotion": "4.0.
|
|
30
|
-
"@remotion/player": "4.0.
|
|
31
|
-
"@remotion/media-utils": "4.0.
|
|
32
|
-
"@remotion/renderer": "4.0.
|
|
33
|
-
"@remotion/web-renderer": "4.0.
|
|
34
|
-
"@remotion/studio-shared": "4.0.
|
|
35
|
-
"@remotion/zod-types": "4.0.
|
|
29
|
+
"remotion": "4.0.434",
|
|
30
|
+
"@remotion/player": "4.0.434",
|
|
31
|
+
"@remotion/media-utils": "4.0.434",
|
|
32
|
+
"@remotion/renderer": "4.0.434",
|
|
33
|
+
"@remotion/web-renderer": "4.0.434",
|
|
34
|
+
"@remotion/studio-shared": "4.0.434",
|
|
35
|
+
"@remotion/zod-types": "4.0.434",
|
|
36
36
|
"mediabunny": "1.37.0",
|
|
37
37
|
"memfs": "3.4.3",
|
|
38
38
|
"source-map": "0.7.3",
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
"react": "19.2.3",
|
|
44
44
|
"react-dom": "19.2.3",
|
|
45
45
|
"@types/semver": "^7.3.4",
|
|
46
|
-
"@remotion/eslint-config-internal": "4.0.
|
|
46
|
+
"@remotion/eslint-config-internal": "4.0.434",
|
|
47
47
|
"eslint": "9.19.0",
|
|
48
48
|
"@typescript/native-preview": "7.0.0-dev.20260217.1"
|
|
49
49
|
},
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const shouldShowRenderButton: (readOnlyStudio: boolean) => boolean;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.shouldShowRenderButton = void 0;
|
|
4
|
-
const show_browser_rendering_1 = require("./show-browser-rendering");
|
|
5
|
-
const shouldShowRenderButton = (readOnlyStudio) => {
|
|
6
|
-
if (readOnlyStudio) {
|
|
7
|
-
return show_browser_rendering_1.SHOW_BROWSER_RENDERING;
|
|
8
|
-
}
|
|
9
|
-
return true;
|
|
10
|
-
};
|
|
11
|
-
exports.shouldShowRenderButton = shouldShowRenderButton;
|