@remotion/renderer 4.0.3 → 4.0.4

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.
@@ -12,7 +12,7 @@ const seek_to_frame_1 = require("./seek-to-frame");
12
12
  const set_props_and_env_1 = require("./set-props-and-env");
13
13
  const validate_puppeteer_timeout_1 = require("./validate-puppeteer-timeout");
14
14
  const logger_1 = require("./logger");
15
- const innerGetCompositions = async ({ envVariables, serializedInputPropsWithCustomSchema, onBrowserLog, page, proxyPort, serveUrl, timeoutInMilliseconds, }) => {
15
+ const innerGetCompositions = async ({ envVariables, serializedInputPropsWithCustomSchema, onBrowserLog, page, proxyPort, serveUrl, timeoutInMilliseconds, indent, logLevel, }) => {
16
16
  if (onBrowserLog) {
17
17
  page.on('console', (log) => {
18
18
  onBrowserLog({
@@ -34,6 +34,8 @@ const innerGetCompositions = async ({ envVariables, serializedInputPropsWithCust
34
34
  retriesRemaining: 2,
35
35
  audioEnabled: false,
36
36
  videoEnabled: false,
37
+ indent,
38
+ logLevel,
37
39
  });
38
40
  await (0, puppeteer_evaluate_1.puppeteerEvaluateWithCatch)({
39
41
  page,
@@ -96,6 +98,8 @@ const internalGetCompositions = async ({ browserExecutable, chromiumOptions, env
96
98
  proxyPort: offthreadPort,
97
99
  serveUrl,
98
100
  timeoutInMilliseconds,
101
+ indent,
102
+ logLevel,
99
103
  });
100
104
  })
101
105
  .then((comp) => {
package/dist/index.d.ts CHANGED
@@ -43,7 +43,7 @@ export declare const RenderInternals: {
43
43
  downloadMap: import("./assets/download-map").DownloadMap;
44
44
  remotionRoot: string;
45
45
  concurrency: number;
46
- logLevel: "error" | "verbose" | "info" | "warn";
46
+ logLevel: "verbose" | "info" | "warn" | "error";
47
47
  indent: boolean;
48
48
  }) => Promise<{
49
49
  port: number;
@@ -123,7 +123,7 @@ export declare const RenderInternals: {
123
123
  DEFAULT_CODEC: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif";
124
124
  isAudioCodec: (codec: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif" | undefined) => boolean;
125
125
  logLevels: readonly ["verbose", "info", "warn", "error"];
126
- isEqualOrBelowLogLevel: (currentLevel: "error" | "verbose" | "info" | "warn", level: "error" | "verbose" | "info" | "warn") => boolean;
126
+ isEqualOrBelowLogLevel: (currentLevel: "verbose" | "info" | "warn" | "error", level: "verbose" | "info" | "warn" | "error") => boolean;
127
127
  isValidLogLevel: (level: string) => boolean;
128
128
  perf: typeof perf;
129
129
  convertToPositiveFrameIndex: ({ frame, durationInFrames, }: {
@@ -357,24 +357,24 @@ export declare const RenderInternals: {
357
357
  verbose: (message?: any, ...optionalParams: any[]) => void;
358
358
  verboseAdvanced: (options: {
359
359
  indent: boolean;
360
- logLevel: "error" | "verbose" | "info" | "warn";
360
+ logLevel: "verbose" | "info" | "warn" | "error";
361
361
  } & {
362
362
  tag?: string | undefined;
363
363
  }, message?: any, ...optionalParams: any[]) => void;
364
364
  info: (message?: any, ...optionalParams: any[]) => void;
365
365
  infoAdvanced: (options: {
366
366
  indent: boolean;
367
- logLevel: "error" | "verbose" | "info" | "warn";
367
+ logLevel: "verbose" | "info" | "warn" | "error";
368
368
  }, message?: any, ...optionalParams: any[]) => void;
369
369
  warn: (message?: any, ...optionalParams: any[]) => void;
370
370
  warnAdvanced: (options: {
371
371
  indent: boolean;
372
- logLevel: "error" | "verbose" | "info" | "warn";
372
+ logLevel: "verbose" | "info" | "warn" | "error";
373
373
  }, message?: any, ...optionalParams: any[]) => void;
374
374
  error: (message?: any, ...optionalParams: any[]) => void;
375
375
  };
376
- getLogLevel: () => "error" | "verbose" | "info" | "warn";
377
- setLogLevel: (newLogLevel: "error" | "verbose" | "info" | "warn") => void;
376
+ getLogLevel: () => "verbose" | "info" | "warn" | "error";
377
+ setLogLevel: (newLogLevel: "verbose" | "info" | "warn" | "error") => void;
378
378
  INDENT_TOKEN: string;
379
379
  isColorSupported: () => boolean;
380
380
  HeadlessBrowser: typeof HeadlessBrowser;
@@ -383,7 +383,7 @@ export declare const RenderInternals: {
383
383
  port: number | null;
384
384
  remotionRoot: string;
385
385
  concurrency: number;
386
- logLevel: "error" | "verbose" | "info" | "warn";
386
+ logLevel: "verbose" | "info" | "warn" | "error";
387
387
  indent: boolean;
388
388
  }) => Promise<import("./prepare-server").RemotionServer>;
389
389
  makeOrReuseServer: (server: import("./prepare-server").RemotionServer | undefined, config: {
@@ -391,7 +391,7 @@ export declare const RenderInternals: {
391
391
  port: number | null;
392
392
  remotionRoot: string;
393
393
  concurrency: number;
394
- logLevel: "error" | "verbose" | "info" | "warn";
394
+ logLevel: "verbose" | "info" | "warn" | "error";
395
395
  indent: boolean;
396
396
  }, { onDownload, onError, }: {
397
397
  onError: (err: Error) => void;
@@ -420,7 +420,7 @@ export declare const RenderInternals: {
420
420
  cancelSignal: import("./make-cancel-signal").CancelSignal | null;
421
421
  indent: boolean;
422
422
  server: import("./prepare-server").RemotionServer | undefined;
423
- logLevel: "error" | "verbose" | "info" | "warn";
423
+ logLevel: "verbose" | "info" | "warn" | "error";
424
424
  serveUrl: string;
425
425
  port: number | null;
426
426
  }) => Promise<{
@@ -433,7 +433,7 @@ export declare const RenderInternals: {
433
433
  viewport: import("./browser/PuppeteerViewport").Viewport | null;
434
434
  indent: boolean;
435
435
  browser: import("./browser").Browser;
436
- logLevel: "error" | "verbose" | "info" | "warn";
436
+ logLevel: "verbose" | "info" | "warn" | "error";
437
437
  }) => Promise<HeadlessBrowser>;
438
438
  internalSelectComposition: (options: {
439
439
  serializedInputPropsWithCustomSchema: string;
@@ -446,7 +446,7 @@ export declare const RenderInternals: {
446
446
  port: number | null;
447
447
  indent: boolean;
448
448
  server: import("./prepare-server").RemotionServer | undefined;
449
- logLevel: "error" | "verbose" | "info" | "warn";
449
+ logLevel: "verbose" | "info" | "warn" | "error";
450
450
  serveUrl: string;
451
451
  id: string;
452
452
  }) => Promise<{
@@ -464,7 +464,7 @@ export declare const RenderInternals: {
464
464
  port: number | null;
465
465
  server: import("./prepare-server").RemotionServer | undefined;
466
466
  indent: boolean;
467
- logLevel: "error" | "verbose" | "info" | "warn";
467
+ logLevel: "verbose" | "info" | "warn" | "error";
468
468
  serveUrlOrWebpackUrl: string;
469
469
  }) => Promise<import("remotion").VideoConfig[]>;
470
470
  internalRenderFrames: ({ browserExecutable, cancelSignal, chromiumOptions, composition, concurrency, envVariables, everyNthFrame, frameRange, imageFormat, indent, jpegQuality, muted, onBrowserLog, onDownload, onFrameBuffer, onFrameUpdate, onStart, outputDir, port, puppeteerInstance, scale, server, timeoutInMilliseconds, logLevel, webpackBundleOrServeUrl, serializedInputPropsWithCustomSchema, serializedResolvedPropsWithCustomSchema, }: import("./render-frames").InternalRenderFramesOptions) => Promise<import("./types").RenderFramesOutput>;
package/dist/logger.d.ts CHANGED
@@ -18,6 +18,6 @@ export declare const Log: {
18
18
  warnAdvanced: (options: LogOptions, message?: any, ...optionalParams: any[]) => void;
19
19
  error: (message?: any, ...optionalParams: any[]) => void;
20
20
  };
21
- export declare const getLogLevel: () => "error" | "verbose" | "info" | "warn";
21
+ export declare const getLogLevel: () => "verbose" | "info" | "warn" | "error";
22
22
  export declare const setLogLevel: (newLogLevel: LogLevel) => void;
23
23
  export {};
@@ -79,6 +79,8 @@ const innerRenderFrames = async ({ onFrameUpdate, outputDir, onStart, serialized
79
79
  retriesRemaining: 2,
80
80
  audioEnabled: !muted,
81
81
  videoEnabled: imageFormat !== 'none',
82
+ indent,
83
+ logLevel,
82
84
  });
83
85
  await (0, puppeteer_evaluate_1.puppeteerEvaluateWithCatch)({
84
86
  // eslint-disable-next-line max-params
@@ -144,6 +144,8 @@ const innerRenderStill = async ({ composition, imageFormat = image_format_1.DEFA
144
144
  retriesRemaining: 2,
145
145
  audioEnabled: false,
146
146
  videoEnabled: true,
147
+ indent,
148
+ logLevel,
147
149
  });
148
150
  await (0, puppeteer_evaluate_1.puppeteerEvaluateWithCatch)({
149
151
  // eslint-disable-next-line max-params
@@ -34,6 +34,8 @@ const innerSelectComposition = async ({ page, onBrowserLog, serializedInputProps
34
34
  retriesRemaining: 2,
35
35
  audioEnabled: false,
36
36
  videoEnabled: false,
37
+ indent,
38
+ logLevel,
37
39
  });
38
40
  await (0, puppeteer_evaluate_1.puppeteerEvaluateWithCatch)({
39
41
  page,
@@ -1,4 +1,5 @@
1
1
  import type { Page } from './browser/BrowserPage';
2
+ import type { LogLevel } from './log-level';
2
3
  type SetPropsAndEnv = {
3
4
  serializedInputPropsWithCustomSchema: string;
4
5
  envVariables: Record<string, string> | undefined;
@@ -10,6 +11,8 @@ type SetPropsAndEnv = {
10
11
  retriesRemaining: number;
11
12
  audioEnabled: boolean;
12
13
  videoEnabled: boolean;
14
+ indent: boolean;
15
+ logLevel: LogLevel;
13
16
  };
14
17
  export declare const setPropsAndEnv: (params: SetPropsAndEnv) => Promise<unknown>;
15
18
  export {};
@@ -8,7 +8,7 @@ const puppeteer_evaluate_1 = require("./puppeteer-evaluate");
8
8
  const redirect_status_codes_1 = require("./redirect-status-codes");
9
9
  const validate_puppeteer_timeout_1 = require("./validate-puppeteer-timeout");
10
10
  const logger_1 = require("./logger");
11
- const innerSetPropsAndEnv = async ({ serializedInputPropsWithCustomSchema, envVariables, page, serveUrl, initialFrame, timeoutInMilliseconds, proxyPort, retriesRemaining, audioEnabled, videoEnabled, }) => {
11
+ const innerSetPropsAndEnv = async ({ serializedInputPropsWithCustomSchema, envVariables, page, serveUrl, initialFrame, timeoutInMilliseconds, proxyPort, retriesRemaining, audioEnabled, videoEnabled, indent, logLevel, }) => {
12
12
  (0, validate_puppeteer_timeout_1.validatePuppeteerTimeout)(timeoutInMilliseconds);
13
13
  const actualTimeout = timeoutInMilliseconds !== null && timeoutInMilliseconds !== void 0 ? timeoutInMilliseconds : TimeoutSettings_1.DEFAULT_TIMEOUT;
14
14
  page.setDefaultTimeout(actualTimeout);
@@ -61,12 +61,14 @@ const innerSetPropsAndEnv = async ({ serializedInputPropsWithCustomSchema, envVa
61
61
  timeoutInMilliseconds,
62
62
  audioEnabled,
63
63
  videoEnabled,
64
+ indent,
65
+ logLevel,
64
66
  });
65
67
  }
66
68
  if (!redirect_status_codes_1.redirectStatusCodes.every((code) => code !== status)) {
67
69
  throw new Error(`Error while getting compositions: Tried to go to ${urlToVisit} but the status code was ${status} instead of 200. Does the site you specified exist?`);
68
70
  }
69
- const isRemotionFn = await (0, puppeteer_evaluate_1.puppeteerEvaluateWithCatch)({
71
+ const { value: isRemotionFn } = await (0, puppeteer_evaluate_1.puppeteerEvaluateWithCatch)({
70
72
  pageFunction: () => {
71
73
  return window.getStaticCompositions;
72
74
  },
@@ -74,8 +76,23 @@ const innerSetPropsAndEnv = async ({ serializedInputPropsWithCustomSchema, envVa
74
76
  frame: null,
75
77
  page,
76
78
  });
77
- if (isRemotionFn === undefined) {
78
- throw new Error(`Error while getting compositions: Tried to go to ${urlToVisit} and verify that it is a Remotion project by checking if window.getStaticCompositions is defined. However, the function was undefined, which indicates that this is not a valid Remotion project. Please check the URL you passed.`);
79
+ if (typeof isRemotionFn === 'undefined') {
80
+ const { value: body } = await (0, puppeteer_evaluate_1.puppeteerEvaluateWithCatch)({
81
+ pageFunction: () => {
82
+ return document.body.innerHTML;
83
+ },
84
+ args: [],
85
+ frame: null,
86
+ page,
87
+ });
88
+ const errorMessage = [
89
+ `Error while getting compositions: Tried to go to ${urlToVisit} and verify that it is a Remotion project by checking if window.getStaticCompositions is defined.`,
90
+ 'However, the function was undefined, which indicates that this is not a valid Remotion project. Please check the URL you passed.',
91
+ 'The page loaded contained the following markup:',
92
+ body.substring(0, 500) + (body.length > 500 ? '...' : ''),
93
+ 'Does this look like a foreign page? If so, try to stop this server.',
94
+ ].join('\n');
95
+ throw new Error(errorMessage);
79
96
  }
80
97
  const { value: siteVersion } = await (0, puppeteer_evaluate_1.puppeteerEvaluateWithCatch)({
81
98
  pageFunction: () => {
@@ -99,10 +116,16 @@ const innerSetPropsAndEnv = async ({ serializedInputPropsWithCustomSchema, envVa
99
116
  }
100
117
  if (remotionVersion !== version_1.VERSION && process.env.NODE_ENV !== 'test') {
101
118
  if (remotionVersion) {
102
- logger_1.Log.warn(`The site was bundled with version ${remotionVersion} of @remotion/bundler, while @remotion/renderer is on version ${version_1.VERSION}. You may not have the newest bugfixes and features. Re-bundle the site to fix this issue.`);
119
+ logger_1.Log.warnAdvanced({
120
+ indent,
121
+ logLevel,
122
+ }, `The site was bundled with version ${remotionVersion} of @remotion/bundler, while @remotion/renderer is on version ${version_1.VERSION}. You may not have the newest bugfixes and features. Re-bundle the site to fix this issue.`);
103
123
  }
104
124
  else {
105
- logger_1.Log.warn(`The site was bundled with an old version of Remotion, while @remotion/renderer is on version ${version_1.VERSION}. You may not have the newest bugfixes and features. Re-bundle the site to fix this issue.`);
125
+ logger_1.Log.warnAdvanced({
126
+ indent,
127
+ logLevel,
128
+ }, `The site was bundled with an old version of Remotion, while @remotion/renderer is on version ${version_1.VERSION}. You may not have the newest bugfixes and features. Re-bundle the site to fix this issue.`);
106
129
  }
107
130
  }
108
131
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@remotion/renderer",
3
- "version": "4.0.3",
3
+ "version": "4.0.4",
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.3"
21
+ "remotion": "4.0.4"
22
22
  },
23
23
  "peerDependencies": {
24
24
  "react": ">=16.8.0",
@@ -42,13 +42,13 @@
42
42
  "zod": "^3.21.4"
43
43
  },
44
44
  "optionalDependencies": {
45
- "@remotion/compositor-darwin-x64": "4.0.3",
46
- "@remotion/compositor-darwin-arm64": "4.0.3",
47
- "@remotion/compositor-linux-arm64-musl": "4.0.3",
48
- "@remotion/compositor-linux-x64-gnu": "4.0.3",
49
- "@remotion/compositor-linux-x64-musl": "4.0.3",
50
- "@remotion/compositor-linux-arm64-gnu": "4.0.3",
51
- "@remotion/compositor-win32-x64-msvc": "4.0.3"
45
+ "@remotion/compositor-linux-arm64-musl": "4.0.4",
46
+ "@remotion/compositor-linux-x64-musl": "4.0.4",
47
+ "@remotion/compositor-darwin-arm64": "4.0.4",
48
+ "@remotion/compositor-linux-x64-gnu": "4.0.4",
49
+ "@remotion/compositor-linux-arm64-gnu": "4.0.4",
50
+ "@remotion/compositor-darwin-x64": "4.0.4",
51
+ "@remotion/compositor-win32-x64-msvc": "4.0.4"
52
52
  },
53
53
  "keywords": [
54
54
  "remotion",