@remotion/renderer 3.2.43-retry.19 → 3.2.44

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.
@@ -25,8 +25,7 @@ interface WaitForTargetOptions {
25
25
  export declare const enum BrowserEmittedEvents {
26
26
  TargetChanged = "targetchanged",
27
27
  TargetCreated = "targetcreated",
28
- Closed = "closed",
29
- ClosedSilent = "closed-silent"
28
+ Closed = "closed"
30
29
  }
31
30
  export declare class Browser extends EventEmitter {
32
31
  #private;
@@ -36,7 +35,6 @@ export declare class Browser extends EventEmitter {
36
35
  defaultViewport: Viewport;
37
36
  closeCallback?: BrowserCloseCallback;
38
37
  }): Promise<Browser>;
39
- connection: Connection;
40
38
  get _targets(): Map<string, Target>;
41
39
  constructor(connection: Connection, contextIds: string[], defaultViewport: Viewport, closeCallback?: BrowserCloseCallback);
42
40
  browserContexts(): BrowserContext[];
@@ -45,7 +43,7 @@ export declare class Browser extends EventEmitter {
45
43
  targets(): Target[];
46
44
  waitForTarget(predicate: (x: Target) => boolean | Promise<boolean>, options?: WaitForTargetOptions): Promise<Target>;
47
45
  pages(): Promise<Page[]>;
48
- close(silent: boolean): Promise<void>;
46
+ close(): Promise<void>;
49
47
  disconnect(): void;
50
48
  }
51
49
  export declare class BrowserContext extends EventEmitter {
@@ -25,7 +25,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
25
25
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
26
26
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
27
27
  };
28
- var _Browser_instances, _Browser_defaultViewport, _Browser_closeCallback, _Browser_defaultContext, _Browser_contexts, _Browser_targets, _Browser_targetCreated, _Browser_targetDestroyed, _Browser_targetInfoChanged, _BrowserContext_browser, _BrowserContext_id;
28
+ var _Browser_instances, _Browser_defaultViewport, _Browser_connection, _Browser_closeCallback, _Browser_defaultContext, _Browser_contexts, _Browser_targets, _Browser_targetCreated, _Browser_targetDestroyed, _Browser_targetInfoChanged, _BrowserContext_browser, _BrowserContext_id;
29
29
  Object.defineProperty(exports, "__esModule", { value: true });
30
30
  exports.BrowserContext = exports.Browser = void 0;
31
31
  const assert_1 = require("./assert");
@@ -38,12 +38,13 @@ class Browser extends EventEmitter_1.EventEmitter {
38
38
  super();
39
39
  _Browser_instances.add(this);
40
40
  _Browser_defaultViewport.set(this, void 0);
41
+ _Browser_connection.set(this, void 0);
41
42
  _Browser_closeCallback.set(this, void 0);
42
43
  _Browser_defaultContext.set(this, void 0);
43
44
  _Browser_contexts.set(this, void 0);
44
45
  _Browser_targets.set(this, void 0);
45
46
  __classPrivateFieldSet(this, _Browser_defaultViewport, defaultViewport, "f");
46
- this.connection = connection;
47
+ __classPrivateFieldSet(this, _Browser_connection, connection, "f");
47
48
  __classPrivateFieldSet(this, _Browser_closeCallback, closeCallback ||
48
49
  function () {
49
50
  return undefined;
@@ -54,9 +55,9 @@ class Browser extends EventEmitter_1.EventEmitter {
54
55
  __classPrivateFieldGet(this, _Browser_contexts, "f").set(contextId, new BrowserContext(this, contextId));
55
56
  }
56
57
  __classPrivateFieldSet(this, _Browser_targets, new Map(), "f");
57
- this.connection.on('Target.targetCreated', __classPrivateFieldGet(this, _Browser_instances, "m", _Browser_targetCreated).bind(this));
58
- this.connection.on('Target.targetDestroyed', __classPrivateFieldGet(this, _Browser_instances, "m", _Browser_targetDestroyed).bind(this));
59
- this.connection.on('Target.targetInfoChanged', __classPrivateFieldGet(this, _Browser_instances, "m", _Browser_targetInfoChanged).bind(this));
58
+ __classPrivateFieldGet(this, _Browser_connection, "f").on('Target.targetCreated', __classPrivateFieldGet(this, _Browser_instances, "m", _Browser_targetCreated).bind(this));
59
+ __classPrivateFieldGet(this, _Browser_connection, "f").on('Target.targetDestroyed', __classPrivateFieldGet(this, _Browser_instances, "m", _Browser_targetDestroyed).bind(this));
60
+ __classPrivateFieldGet(this, _Browser_connection, "f").on('Target.targetInfoChanged', __classPrivateFieldGet(this, _Browser_instances, "m", _Browser_targetInfoChanged).bind(this));
60
61
  }
61
62
  static async _create({ connection, contextIds, defaultViewport, closeCallback, }) {
62
63
  const browser = new Browser(connection, contextIds, defaultViewport, closeCallback);
@@ -73,7 +74,7 @@ class Browser extends EventEmitter_1.EventEmitter {
73
74
  return __classPrivateFieldGet(this, _Browser_defaultContext, "f").newPage();
74
75
  }
75
76
  async _createPageInContext(contextId) {
76
- const { targetId } = await this.connection.send('Target.createTarget', {
77
+ const { targetId } = await __classPrivateFieldGet(this, _Browser_connection, "f").send('Target.createTarget', {
77
78
  url: 'about:blank',
78
79
  browserContextId: contextId || undefined,
79
80
  });
@@ -132,17 +133,17 @@ class Browser extends EventEmitter_1.EventEmitter {
132
133
  return acc.concat(x);
133
134
  }, []);
134
135
  }
135
- async close(silent) {
136
+ async close() {
136
137
  await __classPrivateFieldGet(this, _Browser_closeCallback, "f").call(null);
137
138
  this.disconnect();
138
- this.emit(silent ? "closed-silent" /* BrowserEmittedEvents.ClosedSilent */ : "closed" /* BrowserEmittedEvents.Closed */);
139
+ this.emit("closed" /* BrowserEmittedEvents.Closed */);
139
140
  }
140
141
  disconnect() {
141
- this.connection.dispose();
142
+ __classPrivateFieldGet(this, _Browser_connection, "f").dispose();
142
143
  }
143
144
  }
144
145
  exports.Browser = Browser;
145
- _Browser_defaultViewport = new WeakMap(), _Browser_closeCallback = new WeakMap(), _Browser_defaultContext = new WeakMap(), _Browser_contexts = new WeakMap(), _Browser_targets = new WeakMap(), _Browser_instances = new WeakSet(), _Browser_targetCreated = async function _Browser_targetCreated(event) {
146
+ _Browser_defaultViewport = new WeakMap(), _Browser_connection = new WeakMap(), _Browser_closeCallback = new WeakMap(), _Browser_defaultContext = new WeakMap(), _Browser_contexts = new WeakMap(), _Browser_targets = new WeakMap(), _Browser_instances = new WeakSet(), _Browser_targetCreated = async function _Browser_targetCreated(event) {
146
147
  var _a;
147
148
  const { targetInfo } = event;
148
149
  const { browserContextId } = targetInfo;
@@ -153,7 +154,7 @@ _Browser_defaultViewport = new WeakMap(), _Browser_closeCallback = new WeakMap()
153
154
  throw new Error('Missing browser context');
154
155
  }
155
156
  const target = new Target_1.Target(targetInfo, context, () => {
156
- return this.connection.createSession(targetInfo);
157
+ return __classPrivateFieldGet(this, _Browser_connection, "f").createSession(targetInfo);
157
158
  }, (_a = __classPrivateFieldGet(this, _Browser_defaultViewport, "f")) !== null && _a !== void 0 ? _a : null);
158
159
  (0, assert_1.assert)(!__classPrivateFieldGet(this, _Browser_targets, "f").has(event.targetInfo.targetId), 'Target should not exist before targetCreated');
159
160
  __classPrivateFieldGet(this, _Browser_targets, "f").set(event.targetInfo.targetId, target);
@@ -215,11 +215,11 @@ class CDPSession extends EventEmitter_1.EventEmitter {
215
215
  }
216
216
  }
217
217
  _onClosed() {
218
- __classPrivateFieldSet(this, _CDPSession_connection, undefined, "f");
219
218
  for (const callback of __classPrivateFieldGet(this, _CDPSession_callbacks, "f").values()) {
220
219
  callback.reject(rewriteError(callback.error, `Protocol error (${callback.method}): Target closed. https://www.remotion.dev/docs/target-closed`));
221
220
  }
222
221
  __classPrivateFieldGet(this, _CDPSession_callbacks, "f").clear();
222
+ __classPrivateFieldSet(this, _CDPSession_connection, undefined, "f");
223
223
  this.emit(exports.CDPSessionEmittedEvents.Disconnected);
224
224
  }
225
225
  id() {
@@ -46,8 +46,7 @@ declare class WaitTask {
46
46
  promise: Promise<JSHandle>;
47
47
  constructor(options: WaitTaskOptions);
48
48
  onBrowserClose: () => void;
49
- onBrowserCloseSilent: () => void;
50
- terminate(error: Error | null): void;
49
+ terminate(error: Error): void;
51
50
  rerun(): Promise<void>;
52
51
  }
53
52
  export {};
@@ -131,9 +131,6 @@ class WaitTask {
131
131
  this.onBrowserClose = () => {
132
132
  return this.terminate(new Error('Browser was closed'));
133
133
  };
134
- this.onBrowserCloseSilent = () => {
135
- return this.terminate(null);
136
- };
137
134
  function getPredicateBody(predicateBody) {
138
135
  if ((0, util_1.isString)(predicateBody)) {
139
136
  return `return (${predicateBody});`;
@@ -160,14 +157,11 @@ class WaitTask {
160
157
  }
161
158
  __classPrivateFieldSet(this, _WaitTask_browser, options.browser, "f");
162
159
  __classPrivateFieldGet(this, _WaitTask_browser, "f").on("closed" /* BrowserEmittedEvents.Closed */, this.onBrowserClose);
163
- __classPrivateFieldGet(this, _WaitTask_browser, "f").on("closed-silent" /* BrowserEmittedEvents.ClosedSilent */, this.onBrowserCloseSilent);
164
160
  this.rerun();
165
161
  }
166
162
  terminate(error) {
167
163
  __classPrivateFieldSet(this, _WaitTask_terminated, true, "f");
168
- if (error) {
169
- __classPrivateFieldGet(this, _WaitTask_reject, "f").call(this, error);
170
- }
164
+ __classPrivateFieldGet(this, _WaitTask_reject, "f").call(this, error);
171
165
  __classPrivateFieldGet(this, _WaitTask_instances, "m", _WaitTask_cleanup).call(this);
172
166
  }
173
167
  async rerun() {
@@ -248,7 +242,6 @@ _WaitTask_domWorld = new WeakMap(), _WaitTask_timeout = new WeakMap(), _WaitTask
248
242
  clearTimeout(__classPrivateFieldGet(this, _WaitTask_timeoutTimer, "f"));
249
243
  }
250
244
  __classPrivateFieldGet(this, _WaitTask_browser, "f").off("closed" /* BrowserEmittedEvents.Closed */, this.onBrowserClose);
251
- __classPrivateFieldGet(this, _WaitTask_browser, "f").off("closed-silent" /* BrowserEmittedEvents.ClosedSilent */, this.onBrowserCloseSilent);
252
245
  __classPrivateFieldGet(this, _WaitTask_domWorld, "f")._waitTasks.delete(this);
253
246
  };
254
247
  function waitForPredicatePageFunction(predicateBody, timeout, ...args) {
@@ -112,7 +112,7 @@ class ChromeLauncher {
112
112
  }, { timeout });
113
113
  }
114
114
  catch (error) {
115
- await browser.close(false);
115
+ await browser.close();
116
116
  throw error;
117
117
  }
118
118
  return browser;
@@ -65,7 +65,7 @@ class NodeWebSocketTransport {
65
65
  const ws = new ws_types_1.ws(url, [], {
66
66
  followRedirects: true,
67
67
  perMessageDeflate: false,
68
- maxPayload: 1024 * 1024 * 1024,
68
+ maxPayload: 256 * 1024 * 1024,
69
69
  headers: {
70
70
  'User-Agent': `Remotion CLI`,
71
71
  },
@@ -42,7 +42,6 @@ const combineVideos = async ({ files, filelistDir, output, onProgress, numberOfF
42
42
  '512K',
43
43
  codec === 'h264' ? '-movflags' : null,
44
44
  codec === 'h264' ? 'faststart' : null,
45
- '-shortest',
46
45
  '-y',
47
46
  output,
48
47
  ].filter(truthy_1.truthy));
@@ -1,4 +1,7 @@
1
- import type { BrowserReplacer } from './replace-browser';
2
- export declare const cycleBrowserTabs: (puppeteerInstance: BrowserReplacer, concurrency: number) => {
1
+ import type { openBrowser } from './open-browser';
2
+ declare type Await<T> = T extends PromiseLike<infer U> ? U : T;
3
+ declare type Browser = Await<ReturnType<typeof openBrowser>>;
4
+ export declare const cycleBrowserTabs: (puppeteerInstance: Browser, concurrency: number) => {
3
5
  stopCycling: () => void;
4
6
  };
7
+ export {};
@@ -13,7 +13,6 @@ const cycleBrowserTabs = (puppeteerInstance, concurrency) => {
13
13
  const set = () => {
14
14
  interval = setTimeout(() => {
15
15
  puppeteerInstance
16
- .getBrowser()
17
16
  .pages()
18
17
  .then((pages) => {
19
18
  var _a;
@@ -26,7 +26,7 @@ const getPageAndCleanupFn = async ({ passedInInstance, browserExecutable, chromi
26
26
  page: browserPage,
27
27
  cleanup: () => {
28
28
  // Close whole browser that was just created and don't wait for it to finish.
29
- browserInstance.close(true).catch((err) => {
29
+ browserInstance.close().catch((err) => {
30
30
  console.error('Was not able to close puppeteer page', err);
31
31
  });
32
32
  },
@@ -1,2 +1,2 @@
1
1
  import type { Codec } from './codec';
2
- export declare const getFileExtensionFromCodec: (codec: Codec, type: 'chunk' | 'final') => "mp3" | "aac" | "wav" | "gif" | "webm" | "mp4" | "mov" | "mkv";
2
+ export declare const getFileExtensionFromCodec: (codec: Codec, type: 'chunk' | 'final') => "mp3" | "aac" | "wav" | "gif" | "mp4" | "mkv" | "mov" | "webm";
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getFileExtensionFromCodec = void 0;
4
+ const codec_1 = require("./codec");
4
5
  const getFileExtensionFromCodec = (codec, type) => {
6
+ if (!codec_1.validCodecs.includes(codec)) {
7
+ throw new Error(`Codec must be one of the following: ${codec_1.validCodecs.join(', ')}, but got ${codec}`);
8
+ }
5
9
  switch (codec) {
6
10
  case 'aac':
7
11
  return 'aac';
package/dist/index.d.ts CHANGED
@@ -57,7 +57,7 @@ export declare const RenderInternals: {
57
57
  scale: number;
58
58
  codec: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif";
59
59
  }) => void;
60
- getFileExtensionFromCodec: (codec: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif", type: "chunk" | "final") => "mp3" | "aac" | "wav" | "gif" | "webm" | "mp4" | "mov" | "mkv";
60
+ getFileExtensionFromCodec: (codec: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif", type: "chunk" | "final") => "mp3" | "aac" | "wav" | "gif" | "mp4" | "mkv" | "mov" | "webm";
61
61
  tmpDir: (str: string) => string;
62
62
  deleteDirectory: (directory: string) => Promise<void>;
63
63
  isServeUrl: (potentialUrl: string) => boolean;
@@ -111,8 +111,8 @@ export declare const RenderInternals: {
111
111
  validPixelFormats: readonly ["yuv420p", "yuva420p", "yuv422p", "yuv444p", "yuv420p10le", "yuv422p10le", "yuv444p10le", "yuva444p10le"];
112
112
  DEFAULT_BROWSER: import("./browser").Browser;
113
113
  validateFrameRange: (frameRange: import("./frame-range").FrameRange | null) => void;
114
- DEFAULT_OPENGL_RENDERER: "angle" | "swangle" | "egl" | "swiftshader" | null;
115
- validateOpenGlRenderer: (option: "angle" | "swangle" | "egl" | "swiftshader" | null) => "angle" | "swangle" | "egl" | "swiftshader" | null;
114
+ DEFAULT_OPENGL_RENDERER: "swangle" | "angle" | "egl" | "swiftshader" | null;
115
+ validateOpenGlRenderer: (option: "swangle" | "angle" | "egl" | "swiftshader" | null) => "swangle" | "angle" | "egl" | "swiftshader" | null;
116
116
  validImageFormats: readonly ["png", "jpeg", "none"];
117
117
  validCodecs: readonly ["h264", "h265", "vp8", "vp9", "mp3", "aac", "wav", "prores", "h264-mkv", "gif"];
118
118
  DEFAULT_PIXEL_FORMAT: "yuv420p" | "yuva420p" | "yuv422p" | "yuv444p" | "yuv420p10le" | "yuv422p10le" | "yuv444p10le" | "yuva444p10le";
@@ -21,7 +21,7 @@ const browserInstances = [];
21
21
  const killAllBrowsers = async () => {
22
22
  for (const browser of browserInstances) {
23
23
  try {
24
- await browser.close(true);
24
+ await browser.close();
25
25
  }
26
26
  catch (err) { }
27
27
  }
@@ -27,7 +27,6 @@ const prepare_server_1 = require("./prepare-server");
27
27
  const provide_screenshot_1 = require("./provide-screenshot");
28
28
  const puppeteer_evaluate_1 = require("./puppeteer-evaluate");
29
29
  const quality_1 = require("./quality");
30
- const replace_browser_1 = require("./replace-browser");
31
30
  const seek_to_frame_1 = require("./seek-to-frame");
32
31
  const set_props_and_env_1 = require("./set-props-and-env");
33
32
  const truthy_1 = require("./truthy");
@@ -56,7 +55,10 @@ const getPool = async (pages) => {
56
55
  const pool = new pool_1.Pool(puppeteerPages);
57
56
  return pool;
58
57
  };
59
- const innerRenderFrames = ({ onFrameUpdate, outputDir, onStart, inputProps, quality, imageFormat = image_format_1.DEFAULT_IMAGE_FORMAT, frameRange, onError, envVariables, onBrowserLog, onFrameBuffer, onDownload, pagesArray, serveUrl, composition, timeoutInMilliseconds, scale, actualConcurrency, everyNthFrame = 1, proxyPort, cancelSignal, downloadMap, muted, makeBrowser, browserReplacer, }) => {
58
+ const innerRenderFrames = ({ onFrameUpdate, outputDir, onStart, inputProps, quality, imageFormat = image_format_1.DEFAULT_IMAGE_FORMAT, frameRange, puppeteerInstance, onError, envVariables, onBrowserLog, onFrameBuffer, onDownload, pagesArray, serveUrl, composition, timeoutInMilliseconds, scale, actualConcurrency, everyNthFrame = 1, proxyPort, cancelSignal, downloadMap, muted, }) => {
59
+ if (!puppeteerInstance) {
60
+ throw new Error('no puppeteer instance passed to innerRenderFrames - internal error');
61
+ }
60
62
  if (outputDir) {
61
63
  if (!fs_1.default.existsSync(outputDir)) {
62
64
  fs_1.default.mkdirSync(outputDir, {
@@ -69,9 +71,8 @@ const innerRenderFrames = ({ onFrameUpdate, outputDir, onStart, inputProps, qual
69
71
  const framesToRender = (0, get_duration_from_frame_range_1.getFramesToRender)(realFrameRange, everyNthFrame);
70
72
  const lastFrame = framesToRender[framesToRender.length - 1];
71
73
  const makePage = async () => {
72
- const page = await browserReplacer.getBrowser().newPage();
74
+ const page = await puppeteerInstance.newPage();
73
75
  pagesArray.push(page);
74
- console.log('Made new page');
75
76
  await page.setViewport({
76
77
  width: composition.width,
77
78
  height: composition.height,
@@ -127,7 +128,7 @@ const innerRenderFrames = ({ onFrameUpdate, outputDir, onStart, inputProps, qual
127
128
  page.off('console', logCallback);
128
129
  return page;
129
130
  };
130
- const pages = new Array(actualConcurrency).fill(true).map(() => makePage());
131
+ const pages = new Array(actualConcurrency).fill(true).map(makePage);
131
132
  // If rendering a GIF and skipping frames, we must ensure it starts from 0
132
133
  // and then is consecutive so FFMPEG recognizes the sequence
133
134
  const countType = everyNthFrame === 1 ? 'actual-frames' : 'from-zero';
@@ -238,13 +239,12 @@ const innerRenderFrames = ({ onFrameUpdate, outputDir, onStart, inputProps, qual
238
239
  });
239
240
  };
240
241
  const renderFrameAndRetryTargetClose = async (frame, index, retriesLeft, attempt) => {
241
- var _a, _b;
242
+ var _a;
242
243
  try {
243
244
  await renderFrame(frame, index);
244
245
  }
245
246
  catch (err) {
246
- if (!((_a = err === null || err === void 0 ? void 0 : err.message) === null || _a === void 0 ? void 0 : _a.includes('Target closed')) &&
247
- !((_b = err === null || err === void 0 ? void 0 : err.message) === null || _b === void 0 ? void 0 : _b.includes('Session closed'))) {
247
+ if (!((_a = err === null || err === void 0 ? void 0 : err.message) === null || _a === void 0 ? void 0 : _a.includes('Target closed'))) {
248
248
  throw err;
249
249
  }
250
250
  if (retriesLeft === 0) {
@@ -253,8 +253,6 @@ const innerRenderFrames = ({ onFrameUpdate, outputDir, onStart, inputProps, qual
253
253
  }
254
254
  console.warn(`The browser crashed while rendering frame ${frame}, retrying ${retriesLeft} more times. Learn more about this error under https://www.remotion.dev/docs/target-closed`);
255
255
  const pool = await poolPromise;
256
- await browserReplacer.replaceBrowser(makeBrowser);
257
- console.log('Successfully replaced browser');
258
256
  const page = await makePage();
259
257
  pool.release(page);
260
258
  await renderFrameAndRetryTargetClose(frame, index, retriesLeft - 1, attempt + 1);
@@ -281,7 +279,7 @@ const innerRenderFrames = ({ onFrameUpdate, outputDir, onStart, inputProps, qual
281
279
  .then(() => happyPath);
282
280
  };
283
281
  const renderFrames = (options) => {
284
- var _a, _b, _c;
282
+ var _a, _b, _c, _d;
285
283
  const composition = getComposition(options);
286
284
  const concurrency = getConcurrency(options);
287
285
  if (!composition) {
@@ -297,18 +295,14 @@ const renderFrames = (options) => {
297
295
  const selectedServeUrl = (0, legacy_webpack_config_1.getServeUrlWithFallback)(options);
298
296
  (0, quality_1.validateQuality)(options.quality);
299
297
  (0, validate_scale_1.validateScale)(options.scale);
300
- const makeBrowser = () => {
301
- var _a;
302
- return (0, open_browser_1.openBrowser)(browser_1.DEFAULT_BROWSER, {
303
- shouldDumpIo: options.dumpBrowserLogs,
304
- browserExecutable: options.browserExecutable,
305
- chromiumOptions: options.chromiumOptions,
306
- forceDeviceScaleFactor: (_a = options.scale) !== null && _a !== void 0 ? _a : 1,
307
- });
308
- };
309
- const browserInstance = (_a = options.puppeteerInstance) !== null && _a !== void 0 ? _a : makeBrowser();
310
- const downloadMap = (_b = options.downloadMap) !== null && _b !== void 0 ? _b : (0, download_map_1.makeDownloadMap)();
311
- const onDownload = (_c = options.onDownload) !== null && _c !== void 0 ? _c : (() => () => undefined);
298
+ const browserInstance = (_a = options.puppeteerInstance) !== null && _a !== void 0 ? _a : (0, open_browser_1.openBrowser)(browser_1.DEFAULT_BROWSER, {
299
+ shouldDumpIo: options.dumpBrowserLogs,
300
+ browserExecutable: options.browserExecutable,
301
+ chromiumOptions: options.chromiumOptions,
302
+ forceDeviceScaleFactor: (_b = options.scale) !== null && _b !== void 0 ? _b : 1,
303
+ });
304
+ const downloadMap = (_c = options.downloadMap) !== null && _c !== void 0 ? _c : (0, download_map_1.makeDownloadMap)();
305
+ const onDownload = (_d = options.onDownload) !== null && _d !== void 0 ? _d : (() => () => undefined);
312
306
  const actualConcurrency = (0, get_concurrency_1.getActualConcurrency)(concurrency !== null && concurrency !== void 0 ? concurrency : null);
313
307
  const openedPages = [];
314
308
  return new Promise((resolve, reject) => {
@@ -336,8 +330,7 @@ const renderFrames = (options) => {
336
330
  }),
337
331
  browserInstance,
338
332
  ]).then(([{ serveUrl, closeServer, offthreadPort }, puppeteerInstance]) => {
339
- const browserReplacer = (0, replace_browser_1.handleBrowserCrash)(puppeteerInstance);
340
- const { stopCycling } = (0, cycle_browser_tabs_1.cycleBrowserTabs)(browserReplacer, actualConcurrency);
333
+ const { stopCycling } = (0, cycle_browser_tabs_1.cycleBrowserTabs)(puppeteerInstance, actualConcurrency);
341
334
  cleanup.push(stopCycling);
342
335
  cleanup.push(closeServer);
343
336
  return innerRenderFrames({
@@ -351,8 +344,6 @@ const renderFrames = (options) => {
351
344
  onDownload,
352
345
  proxyPort: offthreadPort,
353
346
  downloadMap,
354
- makeBrowser,
355
- browserReplacer,
356
347
  });
357
348
  }),
358
349
  ])
@@ -372,7 +363,7 @@ const renderFrames = (options) => {
372
363
  else {
373
364
  Promise.resolve(browserInstance)
374
365
  .then((puppeteerInstance) => {
375
- return puppeteerInstance.close(true);
366
+ return puppeteerInstance.close();
376
367
  })
377
368
  .catch((err) => {
378
369
  console.log('Unable to close browser', err);
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import type { SmallTCompMetadata } from 'remotion';
3
2
  import type { RenderMediaOnDownload } from './assets/download-and-map-assets-to-file';
4
3
  import type { DownloadMap } from './assets/download-map';
@@ -105,7 +105,7 @@ const innerRenderStill = async ({ composition, quality, imageFormat = 'png', ser
105
105
  await page.close();
106
106
  }
107
107
  else {
108
- browserInstance.close(true).catch((err) => {
108
+ browserInstance.close().catch((err) => {
109
109
  console.log('Unable to close browser', err);
110
110
  });
111
111
  }
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import type { RenderMediaOnDownload } from './assets/download-and-map-assets-to-file';
3
2
  import type { RenderAssetInfo } from './assets/download-map';
4
3
  import type { Codec } from './codec';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@remotion/renderer",
3
- "version": "3.2.43-retry.19+5671d7797",
3
+ "version": "3.2.44",
4
4
  "description": "Renderer for Remotion",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -22,7 +22,7 @@
22
22
  "dependencies": {
23
23
  "execa": "5.1.1",
24
24
  "extract-zip": "2.0.1",
25
- "remotion": "3.2.43-retry.19+5671d7797",
25
+ "remotion": "3.2.44",
26
26
  "source-map": "^0.8.0-beta.0",
27
27
  "ws": "8.7.0"
28
28
  },
@@ -57,5 +57,5 @@
57
57
  "publishConfig": {
58
58
  "access": "public"
59
59
  },
60
- "gitHead": "5671d779758f7837f2f50f75e2cccdd7c6b58f43"
60
+ "gitHead": "443b4b387b78905e747ebe69b3b91ee85966796d"
61
61
  }