@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.
Files changed (174) hide show
  1. package/dist/aac-priming.js +6 -2
  2. package/dist/browser/BrowserFetcher.d.ts +7 -1
  3. package/dist/browser/BrowserFetcher.js +33 -13
  4. package/dist/browser/Connection.js +5 -17
  5. package/dist/browser/DOMWorld.js +19 -13
  6. package/dist/browser/devtools-commands.d.ts +13 -1
  7. package/dist/browser/devtools-types.d.ts +62 -0
  8. package/dist/browser/get-chrome-download-url.d.ts +1 -1
  9. package/dist/browser/get-chrome-download-url.js +19 -33
  10. package/dist/can-use-parallel-encoding.d.ts +0 -1
  11. package/dist/can-use-parallel-encoding.js +10 -10
  12. package/dist/client.d.ts +87 -4
  13. package/dist/client.js +2 -0
  14. package/dist/cycle-browser-tabs.js +9 -1
  15. package/dist/ensure-browser.js +30 -6
  16. package/dist/esm/client.mjs +937 -796
  17. package/dist/esm/index.mjs +4125 -3027
  18. package/dist/esm/pure.mjs +33 -9
  19. package/dist/file-extensions.js +4 -1
  20. package/dist/get-mp4-brand.d.ts +1 -0
  21. package/dist/get-mp4-brand.js +21 -0
  22. package/dist/image-format.d.ts +1 -0
  23. package/dist/image-format.js +8 -4
  24. package/dist/index.d.ts +11 -1
  25. package/dist/index.js +4 -0
  26. package/dist/memory/from-macos-sysctl.d.ts +1 -0
  27. package/dist/memory/from-macos-sysctl.js +50 -0
  28. package/dist/memory/from-proc-meminfo.d.ts +1 -1
  29. package/dist/memory/from-proc-meminfo.js +7 -4
  30. package/dist/memory/get-available-memory.js +29 -21
  31. package/dist/mux-video-and-audio.js +8 -2
  32. package/dist/next-frame-to-render.d.ts +3 -7
  33. package/dist/next-frame-to-render.js +3 -22
  34. package/dist/open-browser.js +1 -0
  35. package/dist/options/allow-html-in-canvas.js +1 -1
  36. package/dist/options/api-key.js +1 -1
  37. package/dist/options/ask-ai.js +1 -1
  38. package/dist/options/audio-bitrate.js +1 -1
  39. package/dist/options/audio-codec.js +12 -6
  40. package/dist/options/beep-on-finish.js +1 -1
  41. package/dist/options/benchmark-concurrencies.js +1 -1
  42. package/dist/options/binaries-directory.js +1 -1
  43. package/dist/options/browser-executable.js +1 -1
  44. package/dist/options/browser.js +1 -1
  45. package/dist/options/bundle-cache.js +1 -1
  46. package/dist/options/canvas-tabs.js +1 -1
  47. package/dist/options/chrome-mode.js +1 -1
  48. package/dist/options/color-space.js +1 -1
  49. package/dist/options/concurrency.js +1 -1
  50. package/dist/options/config.js +1 -1
  51. package/dist/options/crf.js +1 -1
  52. package/dist/options/cross-site-isolation.js +1 -1
  53. package/dist/options/dark-mode.js +1 -1
  54. package/dist/options/default-coding-agent.js +1 -1
  55. package/dist/options/default-editor.js +1 -1
  56. package/dist/options/delete-after.js +1 -1
  57. package/dist/options/disable-git-source.js +1 -1
  58. package/dist/options/disable-shared-memory-capture.d.ts +16 -0
  59. package/dist/options/disable-shared-memory-capture.js +29 -0
  60. package/dist/options/disable-web-security.js +1 -1
  61. package/dist/options/disallow-parallel-encoding.js +1 -1
  62. package/dist/options/enable-cancellation.js +1 -1
  63. package/dist/options/enable-lambda-insights.js +1 -1
  64. package/dist/options/enable-multiprocess-on-linux.js +1 -1
  65. package/dist/options/encoding-buffer-size.js +1 -1
  66. package/dist/options/encoding-max-rate.js +1 -1
  67. package/dist/options/enforce-audio.js +1 -1
  68. package/dist/options/env-file.js +1 -1
  69. package/dist/options/every-nth-frame.js +1 -1
  70. package/dist/options/experimental-keep-audio-context-alive.js +1 -1
  71. package/dist/options/experimental-tracks.d.ts +18 -0
  72. package/dist/options/experimental-tracks.js +42 -0
  73. package/dist/options/folder-expiry.js +1 -1
  74. package/dist/options/for-seamless-aac-concatenation.js +1 -1
  75. package/dist/options/force-new-studio.js +1 -1
  76. package/dist/options/frames.js +1 -1
  77. package/dist/options/gl.js +1 -1
  78. package/dist/options/gop-size.js +1 -1
  79. package/dist/options/hardware-acceleration.js +1 -1
  80. package/dist/options/headless.js +1 -1
  81. package/dist/options/ignore-certificate-errors.js +1 -1
  82. package/dist/options/image-sequence-pattern.d.ts +1 -1
  83. package/dist/options/image-sequence-pattern.js +1 -1
  84. package/dist/options/image-sequence.js +1 -1
  85. package/dist/options/index.d.ts +36 -2
  86. package/dist/options/index.js +4 -0
  87. package/dist/options/interactivity.js +1 -1
  88. package/dist/options/ipv4.js +1 -1
  89. package/dist/options/is-production.js +1 -1
  90. package/dist/options/jpeg-quality.js +5 -2
  91. package/dist/options/keyboard-shortcuts.js +1 -1
  92. package/dist/options/latency-hint.js +1 -1
  93. package/dist/options/license-key.js +1 -1
  94. package/dist/options/log-level.js +1 -1
  95. package/dist/options/metadata.js +1 -1
  96. package/dist/options/mute.js +1 -1
  97. package/dist/options/no-open.js +1 -1
  98. package/dist/options/number-of-gif-loops.js +1 -1
  99. package/dist/options/number-of-shared-audio-tags.js +1 -1
  100. package/dist/options/offthreadvideo-cache-size.js +1 -1
  101. package/dist/options/offthreadvideo-threads.js +1 -1
  102. package/dist/options/on-browser-download.js +1 -1
  103. package/dist/options/options-map.d.ts +49 -1
  104. package/dist/options/options-map.js +4 -0
  105. package/dist/options/out-dir.js +1 -1
  106. package/dist/options/override-duration.js +1 -1
  107. package/dist/options/override-fps.js +1 -1
  108. package/dist/options/override-height.js +1 -1
  109. package/dist/options/override-width.js +1 -1
  110. package/dist/options/overwrite.js +1 -1
  111. package/dist/options/package-manager.js +1 -1
  112. package/dist/options/pixel-format.js +1 -1
  113. package/dist/options/port.js +1 -1
  114. package/dist/options/prefer-lossless.js +1 -1
  115. package/dist/options/preview-sample-rate.js +1 -1
  116. package/dist/options/props.js +1 -1
  117. package/dist/options/prores-profile.js +1 -1
  118. package/dist/options/public-dir.js +1 -1
  119. package/dist/options/public-license-key.js +1 -1
  120. package/dist/options/public-path.js +1 -1
  121. package/dist/options/repro.js +1 -1
  122. package/dist/options/rspack.d.ts +1 -1
  123. package/dist/options/rspack.js +1 -1
  124. package/dist/options/runs.js +1 -1
  125. package/dist/options/sample-rate.js +1 -1
  126. package/dist/options/scale.js +1 -1
  127. package/dist/options/separate-audio.js +1 -1
  128. package/dist/options/skip-skills.js +1 -1
  129. package/dist/options/still-frame.js +1 -1
  130. package/dist/options/still-image-format.js +1 -1
  131. package/dist/options/throw-if-site-exists.js +1 -1
  132. package/dist/options/timeout.js +1 -1
  133. package/dist/options/user-agent.js +1 -1
  134. package/dist/options/version-flag.js +1 -1
  135. package/dist/options/video-bitrate.js +1 -1
  136. package/dist/options/video-cache-size.js +1 -1
  137. package/dist/options/video-codec.js +4 -3
  138. package/dist/options/video-image-format.js +6 -2
  139. package/dist/options/webhook-custom-data.js +1 -1
  140. package/dist/options/webpack-poll.js +1 -1
  141. package/dist/options/x264-preset.js +1 -1
  142. package/dist/prespawn-ffmpeg.d.ts +20 -0
  143. package/dist/prespawn-ffmpeg.js +152 -29
  144. package/dist/probe-shared-memory-capture.d.ts +8 -0
  145. package/dist/probe-shared-memory-capture.js +111 -0
  146. package/dist/puppeteer-screenshot.d.ts +3 -1
  147. package/dist/puppeteer-screenshot.js +1 -0
  148. package/dist/pure.d.ts +1 -1
  149. package/dist/remotion-shared-memory-ffmpeg.d.ts +26 -0
  150. package/dist/remotion-shared-memory-ffmpeg.js +312 -0
  151. package/dist/remotion-shared-memory.d.ts +49 -0
  152. package/dist/remotion-shared-memory.js +359 -0
  153. package/dist/render-frame-and-retry-target-close.d.ts +5 -2
  154. package/dist/render-frame-and-retry-target-close.js +20 -4
  155. package/dist/render-frame-with-option-to-reject.d.ts +4 -1
  156. package/dist/render-frame-with-option-to-reject.js +206 -115
  157. package/dist/render-frame.d.ts +4 -5
  158. package/dist/render-frame.js +3 -1
  159. package/dist/render-frames.d.ts +3 -0
  160. package/dist/render-frames.js +15 -18
  161. package/dist/render-media.d.ts +1 -1
  162. package/dist/render-media.js +131 -46
  163. package/dist/render-still.js +1 -0
  164. package/dist/screenshot-background.d.ts +2 -0
  165. package/dist/screenshot-background.js +20 -0
  166. package/dist/screenshot-task.d.ts +4 -2
  167. package/dist/screenshot-task.js +40 -21
  168. package/dist/seek-to-frame.js +1 -1
  169. package/dist/stitch-frames-to-video.js +71 -10
  170. package/dist/take-frame.d.ts +11 -3
  171. package/dist/take-frame.js +10 -8
  172. package/dist/validate-output-filename.d.ts +1 -1
  173. package/dist/validate-output-filename.js +10 -2
  174. 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: null;
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: null;
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: null;
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))
@@ -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 status = getBrowserStatus({ browserExecutable, chromeMode });
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 ${BrowserFetcher_1.TESTED_VERSION}, but the installed one differs${versionInfo}. Re-downloading.`);
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 === BrowserFetcher_1.TESTED_VERSION) {
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 };