@remotion/renderer 4.0.70 → 4.0.72

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 (37) hide show
  1. package/dist/assets/calculate-asset-positions.d.ts +1 -1
  2. package/dist/assets/convert-assets-to-file-urls.d.ts +1 -1
  3. package/dist/assets/download-and-map-assets-to-file.d.ts +1 -1
  4. package/dist/assets/download-and-map-assets-to-file.js +2 -2
  5. package/dist/assets/download-map.d.ts +1 -1
  6. package/dist/assets/read-file.js +42 -2
  7. package/dist/assets/types.d.ts +1 -1
  8. package/dist/browser/BrowserPage.d.ts +0 -15
  9. package/dist/browser/BrowserPage.js +16 -16
  10. package/dist/compress-assets.d.ts +1 -1
  11. package/dist/create-ffmpeg-complex-filter.d.ts +4 -1
  12. package/dist/delay-render-embedded-stack.js +3 -3
  13. package/dist/error-handling/handle-javascript-exception.js +2 -2
  14. package/dist/get-bundle-url-from-serve-url.js +3 -3
  15. package/dist/get-compositions.d.ts +1 -1
  16. package/dist/get-compositions.js +4 -4
  17. package/dist/index.d.ts +44 -44
  18. package/dist/offthread-video-server.js +5 -2
  19. package/dist/prepare-server.js +2 -2
  20. package/dist/provide-screenshot.d.ts +1 -2
  21. package/dist/puppeteer-screenshot.d.ts +1 -2
  22. package/dist/render-frames.d.ts +1 -1
  23. package/dist/render-frames.js +3 -3
  24. package/dist/render-media.d.ts +1 -1
  25. package/dist/render-media.js +3 -3
  26. package/dist/render-still.d.ts +1 -1
  27. package/dist/render-still.js +4 -4
  28. package/dist/screenshot-dom-element.d.ts +1 -2
  29. package/dist/screenshot-task.d.ts +1 -2
  30. package/dist/select-composition.d.ts +1 -1
  31. package/dist/select-composition.js +4 -4
  32. package/dist/stitch-frames-to-video.d.ts +0 -1
  33. package/dist/stitch-frames-to-video.js +2 -2
  34. package/dist/take-frame-and-compose.d.ts +1 -2
  35. package/dist/validate.d.ts +4 -4
  36. package/dist/validate.js +4 -4
  37. package/package.json +9 -9
@@ -1,3 +1,3 @@
1
- import type { TRenderAsset } from 'remotion';
1
+ import type { TRenderAsset } from 'remotion/no-react';
2
2
  import type { Assets } from './types';
3
3
  export declare const calculateAssetPositions: (frames: TRenderAsset[][]) => Assets;
@@ -1,4 +1,4 @@
1
- import type { TRenderAsset } from 'remotion';
1
+ import type { TRenderAsset } from 'remotion/no-react';
2
2
  import type { LogLevel } from '../log-level';
3
3
  import type { RenderMediaOnDownload } from './download-and-map-assets-to-file';
4
4
  import type { DownloadMap } from './download-map';
@@ -1,4 +1,4 @@
1
- import type { TRenderAsset } from 'remotion';
1
+ import type { TRenderAsset } from 'remotion/no-react';
2
2
  import type { LogLevel } from '../log-level';
3
3
  import type { DownloadMap } from './download-map';
