@remotion/renderer 4.0.533 → 4.0.534
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/aac-priming.js +6 -2
- package/dist/browser/BrowserFetcher.d.ts +7 -1
- package/dist/browser/BrowserFetcher.js +33 -13
- package/dist/browser/Connection.js +5 -17
- package/dist/browser/DOMWorld.js +19 -13
- package/dist/browser/devtools-commands.d.ts +13 -1
- package/dist/browser/devtools-types.d.ts +62 -0
- package/dist/browser/get-chrome-download-url.d.ts +1 -1
- package/dist/browser/get-chrome-download-url.js +19 -33
- package/dist/can-use-parallel-encoding.d.ts +0 -1
- package/dist/can-use-parallel-encoding.js +10 -10
- package/dist/client.d.ts +87 -4
- package/dist/client.js +2 -0
- package/dist/cycle-browser-tabs.js +9 -1
- package/dist/ensure-browser.js +30 -6
- package/dist/esm/client.mjs +937 -796
- package/dist/esm/index.mjs +4125 -3027
- package/dist/esm/pure.mjs +33 -9
- package/dist/file-extensions.js +4 -1
- package/dist/get-mp4-brand.d.ts +1 -0
- package/dist/get-mp4-brand.js +21 -0
- package/dist/image-format.d.ts +1 -0
- package/dist/image-format.js +8 -4
- package/dist/index.d.ts +11 -1
- package/dist/index.js +4 -0
- package/dist/memory/from-macos-sysctl.d.ts +1 -0
- package/dist/memory/from-macos-sysctl.js +50 -0
- package/dist/memory/from-proc-meminfo.d.ts +1 -1
- package/dist/memory/from-proc-meminfo.js +7 -4
- package/dist/memory/get-available-memory.js +29 -21
- package/dist/mux-video-and-audio.js +8 -2
- package/dist/next-frame-to-render.d.ts +3 -7
- package/dist/next-frame-to-render.js +3 -22
- package/dist/open-browser.js +1 -0
- package/dist/options/allow-html-in-canvas.js +1 -1
- package/dist/options/api-key.js +1 -1
- package/dist/options/ask-ai.js +1 -1
- package/dist/options/audio-bitrate.js +1 -1
- package/dist/options/audio-codec.js +12 -6
- package/dist/options/beep-on-finish.js +1 -1
- package/dist/options/benchmark-concurrencies.js +1 -1
- package/dist/options/binaries-directory.js +1 -1
- package/dist/options/browser-executable.js +1 -1
- package/dist/options/browser.js +1 -1
- package/dist/options/bundle-cache.js +1 -1
- package/dist/options/canvas-tabs.js +1 -1
- package/dist/options/chrome-mode.js +1 -1
- package/dist/options/color-space.js +1 -1
- package/dist/options/concurrency.js +1 -1
- package/dist/options/config.js +1 -1
- package/dist/options/crf.js +1 -1
- package/dist/options/cross-site-isolation.js +1 -1
- package/dist/options/dark-mode.js +1 -1
- package/dist/options/default-coding-agent.js +1 -1
- package/dist/options/default-editor.js +1 -1
- package/dist/options/delete-after.js +1 -1
- package/dist/options/disable-git-source.js +1 -1
- package/dist/options/disable-shared-memory-capture.d.ts +16 -0
- package/dist/options/disable-shared-memory-capture.js +29 -0
- package/dist/options/disable-web-security.js +1 -1
- package/dist/options/disallow-parallel-encoding.js +1 -1
- package/dist/options/enable-cancellation.js +1 -1
- package/dist/options/enable-lambda-insights.js +1 -1
- package/dist/options/enable-multiprocess-on-linux.js +1 -1
- package/dist/options/encoding-buffer-size.js +1 -1
- package/dist/options/encoding-max-rate.js +1 -1
- package/dist/options/enforce-audio.js +1 -1
- package/dist/options/env-file.js +1 -1
- package/dist/options/every-nth-frame.js +1 -1
- package/dist/options/experimental-keep-audio-context-alive.js +1 -1
- package/dist/options/experimental-tracks.d.ts +18 -0
- package/dist/options/experimental-tracks.js +42 -0
- package/dist/options/folder-expiry.js +1 -1
- package/dist/options/for-seamless-aac-concatenation.js +1 -1
- package/dist/options/force-new-studio.js +1 -1
- package/dist/options/frames.js +1 -1
- package/dist/options/gl.js +1 -1
- package/dist/options/gop-size.js +1 -1
- package/dist/options/hardware-acceleration.js +1 -1
- package/dist/options/headless.js +1 -1
- package/dist/options/ignore-certificate-errors.js +1 -1
- package/dist/options/image-sequence-pattern.d.ts +1 -1
- package/dist/options/image-sequence-pattern.js +1 -1
- package/dist/options/image-sequence.js +1 -1
- package/dist/options/index.d.ts +36 -2
- package/dist/options/index.js +4 -0
- package/dist/options/interactivity.js +1 -1
- package/dist/options/ipv4.js +1 -1
- package/dist/options/is-production.js +1 -1
- package/dist/options/jpeg-quality.js +5 -2
- package/dist/options/keyboard-shortcuts.js +1 -1
- package/dist/options/latency-hint.js +1 -1
- package/dist/options/license-key.js +1 -1
- package/dist/options/log-level.js +1 -1
- package/dist/options/metadata.js +1 -1
- package/dist/options/mute.js +1 -1
- package/dist/options/no-open.js +1 -1
- package/dist/options/number-of-gif-loops.js +1 -1
- package/dist/options/number-of-shared-audio-tags.js +1 -1
- package/dist/options/offthreadvideo-cache-size.js +1 -1
- package/dist/options/offthreadvideo-threads.js +1 -1
- package/dist/options/on-browser-download.js +1 -1
- package/dist/options/options-map.d.ts +49 -1
- package/dist/options/options-map.js +4 -0
- package/dist/options/out-dir.js +1 -1
- package/dist/options/override-duration.js +1 -1
- package/dist/options/override-fps.js +1 -1
- package/dist/options/override-height.js +1 -1
- package/dist/options/override-width.js +1 -1
- package/dist/options/overwrite.js +1 -1
- package/dist/options/package-manager.js +1 -1
- package/dist/options/pixel-format.js +1 -1
- package/dist/options/port.js +1 -1
- package/dist/options/prefer-lossless.js +1 -1
- package/dist/options/preview-sample-rate.js +1 -1
- package/dist/options/props.js +1 -1
- package/dist/options/prores-profile.js +1 -1
- package/dist/options/public-dir.js +1 -1
- package/dist/options/public-license-key.js +1 -1
- package/dist/options/public-path.js +1 -1
- package/dist/options/repro.js +1 -1
- package/dist/options/rspack.d.ts +1 -1
- package/dist/options/rspack.js +1 -1
- package/dist/options/runs.js +1 -1
- package/dist/options/sample-rate.js +1 -1
- package/dist/options/scale.js +1 -1
- package/dist/options/separate-audio.js +1 -1
- package/dist/options/skip-skills.js +1 -1
- package/dist/options/still-frame.js +1 -1
- package/dist/options/still-image-format.js +1 -1
- package/dist/options/throw-if-site-exists.js +1 -1
- package/dist/options/timeout.js +1 -1
- package/dist/options/user-agent.js +1 -1
- package/dist/options/version-flag.js +1 -1
- package/dist/options/video-bitrate.js +1 -1
- package/dist/options/video-cache-size.js +1 -1
- package/dist/options/video-codec.js +4 -3
- package/dist/options/video-image-format.js +6 -2
- package/dist/options/webhook-custom-data.js +1 -1
- package/dist/options/webpack-poll.js +1 -1
- package/dist/options/x264-preset.js +1 -1
- package/dist/prespawn-ffmpeg.d.ts +20 -0
- package/dist/prespawn-ffmpeg.js +152 -29
- package/dist/probe-shared-memory-capture.d.ts +8 -0
- package/dist/probe-shared-memory-capture.js +111 -0
- package/dist/puppeteer-screenshot.d.ts +3 -1
- package/dist/puppeteer-screenshot.js +1 -0
- package/dist/pure.d.ts +1 -1
- package/dist/remotion-shared-memory-ffmpeg.d.ts +26 -0
- package/dist/remotion-shared-memory-ffmpeg.js +312 -0
- package/dist/remotion-shared-memory.d.ts +49 -0
- package/dist/remotion-shared-memory.js +359 -0
- package/dist/render-frame-and-retry-target-close.d.ts +5 -2
- package/dist/render-frame-and-retry-target-close.js +20 -4
- package/dist/render-frame-with-option-to-reject.d.ts +4 -1
- package/dist/render-frame-with-option-to-reject.js +206 -115
- package/dist/render-frame.d.ts +4 -5
- package/dist/render-frame.js +3 -1
- package/dist/render-frames.d.ts +3 -0
- package/dist/render-frames.js +15 -18
- package/dist/render-media.d.ts +1 -1
- package/dist/render-media.js +131 -46
- package/dist/render-still.js +1 -0
- package/dist/screenshot-background.d.ts +2 -0
- package/dist/screenshot-background.js +20 -0
- package/dist/screenshot-task.d.ts +4 -2
- package/dist/screenshot-task.js +40 -21
- package/dist/seek-to-frame.js +1 -1
- package/dist/stitch-frames-to-video.js +71 -10
- package/dist/take-frame.d.ts +11 -3
- package/dist/take-frame.js +10 -8
- package/dist/validate-output-filename.d.ts +1 -1
- package/dist/validate-output-filename.js +10 -2
- package/package.json +13 -13
package/dist/client.d.ts
CHANGED
|
@@ -6,6 +6,7 @@ export type { BuiltInEditor, CustomEditor, DefaultEditor, } from './options/defa
|
|
|
6
6
|
export { HardwareAccelerationOption } from './options/hardware-acceleration';
|
|
7
7
|
export { ProResProfile } from './options/prores-profile';
|
|
8
8
|
export declare const BrowserSafeApis: {
|
|
9
|
+
canUseParallelEncoding: (codec: "aac" | "av1" | "gif" | "h264" | "h264-mkv" | "h264-ts" | "h265" | "mp3" | "prores" | "vp8" | "vp9" | "wav") => boolean;
|
|
9
10
|
getExtensionOfFilename: (filename: string | null) => string | null;
|
|
10
11
|
getFileExtensionFromCodec: <T extends "aac" | "av1" | "gif" | "h264" | "h264-mkv" | "h264-ts" | "h265" | "mp3" | "prores" | "vp8" | "vp9" | "wav">(codec: T, audioCodec: "aac" | "mp3" | "opus" | "pcm-16" | null) => import("./file-extensions").FileExtension;
|
|
11
12
|
validCodecs: readonly ["h264", "h265", "vp8", "vp9", "av1", "mp3", "aac", "wav", "prores", "h264-mkv", "h264-ts", "gif"];
|
|
@@ -246,7 +247,7 @@ export declare const BrowserSafeApis: {
|
|
|
246
247
|
validateOutputFilename: <T extends "aac" | "av1" | "gif" | "h264" | "h264-mkv" | "h264-ts" | "h265" | "mp3" | "prores" | "vp8" | "vp9" | "wav">({ codec, audioCodecSetting, extension, preferLossless, separateAudioTo, }: {
|
|
247
248
|
codec: T;
|
|
248
249
|
audioCodecSetting: "aac" | "mp3" | "opus" | "pcm-16" | null;
|
|
249
|
-
extension: string;
|
|
250
|
+
extension: string | null;
|
|
250
251
|
preferLossless: boolean;
|
|
251
252
|
separateAudioTo: string | null;
|
|
252
253
|
}) => void;
|
|
@@ -611,6 +612,22 @@ export declare const BrowserSafeApis: {
|
|
|
611
612
|
setConfig(value: boolean): void;
|
|
612
613
|
id: "disallow-parallel-encoding";
|
|
613
614
|
};
|
|
615
|
+
disableSharedMemoryCaptureOption: {
|
|
616
|
+
name: string;
|
|
617
|
+
cliFlag: "disable-shared-memory-capture";
|
|
618
|
+
description: () => import("react/jsx-runtime").JSX.Element;
|
|
619
|
+
ssrName: string;
|
|
620
|
+
docLink: string;
|
|
621
|
+
type: boolean;
|
|
622
|
+
getValue: ({ commandLine }: {
|
|
623
|
+
commandLine: Record<string, unknown>;
|
|
624
|
+
}) => {
|
|
625
|
+
value: boolean;
|
|
626
|
+
source: string;
|
|
627
|
+
};
|
|
628
|
+
setConfig(value: boolean): void;
|
|
629
|
+
id: "disable-shared-memory-capture";
|
|
630
|
+
};
|
|
614
631
|
folderExpiryOption: {
|
|
615
632
|
name: string;
|
|
616
633
|
cliFlag: "enable-folder-expiry";
|
|
@@ -1276,7 +1293,7 @@ export declare const BrowserSafeApis: {
|
|
|
1276
1293
|
cliFlag: "image-sequence-pattern";
|
|
1277
1294
|
ssrName: string;
|
|
1278
1295
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
1279
|
-
docLink:
|
|
1296
|
+
docLink: string;
|
|
1280
1297
|
type: string | null;
|
|
1281
1298
|
getValue: ({ commandLine }: {
|
|
1282
1299
|
commandLine: Record<string, unknown>;
|
|
@@ -1510,6 +1527,24 @@ export declare const BrowserSafeApis: {
|
|
|
1510
1527
|
setConfig(value: boolean): void;
|
|
1511
1528
|
id: "experimental-keep-audio-context-alive";
|
|
1512
1529
|
};
|
|
1530
|
+
experimentalTracksOption: {
|
|
1531
|
+
name: string;
|
|
1532
|
+
cliFlag: "experimental-tracks";
|
|
1533
|
+
description: () => import("react/jsx-runtime").JSX.Element;
|
|
1534
|
+
ssrName: null;
|
|
1535
|
+
docLink: string;
|
|
1536
|
+
type: boolean;
|
|
1537
|
+
getValue: ({ commandLine }: {
|
|
1538
|
+
commandLine: Record<string, unknown>;
|
|
1539
|
+
}) => {
|
|
1540
|
+
value: boolean;
|
|
1541
|
+
source: string;
|
|
1542
|
+
};
|
|
1543
|
+
setConfig(value: boolean): void;
|
|
1544
|
+
getConfigValue: () => boolean | null;
|
|
1545
|
+
reset: () => void;
|
|
1546
|
+
id: "experimental-tracks";
|
|
1547
|
+
};
|
|
1513
1548
|
numberOfSharedAudioTagsOption: {
|
|
1514
1549
|
name: string;
|
|
1515
1550
|
cliFlag: "number-of-shared-audio-tags";
|
|
@@ -1690,7 +1725,7 @@ export declare const BrowserSafeApis: {
|
|
|
1690
1725
|
cliFlag: "rspack";
|
|
1691
1726
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
1692
1727
|
ssrName: null;
|
|
1693
|
-
docLink:
|
|
1728
|
+
docLink: string;
|
|
1694
1729
|
type: boolean;
|
|
1695
1730
|
getValue: ({ commandLine }: {
|
|
1696
1731
|
commandLine: Record<string, unknown>;
|
|
@@ -2181,6 +2216,22 @@ export declare const BrowserSafeApis: {
|
|
|
2181
2216
|
setConfig(value: boolean): void;
|
|
2182
2217
|
id: "disallow-parallel-encoding";
|
|
2183
2218
|
};
|
|
2219
|
+
readonly disableSharedMemoryCapture: {
|
|
2220
|
+
name: string;
|
|
2221
|
+
cliFlag: "disable-shared-memory-capture";
|
|
2222
|
+
description: () => import("react/jsx-runtime").JSX.Element;
|
|
2223
|
+
ssrName: string;
|
|
2224
|
+
docLink: string;
|
|
2225
|
+
type: boolean;
|
|
2226
|
+
getValue: ({ commandLine }: {
|
|
2227
|
+
commandLine: Record<string, unknown>;
|
|
2228
|
+
}) => {
|
|
2229
|
+
value: boolean;
|
|
2230
|
+
source: string;
|
|
2231
|
+
};
|
|
2232
|
+
setConfig(value: boolean): void;
|
|
2233
|
+
id: "disable-shared-memory-capture";
|
|
2234
|
+
};
|
|
2184
2235
|
readonly jpegQuality: {
|
|
2185
2236
|
name: string;
|
|
2186
2237
|
cliFlag: "jpeg-quality";
|
|
@@ -3103,7 +3154,7 @@ export declare const BrowserSafeApis: {
|
|
|
3103
3154
|
cliFlag: "image-sequence-pattern";
|
|
3104
3155
|
ssrName: string;
|
|
3105
3156
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
3106
|
-
docLink:
|
|
3157
|
+
docLink: string;
|
|
3107
3158
|
type: string | null;
|
|
3108
3159
|
getValue: ({ commandLine }: {
|
|
3109
3160
|
commandLine: Record<string, unknown>;
|
|
@@ -3136,6 +3187,22 @@ export declare const BrowserSafeApis: {
|
|
|
3136
3187
|
};
|
|
3137
3188
|
};
|
|
3138
3189
|
readonly renderMediaOnLambda: {
|
|
3190
|
+
readonly disableSharedMemoryCapture: {
|
|
3191
|
+
name: string;
|
|
3192
|
+
cliFlag: "disable-shared-memory-capture";
|
|
3193
|
+
description: () => import("react/jsx-runtime").JSX.Element;
|
|
3194
|
+
ssrName: string;
|
|
3195
|
+
docLink: string;
|
|
3196
|
+
type: boolean;
|
|
3197
|
+
getValue: ({ commandLine }: {
|
|
3198
|
+
commandLine: Record<string, unknown>;
|
|
3199
|
+
}) => {
|
|
3200
|
+
value: boolean;
|
|
3201
|
+
source: string;
|
|
3202
|
+
};
|
|
3203
|
+
setConfig(value: boolean): void;
|
|
3204
|
+
id: "disable-shared-memory-capture";
|
|
3205
|
+
};
|
|
3139
3206
|
readonly mediaCacheSizeInBytes: {
|
|
3140
3207
|
name: string;
|
|
3141
3208
|
cliFlag: "media-cache-size-in-bytes";
|
|
@@ -3725,6 +3792,22 @@ export declare const BrowserSafeApis: {
|
|
|
3725
3792
|
};
|
|
3726
3793
|
};
|
|
3727
3794
|
readonly renderMediaOnCloudRun: {
|
|
3795
|
+
readonly disableSharedMemoryCapture: {
|
|
3796
|
+
name: string;
|
|
3797
|
+
cliFlag: "disable-shared-memory-capture";
|
|
3798
|
+
description: () => import("react/jsx-runtime").JSX.Element;
|
|
3799
|
+
ssrName: string;
|
|
3800
|
+
docLink: string;
|
|
3801
|
+
type: boolean;
|
|
3802
|
+
getValue: ({ commandLine }: {
|
|
3803
|
+
commandLine: Record<string, unknown>;
|
|
3804
|
+
}) => {
|
|
3805
|
+
value: boolean;
|
|
3806
|
+
source: string;
|
|
3807
|
+
};
|
|
3808
|
+
setConfig(value: boolean): void;
|
|
3809
|
+
id: "disable-shared-memory-capture";
|
|
3810
|
+
};
|
|
3728
3811
|
readonly mediaCacheSizeInBytes: {
|
|
3729
3812
|
name: string;
|
|
3730
3813
|
cliFlag: "media-cache-size-in-bytes";
|
package/dist/client.js
CHANGED
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.BrowserSafeApis = exports.defaultEditorIds = exports.customEditorTargetPathPlaceholder = exports.customEditorLineNumberPlaceholder = exports.customEditorColumnNumberPlaceholder = exports.defaultCodingAgentIds = void 0;
|
|
4
4
|
const no_react_1 = require("remotion/no-react");
|
|
5
5
|
const TimeoutSettings_1 = require("./browser/TimeoutSettings");
|
|
6
|
+
const can_use_parallel_encoding_1 = require("./can-use-parallel-encoding");
|
|
6
7
|
const codec_1 = require("./codec");
|
|
7
8
|
const codec_supports_media_1 = require("./codec-supports-media");
|
|
8
9
|
const crf_1 = require("./crf");
|
|
@@ -31,6 +32,7 @@ Object.defineProperty(exports, "customEditorLineNumberPlaceholder", { enumerable
|
|
|
31
32
|
Object.defineProperty(exports, "customEditorTargetPathPlaceholder", { enumerable: true, get: function () { return default_editor_1.customEditorTargetPathPlaceholder; } });
|
|
32
33
|
Object.defineProperty(exports, "defaultEditorIds", { enumerable: true, get: function () { return default_editor_1.defaultEditorIds; } });
|
|
33
34
|
exports.BrowserSafeApis = {
|
|
35
|
+
canUseParallelEncoding: can_use_parallel_encoding_1.canUseParallelEncoding,
|
|
34
36
|
getExtensionOfFilename: get_extension_of_filename_1.getExtensionOfFilename,
|
|
35
37
|
getFileExtensionFromCodec: get_extension_from_codec_1.getFileExtensionFromCodec,
|
|
36
38
|
validCodecs: codec_1.validCodecs,
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.cycleBrowserTabs = void 0;
|
|
4
|
+
const flaky_errors_1 = require("./browser/flaky-errors");
|
|
4
5
|
const logger_1 = require("./logger");
|
|
5
6
|
const cycleBrowserTabs = ({ puppeteerInstance, concurrency, logLevel, indent, }) => {
|
|
6
7
|
if (concurrency <= 1) {
|
|
@@ -25,7 +26,14 @@ const cycleBrowserTabs = ({ puppeteerInstance, concurrency, logLevel, indent, })
|
|
|
25
26
|
if (!(currentPage === null || currentPage === void 0 ? void 0 : currentPage.closed) &&
|
|
26
27
|
!stopped &&
|
|
27
28
|
(currentPage === null || currentPage === void 0 ? void 0 : currentPage.url()) !== 'about:blank') {
|
|
28
|
-
return currentPage.bringToFront()
|
|
29
|
+
return currentPage.bringToFront().catch((err) => {
|
|
30
|
+
// The tabs are closed at the end of a render while a
|
|
31
|
+
// bringToFront() may still be in flight. Only that case is ignored.
|
|
32
|
+
if (stopped && (0, flaky_errors_1.isTargetClosedErr)(err)) {
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
throw err;
|
|
36
|
+
});
|
|
29
37
|
}
|
|
30
38
|
})
|
|
31
39
|
.catch((err) => logger_1.Log.error({ indent, logLevel }, err))
|
package/dist/ensure-browser.js
CHANGED
|
@@ -10,18 +10,37 @@ const BrowserFetcher_1 = require("./browser/BrowserFetcher");
|
|
|
10
10
|
const logger_1 = require("./logger");
|
|
11
11
|
let currentEnsureBrowserOperation = Promise.resolve();
|
|
12
12
|
const internalEnsureBrowserUncapped = async ({ indent, logLevel, browserExecutable, onBrowserDownload, chromeMode, }) => {
|
|
13
|
-
const
|
|
13
|
+
const defaultStatus = getBrowserStatus({
|
|
14
|
+
browserExecutable,
|
|
15
|
+
chromeMode,
|
|
16
|
+
version: null,
|
|
17
|
+
});
|
|
18
|
+
if (defaultStatus.type === 'local-puppeteer-browser' ||
|
|
19
|
+
defaultStatus.type === 'user-defined-path') {
|
|
20
|
+
return defaultStatus;
|
|
21
|
+
}
|
|
22
|
+
const { onProgress, version } = onBrowserDownload({ chromeMode });
|
|
23
|
+
const status = version
|
|
24
|
+
? getBrowserStatus({ browserExecutable, chromeMode, version })
|
|
25
|
+
: defaultStatus;
|
|
26
|
+
if (status.type === 'local-puppeteer-browser') {
|
|
27
|
+
return status;
|
|
28
|
+
}
|
|
14
29
|
if (status.type === 'version-mismatch') {
|
|
30
|
+
const expectedVersion = (0, BrowserFetcher_1.getExpectedVersion)({
|
|
31
|
+
version,
|
|
32
|
+
chromeMode,
|
|
33
|
+
platform: (0, BrowserFetcher_1.getPlatform)(),
|
|
34
|
+
});
|
|
15
35
|
const versionInfo = status.actualVersion
|
|
16
36
|
? ` (installed: ${status.actualVersion})`
|
|
17
37
|
: '';
|
|
18
|
-
logger_1.Log.info({ indent, logLevel }, `This version of Remotion uses Chrome version ${
|
|
38
|
+
logger_1.Log.info({ indent, logLevel }, `This version of Remotion uses Chrome version ${expectedVersion}, but the installed one differs${versionInfo}. Re-downloading.`);
|
|
19
39
|
}
|
|
20
40
|
if (status.type === 'no-browser' || status.type === 'version-mismatch') {
|
|
21
|
-
const { onProgress, version } = onBrowserDownload({ chromeMode });
|
|
22
41
|
await (0, BrowserFetcher_1.downloadBrowser)({ indent, logLevel, onProgress, version, chromeMode });
|
|
23
42
|
}
|
|
24
|
-
const newStatus = getBrowserStatus({ browserExecutable, chromeMode });
|
|
43
|
+
const newStatus = getBrowserStatus({ browserExecutable, chromeMode, version });
|
|
25
44
|
return newStatus;
|
|
26
45
|
};
|
|
27
46
|
const internalEnsureBrowser = (options) => {
|
|
@@ -29,7 +48,7 @@ const internalEnsureBrowser = (options) => {
|
|
|
29
48
|
return currentEnsureBrowserOperation;
|
|
30
49
|
};
|
|
31
50
|
exports.internalEnsureBrowser = internalEnsureBrowser;
|
|
32
|
-
const getBrowserStatus = ({ browserExecutable, chromeMode, }) => {
|
|
51
|
+
const getBrowserStatus = ({ browserExecutable, chromeMode, version, }) => {
|
|
33
52
|
if (browserExecutable) {
|
|
34
53
|
if (!fs_1.default.existsSync(browserExecutable)) {
|
|
35
54
|
throw new Error(`"browserExecutable" was specified as '${browserExecutable}' but the path doesn't exist. Pass "null" for "browserExecutable" to download a browser automatically.`);
|
|
@@ -39,7 +58,12 @@ const getBrowserStatus = ({ browserExecutable, chromeMode, }) => {
|
|
|
39
58
|
const revision = (0, BrowserFetcher_1.getRevisionInfo)(chromeMode);
|
|
40
59
|
if (revision.local && fs_1.default.existsSync(revision.executablePath)) {
|
|
41
60
|
const actualVersion = (0, BrowserFetcher_1.readVersionFile)(chromeMode);
|
|
42
|
-
if (actualVersion ===
|
|
61
|
+
if (actualVersion ===
|
|
62
|
+
(0, BrowserFetcher_1.getExpectedVersion)({
|
|
63
|
+
version,
|
|
64
|
+
chromeMode,
|
|
65
|
+
platform: (0, BrowserFetcher_1.getPlatform)(),
|
|
66
|
+
})) {
|
|
43
67
|
return { path: revision.executablePath, type: 'local-puppeteer-browser' };
|
|
44
68
|
}
|
|
45
69
|
return { type: 'version-mismatch', actualVersion };
|