@remotion/renderer 4.0.68 → 4.0.70

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/client.d.ts CHANGED
@@ -1,11 +1,11 @@
1
1
  /// <reference types="react" />
2
2
  export declare const BrowserSafeApis: {
3
- 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;
3
+ 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;
4
4
  validCodecs: readonly ["h264", "h265", "vp8", "vp9", "mp3", "aac", "wav", "prores", "h264-mkv", "gif"];
5
5
  validAudioCodecs: readonly ["pcm-16", "aac", "mp3", "opus"];
6
- getDefaultCrfForCodec: (codec: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif") => number;
7
- getValidCrfRanges: (codec: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif") => [number, number];
8
- isAudioCodec: (codec: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif" | null | undefined) => boolean;
6
+ getDefaultCrfForCodec: (codec: "h264" | "h265" | "vp8" | "vp9" | "prores" | "aac" | "mp3" | "wav" | "h264-mkv" | "gif") => number;
7
+ getValidCrfRanges: (codec: "h264" | "h265" | "vp8" | "vp9" | "prores" | "aac" | "mp3" | "wav" | "h264-mkv" | "gif") => [number, number];
8
+ isAudioCodec: (codec: "h264" | "h265" | "vp8" | "vp9" | "prores" | "aac" | "mp3" | "wav" | "h264-mkv" | "gif" | null | undefined) => boolean;
9
9
  proResProfileOptions: readonly ["4444-xq", "4444", "hq", "standard", "light", "proxy"];
10
10
  x264PresetOptions: readonly ["ultrafast", "superfast", "veryfast", "faster", "fast", "medium", "slow", "slower", "veryslow", "placebo"];
11
11
  validPixelFormats: readonly ["yuv420p", "yuva420p", "yuv422p", "yuv444p", "yuv420p10le", "yuv422p10le", "yuv444p10le", "yuva444p10le"];
@@ -26,11 +26,11 @@ export declare const BrowserSafeApis: {
26
26
  h264: {
27
27
  default: import("./file-extensions").FileExtension;
28
28
  forAudioCodec: {
29
- mp3: {
29
+ aac: {
30
30
  possible: import("./file-extensions").FileExtension[];
31
31
  default: import("./file-extensions").FileExtension;
32
32
  };
33
- aac: {
33
+ mp3: {
34
34
  possible: import("./file-extensions").FileExtension[];
35
35
  default: import("./file-extensions").FileExtension;
36
36
  };
@@ -56,11 +56,11 @@ export declare const BrowserSafeApis: {
56
56
  vp8: {
57
57
  default: import("./file-extensions").FileExtension;
58
58
  forAudioCodec: {
59
- "pcm-16": {
59
+ opus: {
60
60
  possible: import("./file-extensions").FileExtension[];
61
61
  default: import("./file-extensions").FileExtension;
62
62
  };
63
- opus: {
63
+ "pcm-16": {
64
64
  possible: import("./file-extensions").FileExtension[];
65
65
  default: import("./file-extensions").FileExtension;
66
66
  };
@@ -69,20 +69,20 @@ export declare const BrowserSafeApis: {
69
69
  vp9: {
70
70
  default: import("./file-extensions").FileExtension;
71
71
  forAudioCodec: {
72
- "pcm-16": {
72
+ opus: {
73
73
  possible: import("./file-extensions").FileExtension[];
74
74
  default: import("./file-extensions").FileExtension;
75
75
  };
76
- opus: {
76
+ "pcm-16": {
77
77
  possible: import("./file-extensions").FileExtension[];
78
78
  default: import("./file-extensions").FileExtension;
79
79
  };
80
80
  };
81
81
  };
82
- mp3: {
82
+ prores: {
83
83
  default: import("./file-extensions").FileExtension;
84
84
  forAudioCodec: {
85
- mp3: {
85
+ aac: {
86
86
  possible: import("./file-extensions").FileExtension[];
87
87
  default: import("./file-extensions").FileExtension;
88
88
  };
@@ -105,22 +105,22 @@ export declare const BrowserSafeApis: {
105
105
  };
106
106
  };
107
107
  };
108
- wav: {
108
+ mp3: {
109
109
  default: import("./file-extensions").FileExtension;
110
110
  forAudioCodec: {
111
+ mp3: {
112
+ possible: import("./file-extensions").FileExtension[];
113
+ default: import("./file-extensions").FileExtension;
114
+ };
111
115
  "pcm-16": {
112
116
  possible: import("./file-extensions").FileExtension[];
113
117
  default: import("./file-extensions").FileExtension;
114
118
  };
115
119
  };
116
120
  };
117
- prores: {
121
+ wav: {
118
122
  default: import("./file-extensions").FileExtension;
119
123
  forAudioCodec: {
120
- aac: {
121
- possible: import("./file-extensions").FileExtension[];
122
- default: import("./file-extensions").FileExtension;
123
- };
124
124
  "pcm-16": {
125
125
  possible: import("./file-extensions").FileExtension[];
126
126
  default: import("./file-extensions").FileExtension;
@@ -147,37 +147,37 @@ export declare const BrowserSafeApis: {
147
147
  };
148
148
  defaultAudioCodecs: {
149
149
  h264: {
150
- compressed: "mp3" | "aac" | "pcm-16" | null;
151
- lossless: "mp3" | "aac" | "pcm-16" | null;
150
+ compressed: "aac" | "mp3" | "pcm-16" | null;
151
+ lossless: "aac" | "mp3" | "pcm-16" | null;
152
152
  };
153
153
  h265: {
154
154
  compressed: "aac" | "pcm-16" | null;
155
155
  lossless: "aac" | "pcm-16" | null;
156
156
  };
157
157
  vp8: {
158
- compressed: "pcm-16" | "opus" | null;
159
- lossless: "pcm-16" | "opus" | null;
158
+ compressed: "opus" | "pcm-16" | null;
159
+ lossless: "opus" | "pcm-16" | null;
160
160
  };
161
161
  vp9: {
162
- compressed: "pcm-16" | "opus" | null;
163
- lossless: "pcm-16" | "opus" | null;
162
+ compressed: "opus" | "pcm-16" | null;
163
+ lossless: "opus" | "pcm-16" | null;
164
164
  };
165
- mp3: {
166
- compressed: "mp3" | "pcm-16" | null;
167
- lossless: "mp3" | "pcm-16" | null;
165
+ prores: {
166
+ compressed: "aac" | "pcm-16" | null;
167
+ lossless: "aac" | "pcm-16" | null;
168
168
  };
169
169
  aac: {
170
170
  compressed: "aac" | "pcm-16" | null;
171
171
  lossless: "aac" | "pcm-16" | null;
172
172
  };
173
+ mp3: {
174
+ compressed: "mp3" | "pcm-16" | null;
175
+ lossless: "mp3" | "pcm-16" | null;
176
+ };
173
177
  wav: {
174
178
  compressed: "pcm-16" | null;
175
179
  lossless: "pcm-16" | null;
176
180
  };
177
- prores: {
178
- compressed: "aac" | "pcm-16" | null;
179
- lossless: "aac" | "pcm-16" | null;
180
- };
181
181
  "h264-mkv": {
182
182
  compressed: "mp3" | "pcm-16" | null;
183
183
  lossless: "mp3" | "pcm-16" | null;
@@ -187,10 +187,10 @@ export declare const BrowserSafeApis: {
187
187
  lossless: null;
188
188
  };
189
189
  };
190
- defaultCodecsForFileExtension: Record<import("./file-extensions").FileExtension, "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif">;
191
- validateOutputFilename: <T_1 extends "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif">({ codec, audioCodec, extension, preferLossless, }: {
190
+ defaultCodecsForFileExtension: Record<import("./file-extensions").FileExtension, "h264" | "h265" | "vp8" | "vp9" | "prores" | "aac" | "mp3" | "wav" | "h264-mkv" | "gif">;
191
+ validateOutputFilename: <T_1 extends "h264" | "h265" | "vp8" | "vp9" | "prores" | "aac" | "mp3" | "wav" | "h264-mkv" | "gif">({ codec, audioCodec, extension, preferLossless, }: {
192
192
  codec: T_1;
193
- audioCodec: "mp3" | "aac" | "pcm-16" | "opus" | null;
193
+ audioCodec: "opus" | "aac" | "mp3" | "pcm-16" | null;
194
194
  extension: string;
195
195
  preferLossless: boolean;
196
196
  }) => void;
@@ -281,7 +281,7 @@ export declare const BrowserSafeApis: {
281
281
  description: () => JSX.Element;
282
282
  docLink: string;
283
283
  ssrName: string;
284
- type: "default" | "bt709";
284
+ type: "bt709" | "default";
285
285
  };
286
286
  deleteAfterOption: {
287
287
  name: string;
@@ -311,7 +311,7 @@ export declare const BrowserSafeApis: {
311
311
  cliFlag: string;
312
312
  docLink: string;
313
313
  name: string;
314
- type: "angle" | "swangle" | "egl" | "swiftshader" | "vulkan" | "angle-egl";
314
+ type: "swangle" | "angle" | "egl" | "swiftshader" | "vulkan" | "angle-egl";
315
315
  ssrName: string;
316
316
  description: () => JSX.Element;
317
317
  };
@@ -407,6 +407,6 @@ export declare const BrowserSafeApis: {
407
407
  type: number | null;
408
408
  }];
409
409
  };
410
- codecSupportsCrf: (codec: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif") => boolean;
411
- codecSupportsVideoBitrate: (codec: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif") => boolean;
410
+ codecSupportsCrf: (codec: "h264" | "h265" | "vp8" | "vp9" | "prores" | "aac" | "mp3" | "wav" | "h264-mkv" | "gif") => boolean;
411
+ codecSupportsVideoBitrate: (codec: "h264" | "h265" | "vp8" | "vp9" | "prores" | "aac" | "mp3" | "wav" | "h264-mkv" | "gif") => boolean;
412
412
  };
@@ -1,6 +1,6 @@
1
1
  import type { AudioCodec } from './audio-codec';
2
2
  import type { Codec } from './codec';
3
3
  import type { FileExtension } from './file-extensions';
4
- export declare const getFileExtensionFromCodec: <T extends "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif">(codec: T, audioCodec: AudioCodec | null) => FileExtension;
5
- export declare const makeFileExtensionMap: () => Record<string, ("h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif")[]>;
4
+ export declare const getFileExtensionFromCodec: <T extends "h264" | "h265" | "vp8" | "vp9" | "prores" | "aac" | "mp3" | "wav" | "h264-mkv" | "gif">(codec: T, audioCodec: AudioCodec | null) => FileExtension;
5
+ export declare const makeFileExtensionMap: () => Record<string, ("h264" | "h265" | "vp8" | "vp9" | "prores" | "aac" | "mp3" | "wav" | "h264-mkv" | "gif")[]>;
6
6
  export declare const defaultCodecsForFileExtension: Record<FileExtension, Codec>;
@@ -10,6 +10,6 @@ export declare const getDesiredPort: ({ desiredPort, from, hostsToTry, to, }: {
10
10
  hostsToTry: string[];
11
11
  }) => Promise<{
12
12
  port: number;
13
- didUsePort: () => void;
13
+ unlockPort: () => void;
14
14
  }>;
15
15
  export {};
package/dist/get-port.js CHANGED
@@ -50,20 +50,20 @@ const portLocks = (0, locks_1.createLock)({ timeout: 10000 });
50
50
  const getDesiredPort = async ({ desiredPort, from, hostsToTry, to, }) => {
51
51
  await portLocks.waitForAllToBeDone();
52
52
  const lockPortSelection = portLocks.lock();
53
- const didUsePort = () => portLocks.unlock(lockPortSelection);
53
+ const unlockPort = () => portLocks.unlock(lockPortSelection);
54
54
  if (typeof desiredPort !== 'undefined' &&
55
55
  (await (0, exports.testPortAvailableOnMultipleHosts)({
56
56
  port: desiredPort,
57
57
  hosts: hostsToTry,
58
58
  })) === 'available') {
59
- return { port: desiredPort, didUsePort };
59
+ return { port: desiredPort, unlockPort };
60
60
  }
61
61
  const actualPort = await getPort({ from, to, hostsToTest: hostsToTry });
62
62
  // If did specify a port but did not get that one, fail hard.
63
63
  if (desiredPort && desiredPort !== actualPort) {
64
64
  throw new Error(`You specified port ${desiredPort} to be used for the HTTP server, but it is not available. Choose a different port or remove the setting to let Remotion automatically select a free port.`);
65
65
  }
66
- return { port: actualPort, didUsePort };
66
+ return { port: actualPort, unlockPort };
67
67
  };
68
68
  exports.getDesiredPort = getDesiredPort;
69
69
  const makeRange = (from, to) => {
package/dist/index.d.ts CHANGED
@@ -1,6 +1,3 @@
1
- /// <reference types="node" />
2
- /// <reference types="react" />
3
- /// <reference types="node" />
4
1
  import execa from 'execa';
5
2
  import { HeadlessBrowser } from './browser/Browser';
6
3
  import { SymbolicateableError } from './error-handling/symbolicateable-error';
@@ -46,7 +43,7 @@ export { X264Preset } from './x264-preset';
46
43
  export declare const RenderInternals: {
47
44
  ensureLocalBrowser: ({ indent, logLevel, preferredBrowserExecutable, }: {
48
45
  preferredBrowserExecutable: import("./browser-executable").BrowserExecutable;
49
- logLevel: "verbose" | "info" | "warn" | "error";
46
+ logLevel: "error" | "verbose" | "info" | "warn";
50
47
  indent: boolean;
51
48
  }) => Promise<void>;
52
49
  getActualConcurrency: (userPreference: string | number | null) => number;
@@ -55,7 +52,7 @@ export declare const RenderInternals: {
55
52
  downloadMap: import("./assets/download-map").DownloadMap;
56
53
  remotionRoot: string;
57
54
  concurrency: number;
58
- logLevel: "verbose" | "info" | "warn" | "error";
55
+ logLevel: "error" | "verbose" | "info" | "warn";
59
56
  indent: boolean;
60
57
  offthreadVideoCacheSizeInBytes: number | null;
61
58
  }) => Promise<{
@@ -85,7 +82,7 @@ export declare const RenderInternals: {
85
82
  downloaded: number;
86
83
  totalSize: number | null;
87
84
  }) => void) | undefined;
88
- logLevel: "verbose" | "info" | "warn" | "error";
85
+ logLevel: "error" | "verbose" | "info" | "warn";
89
86
  indent: boolean;
90
87
  }, retries?: number, attempt?: number) => Promise<{
91
88
  sizeInBytes: number;
@@ -104,7 +101,7 @@ export declare const RenderInternals: {
104
101
  hostsToTry: string[];
105
102
  }) => Promise<{
106
103
  port: number;
107
- didUsePort: () => void;
104
+ unlockPort: () => void;
108
105
  }>;
109
106
  isPathInside: (thePath: string, potentialParent: string) => boolean;
110
107
  execa: {
@@ -138,8 +135,8 @@ export declare const RenderInternals: {
138
135
  validPixelFormats: readonly ["yuv420p", "yuva420p", "yuv422p", "yuv444p", "yuv420p10le", "yuv422p10le", "yuv444p10le", "yuva444p10le"];
139
136
  DEFAULT_BROWSER: "chrome";
140
137
  validateFrameRange: (frameRange: import("./frame-range").FrameRange | null) => void;
141
- DEFAULT_OPENGL_RENDERER: "angle" | "swangle" | "egl" | "swiftshader" | "vulkan" | "angle-egl" | null;
142
- validateOpenGlRenderer: (option: "angle" | "swangle" | "egl" | "swiftshader" | "vulkan" | "angle-egl" | null) => "angle" | "swangle" | "egl" | "swiftshader" | "vulkan" | "angle-egl" | null;
138
+ DEFAULT_OPENGL_RENDERER: "swangle" | "angle" | "egl" | "swiftshader" | "vulkan" | "angle-egl" | null;
139
+ validateOpenGlRenderer: (option: "swangle" | "angle" | "egl" | "swiftshader" | "vulkan" | "angle-egl" | null) => "swangle" | "angle" | "egl" | "swiftshader" | "vulkan" | "angle-egl" | null;
143
140
  validCodecs: readonly ["h264", "h265", "vp8", "vp9", "mp3", "aac", "wav", "prores", "h264-mkv", "gif"];
144
141
  DEFAULT_PIXEL_FORMAT: "yuv420p" | "yuva420p" | "yuv422p" | "yuv444p" | "yuv420p10le" | "yuv422p10le" | "yuv444p10le" | "yuva444p10le";
145
142
  validateJpegQuality: (q: number | undefined) => void;
@@ -147,7 +144,7 @@ export declare const RenderInternals: {
147
144
  DEFAULT_CODEC: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif";
148
145
  isAudioCodec: (codec: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif" | null | undefined) => boolean;
149
146
  logLevels: readonly ["verbose", "info", "warn", "error"];
150
- isEqualOrBelowLogLevel: (currentLevel: "verbose" | "info" | "warn" | "error", level: "verbose" | "info" | "warn" | "error") => boolean;
147
+ isEqualOrBelowLogLevel: (currentLevel: "error" | "verbose" | "info" | "warn", level: "error" | "verbose" | "info" | "warn") => boolean;
151
148
  isValidLogLevel: (level: string) => boolean;
152
149
  perf: typeof perf;
153
150
  convertToPositiveFrameIndex: ({ frame, durationInFrames, }: {
@@ -168,7 +165,7 @@ export declare const RenderInternals: {
168
165
  audioCodec: "mp3" | "aac" | "pcm-16" | "opus" | null;
169
166
  audioBitrate: string | null;
170
167
  indent: boolean;
171
- logLevel: "verbose" | "info" | "warn" | "error";
168
+ logLevel: "error" | "verbose" | "info" | "warn";
172
169
  }) => Promise<void>;
173
170
  getMinConcurrency: () => number;
174
171
  getMaxConcurrency: () => number;
@@ -314,9 +311,9 @@ export declare const RenderInternals: {
314
311
  };
315
312
  makeFileExtensionMap: () => Record<string, ("h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif")[]>;
316
313
  defaultCodecsForFileExtension: Record<import("./file-extensions").FileExtension, "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif">;
317
- getExecutablePath: (type: "compositor" | "ffmpeg" | "ffprobe" | "ffmpeg-cwd", indent: boolean, logLevel: "verbose" | "info" | "warn" | "error") => string;
318
- callFf: (bin: "ffmpeg" | "ffprobe", args: (string | null)[], indent: boolean, logLevel: "verbose" | "info" | "warn" | "error", options?: execa.Options<string> | undefined) => execa.ExecaChildProcess<string>;
319
- dynamicLibraryPathOptions: (indent: boolean, logLevel: "verbose" | "info" | "warn" | "error") => {
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") => {
320
317
  env: {
321
318
  DYLD_LIBRARY_PATH: string;
322
319
  RUST_BACKTRACE: string;
@@ -330,8 +327,8 @@ export declare const RenderInternals: {
330
327
  };
331
328
  validStillImageFormats: readonly ["png", "jpeg", "pdf", "webp"];
332
329
  validVideoImageFormats: readonly ["png", "jpeg", "none"];
333
- DEFAULT_STILL_IMAGE_FORMAT: "jpeg" | "png" | "webp" | "pdf";
334
- DEFAULT_VIDEO_IMAGE_FORMAT: "jpeg" | "png" | "none";
330
+ DEFAULT_STILL_IMAGE_FORMAT: "png" | "jpeg" | "pdf" | "webp";
331
+ DEFAULT_VIDEO_IMAGE_FORMAT: "png" | "jpeg" | "none";
335
332
  DEFAULT_JPEG_QUALITY: number;
336
333
  chalk: {
337
334
  enabled: () => boolean;
@@ -395,8 +392,8 @@ export declare const RenderInternals: {
395
392
  tag?: string | undefined;
396
393
  }, message?: any, ...optionalParams: any[]) => void;
397
394
  };
398
- getLogLevel: () => "verbose" | "info" | "warn" | "error";
399
- setLogLevel: (newLogLevel: "verbose" | "info" | "warn" | "error") => void;
395
+ getLogLevel: () => "error" | "verbose" | "info" | "warn";
396
+ setLogLevel: (newLogLevel: "error" | "verbose" | "info" | "warn") => void;
400
397
  INDENT_TOKEN: string;
401
398
  isColorSupported: () => boolean;
402
399
  HeadlessBrowser: typeof HeadlessBrowser;
@@ -405,7 +402,7 @@ export declare const RenderInternals: {
405
402
  port: number | null;
406
403
  remotionRoot: string;
407
404
  concurrency: number;
408
- logLevel: "verbose" | "info" | "warn" | "error";
405
+ logLevel: "error" | "verbose" | "info" | "warn";
409
406
  indent: boolean;
410
407
  offthreadVideoCacheSizeInBytes: number | null;
411
408
  }) => Promise<import("./prepare-server").RemotionServer>;
@@ -414,7 +411,7 @@ export declare const RenderInternals: {
414
411
  port: number | null;
415
412
  remotionRoot: string;
416
413
  concurrency: number;
417
- logLevel: "verbose" | "info" | "warn" | "error";
414
+ logLevel: "error" | "verbose" | "info" | "warn";
418
415
  indent: boolean;
419
416
  offthreadVideoCacheSizeInBytes: number | null;
420
417
  }, { onDownload, onError, }: {
@@ -430,7 +427,7 @@ export declare const RenderInternals: {
430
427
  frame: number;
431
428
  serializedInputPropsWithCustomSchema: string;
432
429
  serializedResolvedPropsWithCustomSchema: string;
433
- imageFormat: "jpeg" | "png" | "webp" | "pdf";
430
+ imageFormat: "png" | "jpeg" | "pdf" | "webp";
434
431
  jpegQuality: number;
435
432
  puppeteerInstance: HeadlessBrowser | null;
436
433
  envVariables: Record<string, string>;
@@ -444,7 +441,7 @@ export declare const RenderInternals: {
444
441
  cancelSignal: import("./make-cancel-signal").CancelSignal | null;
445
442
  indent: boolean;
446
443
  server: import("./prepare-server").RemotionServer | undefined;
447
- logLevel: "verbose" | "info" | "warn" | "error";
444
+ logLevel: "error" | "verbose" | "info" | "warn";
448
445
  serveUrl: string;
449
446
  port: number | null;
450
447
  offthreadVideoCacheSizeInBytes: number | null;
@@ -465,7 +462,7 @@ export declare const RenderInternals: {
465
462
  viewport: import("./browser/PuppeteerViewport").Viewport | null;
466
463
  indent: boolean;
467
464
  browser: "chrome";
468
- logLevel: "verbose" | "info" | "warn" | "error";
465
+ logLevel: "error" | "verbose" | "info" | "warn";
469
466
  }) => Promise<HeadlessBrowser>;
470
467
  internalSelectComposition: (options: {
471
468
  serializedInputPropsWithCustomSchema: string;
@@ -478,7 +475,7 @@ export declare const RenderInternals: {
478
475
  port: number | null;
479
476
  indent: boolean;
480
477
  server: import("./prepare-server").RemotionServer | undefined;
481
- logLevel: "verbose" | "info" | "warn" | "error";
478
+ logLevel: "error" | "verbose" | "info" | "warn";
482
479
  serveUrl: string;
483
480
  id: string;
484
481
  } & import("./options/option").ToOptions<readonly [{
@@ -503,7 +500,7 @@ export declare const RenderInternals: {
503
500
  port: number | null;
504
501
  server: import("./prepare-server").RemotionServer | undefined;
505
502
  indent: boolean;
506
- logLevel: "verbose" | "info" | "warn" | "error";
503
+ logLevel: "error" | "verbose" | "info" | "warn";
507
504
  serveUrlOrWebpackUrl: string;
508
505
  } & import("./options/option").ToOptions<readonly [{
509
506
  name: string;
@@ -519,12 +516,12 @@ export declare const RenderInternals: {
519
516
  slowestFrames: import("./render-media").SlowFrame[];
520
517
  }>;
521
518
  validOpenGlRenderers: readonly ["swangle", "angle", "egl", "swiftshader", "vulkan", "angle-egl"];
522
- copyImageToClipboard: (src: string, logLevel: "verbose" | "info" | "warn" | "error") => Promise<void>;
519
+ copyImageToClipboard: (src: string, logLevel: "error" | "verbose" | "info" | "warn") => Promise<void>;
523
520
  isIpV6Supported: (flattened: import("os").NetworkInterfaceInfo[]) => boolean;
524
521
  getChromiumGpuInformation: ({ browserExecutable, indent, logLevel, chromiumOptions, }: {
525
522
  browserExecutable: import("./browser-executable").BrowserExecutable;
526
523
  indent: boolean;
527
- logLevel: "verbose" | "info" | "warn" | "error";
524
+ logLevel: "error" | "verbose" | "info" | "warn";
528
525
  chromiumOptions: import("./open-browser").ChromiumOptions;
529
526
  }) => Promise<{
530
527
  feature: string;
@@ -7,6 +7,6 @@ export declare const colorSpaceOption: {
7
7
  description: () => JSX.Element;
8
8
  docLink: string;
9
9
  ssrName: string;
10
- type: "default" | "bt709";
10
+ type: "bt709" | "default";
11
11
  };
12
12
  export declare const validateColorSpace: (option: unknown) => void;
@@ -4,7 +4,7 @@ export declare const glOption: {
4
4
  cliFlag: string;
5
5
  docLink: string;
6
6
  name: string;
7
- type: "angle" | "swangle" | "egl" | "swiftshader" | "vulkan" | "angle-egl";
7
+ type: "swangle" | "angle" | "egl" | "swiftshader" | "vulkan" | "angle-egl";
8
8
  ssrName: string;
9
9
  description: () => JSX.Element;
10
10
  };
@@ -86,7 +86,7 @@ export declare const allOptions: {
86
86
  description: () => JSX.Element;
87
87
  docLink: string;
88
88
  ssrName: string;
89
- type: "default" | "bt709";
89
+ type: "bt709" | "default";
90
90
  };
91
91
  deleteAfterOption: {
92
92
  name: string;
@@ -116,7 +116,7 @@ export declare const allOptions: {
116
116
  cliFlag: string;
117
117
  docLink: string;
118
118
  name: string;
119
- type: "angle" | "swangle" | "egl" | "swiftshader" | "vulkan" | "angle-egl";
119
+ type: "swangle" | "angle" | "egl" | "swiftshader" | "vulkan" | "angle-egl";
120
120
  ssrName: string;
121
121
  description: () => JSX.Element;
122
122
  };
@@ -48,6 +48,7 @@ const serveStatic = async (path, options) => {
48
48
  const maxTries = 5;
49
49
  const portConfig = (0, port_config_1.getPortConfig)();
50
50
  for (let i = 0; i < maxTries; i++) {
51
+ let unlock = () => { };
51
52
  try {
52
53
  selectedPort = await new Promise((resolve, reject) => {
53
54
  var _a;
@@ -57,17 +58,22 @@ const serveStatic = async (path, options) => {
57
58
  to: 3100,
58
59
  hostsToTry: portConfig.hostsToTry,
59
60
  })
60
- .then(({ port, didUsePort }) => {
61
+ .then(({ port, unlockPort }) => {
62
+ unlock = unlockPort;
61
63
  server.listen({ port, host: portConfig.host });
62
64
  server.on('listening', () => {
63
65
  resolve(port);
64
- return didUsePort();
66
+ return unlock();
65
67
  });
66
68
  server.on('error', (err) => {
69
+ unlock();
67
70
  reject(err);
68
71
  });
69
72
  })
70
- .catch((err) => reject(err));
73
+ .catch((err) => {
74
+ unlock();
75
+ return reject(err);
76
+ });
71
77
  });
72
78
  const destroyConnections = function () {
73
79
  for (const key in connections)
@@ -1,5 +1,5 @@
1
1
  import type { AudioCodec } from './audio-codec';
2
- export declare const validateOutputFilename: <T extends "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif">({ codec, audioCodec, extension, preferLossless, }: {
2
+ export declare const validateOutputFilename: <T extends "h264" | "h265" | "vp8" | "vp9" | "prores" | "aac" | "mp3" | "wav" | "h264-mkv" | "gif">({ codec, audioCodec, extension, preferLossless, }: {
3
3
  codec: T;
4
4
  audioCodec: AudioCodec | null;
5
5
  extension: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@remotion/renderer",
3
- "version": "4.0.68",
3
+ "version": "4.0.70",
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.68"
21
+ "remotion": "4.0.70"
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-x64": "4.0.68",
44
- "@remotion/compositor-darwin-arm64": "4.0.68",
45
- "@remotion/compositor-linux-arm64-musl": "4.0.68",
46
- "@remotion/compositor-linux-arm64-gnu": "4.0.68",
47
- "@remotion/compositor-win32-x64-msvc": "4.0.68",
48
- "@remotion/compositor-linux-x64-gnu": "4.0.68",
49
- "@remotion/compositor-linux-x64-musl": "4.0.68"
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"
50
50
  },
51
51
  "keywords": [
52
52
  "remotion",