4
4
  export type RenderMediaOnDownload = (src: string) => ((progress: {
@@ -29,7 +29,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
29
29
  exports.attachDownloadListenerToEmitter = exports.downloadAndMapAssetsToFileUrl = exports.getSanitizedFilenameForAssetUrl = exports.markAllAssetsAsDownloaded = exports.downloadAsset = void 0;
30
30
  const node_fs_1 = __importDefault(require("node:fs"));
31
31
  const node_path_1 = __importStar(require("node:path"));
32
- const remotion_1 = require("remotion");
32
+ const no_react_1 = require("remotion/no-react");
33
33
  const compress_assets_1 = require("../compress-assets");
34
34
  const ensure_output_directory_1 = require("../ensure-output-directory");
35
35
  const mime_types_1 = require("../mime-types");
@@ -238,7 +238,7 @@ const getSanitizedFilenameForAssetUrl = ({ src, downloadDir, contentDisposition,
238
238
  const fileExtension = split.length > 1 && split[split.length - 1]
239
239
  ? `.${split[split.length - 1]}`
240
240
  : '';
241
- const hashedFileName = String((0, remotion_1.random)(`${pathname}${search}`)).replace('0.', '');
241
+ const hashedFileName = String((0, no_react_1.random)(`${pathname}${search}`)).replace('0.', '');
242
242
  const filename = hashedFileName + fileExtension;
243
243
  return node_path_1.default.join(downloadDir, (0, sanitize_filepath_1.sanitizeFilePath)(filename));
244
244
  };
@@ -1,4 +1,4 @@
1
- import type { TRenderAsset } from 'remotion';
1
+ import type { TRenderAsset } from 'remotion/no-react';
2
2
  import { OffthreadVideoServerEmitter } from '../offthread-video-server';
3
3
  import type { RenderMediaOnDownload } from './download-and-map-assets-to-file';
4
4
  export type AudioChannelsAndDurationResultCache = {
@@ -7,6 +7,7 @@ exports.readFile = void 0;
7
7
  const https_1 = __importDefault(require("https"));
8
8
  const node_http_1 = __importDefault(require("node:http"));
9
9
  const redirect_status_codes_1 = require("../redirect-status-codes");
10
+ const truthy_1 = require("../truthy");
10
11
  const getClient = (url) => {
11
12
  if (url.startsWith('https://')) {
12
13
  return https_1.default.get;
@@ -18,7 +19,11 @@ const getClient = (url) => {
18
19
  };
19
20
  const readFileWithoutRedirect = (url) => {
20
21
  return new Promise((resolve, reject) => {
21
- getClient(url)(url, (res) => {
22
+ getClient(url)(url, {
23
+ headers: {
24
+ 'User-Agent': 'Mozilla/5.0 (@remotion/renderer - https://remotion.dev)',
25
+ },
26
+ }, (res) => {
22
27
  resolve(res);
23
28
  }).on('error', (err) => {
24
29
  return reject(err);
@@ -37,8 +42,43 @@ const readFile = async (url, redirectsSoFar = 0) => {
37
42
  return (0, exports.readFile)(file.headers.location, redirectsSoFar + 1);
38
43
  }
39
44
  if (file.statusCode >= 400) {
40
- throw new Error(`Received a status code of ${file.statusCode} while downloading file ${url}`);
45
+ const body = await tryToObtainBody(file);
46
+ throw new Error([
47
+ `Received a status code of ${file.statusCode} while downloading file ${url}.`,
48
+ body ? `The response body was:` : null,
49
+ body ? `---` : null,
50
+ body ? body : null,
51
+ body ? `---` : null,
52
+ ]
53
+ .filter(truthy_1.truthy)
54
+ .join('\n'));
41
55
  }
42
56
  return file;
43
57
  };
44
58
  exports.readFile = readFile;
59
+ const tryToObtainBody = async (file) => {
60
+ const success = new Promise((resolve) => {
61
+ let data = '';
62
+ file.on('data', (chunk) => {
63
+ data += chunk;
64
+ });
65
+ file.on('end', () => {
66
+ resolve(data);
67
+ });
68
+ // OK even when getting an error, this is just a best effort
69
+ file.on('error', () => resolve(data));
70
+ });
71
+ let timeout = null;
72
+ const body = await Promise.race([
73
+ success,
74
+ new Promise((resolve) => {
75
+ timeout = setTimeout(() => {
76
+ resolve(null);
77
+ }, 5000);
78
+ }),
79
+ ]);
80
+ if (timeout) {
81
+ clearTimeout(timeout);
82
+ }
83
+ return body;
84
+ };
@@ -1,4 +1,4 @@
1
- import type { TRenderAsset } from 'remotion';
1
+ import type { TRenderAsset } from 'remotion/no-react';
2
2
  export type UnsafeAsset = Omit<TRenderAsset, 'frame' | 'id' | 'volume' | 'mediaFrame'> & {
3
3
  startInVideo: number;
4
4
  duration: number | null;
@@ -1,18 +1,3 @@
1
- /**
2
- * Copyright 2017 Google Inc. All rights reserved.
3
- *
4
- * Licensed under the Apache License, Version 2.0 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * http://www.apache.org/licenses/LICENSE-2.0
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" BASIS,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
1
  import type { LogLevel } from '../log-level';
17
2
  import type { HeadlessBrowser } from './Browser';
18
3
  import type { CDPSession } from './Connection';
@@ -1,4 +1,18 @@
1
1
  "use strict";
2
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
3
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
4
+ 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");
5
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
6
+ };
7
+ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
8
+ if (kind === "m") throw new TypeError("Private method is not writable");
9
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
10
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
11
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
12
+ };
13
+ var _Page_instances, _Page_client, _Page_target, _Page_timeoutSettings, _Page_frameManager, _Page_pageBindings, _Page_initialize, _Page_onTargetCrashed, _Page_onLogEntryAdded, _Page_onConsoleAPI, _Page_onBindingCalled, _Page_addConsoleMessage;
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.Page = void 0;
2
16
  /**
3
17
  * Copyright 2017 Google Inc. All rights reserved.
4
18
  *
@@ -14,21 +28,7 @@
14
28
  * See the License for the specific language governing permissions and
15
29
  * limitations under the License.
16
30
  */
17
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
18
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
19
- 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");
20
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
21
- };
22
- var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
23
- if (kind === "m") throw new TypeError("Private method is not writable");
24
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
25
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
26
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
27
- };
28
- var _Page_instances, _Page_client, _Page_target, _Page_timeoutSettings, _Page_frameManager, _Page_pageBindings, _Page_initialize, _Page_onTargetCrashed, _Page_onLogEntryAdded, _Page_onConsoleAPI, _Page_onBindingCalled, _Page_addConsoleMessage;
29
- Object.defineProperty(exports, "__esModule", { value: true });
30
- exports.Page = void 0;
31
- const remotion_1 = require("remotion");
31
+ const no_react_1 = require("remotion/no-react");
32
32
  const format_logs_1 = require("../format-logs");
33
33
  const logger_1 = require("../logger");
34
34
  const truthy_1 = require("../truthy");
@@ -117,7 +117,7 @@ class Page extends EventEmitter_1.EventEmitter {
117
117
  if (shouldHideWarning(log)) {
118
118
  return;
119
119
  }
120
- if ((url === null || url === void 0 ? void 0 : url.endsWith(remotion_1.Internals.bundleName)) &&
120
+ if ((url === null || url === void 0 ? void 0 : url.endsWith(no_react_1.NoReactInternals.bundleName)) &&
121
121
  lineNumber &&
122
122
  this.sourceMapGetter()) {
123
123
  const origPosition = (_a = this.sourceMapGetter()) === null || _a === void 0 ? void 0 : _a.originalPositionFor({
@@ -2,6 +2,6 @@
2
2
  * Since audio or video can be base64-encoded, those can be really long strings.
3
3
  * Since we track the `src` property for every frame, Node.JS can run out of memory easily. Instead of duplicating the src for every frame, we save memory by replacing the full base 64 encoded data with a string `same-as-[asset-id]-[frame]` referencing a previous asset with the same src.
4
4
  */
5
- import type { TRenderAsset } from 'remotion';
5
+ import type { TRenderAsset } from 'remotion/no-react';
6
6
  export declare const compressAsset: (previousRenderAssets: TRenderAsset[], newRenderAsset: TRenderAsset) => TRenderAsset;
7
7
  export declare const isAssetCompressed: (src: string) => boolean;
@@ -4,6 +4,9 @@ export declare const createFfmpegComplexFilter: ({ filters, downloadMap, }: {
4
4
  filters: PreprocessedAudioTrack[];
5
5
  downloadMap: DownloadMap;
6
6
  }) => Promise<{
7
- complexFilterFlag: [string, string] | null;
7
+ complexFilterFlag: [
8
+ string,
9
+ string
10
+ ] | null;
8
11
  cleanup: () => void;
9
12
  }>;
@@ -1,15 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.parseDelayRenderEmbeddedStack = void 0;
4
- const remotion_1 = require("remotion");
4
+ const no_react_1 = require("remotion/no-react");
5
5
  const parse_browser_error_stack_1 = require("./parse-browser-error-stack");
6
6
  const parseDelayRenderEmbeddedStack = (message) => {
7
- const index = message.indexOf(remotion_1.Internals.DELAY_RENDER_CALLSTACK_TOKEN);
7
+ const index = message.indexOf(no_react_1.NoReactInternals.DELAY_RENDER_CALLSTACK_TOKEN);
8
8
  if (index === -1) {
9
9
  return null;
10
10
  }
11
11
  const msg = message
12
- .substring(index + remotion_1.Internals.DELAY_RENDER_CALLSTACK_TOKEN.length)
12
+ .substring(index + no_react_1.NoReactInternals.DELAY_RENDER_CALLSTACK_TOKEN.length)
13
13
  .trim();
14
14
  const parsed = (0, parse_browser_error_stack_1.parseStack)(msg.split('\n'));
15
15
  return parsed;
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.handleJavascriptException = exports.ErrorWithStackFrame = void 0;
4
- const remotion_1 = require("remotion");
4
+ const no_react_1 = require("remotion/no-react");
5
5
  const symbolicateable_error_1 = require("./symbolicateable-error");
6
6
  class ErrorWithStackFrame extends Error {
7
7
  constructor({ message, symbolicatedStackFrames, frame, name, delayRenderCall, stack, }) {
@@ -31,7 +31,7 @@ const cleanUpErrorMessage = (exception) => {
31
31
  return split.slice(0, Math.max(1, split.length - frames)).join('\n');
32
32
  };
33
33
  const removeDelayRenderStack = (message) => {
34
- const index = message.indexOf(remotion_1.Internals.DELAY_RENDER_CALLSTACK_TOKEN);
34
+ const index = message.indexOf(no_react_1.NoReactInternals.DELAY_RENDER_CALLSTACK_TOKEN);
35
35
  if (index === -1) {
36
36
  return message;
37
37
  }
@@ -5,7 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.getBundleMapUrlFromServeUrl = exports.getBundleUrlFromServeUrl = void 0;
7
7
  const path_1 = __importDefault(require("path"));
8
- const remotion_1 = require("remotion");
8
+ const no_react_1 = require("remotion/no-react");
9
9
  const is_serve_url_1 = require("./is-serve-url");
10
10
  const map = (webpackBundleOrServeUrl, suffix) => {
11
11
  if ((0, is_serve_url_1.isServeUrl)(webpackBundleOrServeUrl)) {
@@ -21,10 +21,10 @@ const map = (webpackBundleOrServeUrl, suffix) => {
21
21
  return url;
22
22
  };
23
23
  const getBundleUrlFromServeUrl = (serveUrl) => {
24
- return map(serveUrl, remotion_1.Internals.bundleName);
24
+ return map(serveUrl, no_react_1.NoReactInternals.bundleName);
25
25
  };
26
26
  exports.getBundleUrlFromServeUrl = getBundleUrlFromServeUrl;
27
27
  const getBundleMapUrlFromServeUrl = (serveUrl) => {
28
- return map(serveUrl, remotion_1.Internals.bundleMapName);
28
+ return map(serveUrl, no_react_1.NoReactInternals.bundleMapName);
29
29
  };
30
30
  exports.getBundleMapUrlFromServeUrl = getBundleMapUrlFromServeUrl;
@@ -1,4 +1,4 @@
1
- import { type VideoConfig } from 'remotion';
1
+ import type { VideoConfig } from 'remotion/no-react';
2
2
  import type { BrowserExecutable } from './browser-executable';
3
3
  import type { BrowserLog } from './browser-log';
4
4
  import type { HeadlessBrowser } from './browser/Browser';
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getCompositions = exports.internalGetCompositions = void 0;
4
- const remotion_1 = require("remotion");
4
+ const no_react_1 = require("remotion/no-react");
5
5
  const TimeoutSettings_1 = require("./browser/TimeoutSettings");
6
6
  const handle_javascript_exception_1 = require("./error-handling/handle-javascript-exception");
7
7
  const find_closest_package_json_1 = require("./find-closest-package-json");
@@ -72,8 +72,8 @@ const innerGetCompositions = async ({ envVariables, serializedInputPropsWithCust
72
72
  height,
73
73
  fps,
74
74
  durationInFrames,
75
- props: remotion_1.Internals.deserializeJSONWithCustomFields(r.serializedResolvedPropsWithCustomSchema),
76
- defaultProps: remotion_1.Internals.deserializeJSONWithCustomFields(r.serializedDefaultPropsWithCustomSchema),
75
+ props: no_react_1.NoReactInternals.deserializeJSONWithCustomFields(r.serializedResolvedPropsWithCustomSchema),
76
+ defaultProps: no_react_1.NoReactInternals.deserializeJSONWithCustomFields(r.serializedDefaultPropsWithCustomSchema),
77
77
  defaultCodec,
78
78
  };
79
79
  });
@@ -147,7 +147,7 @@ const getCompositions = (serveUrlOrWebpackUrl, config) => {
147
147
  browserExecutable: browserExecutable !== null && browserExecutable !== void 0 ? browserExecutable : null,
148
148
  chromiumOptions: chromiumOptions !== null && chromiumOptions !== void 0 ? chromiumOptions : {},
149
149
  envVariables: envVariables !== null && envVariables !== void 0 ? envVariables : {},
150
- serializedInputPropsWithCustomSchema: remotion_1.Internals.serializeJSONWithDate({
150
+ serializedInputPropsWithCustomSchema: no_react_1.NoReactInternals.serializeJSONWithDate({
151
151
  data: inputProps !== null && inputProps !== void 0 ? inputProps : {},
152
152
  indent: undefined,
153
153
  staticBase: null,
package/dist/index.d.ts CHANGED
@@ -43,7 +43,7 @@ export { X264Preset } from './x264-preset';
43
43
  export declare const RenderInternals: {
44
44
  ensureLocalBrowser: ({ indent, logLevel, preferredBrowserExecutable, }: {
45
45
  preferredBrowserExecutable: import("./browser-executable").BrowserExecutable;
46
- logLevel: "error" | "verbose" | "info" | "warn";
46
+ logLevel: "verbose" | "info" | "warn" | "error";
47
47
  indent: boolean;
48
48
  }) => Promise<void>;
49
49
  getActualConcurrency: (userPreference: string | number | null) => number;
@@ -52,7 +52,7 @@ export declare const RenderInternals: {
52
52
  downloadMap: import("./assets/download-map").DownloadMap;
53
53
  remotionRoot: string;
54
54
  concurrency: number;
55
- logLevel: "error" | "verbose" | "info" | "warn";
55
+ logLevel: "verbose" | "info" | "warn" | "error";
56
56
  indent: boolean;
57
57
  offthreadVideoCacheSizeInBytes: number | null;
58
58
  }) => Promise<{
@@ -64,10 +64,10 @@ export declare const RenderInternals: {
64
64
  width: number;
65
65
  height: number;
66
66
  scale: number;
67
- codec: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif";
67
+ codec: "h264" | "h265" | "vp8" | "vp9" | "prores" | "aac" | "mp3" | "wav" | "h264-mkv" | "gif";
68
68
  wantsImageSequence: boolean;
69
69
  }) => void;
70
- getFileExtensionFromCodec: <T extends "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif">(codec: T, audioCodec: "mp3" | "aac" | "pcm-16" | "opus" | null) => import("./file-extensions").FileExtension;
70
+ getFileExtensionFromCodec: <T extends "h264" | "h265" | "vp8" | "vp9" | "prores" | "aac" | "mp3" | "wav" | "h264-mkv" | "gif">(codec: T, audioCodec: "opus" | "aac" | "mp3" | "pcm-16" | null) => import("./file-extensions").FileExtension;
71
71
  tmpDir: (str: string) => string;
72
72
  deleteDirectory: (directory: string) => void;
73
73
  isServeUrl: (potentialUrl: string) => boolean;
@@ -82,7 +82,7 @@ export declare const RenderInternals: {
82
82
  downloaded: number;
83
83
  totalSize: number | null;
84
84
  }) => void) | undefined;
85
- logLevel: "error" | "verbose" | "info" | "warn";
85
+ logLevel: "verbose" | "info" | "warn" | "error";
86
86
  indent: boolean;
87
87
  }, retries?: number, attempt?: number) => Promise<{
88
88
  sizeInBytes: number;
@@ -124,7 +124,7 @@ export declare const RenderInternals: {
124
124
  };
125
125
  registerErrorSymbolicationLock: () => number;
126
126
  unlockErrorSymbolicationLock: (id: number) => void;
127
- canUseParallelEncoding: (codec: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif") => boolean;
127
+ canUseParallelEncoding: (codec: "h264" | "h265" | "vp8" | "vp9" | "prores" | "aac" | "mp3" | "wav" | "h264-mkv" | "gif") => boolean;
128
128
  mimeContentType: typeof mimeContentType;
129
129
  mimeLookup: typeof mimeLookup;
130
130
  validateConcurrency: ({ setting, value, checkIfValidForCurrentMachine, }: {
@@ -141,10 +141,10 @@ export declare const RenderInternals: {
141
141
  DEFAULT_PIXEL_FORMAT: "yuv420p" | "yuva420p" | "yuv422p" | "yuv444p" | "yuv420p10le" | "yuv422p10le" | "yuv444p10le" | "yuva444p10le";
142
142
  validateJpegQuality: (q: number | undefined) => void;
143
143
  DEFAULT_TIMEOUT: number;
144
- DEFAULT_CODEC: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif";
145
- isAudioCodec: (codec: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif" | null | undefined) => boolean;
144
+ DEFAULT_CODEC: "h264" | "h265" | "vp8" | "vp9" | "prores" | "aac" | "mp3" | "wav" | "h264-mkv" | "gif";
145
+ isAudioCodec: (codec: "h264" | "h265" | "vp8" | "vp9" | "prores" | "aac" | "mp3" | "wav" | "h264-mkv" | "gif" | null | undefined) => boolean;
146
146
  logLevels: readonly ["verbose", "info", "warn", "error"];
147
- isEqualOrBelowLogLevel: (currentLevel: "error" | "verbose" | "info" | "warn", level: "error" | "verbose" | "info" | "warn") => boolean;
147
+ isEqualOrBelowLogLevel: (currentLevel: "verbose" | "info" | "warn" | "error", level: "verbose" | "info" | "warn" | "error") => boolean;
148
148
  isValidLogLevel: (level: string) => boolean;
149
149
  perf: typeof perf;
150
150
  convertToPositiveFrameIndex: ({ frame, durationInFrames, }: {
@@ -159,30 +159,30 @@ export declare const RenderInternals: {
159
159
  output: string;
160
160
  onProgress: (p: number) => void;
161
161
  numberOfFrames: number;
162
- codec: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif";
162
+ codec: "h264" | "h265" | "vp8" | "vp9" | "prores" | "aac" | "mp3" | "wav" | "h264-mkv" | "gif";
163
163
  fps: number;
164
164
  numberOfGifLoops: number | null;
165
- audioCodec: "mp3" | "aac" | "pcm-16" | "opus" | null;
165
+ audioCodec: "opus" | "aac" | "mp3" | "pcm-16" | null;
166
166
  audioBitrate: string | null;
167
167
  indent: boolean;
168
- logLevel: "error" | "verbose" | "info" | "warn";
168
+ logLevel: "verbose" | "info" | "warn" | "error";
169
169
  }) => Promise<void>;
170
170
  getMinConcurrency: () => number;
171
171
  getMaxConcurrency: () => number;
172
172
  getDefaultAudioCodec: ({ codec, preferLossless, }: {
173
- codec: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif";
173
+ codec: "h264" | "h265" | "vp8" | "vp9" | "prores" | "aac" | "mp3" | "wav" | "h264-mkv" | "gif";
174
174
  preferLossless: boolean;
175
- }) => "mp3" | "aac" | "pcm-16" | "opus" | null;
175
+ }) => "opus" | "aac" | "mp3" | "pcm-16" | null;
176
176
  validAudioCodecs: readonly ["pcm-16", "aac", "mp3", "opus"];
177
177
  defaultFileExtensionMap: {
178
178
  h264: {
179
179
  default: import("./file-extensions").FileExtension;
180
180
  forAudioCodec: {
181
- mp3: {
181
+ aac: {
182
182
  possible: import("./file-extensions").FileExtension[];
183
183
  default: import("./file-extensions").FileExtension;
184
184
  };
185
- aac: {
185
+ mp3: {
186
186
  possible: import("./file-extensions").FileExtension[];
187
187
  default: import("./file-extensions").FileExtension;
188
188
  };
@@ -208,11 +208,11 @@ export declare const RenderInternals: {
208
208
  vp8: {
209
209
  default: import("./file-extensions").FileExtension;
210
210
  forAudioCodec: {
211
- "pcm-16": {
211
+ opus: {
212
212
  possible: import("./file-extensions").FileExtension[];
213
213
  default: import("./file-extensions").FileExtension;
214
214
  };
215
- opus: {
215
+ "pcm-16": {
216
216
  possible: import("./file-extensions").FileExtension[];
217
217
  default: import("./file-extensions").FileExtension;
218
218
  };
@@ -221,20 +221,20 @@ export declare const RenderInternals: {
221
221
  vp9: {
222
222
  default: import("./file-extensions").FileExtension;
223
223
  forAudioCodec: {
224
- "pcm-16": {
224
+ opus: {
225
225
  possible: import("./file-extensions").FileExtension[];
226
226
  default: import("./file-extensions").FileExtension;
227
227
  };
228
- opus: {
228
+ "pcm-16": {
229
229
  possible: import("./file-extensions").FileExtension[];
230
230
  default: import("./file-extensions").FileExtension;
231
231
  };
232
232
  };
233
233
  };
234
- mp3: {
234
+ prores: {
235
235
  default: import("./file-extensions").FileExtension;
236
236
  forAudioCodec: {
237
- mp3: {
237
+ aac: {
238
238
  possible: import("./file-extensions").FileExtension[];
239
239
  default: import("./file-extensions").FileExtension;
240
240
  };
@@ -257,22 +257,22 @@ export declare const RenderInternals: {
257
257
  };
258
258
  };
259
259
  };
260
- wav: {
260
+ mp3: {
261
261
  default: import("./file-extensions").FileExtension;
262
262
  forAudioCodec: {
263
+ mp3: {
264
+ possible: import("./file-extensions").FileExtension[];
265
+ default: import("./file-extensions").FileExtension;
266
+ };
263
267
  "pcm-16": {
264
268
  possible: import("./file-extensions").FileExtension[];
265
269
  default: import("./file-extensions").FileExtension;
266
270
  };
267
271
  };
268
272
  };
269
- prores: {
273
+ wav: {
270
274
  default: import("./file-extensions").FileExtension;
271
275
  forAudioCodec: {
272
- aac: {
273
- possible: import("./file-extensions").FileExtension[];
274
- default: import("./file-extensions").FileExtension;
275
- };
276
276
  "pcm-16": {
277
277
  possible: import("./file-extensions").FileExtension[];
278
278
  default: import("./file-extensions").FileExtension;
@@ -309,11 +309,11 @@ export declare const RenderInternals: {
309
309
  readonly vp9: readonly ["opus", "pcm-16"];
310
310
  readonly wav: readonly ["pcm-16"];
311
311
  };
312
- makeFileExtensionMap: () => Record<string, ("h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif")[]>;
313
- defaultCodecsForFileExtension: Record<import("./file-extensions").FileExtension, "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif">;
314
- getExecutablePath: (type: "compositor" | "ffmpeg" | "ffprobe" | "ffmpeg-cwd", indent: boolean, logLevel: "error" | "verbose" | "info" | "warn") => string;
315
- callFf: (bin: "ffmpeg" | "ffprobe", args: (string | null)[], indent: boolean, logLevel: "error" | "verbose" | "info" | "warn", options?: execa.Options<string> | undefined) => execa.ExecaChildProcess<string>;
316
- dynamicLibraryPathOptions: (indent: boolean, logLevel: "error" | "verbose" | "info" | "warn") => {
312
+ makeFileExtensionMap: () => Record<string, ("h264" | "h265" | "vp8" | "vp9" | "prores" | "aac" | "mp3" | "wav" | "h264-mkv" | "gif")[]>;
313
+ defaultCodecsForFileExtension: Record<import("./file-extensions").FileExtension, "h264" | "h265" | "vp8" | "vp9" | "prores" | "aac" | "mp3" | "wav" | "h264-mkv" | "gif">;
314
+ getExecutablePath: (type: "compositor" | "ffmpeg" | "ffprobe" | "ffmpeg-cwd", indent: boolean, logLevel: "verbose" | "info" | "warn" | "error") => string;
315
+ callFf: (bin: "ffmpeg" | "ffprobe", args: (string | null)[], indent: boolean, logLevel: "verbose" | "info" | "warn" | "error", options?: execa.Options<string> | undefined) => execa.ExecaChildProcess<string>;
316
+ dynamicLibraryPathOptions: (indent: boolean, logLevel: "verbose" | "info" | "warn" | "error") => {
317
317
  env: {
318
318
  DYLD_LIBRARY_PATH: string;
319
319
  RUST_BACKTRACE: string;
@@ -328,7 +328,7 @@ export declare const RenderInternals: {
328
328
  validStillImageFormats: readonly ["png", "jpeg", "pdf", "webp"];
329
329
  validVideoImageFormats: readonly ["png", "jpeg", "none"];
330
330
  DEFAULT_STILL_IMAGE_FORMAT: "png" | "jpeg" | "pdf" | "webp";
331
- DEFAULT_VIDEO_IMAGE_FORMAT: "png" | "jpeg" | "none";
331
+ DEFAULT_VIDEO_IMAGE_FORMAT: "none" | "png" | "jpeg";
332
332
  DEFAULT_JPEG_QUALITY: number;
333
333
  chalk: {
334
334
  enabled: () => boolean;
@@ -392,8 +392,8 @@ export declare const RenderInternals: {
392
392
  tag?: string | undefined;
393
393
  }, message?: any, ...optionalParams: any[]) => void;
394
394
  };
395
- getLogLevel: () => "error" | "verbose" | "info" | "warn";
396
- setLogLevel: (newLogLevel: "error" | "verbose" | "info" | "warn") => void;
395
+ getLogLevel: () => "verbose" | "info" | "warn" | "error";
396
+ setLogLevel: (newLogLevel: "verbose" | "info" | "warn" | "error") => void;
397
397
  INDENT_TOKEN: string;
398
398
  isColorSupported: () => boolean;
399
399
  HeadlessBrowser: typeof HeadlessBrowser;
@@ -402,7 +402,7 @@ export declare const RenderInternals: {
402
402
  port: number | null;
403
403
  remotionRoot: string;
404
404
  concurrency: number;
405
- logLevel: "error" | "verbose" | "info" | "warn";
405
+ logLevel: "verbose" | "info" | "warn" | "error";
406
406
  indent: boolean;
407
407
  offthreadVideoCacheSizeInBytes: number | null;
408
408
  }) => Promise<import("./prepare-server").RemotionServer>;
@@ -411,7 +411,7 @@ export declare const RenderInternals: {
411
411
  port: number | null;
412
412
  remotionRoot: string;
413
413
  concurrency: number;
414
- logLevel: "error" | "verbose" | "info" | "warn";
414
+ logLevel: "verbose" | "info" | "warn" | "error";
415
415
  indent: boolean;
416
416
  offthreadVideoCacheSizeInBytes: number | null;
417
417
  }, { onDownload, onError, }: {
@@ -441,7 +441,7 @@ export declare const RenderInternals: {
441
441
  cancelSignal: import("./make-cancel-signal").CancelSignal | null;
442
442
  indent: boolean;
443
443
  server: import("./prepare-server").RemotionServer | undefined;
444
- logLevel: "error" | "verbose" | "info" | "warn";
444
+ logLevel: "verbose" | "info" | "warn" | "error";
445
445
  serveUrl: string;
446
446
  port: number | null;
447
447
  offthreadVideoCacheSizeInBytes: number | null;
@@ -462,7 +462,7 @@ export declare const RenderInternals: {
462
462
  viewport: import("./browser/PuppeteerViewport").Viewport | null;
463
463
  indent: boolean;
464
464
  browser: "chrome";
465
- logLevel: "error" | "verbose" | "info" | "warn";
465
+ logLevel: "verbose" | "info" | "warn" | "error";
466
466
  }) => Promise<HeadlessBrowser>;
467
467
  internalSelectComposition: (options: {
468
468
  serializedInputPropsWithCustomSchema: string;
@@ -475,7 +475,7 @@ export declare const RenderInternals: {
475
475
  port: number | null;
476
476
  indent: boolean;
477
477
  server: import("./prepare-server").RemotionServer | undefined;
478
- logLevel: "error" | "verbose" | "info" | "warn";
478
+ logLevel: "verbose" | "info" | "warn" | "error";
479
479
  serveUrl: string;
480
480
  id: string;
481
481
  } & import("./options/option").ToOptions<readonly [{
@@ -500,7 +500,7 @@ export declare const RenderInternals: {
500
500
  port: number | null;
501
501
  server: import("./prepare-server").RemotionServer | undefined;
502
502
  indent: boolean;
503
- logLevel: "error" | "verbose" | "info" | "warn";
503
+ logLevel: "verbose" | "info" | "warn" | "error";
504
504
  serveUrlOrWebpackUrl: string;
505
505
  } & import("./options/option").ToOptions<readonly [{
506
506
  name: string;
@@ -516,12 +516,12 @@ export declare const RenderInternals: {
516
516
  slowestFrames: import("./render-media").SlowFrame[];
517
517
  }>;
518
518
  validOpenGlRenderers: readonly ["swangle", "angle", "egl", "swiftshader", "vulkan", "angle-egl"];
519
- copyImageToClipboard: (src: string, logLevel: "error" | "verbose" | "info" | "warn") => Promise<void>;
519
+ copyImageToClipboard: (src: string, logLevel: "verbose" | "info" | "warn" | "error") => Promise<void>;
520
520
  isIpV6Supported: (flattened: import("os").NetworkInterfaceInfo[]) => boolean;
521
521
  getChromiumGpuInformation: ({ browserExecutable, indent, logLevel, chromiumOptions, }: {
522
522
  browserExecutable: import("./browser-executable").BrowserExecutable;
523
523
  indent: boolean;
524
- logLevel: "error" | "verbose" | "info" | "warn";
524
+ logLevel: "verbose" | "info" | "warn" | "error";
525
525
  chromiumOptions: import("./open-browser").ChromiumOptions;
526
526
  }) => Promise<{
527
527
  feature: string;
@@ -132,10 +132,13 @@ const startOffthreadVideoServer = ({ downloadMap, concurrency, logLevel, indent,
132
132
  });
133
133
  })
134
134
  .catch((err) => {
135
- response.writeHead(500);
135
+ if (!response.headersSent) {
136
+ response.writeHead(500);
137
+ }
136
138
  response.end();
137
139
  // Any errors occurred due to the render being aborted don't need to be logged.
138
- if (err.message !== REQUEST_CLOSED_TOKEN) {
140
+ if (err.message !== REQUEST_CLOSED_TOKEN &&
141
+ !err.message.includes('EPIPE')) {
139
142
  downloadMap.emitter.dispatchError(err);
140
143
  console.log('Error occurred', err);
141
144
  }
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.makeOrReuseServer = exports.prepareServer = void 0;
7
7
  const node_fs_1 = require("node:fs");
8
8
  const node_path_1 = __importDefault(require("node:path"));
9
- const remotion_1 = require("remotion");
9
+ const no_react_1 = require("remotion/no-react");
10
10
  const download_and_map_assets_to_file_1 = require("./assets/download-and-map-assets-to-file");
11
11
  const download_map_1 = require("./assets/download-map");
12
12
  const get_bundle_url_from_serve_url_1 = require("./get-bundle-url-from-serve-url");
@@ -57,7 +57,7 @@ const prepareServer = async ({ webpackConfigOrServeUrl, port, remotionRoot, conc
57
57
  throw new Error(`Tried to serve the Webpack bundle on a HTTP server, but the file ${indexFile} does not exist. Is this a valid path to a Webpack bundle?`);
58
58
  }
59
59
  let localSourceMap = null;
60
- (0, symbolicate_stacktrace_1.getSourceMapFromLocalFile)(node_path_1.default.join(webpackConfigOrServeUrl, remotion_1.Internals.bundleName))
60
+ (0, symbolicate_stacktrace_1.getSourceMapFromLocalFile)(node_path_1.default.join(webpackConfigOrServeUrl, no_react_1.NoReactInternals.bundleName))
61
61
  .then((s) => {
62
62
  localSourceMap = s;
63
63
  })
@@ -1,5 +1,4 @@
1
- /// <reference types="node" />
2
- import type { ClipRegion } from 'remotion';
1
+ import type { ClipRegion } from 'remotion/no-react';
3
2
  import type { Page } from './browser/BrowserPage';
4
3
  import type { StillImageFormat } from './image-format';
5
4
  export declare const provideScreenshot: ({ page, imageFormat, options, jpegQuality, height, width, clipRegion, }: {
@@ -1,5 +1,4 @@
1
- /// <reference types="node" />
2
- import type { ClipRegion } from 'remotion';
1
+ import type { ClipRegion } from 'remotion/no-react';
3
2
  import type { Page } from './browser/BrowserPage';
4
3
  import type { StillImageFormat } from './image-format';
5
4
  export declare const screenshot: (options: {
@@ -1,5 +1,5 @@
1
1
  /// <reference types="node" />
2
- import type { VideoConfig } from 'remotion';
2
+ import type { VideoConfig } from 'remotion/no-react';
3
3
  import type { RenderMediaOnDownload } from './assets/download-and-map-assets-to-file';
4
4
  import type { BrowserExecutable } from './browser-executable';
5
5
  import type { BrowserLog } from './browser-log';
@@ -7,7 +7,7 @@ exports.renderFrames = exports.internalRenderFrames = void 0;
7
7
  const node_fs_1 = __importDefault(require("node:fs"));
8
8
  const node_path_1 = __importDefault(require("node:path"));
9
9
  const perf_hooks_1 = require("perf_hooks");
10
- const remotion_1 = require("remotion");
10
+ const no_react_1 = require("remotion/no-react");
11
11
  const download_and_map_assets_to_file_1 = require("./assets/download-and-map-assets-to-file");
12
12
  const browser_1 = require("./browser");
13
13
  const is_target_closed_err_1 = require("./browser/is-target-closed-err");
@@ -459,12 +459,12 @@ const renderFrames = (options) => {
459
459
  indent: false,
460
460
  jpegQuality: jpegQuality !== null && jpegQuality !== void 0 ? jpegQuality : jpeg_quality_1.DEFAULT_JPEG_QUALITY,
461
461
  onDownload: onDownload !== null && onDownload !== void 0 ? onDownload : null,
462
- serializedInputPropsWithCustomSchema: remotion_1.Internals.serializeJSONWithDate({
462
+ serializedInputPropsWithCustomSchema: no_react_1.NoReactInternals.serializeJSONWithDate({
463
463
  indent: undefined,
464
464
  staticBase: null,
465
465
  data: inputProps !== null && inputProps !== void 0 ? inputProps : {},
466
466
  }).serializedString,
467
- serializedResolvedPropsWithCustomSchema: remotion_1.Internals.serializeJSONWithDate({
467
+ serializedResolvedPropsWithCustomSchema: no_react_1.NoReactInternals.serializeJSONWithDate({
468
468
  indent: undefined,
469
469
  staticBase: null,
470
470
  data: composition.props,
@@ -1,5 +1,5 @@
1
1
  /// <reference types="node" />
2
- import type { VideoConfig } from 'remotion';
2
+ import type { VideoConfig } from 'remotion/no-react';
3
3
  import { type RenderMediaOnDownload } from './assets/download-and-map-assets-to-file';
4
4
  import type { AudioCodec } from './audio-codec';
5
5
  import type { BrowserExecutable } from './browser-executable';
@@ -7,7 +7,7 @@ exports.renderMedia = exports.internalRenderMedia = void 0;
7
7
  const node_fs_1 = __importDefault(require("node:fs"));
8
8
  const node_os_1 = __importDefault(require("node:os"));
9
9
  const node_path_1 = __importDefault(require("node:path"));
10
- const remotion_1 = require("remotion");
10
+ const no_react_1 = require("remotion/no-react");
11
11
  const TimeoutSettings_1 = require("./browser/TimeoutSettings");
12
12
  const can_use_parallel_encoding_1 = require("./can-use-parallel-encoding");
13
13
  const codec_supports_media_1 = require("./codec-supports-media");
@@ -461,7 +461,7 @@ const renderMedia = ({ proResProfile, x264Preset, crf, composition, inputProps,
461
461
  ffmpegOverride: ffmpegOverride !== null && ffmpegOverride !== void 0 ? ffmpegOverride : undefined,
462
462
  frameRange: frameRange !== null && frameRange !== void 0 ? frameRange : null,
463
463
  imageFormat: imageFormat !== null && imageFormat !== void 0 ? imageFormat : image_format_1.DEFAULT_VIDEO_IMAGE_FORMAT,
464
- serializedInputPropsWithCustomSchema: remotion_1.Internals.serializeJSONWithDate({
464
+ serializedInputPropsWithCustomSchema: no_react_1.NoReactInternals.serializeJSONWithDate({
465
465
  indent: undefined,
466
466
  staticBase: null,
467
467
  data: inputProps !== null && inputProps !== void 0 ? inputProps : {},
@@ -486,7 +486,7 @@ const renderMedia = ({ proResProfile, x264Preset, crf, composition, inputProps,
486
486
  indent: false,
487
487
  onCtrlCExit: () => undefined,
488
488
  server: undefined,
489
- serializedResolvedPropsWithCustomSchema: remotion_1.Internals.serializeJSONWithDate({
489
+ serializedResolvedPropsWithCustomSchema: no_react_1.NoReactInternals.serializeJSONWithDate({
490
490
  indent: undefined,
491
491
  staticBase: null,
492
492
  data: (_b = composition.props) !== null && _b !== void 0 ? _b : {},
@@ -1,5 +1,5 @@
1
1
  /// <reference types="node" />
2
- import type { VideoConfig } from 'remotion';
2
+ import type { VideoConfig } from 'remotion/no-react';
3
3
  import type { RenderMediaOnDownload } from './assets/download-and-map-assets-to-file';
4
4
  import type { BrowserExecutable } from './browser-executable';
5
5
  import type { BrowserLog } from './browser-log';
@@ -29,7 +29,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
29
29
  exports.renderStill = exports.internalRenderStill = void 0;
30
30
  const node_fs_1 = __importStar(require("node:fs"));
31
31
  const node_path_1 = __importDefault(require("node:path"));
32
- const remotion_1 = require("remotion");
32
+ const no_react_1 = require("remotion/no-react");
33
33
  const browser_1 = require("./browser");
34
34
  const TimeoutSettings_1 = require("./browser/TimeoutSettings");
35
35
  const convert_to_positive_frame_index_1 = require("./convert-to-positive-frame-index");
@@ -60,7 +60,7 @@ const innerRenderStill = async ({ composition, imageFormat = image_format_1.DEFA
60
60
  allowFloats: false,
61
61
  });
62
62
  (0, image_format_1.validateStillImageFormat)(imageFormat);
63
- remotion_1.Internals.validateFrame({
63
+ no_react_1.NoReactInternals.validateFrame({
64
64
  frame,
65
65
  durationInFrames: composition.durationInFrames,
66
66
  allowFloats: false,
@@ -270,7 +270,7 @@ const renderStill = (options) => {
270
270
  frame: frame !== null && frame !== void 0 ? frame : 0,
271
271
  imageFormat: imageFormat !== null && imageFormat !== void 0 ? imageFormat : image_format_1.DEFAULT_STILL_IMAGE_FORMAT,
272
272
  indent: false,
273
- serializedInputPropsWithCustomSchema: remotion_1.Internals.serializeJSONWithDate({
273
+ serializedInputPropsWithCustomSchema: no_react_1.NoReactInternals.serializeJSONWithDate({
274
274
  staticBase: null,
275
275
  indent: undefined,
276
276
  data: inputProps !== null && inputProps !== void 0 ? inputProps : {},
@@ -287,7 +287,7 @@ const renderStill = (options) => {
287
287
  serveUrl,
288
288
  timeoutInMilliseconds: timeoutInMilliseconds !== null && timeoutInMilliseconds !== void 0 ? timeoutInMilliseconds : TimeoutSettings_1.DEFAULT_TIMEOUT,
289
289
  logLevel: verbose || dumpBrowserLogs ? 'verbose' : (0, logger_1.getLogLevel)(),
290
- serializedResolvedPropsWithCustomSchema: remotion_1.Internals.serializeJSONWithDate({
290
+ serializedResolvedPropsWithCustomSchema: no_react_1.NoReactInternals.serializeJSONWithDate({
291
291
  indent: undefined,
292
292
  staticBase: null,
293
293
  data: (_b = composition.props) !== null && _b !== void 0 ? _b : {},
@@ -1,5 +1,4 @@
1
- /// <reference types="node" />
2
- import type { ClipRegion } from 'remotion';
1
+ import type { ClipRegion } from 'remotion/no-react';
3
2
  import type { Page } from './browser/BrowserPage';
4
3
  import type { StillImageFormat } from './image-format';
5
4
  export declare const screenshotDOMElement: ({ page, imageFormat, jpegQuality, opts, height, width, clipRegion, }: {
@@ -1,5 +1,4 @@
1
- /// <reference types="node" />
2
- import type { ClipRegion } from 'remotion';
1
+ import type { ClipRegion } from 'remotion/no-react';
3
2
  import type { Page } from './browser/BrowserPage';
4
3
  import type { StillImageFormat } from './image-format';
5
4
  export declare const screenshotTask: ({ format, height, omitBackground, page, width, path, jpegQuality, clipRegion, }: {
@@ -1,4 +1,4 @@
1
- import { type VideoConfig } from 'remotion';
1
+ import type { VideoConfig } from 'remotion/no-react';
2
2
  import type { BrowserExecutable } from './browser-executable';
3
3
  import type { BrowserLog } from './browser-log';
4
4
  import type { HeadlessBrowser } from './browser/Browser';
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.selectComposition = exports.internalSelectComposition = exports.internalSelectCompositionRaw = void 0;
4
- const remotion_1 = require("remotion");
4
+ const no_react_1 = require("remotion/no-react");
5
5
  const TimeoutSettings_1 = require("./browser/TimeoutSettings");
6
6
  const handle_javascript_exception_1 = require("./error-handling/handle-javascript-exception");
7
7
  const find_closest_package_json_1 = require("./find-closest-package-json");
@@ -83,8 +83,8 @@ const innerSelectComposition = async ({ page, onBrowserLog, serializedInputProps
83
83
  height,
84
84
  fps,
85
85
  durationInFrames,
86
- props: remotion_1.Internals.deserializeJSONWithCustomFields(res.serializedResolvedPropsWithCustomSchema),
87
- defaultProps: remotion_1.Internals.deserializeJSONWithCustomFields(res.serializedDefaultPropsWithCustomSchema),
86
+ props: no_react_1.NoReactInternals.deserializeJSONWithCustomFields(res.serializedResolvedPropsWithCustomSchema),
87
+ defaultProps: no_react_1.NoReactInternals.deserializeJSONWithCustomFields(res.serializedDefaultPropsWithCustomSchema),
88
88
  defaultCodec,
89
89
  },
90
90
  propsSize: size,
@@ -169,7 +169,7 @@ const selectComposition = async (options) => {
169
169
  browserExecutable: browserExecutable !== null && browserExecutable !== void 0 ? browserExecutable : null,
170
170
  chromiumOptions: chromiumOptions !== null && chromiumOptions !== void 0 ? chromiumOptions : {},
171
171
  envVariables: envVariables !== null && envVariables !== void 0 ? envVariables : {},
172
- serializedInputPropsWithCustomSchema: remotion_1.Internals.serializeJSONWithDate({
172
+ serializedInputPropsWithCustomSchema: no_react_1.NoReactInternals.serializeJSONWithDate({
173
173
  indent: undefined,
174
174
  staticBase: null,
175
175
  data: inputProps !== null && inputProps !== void 0 ? inputProps : {},
@@ -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 { AudioCodec } from './audio-codec';
@@ -29,7 +29,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
29
29
  exports.stitchFramesToVideo = exports.internalStitchFramesToVideo = void 0;
30
30
  const node_fs_1 = __importStar(require("node:fs"));
31
31
  const node_path_1 = __importDefault(require("node:path"));
32
- const remotion_1 = require("remotion");
32
+ const no_react_1 = require("remotion/no-react");
33
33
  const calculate_asset_positions_1 = require("./assets/calculate-asset-positions");
34
34
  const convert_assets_to_file_urls_1 = require("./assets/convert-assets-to-file-urls");
35
35
  const download_and_map_assets_to_file_1 = require("./assets/download-and-map-assets-to-file");
@@ -202,7 +202,7 @@ const innerStitchFramesToVideo = async ({ assetsInfo, audioBitrate, audioCodec,
202
202
  audioBitrate ? audioBitrate : '320k',
203
203
  force ? '-y' : null,
204
204
  outputLocation !== null && outputLocation !== void 0 ? outputLocation : tempFile,
205
- ].filter(remotion_1.Internals.truthy), indent, logLevel);
205
+ ].filter(no_react_1.NoReactInternals.truthy), indent, logLevel);
206
206
  cancelSignal === null || cancelSignal === void 0 ? void 0 : cancelSignal(() => {
207
207
  ffmpegTask.kill();
208
208
  });
@@ -1,5 +1,4 @@
1
- /// <reference types="node" />
2
- import type { TRenderAsset } from 'remotion';
1
+ import type { TRenderAsset } from 'remotion/no-react';
3
2
  import type { DownloadMap } from './assets/download-map';
4
3
  import type { Page } from './browser/BrowserPage';
5
4
  import type { Compositor } from './compositor/compositor';
@@ -1,4 +1,4 @@
1
- import { Internals } from 'remotion';
2
- export declare const validateFps: typeof Internals.validateFps;
3
- export declare const validateDimension: typeof Internals.validateDimension;
4
- export declare const validateDurationInFrames: typeof Internals.validateDurationInFrames;
1
+ import { NoReactInternals } from 'remotion/no-react';
2
+ export declare const validateFps: typeof NoReactInternals.validateFps;
3
+ export declare const validateDimension: typeof NoReactInternals.validateDimension;
4
+ export declare const validateDurationInFrames: typeof NoReactInternals.validateDurationInFrames;
package/dist/validate.js CHANGED
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.validateDurationInFrames = exports.validateDimension = exports.validateFps = void 0;
4
4
  /* eslint-disable prefer-destructuring */
5
- const remotion_1 = require("remotion");
6
- exports.validateFps = remotion_1.Internals.validateFps;
7
- exports.validateDimension = remotion_1.Internals.validateDimension;
8
- exports.validateDurationInFrames = remotion_1.Internals.validateDurationInFrames;
5
+ const no_react_1 = require("remotion/no-react");
6
+ exports.validateFps = no_react_1.NoReactInternals.validateFps;
7
+ exports.validateDimension = no_react_1.NoReactInternals.validateDimension;
8
+ exports.validateDurationInFrames = no_react_1.NoReactInternals.validateDurationInFrames;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@remotion/renderer",
3
- "version": "4.0.70",
3
+ "version": "4.0.72",
4
4
  "description": "Renderer for Remotion",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -18,7 +18,7 @@
18
18
  "extract-zip": "2.0.1",
19
19
  "source-map": "^0.8.0-beta.0",
20
20
  "ws": "8.7.0",
21
- "remotion": "4.0.70"
21
+ "remotion": "4.0.72"
22
22
  },
23
23
  "peerDependencies": {
24
24
  "react": ">=16.8.0",
@@ -40,13 +40,13 @@
40
40
  "vitest": "0.31.1"
41
41
  },
42
42
  "optionalDependencies": {
43
- "@remotion/compositor-darwin-arm64": "4.0.70",
44
- "@remotion/compositor-darwin-x64": "4.0.70",
45
- "@remotion/compositor-linux-arm64-gnu": "4.0.70",
46
- "@remotion/compositor-linux-arm64-musl": "4.0.70",
47
- "@remotion/compositor-linux-x64-musl": "4.0.70",
48
- "@remotion/compositor-win32-x64-msvc": "4.0.70",
49
- "@remotion/compositor-linux-x64-gnu": "4.0.70"
43
+ "@remotion/compositor-darwin-arm64": "4.0.72",
44
+ "@remotion/compositor-linux-arm64-gnu": "4.0.72",
45
+ "@remotion/compositor-linux-arm64-musl": "4.0.72",
46
+ "@remotion/compositor-darwin-x64": "4.0.72",
47
+ "@remotion/compositor-linux-x64-gnu": "4.0.72",
48
+ "@remotion/compositor-linux-x64-musl": "4.0.72",
49
+ "@remotion/compositor-win32-x64-msvc": "4.0.72"
50
50
  },
51
51
  "keywords": [
52
52
  "remotion",