@remotion/studio 4.0.447 → 4.0.449
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 +1 -0
- package/dist/components/RenderModal/RenderModalAudio.d.ts +2 -0
- package/dist/components/RenderModal/RenderModalAudio.js +20 -1
- package/dist/components/RenderModal/ServerRenderModal.d.ts +1 -0
- package/dist/components/RenderModal/ServerRenderModal.js +7 -2
- package/dist/components/RenderQueue/actions.d.ts +2 -1
- package/dist/components/RenderQueue/actions.js +2 -1
- package/dist/components/SidebarRenderButton.js +1 -0
- package/dist/error-overlay/react-overlay/listen-to-runtime-errors.js +2 -1
- package/dist/error-overlay/remotion-overlay/CalculateMetadataErrorExplainer.js +1 -1
- package/dist/esm/{chunk-ase93hmz.js → chunk-v2r2309d.js} +159 -97
- package/dist/esm/internals.mjs +159 -97
- package/dist/esm/previewEntry.mjs +160 -98
- package/dist/esm/renderEntry.mjs +3 -2
- package/dist/helpers/make-render-command.d.ts +3 -2
- package/dist/helpers/make-render-command.js +4 -1
- package/dist/helpers/retry-payload.js +3 -0
- package/dist/renderEntry.js +1 -0
- package/dist/state/modals.d.ts +1 -0
- package/package.json +9 -9
|
@@ -692,7 +692,7 @@ var CalculateMetadataErrorExplainer = () => {
|
|
|
692
692
|
return /* @__PURE__ */ jsxs5("div", {
|
|
693
693
|
style,
|
|
694
694
|
children: [
|
|
695
|
-
"This error
|
|
695
|
+
"This error occurred while calling",
|
|
696
696
|
" ",
|
|
697
697
|
/* @__PURE__ */ jsx9("code", {
|
|
698
698
|
style: inlineCodeSnippet,
|
|
@@ -2420,7 +2420,7 @@ var getErrorRecord = async (error) => {
|
|
|
2420
2420
|
};
|
|
2421
2421
|
};
|
|
2422
2422
|
var crashWithFrames = (crash) => (error) => {
|
|
2423
|
-
const didHookOrderChange = error.message.startsWith("Rendered fewer hooks") || error.message.startsWith("Rendered more hooks");
|
|
2423
|
+
const didHookOrderChange = error.message.startsWith("Rendered fewer hooks") || error.message.startsWith("Rendered more hooks") || error.message.startsWith("Should have a queue");
|
|
2424
2424
|
const key = "remotion.lastCrashBecauseOfHooks";
|
|
2425
2425
|
const previousCrashWasBecauseOfHooks = window.localStorage.getItem(key);
|
|
2426
2426
|
const justRefreshedBecauseOfHooks = previousCrashWasBecauseOfHooks ? Date.now() - Number(previousCrashWasBecauseOfHooks) < 5000 : false;
|
|
@@ -2740,7 +2740,7 @@ import { Internals as Internals70 } from "remotion";
|
|
|
2740
2740
|
|
|
2741
2741
|
// src/components/Editor.tsx
|
|
2742
2742
|
import { PlayerInternals as PlayerInternals19 } from "@remotion/player";
|
|
2743
|
-
import React189, { useCallback as useCallback150, useMemo as
|
|
2743
|
+
import React189, { useCallback as useCallback150, useMemo as useMemo151, useState as useState100 } from "react";
|
|
2744
2744
|
import { Internals as Internals65 } from "remotion";
|
|
2745
2745
|
|
|
2746
2746
|
// src/helpers/noop.ts
|
|
@@ -5361,6 +5361,7 @@ var SidebarRenderButton = ({ composition, visible }) => {
|
|
|
5361
5361
|
renderTypeOfLastRender: null,
|
|
5362
5362
|
defaulMetadata: defaults.metadata,
|
|
5363
5363
|
initialHardwareAcceleration: defaults.hardwareAcceleration,
|
|
5364
|
+
initialSampleRate: defaults.sampleRate,
|
|
5364
5365
|
initialChromeMode: defaults.chromeMode,
|
|
5365
5366
|
initialMediaCacheSizeInBytes: defaults.mediaCacheSizeInBytes,
|
|
5366
5367
|
renderDefaults: defaults,
|
|
@@ -6184,7 +6185,8 @@ var addVideoRenderJob = ({
|
|
|
6184
6185
|
metadata,
|
|
6185
6186
|
hardwareAcceleration,
|
|
6186
6187
|
chromeMode,
|
|
6187
|
-
mediaCacheSizeInBytes
|
|
6188
|
+
mediaCacheSizeInBytes,
|
|
6189
|
+
sampleRate
|
|
6188
6190
|
}) => {
|
|
6189
6191
|
return callApi("/api/render", {
|
|
6190
6192
|
compositionId,
|
|
@@ -6231,7 +6233,8 @@ var addVideoRenderJob = ({
|
|
|
6231
6233
|
metadata,
|
|
6232
6234
|
hardwareAcceleration,
|
|
6233
6235
|
chromeMode,
|
|
6234
|
-
mediaCacheSizeInBytes
|
|
6236
|
+
mediaCacheSizeInBytes,
|
|
6237
|
+
sampleRate
|
|
6235
6238
|
});
|
|
6236
6239
|
};
|
|
6237
6240
|
var unsubscribeFromFileExistenceWatcher = ({
|
|
@@ -17516,6 +17519,7 @@ var makeRetryPayload = (job) => {
|
|
|
17516
17519
|
defaulMetadata: job.metadata,
|
|
17517
17520
|
renderTypeOfLastRender: "still",
|
|
17518
17521
|
initialHardwareAcceleration: defaults.hardwareAcceleration,
|
|
17522
|
+
initialSampleRate: defaults.sampleRate,
|
|
17519
17523
|
initialChromeMode: job.chromeMode,
|
|
17520
17524
|
initialMediaCacheSizeInBytes: job.mediaCacheSizeInBytes,
|
|
17521
17525
|
renderDefaults: defaults,
|
|
@@ -17569,6 +17573,7 @@ var makeRetryPayload = (job) => {
|
|
|
17569
17573
|
defaulMetadata: job.metadata,
|
|
17570
17574
|
renderTypeOfLastRender: "sequence",
|
|
17571
17575
|
initialHardwareAcceleration: defaults.hardwareAcceleration,
|
|
17576
|
+
initialSampleRate: defaults.sampleRate,
|
|
17572
17577
|
initialChromeMode: job.chromeMode,
|
|
17573
17578
|
initialMediaCacheSizeInBytes: job.mediaCacheSizeInBytes,
|
|
17574
17579
|
renderDefaults: defaults,
|
|
@@ -17622,6 +17627,7 @@ var makeRetryPayload = (job) => {
|
|
|
17622
17627
|
defaulMetadata: job.metadata,
|
|
17623
17628
|
renderTypeOfLastRender: "video",
|
|
17624
17629
|
initialHardwareAcceleration: job.hardwareAcceleration,
|
|
17630
|
+
initialSampleRate: job.sampleRate,
|
|
17625
17631
|
initialChromeMode: job.chromeMode,
|
|
17626
17632
|
initialMediaCacheSizeInBytes: job.mediaCacheSizeInBytes,
|
|
17627
17633
|
renderDefaults: defaults,
|
|
@@ -19477,6 +19483,7 @@ var RenderButton = ({
|
|
|
19477
19483
|
renderTypeOfLastRender: null,
|
|
19478
19484
|
defaulMetadata: defaults.metadata,
|
|
19479
19485
|
initialHardwareAcceleration: defaults.hardwareAcceleration,
|
|
19486
|
+
initialSampleRate: defaults.sampleRate,
|
|
19480
19487
|
initialChromeMode: defaults.chromeMode,
|
|
19481
19488
|
initialMediaCacheSizeInBytes: defaults.mediaCacheSizeInBytes,
|
|
19482
19489
|
renderDefaults: defaults
|
|
@@ -28436,7 +28443,7 @@ import {
|
|
|
28436
28443
|
useCallback as useCallback142,
|
|
28437
28444
|
useContext as useContext94,
|
|
28438
28445
|
useEffect as useEffect84,
|
|
28439
|
-
useMemo as
|
|
28446
|
+
useMemo as useMemo143,
|
|
28440
28447
|
useReducer as useReducer2,
|
|
28441
28448
|
useRef as useRef49,
|
|
28442
28449
|
useState as useState93
|
|
@@ -28586,6 +28593,7 @@ var makeReadOnlyStudioRenderCommand = ({
|
|
|
28586
28593
|
beepOnFinish,
|
|
28587
28594
|
repro,
|
|
28588
28595
|
metadata,
|
|
28596
|
+
sampleRate,
|
|
28589
28597
|
envVariables,
|
|
28590
28598
|
inputProps
|
|
28591
28599
|
}) => {
|
|
@@ -28673,6 +28681,9 @@ var makeReadOnlyStudioRenderCommand = ({
|
|
|
28673
28681
|
if (audioCodec !== defaultAudioCodec) {
|
|
28674
28682
|
addFlagWithValue(flags, getRenderMediaFlag("audioCodec"), audioCodec);
|
|
28675
28683
|
}
|
|
28684
|
+
addValueFlagsIfChanged(flags, [
|
|
28685
|
+
renderMediaValueFlag("sampleRate", sampleRate, renderDefaults.sampleRate)
|
|
28686
|
+
]);
|
|
28676
28687
|
}
|
|
28677
28688
|
addTrueBooleanFlagsIfChanged(flags, [
|
|
28678
28689
|
renderMediaBooleanFlag("disallowParallelEncoding", disallowParallelEncoding, false),
|
|
@@ -30345,7 +30356,7 @@ var RenderModalAdvanced = ({
|
|
|
30345
30356
|
|
|
30346
30357
|
// src/components/RenderModal/RenderModalAudio.tsx
|
|
30347
30358
|
import { BrowserSafeApis as BrowserSafeApis8 } from "@remotion/renderer/client";
|
|
30348
|
-
import { useCallback as useCallback135 } from "react";
|
|
30359
|
+
import { useCallback as useCallback135, useMemo as useMemo138 } from "react";
|
|
30349
30360
|
|
|
30350
30361
|
// src/components/RenderModal/EnforceAudioTrackSetting.tsx
|
|
30351
30362
|
import { useCallback as useCallback132 } from "react";
|
|
@@ -30640,6 +30651,7 @@ var container56 = {
|
|
|
30640
30651
|
flex: 1,
|
|
30641
30652
|
overflowY: "auto"
|
|
30642
30653
|
};
|
|
30654
|
+
var commonSampleRates = [8000, 16000, 22050, 44100, 48000, 96000];
|
|
30643
30655
|
var RenderModalAudio = ({
|
|
30644
30656
|
muted,
|
|
30645
30657
|
setMuted,
|
|
@@ -30657,7 +30669,9 @@ var RenderModalAudio = ({
|
|
|
30657
30669
|
setForSeamlessAacConcatenation,
|
|
30658
30670
|
separateAudioTo,
|
|
30659
30671
|
setSeparateAudioTo,
|
|
30660
|
-
outName
|
|
30672
|
+
outName,
|
|
30673
|
+
sampleRate,
|
|
30674
|
+
setSampleRate
|
|
30661
30675
|
}) => {
|
|
30662
30676
|
const onShouldHaveTargetAudioBitrateChanged = useCallback135((e) => {
|
|
30663
30677
|
setShouldHaveCustomTargetAudioBitrate(e.target.checked);
|
|
@@ -30668,6 +30682,20 @@ var RenderModalAudio = ({
|
|
|
30668
30682
|
const onSeamlessAacConcatenationChanges = useCallback135((e) => {
|
|
30669
30683
|
setForSeamlessAacConcatenation(e.target.checked);
|
|
30670
30684
|
}, [setForSeamlessAacConcatenation]);
|
|
30685
|
+
const sampleRateOptions = useMemo138(() => {
|
|
30686
|
+
return commonSampleRates.map((rate) => ({
|
|
30687
|
+
label: rate === 48000 ? `${rate} Hz (default)` : `${rate} Hz`,
|
|
30688
|
+
onClick: () => setSampleRate(rate),
|
|
30689
|
+
key: String(rate),
|
|
30690
|
+
leftItem: sampleRate === rate ? /* @__PURE__ */ jsx266(Checkmark, {}) : null,
|
|
30691
|
+
id: String(rate),
|
|
30692
|
+
keyHint: null,
|
|
30693
|
+
quickSwitcherLabel: null,
|
|
30694
|
+
subMenu: null,
|
|
30695
|
+
type: "item",
|
|
30696
|
+
value: String(rate)
|
|
30697
|
+
}));
|
|
30698
|
+
}, [sampleRate, setSampleRate]);
|
|
30671
30699
|
const audioCodecOptions = useCallback135((currentCodec) => {
|
|
30672
30700
|
return BrowserSafeApis8.supportedAudioCodecs[currentCodec].map((audioCodecOption) => {
|
|
30673
30701
|
return {
|
|
@@ -30808,6 +30836,31 @@ var RenderModalAudio = ({
|
|
|
30808
30836
|
})
|
|
30809
30837
|
})
|
|
30810
30838
|
]
|
|
30839
|
+
}) : null,
|
|
30840
|
+
renderMode !== "still" && !muted ? /* @__PURE__ */ jsxs136("div", {
|
|
30841
|
+
style: optionRow,
|
|
30842
|
+
children: [
|
|
30843
|
+
/* @__PURE__ */ jsxs136("div", {
|
|
30844
|
+
style: label6,
|
|
30845
|
+
children: [
|
|
30846
|
+
"Sample Rate ",
|
|
30847
|
+
/* @__PURE__ */ jsx266(Spacing, {
|
|
30848
|
+
x: 0.5
|
|
30849
|
+
}),
|
|
30850
|
+
/* @__PURE__ */ jsx266(OptionExplainerBubble, {
|
|
30851
|
+
id: "sampleRateOption"
|
|
30852
|
+
})
|
|
30853
|
+
]
|
|
30854
|
+
}),
|
|
30855
|
+
/* @__PURE__ */ jsx266("div", {
|
|
30856
|
+
style: rightRow,
|
|
30857
|
+
children: /* @__PURE__ */ jsx266(Combobox, {
|
|
30858
|
+
values: sampleRateOptions,
|
|
30859
|
+
selectedId: String(sampleRate),
|
|
30860
|
+
title: "Sample Rate"
|
|
30861
|
+
})
|
|
30862
|
+
})
|
|
30863
|
+
]
|
|
30811
30864
|
}) : null
|
|
30812
30865
|
]
|
|
30813
30866
|
});
|
|
@@ -30816,7 +30869,7 @@ var RenderModalAudio = ({
|
|
|
30816
30869
|
// src/components/RenderModal/RenderModalBasic.tsx
|
|
30817
30870
|
import { BrowserSafeApis as BrowserSafeApis9 } from "@remotion/renderer/client";
|
|
30818
30871
|
import { NoReactAPIs as NoReactAPIs2 } from "@remotion/renderer/pure";
|
|
30819
|
-
import { useCallback as useCallback138, useMemo as
|
|
30872
|
+
import { useCallback as useCallback138, useMemo as useMemo140 } from "react";
|
|
30820
30873
|
|
|
30821
30874
|
// src/helpers/prores-labels.ts
|
|
30822
30875
|
var labelProResProfile = (profile) => {
|
|
@@ -30845,7 +30898,7 @@ var labelProResProfile = (profile) => {
|
|
|
30845
30898
|
import { useCallback as useCallback137 } from "react";
|
|
30846
30899
|
|
|
30847
30900
|
// src/components/RenderModal/MultiRangeSlider.tsx
|
|
30848
|
-
import { useCallback as useCallback136, useMemo as
|
|
30901
|
+
import { useCallback as useCallback136, useMemo as useMemo139 } from "react";
|
|
30849
30902
|
import { jsx as jsx267, jsxs as jsxs137 } from "react/jsx-runtime";
|
|
30850
30903
|
var container57 = {
|
|
30851
30904
|
borderColor: "black",
|
|
@@ -30875,7 +30928,7 @@ var MultiRangeSlider = ({
|
|
|
30875
30928
|
onRightThumbDrag
|
|
30876
30929
|
}) => {
|
|
30877
30930
|
const getPercent = useCallback136((value) => Math.round((value - min) / (max - min) * 100), [min, max]);
|
|
30878
|
-
const rangeStyle =
|
|
30931
|
+
const rangeStyle = useMemo139(() => {
|
|
30879
30932
|
const minPercent = getPercent(start);
|
|
30880
30933
|
const maxPercent = getPercent(end);
|
|
30881
30934
|
return {
|
|
@@ -31082,7 +31135,7 @@ var RenderModalBasic = ({
|
|
|
31082
31135
|
showOutputName
|
|
31083
31136
|
}) => {
|
|
31084
31137
|
const existence = useFileExistence(outName);
|
|
31085
|
-
const videoCodecOptions =
|
|
31138
|
+
const videoCodecOptions = useMemo140(() => {
|
|
31086
31139
|
return BrowserSafeApis9.validCodecs.filter((c) => {
|
|
31087
31140
|
return NoReactAPIs2.isAudioCodec(c) === (renderMode === "audio");
|
|
31088
31141
|
}).map((codecOption) => {
|
|
@@ -31100,7 +31153,7 @@ var RenderModalBasic = ({
|
|
|
31100
31153
|
};
|
|
31101
31154
|
});
|
|
31102
31155
|
}, [renderMode, setCodec, codec]);
|
|
31103
|
-
const proResProfileOptions =
|
|
31156
|
+
const proResProfileOptions = useMemo140(() => {
|
|
31104
31157
|
return BrowserSafeApis9.proResProfileOptions.map((option) => {
|
|
31105
31158
|
return {
|
|
31106
31159
|
label: labelProResProfile(option),
|
|
@@ -31132,7 +31185,7 @@ var RenderModalBasic = ({
|
|
|
31132
31185
|
const onValueChange = useCallback138((e) => {
|
|
31133
31186
|
setOutName(e.target.value);
|
|
31134
31187
|
}, [setOutName]);
|
|
31135
|
-
const logLevelOptions =
|
|
31188
|
+
const logLevelOptions = useMemo140(() => {
|
|
31136
31189
|
return ["trace", "verbose", "info", "warn", "error"].map((level) => {
|
|
31137
31190
|
return {
|
|
31138
31191
|
label: humanReadableLogLevel(level),
|
|
@@ -31386,7 +31439,7 @@ var RenderModalGif = ({
|
|
|
31386
31439
|
|
|
31387
31440
|
// src/components/RenderModal/RenderModalPicture.tsx
|
|
31388
31441
|
import { BrowserSafeApis as BrowserSafeApis10 } from "@remotion/renderer/client";
|
|
31389
|
-
import { useCallback as useCallback141, useMemo as
|
|
31442
|
+
import { useCallback as useCallback141, useMemo as useMemo142 } from "react";
|
|
31390
31443
|
|
|
31391
31444
|
// src/components/RenderModal/JpegQualitySetting.tsx
|
|
31392
31445
|
import { jsx as jsx272 } from "react/jsx-runtime";
|
|
@@ -31405,7 +31458,7 @@ var JpegQualitySetting = ({ jpegQuality, setJpegQuality }) => {
|
|
|
31405
31458
|
};
|
|
31406
31459
|
|
|
31407
31460
|
// src/components/RenderModal/ScaleSetting.tsx
|
|
31408
|
-
import { useMemo as
|
|
31461
|
+
import { useMemo as useMemo141 } from "react";
|
|
31409
31462
|
import { jsx as jsx273, jsxs as jsxs142, Fragment as Fragment46 } from "react/jsx-runtime";
|
|
31410
31463
|
var MIN_SCALE = 0.1;
|
|
31411
31464
|
var MAX_SCALE = 10;
|
|
@@ -31419,7 +31472,7 @@ var outputDimensionsStyle = {
|
|
|
31419
31472
|
marginTop: -10
|
|
31420
31473
|
};
|
|
31421
31474
|
var ScaleSetting = ({ scale, setScale, compositionWidth, compositionHeight }) => {
|
|
31422
|
-
const outputDimensions =
|
|
31475
|
+
const outputDimensions = useMemo141(() => {
|
|
31423
31476
|
const outputWidth = Math.round(compositionWidth * scale);
|
|
31424
31477
|
const outputHeight = Math.round(compositionHeight * scale);
|
|
31425
31478
|
return `${outputWidth}×${outputHeight}`;
|
|
@@ -31488,7 +31541,7 @@ var RenderModalPicture = ({
|
|
|
31488
31541
|
compositionWidth,
|
|
31489
31542
|
compositionHeight
|
|
31490
31543
|
}) => {
|
|
31491
|
-
const colorSpaceOptions =
|
|
31544
|
+
const colorSpaceOptions = useMemo142(() => {
|
|
31492
31545
|
return BrowserSafeApis10.validColorSpaces.map((option) => {
|
|
31493
31546
|
return {
|
|
31494
31547
|
label: option,
|
|
@@ -31504,7 +31557,7 @@ var RenderModalPicture = ({
|
|
|
31504
31557
|
};
|
|
31505
31558
|
});
|
|
31506
31559
|
}, [colorSpace, setColorSpace]);
|
|
31507
|
-
const qualityControlOptions =
|
|
31560
|
+
const qualityControlOptions = useMemo142(() => {
|
|
31508
31561
|
return qualityControlModes.map((option) => {
|
|
31509
31562
|
return {
|
|
31510
31563
|
label: option === "crf" ? "CRF" : "Bitrate",
|
|
@@ -31826,6 +31879,7 @@ var RenderModal = ({
|
|
|
31826
31879
|
initialForSeamlessAacConcatenation,
|
|
31827
31880
|
renderTypeOfLastRender,
|
|
31828
31881
|
initialHardwareAcceleration,
|
|
31882
|
+
initialSampleRate,
|
|
31829
31883
|
defaultMetadata,
|
|
31830
31884
|
initialChromeMode,
|
|
31831
31885
|
renderDefaults
|
|
@@ -31883,6 +31937,7 @@ var RenderModal = ({
|
|
|
31883
31937
|
const [repro, setRepro] = useState93(() => initialRepro);
|
|
31884
31938
|
const [enforceAudioTrackState, setEnforceAudioTrackState] = useState93(() => initialEnforceAudioTrack);
|
|
31885
31939
|
const [forSeamlessAacConcatenation, setForSeamlessAacConcatenation] = useState93(() => initialForSeamlessAacConcatenation);
|
|
31940
|
+
const [sampleRate, setSampleRate] = useState93(() => initialSampleRate);
|
|
31886
31941
|
const [renderMode, setRenderModeState] = useState93(initialRenderType);
|
|
31887
31942
|
const [jpegQuality, setJpegQuality] = useState93(() => initialJpegQuality);
|
|
31888
31943
|
const [scale, setScale] = useState93(() => initialScale);
|
|
@@ -31897,7 +31952,7 @@ var RenderModal = ({
|
|
|
31897
31952
|
const [openGlOption, setOpenGlOption] = useState93(() => initialGl ?? "default");
|
|
31898
31953
|
const [colorSpace, setColorSpace] = useState93(() => initialColorSpace);
|
|
31899
31954
|
const [userAgent, setUserAgent] = useState93(() => initialUserAgent === null ? null : initialUserAgent.trim() === "" ? null : initialUserAgent);
|
|
31900
|
-
const chromiumOptions =
|
|
31955
|
+
const chromiumOptions = useMemo143(() => {
|
|
31901
31956
|
return {
|
|
31902
31957
|
headless,
|
|
31903
31958
|
disableWebSecurity,
|
|
@@ -31939,19 +31994,19 @@ var RenderModal = ({
|
|
|
31939
31994
|
const [offthreadVideoCacheSizeInBytes, setOffthreadVideoCacheSizeInBytes] = useState93(initialOffthreadVideoCacheSizeInBytes);
|
|
31940
31995
|
const [mediaCacheSizeInBytes, setMediaCacheSizeInBytes] = useState93(initialMediaCacheSizeInBytes);
|
|
31941
31996
|
const [offthreadVideoThreads, setOffthreadVideoThreads] = useState93(() => initialOffthreadVideoThreads);
|
|
31942
|
-
const codec =
|
|
31997
|
+
const codec = useMemo143(() => {
|
|
31943
31998
|
if (renderMode === "audio") {
|
|
31944
31999
|
return videoCodecForAudioTab;
|
|
31945
32000
|
}
|
|
31946
32001
|
return videoCodecForVideoTab;
|
|
31947
32002
|
}, [videoCodecForAudioTab, renderMode, videoCodecForVideoTab]);
|
|
31948
|
-
const numberOfGifLoops =
|
|
32003
|
+
const numberOfGifLoops = useMemo143(() => {
|
|
31949
32004
|
if (codec === "gif" && limitNumberOfGifLoops) {
|
|
31950
32005
|
return numberOfGifLoopsSetting;
|
|
31951
32006
|
}
|
|
31952
32007
|
return null;
|
|
31953
32008
|
}, [codec, limitNumberOfGifLoops, numberOfGifLoopsSetting]);
|
|
31954
|
-
const audioBitrate =
|
|
32009
|
+
const audioBitrate = useMemo143(() => {
|
|
31955
32010
|
if (shouldHaveCustomTargetAudioBitrate) {
|
|
31956
32011
|
return customTargetAudioBitrate;
|
|
31957
32012
|
}
|
|
@@ -31959,10 +32014,10 @@ var RenderModal = ({
|
|
|
31959
32014
|
}, [customTargetAudioBitrate, shouldHaveCustomTargetAudioBitrate]);
|
|
31960
32015
|
const supportsCrf = BrowserSafeApis11.codecSupportsCrf(codec);
|
|
31961
32016
|
const supportsVideoBitrate = BrowserSafeApis11.codecSupportsVideoBitrate(codec);
|
|
31962
|
-
const supportsBothQualityControls =
|
|
32017
|
+
const supportsBothQualityControls = useMemo143(() => {
|
|
31963
32018
|
return supportsCrf && supportsVideoBitrate && hardwareAcceleration !== "if-possible" && hardwareAcceleration !== "required";
|
|
31964
32019
|
}, [hardwareAcceleration, supportsCrf, supportsVideoBitrate]);
|
|
31965
|
-
const qualityControlType =
|
|
32020
|
+
const qualityControlType = useMemo143(() => {
|
|
31966
32021
|
if (hardwareAcceleration === "if-possible" || hardwareAcceleration === "required") {
|
|
31967
32022
|
if (supportsVideoBitrate) {
|
|
31968
32023
|
return "bitrate";
|
|
@@ -31986,7 +32041,7 @@ var RenderModal = ({
|
|
|
31986
32041
|
supportsCrf,
|
|
31987
32042
|
supportsVideoBitrate
|
|
31988
32043
|
]);
|
|
31989
|
-
const videoBitrate =
|
|
32044
|
+
const videoBitrate = useMemo143(() => {
|
|
31990
32045
|
if (qualityControlType === "bitrate") {
|
|
31991
32046
|
return customTargetVideoBitrate;
|
|
31992
32047
|
}
|
|
@@ -31998,13 +32053,13 @@ var RenderModal = ({
|
|
|
31998
32053
|
return;
|
|
31999
32054
|
dispatch(payload);
|
|
32000
32055
|
}, []);
|
|
32001
|
-
const muted =
|
|
32056
|
+
const muted = useMemo143(() => {
|
|
32002
32057
|
if (renderMode === "video") {
|
|
32003
32058
|
return mutedState;
|
|
32004
32059
|
}
|
|
32005
32060
|
return false;
|
|
32006
32061
|
}, [mutedState, renderMode]);
|
|
32007
|
-
const enforceAudioTrack =
|
|
32062
|
+
const enforceAudioTrack = useMemo143(() => {
|
|
32008
32063
|
if (renderMode === "video") {
|
|
32009
32064
|
return enforceAudioTrackState;
|
|
32010
32065
|
}
|
|
@@ -32013,13 +32068,13 @@ var RenderModal = ({
|
|
|
32013
32068
|
}
|
|
32014
32069
|
return false;
|
|
32015
32070
|
}, [enforceAudioTrackState, renderMode]);
|
|
32016
|
-
const proResProfile =
|
|
32071
|
+
const proResProfile = useMemo143(() => {
|
|
32017
32072
|
if (renderMode === "video" && codec === "prores") {
|
|
32018
32073
|
return proResProfileSetting;
|
|
32019
32074
|
}
|
|
32020
32075
|
return null;
|
|
32021
32076
|
}, [codec, proResProfileSetting, renderMode]);
|
|
32022
|
-
const x264Preset =
|
|
32077
|
+
const x264Preset = useMemo143(() => {
|
|
32023
32078
|
if (renderMode === "video" && codec === "h264") {
|
|
32024
32079
|
return x264PresetSetting;
|
|
32025
32080
|
}
|
|
@@ -32030,19 +32085,19 @@ var RenderModal = ({
|
|
|
32030
32085
|
_setInputProps(updater);
|
|
32031
32086
|
}, []);
|
|
32032
32087
|
const [metadata] = useState93(() => defaultMetadata);
|
|
32033
|
-
const endFrame =
|
|
32088
|
+
const endFrame = useMemo143(() => {
|
|
32034
32089
|
if (endFrameOrNull === null) {
|
|
32035
32090
|
return resolvedComposition.durationInFrames - 1;
|
|
32036
32091
|
}
|
|
32037
32092
|
return Math.max(0, Math.min(resolvedComposition.durationInFrames - 1, endFrameOrNull));
|
|
32038
32093
|
}, [resolvedComposition.durationInFrames, endFrameOrNull]);
|
|
32039
|
-
const startFrame =
|
|
32094
|
+
const startFrame = useMemo143(() => {
|
|
32040
32095
|
if (startFrameOrNull === null) {
|
|
32041
32096
|
return 0;
|
|
32042
32097
|
}
|
|
32043
32098
|
return Math.max(0, Math.min(endFrame - 1, startFrameOrNull));
|
|
32044
32099
|
}, [endFrame, startFrameOrNull]);
|
|
32045
|
-
const frame2 =
|
|
32100
|
+
const frame2 = useMemo143(() => {
|
|
32046
32101
|
const parsed = Math.floor(unclampedFrame);
|
|
32047
32102
|
return Math.max(0, Math.min(resolvedComposition.durationInFrames - 1, parsed));
|
|
32048
32103
|
}, [resolvedComposition.durationInFrames, unclampedFrame]);
|
|
@@ -32163,17 +32218,17 @@ var RenderModal = ({
|
|
|
32163
32218
|
mediaCacheSizeInBytes
|
|
32164
32219
|
]);
|
|
32165
32220
|
const [everyNthFrameSetting, setEveryNthFrameSetting] = useState93(() => initialEveryNthFrame);
|
|
32166
|
-
const everyNthFrame =
|
|
32221
|
+
const everyNthFrame = useMemo143(() => {
|
|
32167
32222
|
if (codec === "gif") {
|
|
32168
32223
|
return everyNthFrameSetting;
|
|
32169
32224
|
}
|
|
32170
32225
|
return 1;
|
|
32171
32226
|
}, [codec, everyNthFrameSetting]);
|
|
32172
32227
|
const audioCodec = deriveFinalAudioCodec(codec, userSelectedAudioCodec);
|
|
32173
|
-
const availablePixelFormats =
|
|
32228
|
+
const availablePixelFormats = useMemo143(() => {
|
|
32174
32229
|
return BrowserSafeApis11.validPixelFormatsForCodec(codec);
|
|
32175
32230
|
}, [codec]);
|
|
32176
|
-
const pixelFormat =
|
|
32231
|
+
const pixelFormat = useMemo143(() => {
|
|
32177
32232
|
if (availablePixelFormats.includes(userPreferredPixelFormat)) {
|
|
32178
32233
|
return userPreferredPixelFormat;
|
|
32179
32234
|
}
|
|
@@ -32224,7 +32279,8 @@ var RenderModal = ({
|
|
|
32224
32279
|
hardwareAcceleration,
|
|
32225
32280
|
chromeMode,
|
|
32226
32281
|
offthreadVideoThreads,
|
|
32227
|
-
mediaCacheSizeInBytes
|
|
32282
|
+
mediaCacheSizeInBytes,
|
|
32283
|
+
sampleRate
|
|
32228
32284
|
}).then(() => {
|
|
32229
32285
|
dispatchIfMounted({ type: "succeed" });
|
|
32230
32286
|
setSelectedModal(null);
|
|
@@ -32276,7 +32332,8 @@ var RenderModal = ({
|
|
|
32276
32332
|
hardwareAcceleration,
|
|
32277
32333
|
chromeMode,
|
|
32278
32334
|
offthreadVideoThreads,
|
|
32279
|
-
mediaCacheSizeInBytes
|
|
32335
|
+
mediaCacheSizeInBytes,
|
|
32336
|
+
sampleRate
|
|
32280
32337
|
]);
|
|
32281
32338
|
const onClickSequence = useCallback142(() => {
|
|
32282
32339
|
setSidebarCollapsedState({ left: null, right: "expanded" });
|
|
@@ -32344,7 +32401,7 @@ var RenderModal = ({
|
|
|
32344
32401
|
isMounted.current = false;
|
|
32345
32402
|
};
|
|
32346
32403
|
}, []);
|
|
32347
|
-
const imageFormatOptions =
|
|
32404
|
+
const imageFormatOptions = useMemo143(() => {
|
|
32348
32405
|
if (renderMode === "still") {
|
|
32349
32406
|
return [
|
|
32350
32407
|
{
|
|
@@ -32440,7 +32497,7 @@ var RenderModal = ({
|
|
|
32440
32497
|
stillImageFormat,
|
|
32441
32498
|
videoCodecForVideoTab
|
|
32442
32499
|
]);
|
|
32443
|
-
const renderTabOptions =
|
|
32500
|
+
const renderTabOptions = useMemo143(() => {
|
|
32444
32501
|
if (resolvedComposition?.durationInFrames < 2) {
|
|
32445
32502
|
return [
|
|
32446
32503
|
{
|
|
@@ -32498,7 +32555,7 @@ var RenderModal = ({
|
|
|
32498
32555
|
});
|
|
32499
32556
|
const { tab, setTab, shownTabs } = useRenderModalSections(renderMode, codec);
|
|
32500
32557
|
const { registerKeybinding } = useKeybinding();
|
|
32501
|
-
const readOnlyRenderCommand =
|
|
32558
|
+
const readOnlyRenderCommand = useMemo143(() => {
|
|
32502
32559
|
if (!readOnlyStudio) {
|
|
32503
32560
|
return null;
|
|
32504
32561
|
}
|
|
@@ -32554,6 +32611,7 @@ var RenderModal = ({
|
|
|
32554
32611
|
beepOnFinish,
|
|
32555
32612
|
repro,
|
|
32556
32613
|
metadata,
|
|
32614
|
+
sampleRate,
|
|
32557
32615
|
envVariables: envVariablesArrayToObject(envVariables),
|
|
32558
32616
|
inputProps
|
|
32559
32617
|
});
|
|
@@ -32603,6 +32661,7 @@ var RenderModal = ({
|
|
|
32603
32661
|
resolvedComposition.durationInFrames,
|
|
32604
32662
|
resolvedComposition.id,
|
|
32605
32663
|
scale,
|
|
32664
|
+
sampleRate,
|
|
32606
32665
|
separateAudioTo,
|
|
32607
32666
|
sequenceImageFormat,
|
|
32608
32667
|
startFrame,
|
|
@@ -32669,7 +32728,7 @@ var RenderModal = ({
|
|
|
32669
32728
|
enter.unregister();
|
|
32670
32729
|
};
|
|
32671
32730
|
}, [registerKeybinding, renderDisabled, trigger]);
|
|
32672
|
-
const pixelFormatOptions =
|
|
32731
|
+
const pixelFormatOptions = useMemo143(() => {
|
|
32673
32732
|
return availablePixelFormats.map((option) => {
|
|
32674
32733
|
return {
|
|
32675
32734
|
label: option,
|
|
@@ -32879,7 +32938,9 @@ var RenderModal = ({
|
|
|
32879
32938
|
setForSeamlessAacConcatenation,
|
|
32880
32939
|
separateAudioTo,
|
|
32881
32940
|
setSeparateAudioTo,
|
|
32882
|
-
outName
|
|
32941
|
+
outName,
|
|
32942
|
+
sampleRate,
|
|
32943
|
+
setSampleRate
|
|
32883
32944
|
}) : tab === "gif" ? /* @__PURE__ */ jsx275(RenderModalGif, {
|
|
32884
32945
|
everyNthFrame,
|
|
32885
32946
|
limitNumberOfGifLoops,
|
|
@@ -32966,7 +33027,7 @@ import {
|
|
|
32966
33027
|
getDefaultVideoCodecForContainer,
|
|
32967
33028
|
isAudioOnlyContainer
|
|
32968
33029
|
} from "@remotion/web-renderer";
|
|
32969
|
-
import { useCallback as useCallback146, useContext as useContext95, useMemo as
|
|
33030
|
+
import { useCallback as useCallback146, useContext as useContext95, useMemo as useMemo148, useState as useState97 } from "react";
|
|
32970
33031
|
|
|
32971
33032
|
// src/icons/certificate.tsx
|
|
32972
33033
|
import { jsx as jsx276 } from "react/jsx-runtime";
|
|
@@ -33128,7 +33189,7 @@ var WebRendererExperimentalBadge = () => {
|
|
|
33128
33189
|
};
|
|
33129
33190
|
|
|
33130
33191
|
// src/components/RenderModal/WebRenderModalAdvanced.tsx
|
|
33131
|
-
import { useCallback as useCallback143, useMemo as
|
|
33192
|
+
import { useCallback as useCallback143, useMemo as useMemo144 } from "react";
|
|
33132
33193
|
import { jsx as jsx278, jsxs as jsxs146 } from "react/jsx-runtime";
|
|
33133
33194
|
var tabContainer = {
|
|
33134
33195
|
flex: 1
|
|
@@ -33166,7 +33227,7 @@ var WebRenderModalAdvanced = ({
|
|
|
33166
33227
|
return cb;
|
|
33167
33228
|
});
|
|
33168
33229
|
}, [setMediaCacheSizeInBytes]);
|
|
33169
|
-
const hardwareAccelerationOptions =
|
|
33230
|
+
const hardwareAccelerationOptions = useMemo144(() => {
|
|
33170
33231
|
return [
|
|
33171
33232
|
{
|
|
33172
33233
|
label: "No Preference",
|
|
@@ -33298,7 +33359,7 @@ var WebRenderModalAdvanced = ({
|
|
|
33298
33359
|
|
|
33299
33360
|
// src/components/RenderModal/WebRenderModalAudio.tsx
|
|
33300
33361
|
import { getSupportedAudioCodecsForContainer as getSupportedAudioCodecsForContainer2 } from "@remotion/web-renderer";
|
|
33301
|
-
import { useMemo as
|
|
33362
|
+
import { useMemo as useMemo145 } from "react";
|
|
33302
33363
|
|
|
33303
33364
|
// src/components/RenderModal/quality-options.tsx
|
|
33304
33365
|
import { jsx as jsx279 } from "react/jsx-runtime";
|
|
@@ -33371,8 +33432,8 @@ var WebRenderModalAudio = ({
|
|
|
33371
33432
|
encodableCodecs,
|
|
33372
33433
|
effectiveAudioCodec
|
|
33373
33434
|
}) => {
|
|
33374
|
-
const containerSupported =
|
|
33375
|
-
const audioCodecOptions =
|
|
33435
|
+
const containerSupported = useMemo145(() => getSupportedAudioCodecsForContainer2(videoContainer), [videoContainer]);
|
|
33436
|
+
const audioCodecOptions = useMemo145(() => {
|
|
33376
33437
|
return containerSupported.map((codec) => {
|
|
33377
33438
|
const isEncodable = encodableCodecs.includes(codec);
|
|
33378
33439
|
return {
|
|
@@ -33389,7 +33450,7 @@ var WebRenderModalAudio = ({
|
|
|
33389
33450
|
};
|
|
33390
33451
|
});
|
|
33391
33452
|
}, [containerSupported, encodableCodecs, audioCodec, setAudioCodec]);
|
|
33392
|
-
const audioBitrateOptions =
|
|
33453
|
+
const audioBitrateOptions = useMemo145(() => getQualityOptions(audioBitrate, setAudioBitrate), [audioBitrate, setAudioBitrate]);
|
|
33393
33454
|
const isAudioOnly = renderMode === "audio";
|
|
33394
33455
|
const showAudioSettings = isAudioOnly || !muted;
|
|
33395
33456
|
const showAudioCodecSetting = !isAudioOnly || containerSupported.length > 1;
|
|
@@ -33466,7 +33527,7 @@ var WebRenderModalAudio = ({
|
|
|
33466
33527
|
};
|
|
33467
33528
|
|
|
33468
33529
|
// src/components/RenderModal/WebRenderModalBasic.tsx
|
|
33469
|
-
import { useMemo as
|
|
33530
|
+
import { useMemo as useMemo146 } from "react";
|
|
33470
33531
|
import { jsx as jsx281, jsxs as jsxs148, Fragment as Fragment49 } from "react/jsx-runtime";
|
|
33471
33532
|
var tabContainer2 = {
|
|
33472
33533
|
flex: 1
|
|
@@ -33520,7 +33581,7 @@ var WebRenderModalBasic = ({
|
|
|
33520
33581
|
logLevel,
|
|
33521
33582
|
setLogLevel
|
|
33522
33583
|
}) => {
|
|
33523
|
-
const imageFormatOptions =
|
|
33584
|
+
const imageFormatOptions = useMemo146(() => {
|
|
33524
33585
|
return [
|
|
33525
33586
|
{
|
|
33526
33587
|
label: "PNG",
|
|
@@ -33542,7 +33603,7 @@ var WebRenderModalBasic = ({
|
|
|
33542
33603
|
}
|
|
33543
33604
|
];
|
|
33544
33605
|
}, [imageFormat, setStillFormat]);
|
|
33545
|
-
const logLevelOptions =
|
|
33606
|
+
const logLevelOptions = useMemo146(() => {
|
|
33546
33607
|
return ["trace", "verbose", "info", "warn", "error"].map((level) => {
|
|
33547
33608
|
return {
|
|
33548
33609
|
label: humanReadableLogLevel(level),
|
|
@@ -33557,7 +33618,7 @@ var WebRenderModalBasic = ({
|
|
|
33557
33618
|
};
|
|
33558
33619
|
});
|
|
33559
33620
|
}, [logLevel, setLogLevel]);
|
|
33560
|
-
const containerOptions =
|
|
33621
|
+
const containerOptions = useMemo146(() => {
|
|
33561
33622
|
const containers = renderMode === "audio" ? audioContainers : videoContainers;
|
|
33562
33623
|
return containers.map((c) => ({
|
|
33563
33624
|
label: containerLabels[c],
|
|
@@ -33571,7 +33632,7 @@ var WebRenderModalBasic = ({
|
|
|
33571
33632
|
value: c
|
|
33572
33633
|
}));
|
|
33573
33634
|
}, [container62, setContainerFormat, renderMode]);
|
|
33574
|
-
const codecOptions =
|
|
33635
|
+
const codecOptions = useMemo146(() => {
|
|
33575
33636
|
return encodableVideoCodecs.map((c) => ({
|
|
33576
33637
|
label: codecLabels[c],
|
|
33577
33638
|
onClick: () => setCodec(c),
|
|
@@ -34161,7 +34222,7 @@ var WebRenderModalLicense = ({
|
|
|
34161
34222
|
};
|
|
34162
34223
|
|
|
34163
34224
|
// src/components/RenderModal/WebRenderModalPicture.tsx
|
|
34164
|
-
import { useCallback as useCallback145, useMemo as
|
|
34225
|
+
import { useCallback as useCallback145, useMemo as useMemo147 } from "react";
|
|
34165
34226
|
import { jsx as jsx285, jsxs as jsxs151, Fragment as Fragment51 } from "react/jsx-runtime";
|
|
34166
34227
|
var tabContainer4 = {
|
|
34167
34228
|
flex: 1
|
|
@@ -34179,7 +34240,7 @@ var WebRenderModalPicture = ({
|
|
|
34179
34240
|
compositionWidth,
|
|
34180
34241
|
compositionHeight
|
|
34181
34242
|
}) => {
|
|
34182
|
-
const qualityOptions =
|
|
34243
|
+
const qualityOptions = useMemo147(() => getQualityOptions(videoBitrate, setVideoBitrate), [videoBitrate, setVideoBitrate]);
|
|
34183
34244
|
const onTransparentChanged = useCallback145((e) => {
|
|
34184
34245
|
setTransparent(e.target.checked);
|
|
34185
34246
|
}, [setTransparent]);
|
|
@@ -34352,25 +34413,25 @@ var WebRenderModal = ({
|
|
|
34352
34413
|
const [allowHtmlInCanvas, setAllowHtmlInCanvas] = useState97(initialAllowHtmlInCanvas ?? false);
|
|
34353
34414
|
const encodableAudioCodecs = useEncodableAudioCodecs(container62);
|
|
34354
34415
|
const encodableVideoCodecs = useEncodableVideoCodecs(container62);
|
|
34355
|
-
const effectiveAudioCodec =
|
|
34416
|
+
const effectiveAudioCodec = useMemo148(() => {
|
|
34356
34417
|
if (encodableAudioCodecs.includes(audioCodec)) {
|
|
34357
34418
|
return audioCodec;
|
|
34358
34419
|
}
|
|
34359
34420
|
return encodableAudioCodecs[0] ?? audioCodec;
|
|
34360
34421
|
}, [audioCodec, encodableAudioCodecs]);
|
|
34361
|
-
const effectiveVideoCodec =
|
|
34422
|
+
const effectiveVideoCodec = useMemo148(() => {
|
|
34362
34423
|
if (encodableVideoCodecs.includes(codec)) {
|
|
34363
34424
|
return codec;
|
|
34364
34425
|
}
|
|
34365
34426
|
return encodableVideoCodecs[0] ?? codec;
|
|
34366
34427
|
}, [codec, encodableVideoCodecs]);
|
|
34367
|
-
const finalEndFrame =
|
|
34428
|
+
const finalEndFrame = useMemo148(() => {
|
|
34368
34429
|
if (endFrame === null) {
|
|
34369
34430
|
return resolvedComposition.durationInFrames - 1;
|
|
34370
34431
|
}
|
|
34371
34432
|
return Math.max(0, Math.min(resolvedComposition.durationInFrames - 1, endFrame));
|
|
34372
34433
|
}, [endFrame, resolvedComposition.durationInFrames]);
|
|
34373
|
-
const finalStartFrame =
|
|
34434
|
+
const finalStartFrame = useMemo148(() => {
|
|
34374
34435
|
if (startFrame === null) {
|
|
34375
34436
|
return 0;
|
|
34376
34437
|
}
|
|
@@ -34435,7 +34496,7 @@ var WebRenderModal = ({
|
|
|
34435
34496
|
setTab((prev) => prev === "audio" ? "general" : prev);
|
|
34436
34497
|
}
|
|
34437
34498
|
}, [container62, imageFormat, updateOutNameExtension]);
|
|
34438
|
-
const renderTabOptions =
|
|
34499
|
+
const renderTabOptions = useMemo148(() => {
|
|
34439
34500
|
const options = [
|
|
34440
34501
|
{
|
|
34441
34502
|
label: "Still",
|
|
@@ -34481,7 +34542,7 @@ var WebRenderModal = ({
|
|
|
34481
34542
|
const onOutNameChange = useCallback146((e) => {
|
|
34482
34543
|
setOutName(e.target.value);
|
|
34483
34544
|
}, []);
|
|
34484
|
-
const outnameValidation =
|
|
34545
|
+
const outnameValidation = useMemo148(() => {
|
|
34485
34546
|
if (renderMode === "still") {
|
|
34486
34547
|
return validateOutnameForStill({
|
|
34487
34548
|
outName,
|
|
@@ -34829,7 +34890,7 @@ var WebRenderModalWithLoader = (props) => {
|
|
|
34829
34890
|
};
|
|
34830
34891
|
|
|
34831
34892
|
// src/components/UpdateModal/UpdateModal.tsx
|
|
34832
|
-
import { useCallback as useCallback149, useMemo as
|
|
34893
|
+
import { useCallback as useCallback149, useMemo as useMemo150 } from "react";
|
|
34833
34894
|
|
|
34834
34895
|
// src/components/CopyButton.tsx
|
|
34835
34896
|
import { useCallback as useCallback147, useEffect as useEffect88, useState as useState98 } from "react";
|
|
@@ -34895,7 +34956,7 @@ var CopyButton = ({ textToCopy, label: label13, labelWhenCopied }) => {
|
|
|
34895
34956
|
};
|
|
34896
34957
|
|
|
34897
34958
|
// src/components/UpdateModal/OpenIssueButton.tsx
|
|
34898
|
-
import { useCallback as useCallback148, useMemo as
|
|
34959
|
+
import { useCallback as useCallback148, useMemo as useMemo149, useState as useState99 } from "react";
|
|
34899
34960
|
import { jsx as jsx288 } from "react/jsx-runtime";
|
|
34900
34961
|
var svgStyle2 = {
|
|
34901
34962
|
width: "11px",
|
|
@@ -34915,7 +34976,7 @@ var OpenIssueButton = ({ link: link5 }) => {
|
|
|
34915
34976
|
const handleClick = useCallback148(() => {
|
|
34916
34977
|
window.open(link5, "_blank");
|
|
34917
34978
|
}, [link5]);
|
|
34918
|
-
const svgFillColor =
|
|
34979
|
+
const svgFillColor = useMemo149(() => {
|
|
34919
34980
|
return hovered ? "white" : LIGHT_TEXT;
|
|
34920
34981
|
}, [hovered]);
|
|
34921
34982
|
const openInEditorSvg = /* @__PURE__ */ jsx288("svg", {
|
|
@@ -35012,7 +35073,7 @@ var commands = {
|
|
|
35012
35073
|
unknown: "npx remotion upgrade"
|
|
35013
35074
|
};
|
|
35014
35075
|
var UpdateModal = ({ info, knownBugs }) => {
|
|
35015
|
-
const hasKnownBugs =
|
|
35076
|
+
const hasKnownBugs = useMemo150(() => {
|
|
35016
35077
|
return knownBugs && knownBugs?.length > 0;
|
|
35017
35078
|
}, [knownBugs]);
|
|
35018
35079
|
const command = commands[info.packageManager];
|
|
@@ -35176,6 +35237,7 @@ var Modals = ({ readOnlyStudio }) => {
|
|
|
35176
35237
|
renderTypeOfLastRender: modalContextType.renderTypeOfLastRender,
|
|
35177
35238
|
defaultMetadata: modalContextType.defaulMetadata,
|
|
35178
35239
|
initialHardwareAcceleration: modalContextType.initialHardwareAcceleration,
|
|
35240
|
+
initialSampleRate: modalContextType.initialSampleRate,
|
|
35179
35241
|
initialChromeMode: modalContextType.initialChromeMode,
|
|
35180
35242
|
renderDefaults: modalContextType.renderDefaults
|
|
35181
35243
|
}) : null,
|
|
@@ -35220,7 +35282,7 @@ var Editor = ({ Root, readOnlyStudio }) => {
|
|
|
35220
35282
|
const onMounted = useCallback150(() => {
|
|
35221
35283
|
setCanvasMounted(true);
|
|
35222
35284
|
}, []);
|
|
35223
|
-
const value =
|
|
35285
|
+
const value = useMemo151(() => {
|
|
35224
35286
|
if (!size4) {
|
|
35225
35287
|
return null;
|
|
35226
35288
|
}
|
|
@@ -35229,15 +35291,15 @@ var Editor = ({ Root, readOnlyStudio }) => {
|
|
|
35229
35291
|
canvasSize: size4
|
|
35230
35292
|
};
|
|
35231
35293
|
}, [size4]);
|
|
35232
|
-
const MemoRoot =
|
|
35294
|
+
const MemoRoot = useMemo151(() => {
|
|
35233
35295
|
return React189.memo(Root);
|
|
35234
35296
|
}, [Root]);
|
|
35235
35297
|
const [renderError, setRenderError] = useState100(null);
|
|
35236
35298
|
const clearError = useCallback150(() => {
|
|
35237
35299
|
setRenderError(null);
|
|
35238
35300
|
}, []);
|
|
35239
|
-
const compositionRenderErrorContextValue =
|
|
35240
|
-
const renderErrorContextValue =
|
|
35301
|
+
const compositionRenderErrorContextValue = useMemo151(() => ({ setError: setRenderError, clearError }), [clearError]);
|
|
35302
|
+
const renderErrorContextValue = useMemo151(() => ({ error: renderError }), [renderError]);
|
|
35241
35303
|
return /* @__PURE__ */ jsx292(HigherZIndex, {
|
|
35242
35304
|
onEscape: noop,
|
|
35243
35305
|
onOutsideClick: noop,
|
|
@@ -35288,7 +35350,7 @@ var Editor = ({ Root, readOnlyStudio }) => {
|
|
|
35288
35350
|
import { PlayerInternals as PlayerInternals20 } from "@remotion/player";
|
|
35289
35351
|
|
|
35290
35352
|
// src/state/preview-size.tsx
|
|
35291
|
-
import { useCallback as useCallback151, useContext as useContext97, useMemo as
|
|
35353
|
+
import { useCallback as useCallback151, useContext as useContext97, useMemo as useMemo152, useState as useState101 } from "react";
|
|
35292
35354
|
import { Internals as Internals66 } from "remotion";
|
|
35293
35355
|
import { jsx as jsx293 } from "react/jsx-runtime";
|
|
35294
35356
|
var key5 = "remotion.previewSize";
|
|
@@ -35324,7 +35386,7 @@ var PreviewSizeProvider = ({ children }) => {
|
|
|
35324
35386
|
return newVal;
|
|
35325
35387
|
});
|
|
35326
35388
|
}, []);
|
|
35327
|
-
const previewSizeCtx =
|
|
35389
|
+
const previewSizeCtx = useMemo152(() => {
|
|
35328
35390
|
return {
|
|
35329
35391
|
size: editorZoomGestures ? size4 : {
|
|
35330
35392
|
size: size4.size,
|
|
@@ -35345,7 +35407,7 @@ var PreviewSizeProvider = ({ children }) => {
|
|
|
35345
35407
|
};
|
|
35346
35408
|
|
|
35347
35409
|
// src/components/CheckerboardProvider.tsx
|
|
35348
|
-
import { useCallback as useCallback152, useMemo as
|
|
35410
|
+
import { useCallback as useCallback152, useMemo as useMemo153, useState as useState102 } from "react";
|
|
35349
35411
|
import { jsx as jsx294 } from "react/jsx-runtime";
|
|
35350
35412
|
var CheckerboardProvider = ({ children }) => {
|
|
35351
35413
|
const [checkerboard, setCheckerboardState] = useState102(() => loadCheckerboardOption());
|
|
@@ -35356,7 +35418,7 @@ var CheckerboardProvider = ({ children }) => {
|
|
|
35356
35418
|
return newVal;
|
|
35357
35419
|
});
|
|
35358
35420
|
}, []);
|
|
35359
|
-
const checkerboardCtx =
|
|
35421
|
+
const checkerboardCtx = useMemo153(() => {
|
|
35360
35422
|
return {
|
|
35361
35423
|
checkerboard,
|
|
35362
35424
|
setCheckerboard
|
|
@@ -35369,19 +35431,19 @@ var CheckerboardProvider = ({ children }) => {
|
|
|
35369
35431
|
};
|
|
35370
35432
|
|
|
35371
35433
|
// src/components/MediaVolumeProvider.tsx
|
|
35372
|
-
import { useMemo as
|
|
35434
|
+
import { useMemo as useMemo154, useState as useState103 } from "react";
|
|
35373
35435
|
import { Internals as Internals67 } from "remotion";
|
|
35374
35436
|
import { jsx as jsx295 } from "react/jsx-runtime";
|
|
35375
35437
|
var MediaVolumeProvider = ({ children }) => {
|
|
35376
35438
|
const [mediaMuted, setMediaMuted] = useState103(() => loadMuteOption());
|
|
35377
35439
|
const [mediaVolume, setMediaVolume] = useState103(1);
|
|
35378
|
-
const mediaVolumeContextValue =
|
|
35440
|
+
const mediaVolumeContextValue = useMemo154(() => {
|
|
35379
35441
|
return {
|
|
35380
35442
|
mediaMuted,
|
|
35381
35443
|
mediaVolume
|
|
35382
35444
|
};
|
|
35383
35445
|
}, [mediaMuted, mediaVolume]);
|
|
35384
|
-
const setMediaVolumeContextValue =
|
|
35446
|
+
const setMediaVolumeContextValue = useMemo154(() => {
|
|
35385
35447
|
return {
|
|
35386
35448
|
setMediaMuted,
|
|
35387
35449
|
setMediaVolume
|
|
@@ -35397,11 +35459,11 @@ var MediaVolumeProvider = ({ children }) => {
|
|
|
35397
35459
|
};
|
|
35398
35460
|
|
|
35399
35461
|
// src/components/ModalsProvider.tsx
|
|
35400
|
-
import { useMemo as
|
|
35462
|
+
import { useMemo as useMemo155, useState as useState104 } from "react";
|
|
35401
35463
|
import { jsx as jsx296 } from "react/jsx-runtime";
|
|
35402
35464
|
var ModalsProvider = ({ children }) => {
|
|
35403
35465
|
const [modalContextType, setModalContextType] = useState104(null);
|
|
35404
|
-
const modalsContext =
|
|
35466
|
+
const modalsContext = useMemo155(() => {
|
|
35405
35467
|
return {
|
|
35406
35468
|
selectedModal: modalContextType,
|
|
35407
35469
|
setSelectedModal: setModalContextType
|
|
@@ -35414,7 +35476,7 @@ var ModalsProvider = ({ children }) => {
|
|
|
35414
35476
|
};
|
|
35415
35477
|
|
|
35416
35478
|
// src/components/SetTimelineInOutProvider.tsx
|
|
35417
|
-
import { useEffect as useEffect89, useMemo as
|
|
35479
|
+
import { useEffect as useEffect89, useMemo as useMemo156, useState as useState105 } from "react";
|
|
35418
35480
|
|
|
35419
35481
|
// src/state/marks.ts
|
|
35420
35482
|
var localStorageKey5 = () => `remotion.editor.marksv2`;
|
|
@@ -35433,7 +35495,7 @@ var loadMarks = () => {
|
|
|
35433
35495
|
import { jsx as jsx297 } from "react/jsx-runtime";
|
|
35434
35496
|
var SetTimelineInOutProvider = ({ children }) => {
|
|
35435
35497
|
const [inAndOutFrames, setInAndOutFrames] = useState105(() => loadMarks());
|
|
35436
|
-
const setTimelineInOutContextValue =
|
|
35498
|
+
const setTimelineInOutContextValue = useMemo156(() => {
|
|
35437
35499
|
return {
|
|
35438
35500
|
setInAndOutFrames
|
|
35439
35501
|
};
|
|
@@ -35451,7 +35513,7 @@ var SetTimelineInOutProvider = ({ children }) => {
|
|
|
35451
35513
|
};
|
|
35452
35514
|
|
|
35453
35515
|
// src/components/ShowGuidesProvider.tsx
|
|
35454
|
-
import { useCallback as useCallback153, useMemo as
|
|
35516
|
+
import { useCallback as useCallback153, useMemo as useMemo157, useRef as useRef52, useState as useState106 } from "react";
|
|
35455
35517
|
import { jsx as jsx298 } from "react/jsx-runtime";
|
|
35456
35518
|
var ShowGuidesProvider = ({ children }) => {
|
|
35457
35519
|
const [guidesList, setGuidesList] = useState106(() => loadGuidesList());
|
|
@@ -35467,7 +35529,7 @@ var ShowGuidesProvider = ({ children }) => {
|
|
|
35467
35529
|
return newVal;
|
|
35468
35530
|
});
|
|
35469
35531
|
}, []);
|
|
35470
|
-
const editorShowGuidesCtx =
|
|
35532
|
+
const editorShowGuidesCtx = useMemo157(() => {
|
|
35471
35533
|
return {
|
|
35472
35534
|
editorShowGuides,
|
|
35473
35535
|
setEditorShowGuides,
|
|
@@ -35494,7 +35556,7 @@ var ShowGuidesProvider = ({ children }) => {
|
|
|
35494
35556
|
};
|
|
35495
35557
|
|
|
35496
35558
|
// src/components/ShowRulersProvider.tsx
|
|
35497
|
-
import { useCallback as useCallback154, useMemo as
|
|
35559
|
+
import { useCallback as useCallback154, useMemo as useMemo158, useState as useState107 } from "react";
|
|
35498
35560
|
import { jsx as jsx299 } from "react/jsx-runtime";
|
|
35499
35561
|
var ShowRulersProvider = ({ children }) => {
|
|
35500
35562
|
const [editorShowRulers, setEditorShowRulersState] = useState107(() => loadEditorShowRulersOption());
|
|
@@ -35505,7 +35567,7 @@ var ShowRulersProvider = ({ children }) => {
|
|
|
35505
35567
|
return newVal;
|
|
35506
35568
|
});
|
|
35507
35569
|
}, []);
|
|
35508
|
-
const editorShowRulersCtx =
|
|
35570
|
+
const editorShowRulersCtx = useMemo158(() => {
|
|
35509
35571
|
return {
|
|
35510
35572
|
editorShowRulers,
|
|
35511
35573
|
setEditorShowRulers
|
|
@@ -35537,7 +35599,7 @@ var VisualControlsUndoSync = () => {
|
|
|
35537
35599
|
};
|
|
35538
35600
|
|
|
35539
35601
|
// src/components/ZoomGesturesProvider.tsx
|
|
35540
|
-
import { useCallback as useCallback155, useMemo as
|
|
35602
|
+
import { useCallback as useCallback155, useMemo as useMemo159, useState as useState108 } from "react";
|
|
35541
35603
|
import { jsx as jsx300 } from "react/jsx-runtime";
|
|
35542
35604
|
var ZoomGesturesProvider = ({ children }) => {
|
|
35543
35605
|
const [editorZoomGestures, setEditorZoomGesturesState] = useState108(() => loadEditorZoomGesturesOption());
|
|
@@ -35548,7 +35610,7 @@ var ZoomGesturesProvider = ({ children }) => {
|
|
|
35548
35610
|
return newVal;
|
|
35549
35611
|
});
|
|
35550
35612
|
}, []);
|
|
35551
|
-
const editorZoomGesturesCtx =
|
|
35613
|
+
const editorZoomGesturesCtx = useMemo159(() => {
|
|
35552
35614
|
return {
|
|
35553
35615
|
editorZoomGestures,
|
|
35554
35616
|
setEditorZoomGestures
|
|
@@ -35685,7 +35747,7 @@ var ServerDisconnected = () => {
|
|
|
35685
35747
|
};
|
|
35686
35748
|
|
|
35687
35749
|
// src/FastRefreshProvider.tsx
|
|
35688
|
-
import { useCallback as useCallback156, useEffect as useEffect91, useMemo as
|
|
35750
|
+
import { useCallback as useCallback156, useEffect as useEffect91, useMemo as useMemo160, useState as useState109 } from "react";
|
|
35689
35751
|
import { jsx as jsx303 } from "react/jsx-runtime";
|
|
35690
35752
|
var FastRefreshProvider = ({ children }) => {
|
|
35691
35753
|
const [fastRefreshes, setFastRefreshes] = useState109(0);
|
|
@@ -35704,7 +35766,7 @@ var FastRefreshProvider = ({ children }) => {
|
|
|
35704
35766
|
}
|
|
35705
35767
|
}
|
|
35706
35768
|
}, []);
|
|
35707
|
-
const value =
|
|
35769
|
+
const value = useMemo160(() => ({ fastRefreshes, manualRefreshes, increaseManualRefreshes }), [fastRefreshes, manualRefreshes, increaseManualRefreshes]);
|
|
35708
35770
|
return /* @__PURE__ */ jsx303(FastRefreshContext.Provider, {
|
|
35709
35771
|
value,
|
|
35710
35772
|
children
|
|
@@ -35879,7 +35941,7 @@ import {
|
|
|
35879
35941
|
useContext as useContext100,
|
|
35880
35942
|
useEffect as useEffect92,
|
|
35881
35943
|
useImperativeHandle as useImperativeHandle15,
|
|
35882
|
-
useMemo as
|
|
35944
|
+
useMemo as useMemo161,
|
|
35883
35945
|
useState as useState110
|
|
35884
35946
|
} from "react";
|
|
35885
35947
|
import { getInputProps as getInputProps2, Internals as Internals69 } from "remotion";
|
|
@@ -35889,20 +35951,20 @@ var ResolveCompositionConfigInStudio = ({ children }) => {
|
|
|
35889
35951
|
const { compositions, canvasContent, currentCompositionMetadata } = useContext100(Internals69.CompositionManager);
|
|
35890
35952
|
const { fastRefreshes, manualRefreshes } = useContext100(FastRefreshContext);
|
|
35891
35953
|
if (manualRefreshes) {}
|
|
35892
|
-
const selectedComposition =
|
|
35954
|
+
const selectedComposition = useMemo161(() => {
|
|
35893
35955
|
return compositions.find((c) => canvasContent && canvasContent.type === "composition" && canvasContent.compositionId === c.id);
|
|
35894
35956
|
}, [canvasContent, compositions]);
|
|
35895
35957
|
const renderModalComposition = compositions.find((c) => c.id === currentRenderModalComposition);
|
|
35896
35958
|
const { props: allEditorProps } = useContext100(Internals69.EditorPropsContext);
|
|
35897
35959
|
const env = Internals69.getRemotionEnvironment();
|
|
35898
|
-
const inputProps =
|
|
35960
|
+
const inputProps = useMemo161(() => {
|
|
35899
35961
|
return typeof window === "undefined" || env.isPlayer ? {} : getInputProps2() ?? {};
|
|
35900
35962
|
}, [env.isPlayer]);
|
|
35901
35963
|
const [resolvedConfigs, setResolvedConfigs] = useState110({});
|
|
35902
|
-
const selectedEditorProps =
|
|
35964
|
+
const selectedEditorProps = useMemo161(() => {
|
|
35903
35965
|
return selectedComposition ? allEditorProps[selectedComposition.id] ?? {} : {};
|
|
35904
35966
|
}, [allEditorProps, selectedComposition]);
|
|
35905
|
-
const renderModalProps =
|
|
35967
|
+
const renderModalProps = useMemo161(() => {
|
|
35906
35968
|
return renderModalComposition ? allEditorProps[renderModalComposition.id] ?? {} : {};
|
|
35907
35969
|
}, [allEditorProps, renderModalComposition]);
|
|
35908
35970
|
const hasResolution = Boolean(currentCompositionMetadata);
|
|
@@ -36039,13 +36101,13 @@ var ResolveCompositionConfigInStudio = ({ children }) => {
|
|
|
36039
36101
|
inputProps
|
|
36040
36102
|
]);
|
|
36041
36103
|
const isTheSame = selectedComposition?.id === renderModalComposition?.id;
|
|
36042
|
-
const currentDefaultProps =
|
|
36104
|
+
const currentDefaultProps = useMemo161(() => {
|
|
36043
36105
|
return {
|
|
36044
36106
|
...selectedComposition?.defaultProps ?? {},
|
|
36045
36107
|
...selectedEditorProps ?? {}
|
|
36046
36108
|
};
|
|
36047
36109
|
}, [selectedComposition?.defaultProps, selectedEditorProps]);
|
|
36048
|
-
const originalProps =
|
|
36110
|
+
const originalProps = useMemo161(() => {
|
|
36049
36111
|
return {
|
|
36050
36112
|
...currentDefaultProps,
|
|
36051
36113
|
...inputProps ?? {}
|
|
@@ -36114,7 +36176,7 @@ var ResolveCompositionConfigInStudio = ({ children }) => {
|
|
|
36114
36176
|
renderModalComposition,
|
|
36115
36177
|
renderModalProps
|
|
36116
36178
|
]);
|
|
36117
|
-
const resolvedConfigsIncludingStaticOnes =
|
|
36179
|
+
const resolvedConfigsIncludingStaticOnes = useMemo161(() => {
|
|
36118
36180
|
const staticComps = compositions.filter((c) => {
|
|
36119
36181
|
return c.calculateMetadata === null;
|
|
36120
36182
|
});
|