@remotion/renderer 4.0.50 → 4.0.51

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" | "prores" | "aac" | "mp3" | "wav" | "h264-mkv" | "gif">(codec: T, audioCodec: "opus" | "aac" | "mp3" | "pcm-16" | null) => import("./file-extensions").FileExtension;
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;
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" | "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" | undefined) => boolean;
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" | 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
- aac: {
29
+ mp3: {
30
30
  possible: import("./file-extensions").FileExtension[];
31
31
  default: import("./file-extensions").FileExtension;
32
32
  };
33
- mp3: {
33
+ aac: {
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
- opus: {
59
+ "pcm-16": {
60
60
  possible: import("./file-extensions").FileExtension[];
61
61
  default: import("./file-extensions").FileExtension;
62
62
  };
63
- "pcm-16": {
63
+ opus: {
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
- opus: {
72
+ "pcm-16": {
73
73
  possible: import("./file-extensions").FileExtension[];
74
74
  default: import("./file-extensions").FileExtension;
75
75
  };
76
- "pcm-16": {
76
+ opus: {
77
77
  possible: import("./file-extensions").FileExtension[];
78
78
  default: import("./file-extensions").FileExtension;
79
79
  };
80
80
  };
81
81
  };
82
- prores: {
82
+ mp3: {
83
83
  default: import("./file-extensions").FileExtension;
84
84
  forAudioCodec: {
85
- aac: {
85
+ mp3: {
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
- mp3: {
108
+ wav: {
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
- };
115
111
  "pcm-16": {
116
112
  possible: import("./file-extensions").FileExtension[];
117
113
  default: import("./file-extensions").FileExtension;
118
114
  };
119
115
  };
120
116
  };
121
- wav: {
117
+ prores: {
122
118
  default: import("./file-extensions").FileExtension;
123
119
  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: "aac" | "mp3" | "pcm-16" | null;
151
- lossless: "aac" | "mp3" | "pcm-16" | null;
150
+ compressed: "mp3" | "aac" | "pcm-16" | null;
151
+ lossless: "mp3" | "aac" | "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: "opus" | "pcm-16" | null;
159
- lossless: "opus" | "pcm-16" | null;
158
+ compressed: "pcm-16" | "opus" | null;
159
+ lossless: "pcm-16" | "opus" | null;
160
160
  };
161
161
  vp9: {
162
- compressed: "opus" | "pcm-16" | null;
163
- lossless: "opus" | "pcm-16" | null;
162
+ compressed: "pcm-16" | "opus" | null;
163
+ lossless: "pcm-16" | "opus" | null;
164
164
  };
165
- prores: {
166
- compressed: "aac" | "pcm-16" | null;
167
- lossless: "aac" | "pcm-16" | null;
165
+ mp3: {
166
+ compressed: "mp3" | "pcm-16" | null;
167
+ lossless: "mp3" | "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
- };
177
173
  wav: {
178
174
  compressed: "pcm-16" | null;
179
175
  lossless: "pcm-16" | null;
180
176
  };
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" | "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, }: {
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, }: {
192
192
  codec: T_1;
193
- audioCodec: "opus" | "aac" | "mp3" | "pcm-16" | null;
193
+ audioCodec: "mp3" | "aac" | "pcm-16" | "opus" | 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: "bt709" | "default";
284
+ type: "default" | "bt709";
285
285
  };
286
286
  deleteAfterOption: {
287
287
  name: string;
@@ -307,6 +307,14 @@ export declare const BrowserSafeApis: {
307
307
  docLink: string;
308
308
  type: boolean;
309
309
  };
310
+ glOption: {
311
+ cliFlag: string;
312
+ docLink: string;
313
+ name: string;
314
+ type: "angle" | "swangle" | "egl" | "swiftshader" | "vulkan" | "angle-egl";
315
+ ssrName: string;
316
+ description: () => JSX.Element;
317
+ };
310
318
  };
311
319
  validColorSpaces: readonly ["default", "bt709"];
312
320
  optionsMap: {
@@ -391,6 +399,6 @@ export declare const BrowserSafeApis: {
391
399
  type: number | null;
392
400
  }];
393
401
  };
394
- codecSupportsCrf: (codec: "h264" | "h265" | "vp8" | "vp9" | "prores" | "aac" | "mp3" | "wav" | "h264-mkv" | "gif") => boolean;
395
- codecSupportsVideoBitrate: (codec: "h264" | "h265" | "vp8" | "vp9" | "prores" | "aac" | "mp3" | "wav" | "h264-mkv" | "gif") => boolean;
402
+ codecSupportsCrf: (codec: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif") => boolean;
403
+ codecSupportsVideoBitrate: (codec: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif") => boolean;
396
404
  };
package/dist/client.js CHANGED
@@ -8,21 +8,9 @@ const crf_1 = require("./crf");
8
8
  const file_extensions_1 = require("./file-extensions");
9
9
  const get_extension_from_codec_1 = require("./get-extension-from-codec");
10
10
  const is_audio_codec_1 = require("./is-audio-codec");
11
- const audio_bitrate_1 = require("./options/audio-bitrate");
11
+ const options_1 = require("./options");
12
12
  const color_space_1 = require("./options/color-space");
13
- const crf_2 = require("./options/crf");
14
- const delete_after_1 = require("./options/delete-after");
15
- const enable_multiprocess_on_linux_1 = require("./options/enable-multiprocess-on-linux");
16
- const enforce_audio_1 = require("./options/enforce-audio");
17
- const folder_expiry_1 = require("./options/folder-expiry");
18
- const jpeg_quality_1 = require("./options/jpeg-quality");
19
- const mute_1 = require("./options/mute");
20
- const offthreadvideo_cache_size_1 = require("./options/offthreadvideo-cache-size");
21
13
  const options_map_1 = require("./options/options-map");
22
- const scale_1 = require("./options/scale");
23
- const video_bitrate_1 = require("./options/video-bitrate");
24
- const video_codec_1 = require("./options/video-codec");
25
- const webhook_custom_data_1 = require("./options/webhook-custom-data");
26
14
  const pixel_format_1 = require("./pixel-format");
27
15
  const prores_profile_1 = require("./prores-profile");
28
16
  const validate_output_filename_1 = require("./validate-output-filename");
@@ -43,22 +31,7 @@ exports.BrowserSafeApis = {
43
31
  defaultAudioCodecs: audio_codec_1.defaultAudioCodecs,
44
32
  defaultCodecsForFileExtension: get_extension_from_codec_1.defaultCodecsForFileExtension,
45
33
  validateOutputFilename: validate_output_filename_1.validateOutputFilename,
46
- options: {
47
- scaleOption: scale_1.scaleOption,
48
- crfOption: crf_2.crfOption,
49
- jpegQualityOption: jpeg_quality_1.jpegQualityOption,
50
- videoBitrate: video_bitrate_1.videoBitrate,
51
- audioBitrateOption: audio_bitrate_1.audioBitrateOption,
52
- enforceAudioOption: enforce_audio_1.enforceAudioOption,
53
- muteOption: mute_1.muteOption,
54
- videoCodecOption: video_codec_1.videoCodecOption,
55
- offthreadVideoCacheSizeInBytesOption: offthreadvideo_cache_size_1.offthreadVideoCacheSizeInBytesOption,
56
- webhookCustomDataOption: webhook_custom_data_1.webhookCustomDataOption,
57
- colorSpaceOption: color_space_1.colorSpaceOption,
58
- deleteAfterOption: delete_after_1.deleteAfterOption,
59
- folderExpiryOption: folder_expiry_1.folderExpiryOption,
60
- enableMultiprocessOnLinuxOption: enable_multiprocess_on_linux_1.enableMultiprocessOnLinuxOption,
61
- },
34
+ options: options_1.allOptions,
62
35
  validColorSpaces: color_space_1.validColorSpaces,
63
36
  optionsMap: options_map_1.optionsMap,
64
37
  codecSupportsCrf: codec_supports_media_1.codecSupportsCrf,
@@ -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" | "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")[]>;
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")[]>;
6
6
  export declare const defaultCodecsForFileExtension: Record<FileExtension, Codec>;
@@ -3,6 +3,6 @@ import type { LogLevel } from './log-level';
3
3
  export declare const getSilentParts: ({ src, noiseThresholdInDecibels: passedNoiseThresholdInDecibels, minDurationInSeconds: passedMinDuration, logLevel, }: {
4
4
  src: string;
5
5
  minDurationInSeconds?: number | undefined;
6
- logLevel?: "verbose" | "info" | "warn" | "error" | undefined;
6
+ logLevel?: "error" | "verbose" | "info" | "warn" | undefined;
7
7
  noiseThresholdInDecibels?: number | undefined;
8
8
  }) => Promise<GetSilentPartsResponse>;
package/dist/index.d.ts CHANGED
@@ -1,3 +1,5 @@
1
+ /// <reference types="node" />
2
+ /// <reference types="react" />
1
3
  import execa from 'execa';
2
4
  import { HeadlessBrowser } from './browser/Browser';
3
5
  import { SymbolicateableError } from './error-handling/symbolicateable-error';
@@ -25,6 +27,7 @@ export { CancelSignal, makeCancelSignal } from './make-cancel-signal';
25
27
  export { openBrowser } from './open-browser';
26
28
  export type { ChromiumOptions } from './open-browser';
27
29
  export { ColorSpace } from './options/color-space';
30
+ export { OpenGlRenderer } from './options/gl';
28
31
  export { AnyRemotionOption, RemotionOption, ToOptions } from './options/option';
29
32
  export { PixelFormat } from './pixel-format';
30
33
  export { RemotionServer } from './prepare-server';
@@ -36,7 +39,6 @@ export { selectComposition, SelectCompositionOptions, } from './select-compositi
36
39
  export { stitchFramesToVideo, StitchFramesToVideoOptions, } from './stitch-frames-to-video';
37
40
  export { SymbolicatedStackFrame } from './symbolicate-stacktrace';
38
41
  export { OnStartData, RenderFramesOutput } from './types';
39
- export { OpenGlRenderer } from './validate-opengl-renderer';
40
42
  export { validateOutputFilename } from './validate-output-filename';
41
43
  export { X264Preset } from './x264-preset';
42
44
  export declare const RenderInternals: {
@@ -47,7 +49,7 @@ export declare const RenderInternals: {
47
49
  downloadMap: import("./assets/download-map").DownloadMap;
48
50
  remotionRoot: string;
49
51
  concurrency: number;
50
- logLevel: "verbose" | "info" | "warn" | "error";
52
+ logLevel: "error" | "verbose" | "info" | "warn";
51
53
  indent: boolean;
52
54
  offthreadVideoCacheSizeInBytes: number | null;
53
55
  }) => Promise<{
@@ -128,8 +130,8 @@ export declare const RenderInternals: {
128
130
  validPixelFormats: readonly ["yuv420p", "yuva420p", "yuv422p", "yuv444p", "yuv420p10le", "yuv422p10le", "yuv444p10le", "yuva444p10le"];
129
131
  DEFAULT_BROWSER: "chrome";
130
132
  validateFrameRange: (frameRange: import("./frame-range").FrameRange | null) => void;
131
- DEFAULT_OPENGL_RENDERER: "swangle" | "angle" | "egl" | "swiftshader" | "vulkan" | null;
132
- validateOpenGlRenderer: (option: "swangle" | "angle" | "egl" | "swiftshader" | "vulkan" | null) => "swangle" | "angle" | "egl" | "swiftshader" | "vulkan" | null;
133
+ DEFAULT_OPENGL_RENDERER: "angle" | "swangle" | "egl" | "swiftshader" | "vulkan" | "angle-egl" | null;
134
+ validateOpenGlRenderer: (option: "angle" | "swangle" | "egl" | "swiftshader" | "vulkan" | "angle-egl" | null) => "angle" | "swangle" | "egl" | "swiftshader" | "vulkan" | "angle-egl" | null;
133
135
  validCodecs: readonly ["h264", "h265", "vp8", "vp9", "mp3", "aac", "wav", "prores", "h264-mkv", "gif"];
134
136
  DEFAULT_PIXEL_FORMAT: "yuv420p" | "yuva420p" | "yuv422p" | "yuv444p" | "yuv420p10le" | "yuv422p10le" | "yuv444p10le" | "yuva444p10le";
135
137
  validateJpegQuality: (q: number | undefined) => void;
@@ -137,7 +139,7 @@ export declare const RenderInternals: {
137
139
  DEFAULT_CODEC: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif";
138
140
  isAudioCodec: (codec: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif" | undefined) => boolean;
139
141
  logLevels: readonly ["verbose", "info", "warn", "error"];
140
- isEqualOrBelowLogLevel: (currentLevel: "verbose" | "info" | "warn" | "error", level: "verbose" | "info" | "warn" | "error") => boolean;
142
+ isEqualOrBelowLogLevel: (currentLevel: "error" | "verbose" | "info" | "warn", level: "error" | "verbose" | "info" | "warn") => boolean;
141
143
  isValidLogLevel: (level: string) => boolean;
142
144
  perf: typeof perf;
143
145
  convertToPositiveFrameIndex: ({ frame, durationInFrames, }: {
@@ -318,8 +320,8 @@ export declare const RenderInternals: {
318
320
  };
319
321
  validStillImageFormats: readonly ["png", "jpeg", "pdf", "webp"];
320
322
  validVideoImageFormats: readonly ["png", "jpeg", "none"];
321
- DEFAULT_STILL_IMAGE_FORMAT: "png" | "jpeg" | "pdf" | "webp";
322
- DEFAULT_VIDEO_IMAGE_FORMAT: "png" | "jpeg" | "none";
323
+ DEFAULT_STILL_IMAGE_FORMAT: "jpeg" | "png" | "webp" | "pdf";
324
+ DEFAULT_VIDEO_IMAGE_FORMAT: "jpeg" | "png" | "none";
323
325
  DEFAULT_JPEG_QUALITY: number;
324
326
  chalk: {
325
327
  enabled: () => boolean;
@@ -375,30 +377,30 @@ export declare const RenderInternals: {
375
377
  verbose: (message?: any, ...optionalParams: any[]) => void;
376
378
  verboseAdvanced: (options: {
377
379
  indent: boolean;
378
- logLevel: "verbose" | "info" | "warn" | "error";
380
+ logLevel: "error" | "verbose" | "info" | "warn";
379
381
  } & {
380
382
  tag?: string | undefined;
381
383
  }, message?: any, ...optionalParams: any[]) => void;
382
384
  info: (message?: any, ...optionalParams: any[]) => void;
383
385
  infoAdvanced: (options: {
384
386
  indent: boolean;
385
- logLevel: "verbose" | "info" | "warn" | "error";
387
+ logLevel: "error" | "verbose" | "info" | "warn";
386
388
  }, message?: any, ...optionalParams: any[]) => void;
387
389
  warn: (message?: any, ...optionalParams: any[]) => void;
388
390
  warnAdvanced: (options: {
389
391
  indent: boolean;
390
- logLevel: "verbose" | "info" | "warn" | "error";
392
+ logLevel: "error" | "verbose" | "info" | "warn";
391
393
  }, message?: any, ...optionalParams: any[]) => void;
392
394
  error: (message?: any, ...optionalParams: any[]) => void;
393
395
  errorAdvanced: (options: {
394
396
  indent: boolean;
395
- logLevel: "verbose" | "info" | "warn" | "error";
397
+ logLevel: "error" | "verbose" | "info" | "warn";
396
398
  } & {
397
399
  tag?: string | undefined;
398
400
  }, message?: any, ...optionalParams: any[]) => void;
399
401
  };
400
- getLogLevel: () => "verbose" | "info" | "warn" | "error";
401
- setLogLevel: (newLogLevel: "verbose" | "info" | "warn" | "error") => void;
402
+ getLogLevel: () => "error" | "verbose" | "info" | "warn";
403
+ setLogLevel: (newLogLevel: "error" | "verbose" | "info" | "warn") => void;
402
404
  INDENT_TOKEN: string;
403
405
  isColorSupported: () => boolean;
404
406
  HeadlessBrowser: typeof HeadlessBrowser;
@@ -407,7 +409,7 @@ export declare const RenderInternals: {
407
409
  port: number | null;
408
410
  remotionRoot: string;
409
411
  concurrency: number;
410
- logLevel: "verbose" | "info" | "warn" | "error";
412
+ logLevel: "error" | "verbose" | "info" | "warn";
411
413
  indent: boolean;
412
414
  offthreadVideoCacheSizeInBytes: number | null;
413
415
  }) => Promise<import("./prepare-server").RemotionServer>;
@@ -416,7 +418,7 @@ export declare const RenderInternals: {
416
418
  port: number | null;
417
419
  remotionRoot: string;
418
420
  concurrency: number;
419
- logLevel: "verbose" | "info" | "warn" | "error";
421
+ logLevel: "error" | "verbose" | "info" | "warn";
420
422
  indent: boolean;
421
423
  offthreadVideoCacheSizeInBytes: number | null;
422
424
  }, { onDownload, onError, }: {
@@ -432,7 +434,7 @@ export declare const RenderInternals: {
432
434
  frame: number;
433
435
  serializedInputPropsWithCustomSchema: string;
434
436
  serializedResolvedPropsWithCustomSchema: string;
435
- imageFormat: "png" | "jpeg" | "pdf" | "webp";
437
+ imageFormat: "jpeg" | "png" | "webp" | "pdf";
436
438
  jpegQuality: number;
437
439
  puppeteerInstance: HeadlessBrowser | null;
438
440
  envVariables: Record<string, string>;
@@ -446,7 +448,7 @@ export declare const RenderInternals: {
446
448
  cancelSignal: import("./make-cancel-signal").CancelSignal | null;
447
449
  indent: boolean;
448
450
  server: import("./prepare-server").RemotionServer | undefined;
449
- logLevel: "verbose" | "info" | "warn" | "error";
451
+ logLevel: "error" | "verbose" | "info" | "warn";
450
452
  serveUrl: string;
451
453
  port: number | null;
452
454
  offthreadVideoCacheSizeInBytes: number | null;
@@ -467,7 +469,7 @@ export declare const RenderInternals: {
467
469
  viewport: import("./browser/PuppeteerViewport").Viewport | null;
468
470
  indent: boolean;
469
471
  browser: "chrome";
470
- logLevel: "verbose" | "info" | "warn" | "error";
472
+ logLevel: "error" | "verbose" | "info" | "warn";
471
473
  }) => Promise<HeadlessBrowser>;
472
474
  internalSelectComposition: (options: {
473
475
  serializedInputPropsWithCustomSchema: string;
@@ -480,7 +482,7 @@ export declare const RenderInternals: {
480
482
  port: number | null;
481
483
  indent: boolean;
482
484
  server: import("./prepare-server").RemotionServer | undefined;
483
- logLevel: "verbose" | "info" | "warn" | "error";
485
+ logLevel: "error" | "verbose" | "info" | "warn";
484
486
  serveUrl: string;
485
487
  id: string;
486
488
  } & import("./options/option").ToOptions<readonly [{
@@ -505,7 +507,7 @@ export declare const RenderInternals: {
505
507
  port: number | null;
506
508
  server: import("./prepare-server").RemotionServer | undefined;
507
509
  indent: boolean;
508
- logLevel: "verbose" | "info" | "warn" | "error";
510
+ logLevel: "error" | "verbose" | "info" | "warn";
509
511
  serveUrlOrWebpackUrl: string;
510
512
  } & import("./options/option").ToOptions<readonly [{
511
513
  name: string;
@@ -520,7 +522,7 @@ export declare const RenderInternals: {
520
522
  buffer: Buffer | null;
521
523
  slowestFrames: import("./render-media").SlowFrame[];
522
524
  }>;
523
- validOpenGlRenderers: readonly ["swangle", "angle", "egl", "swiftshader", "vulkan"];
524
- copyImageToClipboard: (src: string, logLevel: "verbose" | "info" | "warn" | "error") => Promise<void>;
525
+ validOpenGlRenderers: readonly ["swangle", "angle", "egl", "swiftshader", "vulkan", "angle-egl"];
526
+ copyImageToClipboard: (src: string, logLevel: "error" | "verbose" | "info" | "warn") => Promise<void>;
525
527
  isIpV6Supported: () => boolean;
526
528
  };
package/dist/index.js CHANGED
@@ -67,6 +67,7 @@ const log_level_1 = require("./log-level");
67
67
  const logger_1 = require("./logger");
68
68
  const mime_types_1 = require("./mime-types");
69
69
  const open_browser_1 = require("./open-browser");
70
+ const gl_1 = require("./options/gl");
70
71
  const parse_browser_error_stack_1 = require("./parse-browser-error-stack");
71
72
  const perf = __importStar(require("./perf"));
72
73
  const pixel_format_1 = require("./pixel-format");
@@ -80,10 +81,6 @@ const serve_static_1 = require("./serve-static");
80
81
  const tmp_dir_1 = require("./tmp-dir");
81
82
  const validate_concurrency_1 = require("./validate-concurrency");
82
83
  const validate_even_dimensions_with_codec_1 = require("./validate-even-dimensions-with-codec");
83
- const validate_opengl_renderer_1 = require("./validate-opengl-renderer");
84
- const validate_puppeteer_timeout_1 = require("./validate-puppeteer-timeout");
85
- const validate_videobitrate_1 = require("./validate-videobitrate");
86
- const wait_for_symbolication_error_to_be_done_1 = require("./wait-for-symbolication-error-to-be-done");
87
84
  var handle_javascript_exception_1 = require("./error-handling/handle-javascript-exception");
88
85
  Object.defineProperty(exports, "ErrorWithStackFrame", { enumerable: true, get: function () { return handle_javascript_exception_1.ErrorWithStackFrame; } });
89
86
  var extract_audio_1 = require("./extract-audio");
@@ -112,6 +109,9 @@ var stitch_frames_to_video_1 = require("./stitch-frames-to-video");
112
109
  Object.defineProperty(exports, "stitchFramesToVideo", { enumerable: true, get: function () { return stitch_frames_to_video_1.stitchFramesToVideo; } });
113
110
  var validate_output_filename_1 = require("./validate-output-filename");
114
111
  Object.defineProperty(exports, "validateOutputFilename", { enumerable: true, get: function () { return validate_output_filename_1.validateOutputFilename; } });
112
+ const validate_puppeteer_timeout_1 = require("./validate-puppeteer-timeout");
113
+ const validate_videobitrate_1 = require("./validate-videobitrate");
114
+ const wait_for_symbolication_error_to_be_done_1 = require("./wait-for-symbolication-error-to-be-done");
115
115
  exports.RenderInternals = {
116
116
  ensureLocalBrowser: get_local_browser_executable_1.ensureLocalBrowser,
117
117
  getActualConcurrency: get_concurrency_1.getActualConcurrency,
@@ -143,8 +143,8 @@ exports.RenderInternals = {
143
143
  validPixelFormats: pixel_format_1.validPixelFormats,
144
144
  DEFAULT_BROWSER: browser_1.DEFAULT_BROWSER,
145
145
  validateFrameRange: frame_range_1.validateFrameRange,
146
- DEFAULT_OPENGL_RENDERER: validate_opengl_renderer_1.DEFAULT_OPENGL_RENDERER,
147
- validateOpenGlRenderer: validate_opengl_renderer_1.validateOpenGlRenderer,
146
+ DEFAULT_OPENGL_RENDERER: gl_1.DEFAULT_OPENGL_RENDERER,
147
+ validateOpenGlRenderer: gl_1.validateOpenGlRenderer,
148
148
  validCodecs: codec_1.validCodecs,
149
149
  DEFAULT_PIXEL_FORMAT: pixel_format_1.DEFAULT_PIXEL_FORMAT,
150
150
  validateJpegQuality: jpeg_quality_1.validateJpegQuality,
@@ -190,7 +190,7 @@ exports.RenderInternals = {
190
190
  internalGetCompositions: get_compositions_1.internalGetCompositions,
191
191
  internalRenderFrames: render_frames_1.internalRenderFrames,
192
192
  internalRenderMedia: render_media_1.internalRenderMedia,
193
- validOpenGlRenderers: validate_opengl_renderer_1.validOpenGlRenderers,
193
+ validOpenGlRenderers: gl_1.validOpenGlRenderers,
194
194
  copyImageToClipboard: copy_to_clipboard_1.copyImageToClipboard,
195
195
  isIpV6Supported: is_ipv6_supported_1.isIpV6Supported,
196
196
  };
package/dist/logger.d.ts CHANGED
@@ -19,6 +19,6 @@ export declare const Log: {
19
19
  error: (message?: any, ...optionalParams: any[]) => void;
20
20
  errorAdvanced: (options: VerboseLogOptions, message?: any, ...optionalParams: any[]) => void;
21
21
  };
22
- export declare const getLogLevel: () => "verbose" | "info" | "warn" | "error";
22
+ export declare const getLogLevel: () => "error" | "verbose" | "info" | "warn";
23
23
  export declare const setLogLevel: (newLogLevel: LogLevel) => void;
24
24
  export {};
@@ -2,8 +2,8 @@ import type { Browser } from './browser';
2
2
  import type { HeadlessBrowser } from './browser/Browser';
3
3
  import type { Viewport } from './browser/PuppeteerViewport';
4
4
  import { type LogLevel } from './log-level';
5
- declare const validRenderers: readonly ["swangle", "angle", "egl", "swiftshader", "vulkan"];
6
- type OpenGlRenderer = (typeof validRenderers)[number];
5
+ import type { validOpenGlRenderers } from './options/gl';
6
+ type OpenGlRenderer = (typeof validOpenGlRenderers)[number];
7
7
  export type ChromiumOptions = {
8
8
  ignoreCertificateErrors?: boolean;
9
9
  disableWebSecurity?: boolean;
@@ -5,20 +5,16 @@ const node_1 = require("./browser/node");
5
5
  const get_local_browser_executable_1 = require("./get-local-browser-executable");
6
6
  const get_video_threads_flag_1 = require("./get-video-threads-flag");
7
7
  const log_level_1 = require("./log-level");
8
- const validate_opengl_renderer_1 = require("./validate-opengl-renderer");
9
- const validRenderers = [
10
- 'swangle',
11
- 'angle',
12
- 'egl',
13
- 'swiftshader',
14
- 'vulkan',
15
- ];
8
+ const gl_1 = require("./options/gl");
16
9
  const getOpenGlRenderer = (option) => {
17
- const renderer = option !== null && option !== void 0 ? option : validate_opengl_renderer_1.DEFAULT_OPENGL_RENDERER;
18
- (0, validate_opengl_renderer_1.validateOpenGlRenderer)(renderer);
10
+ const renderer = option !== null && option !== void 0 ? option : gl_1.DEFAULT_OPENGL_RENDERER;
11
+ (0, gl_1.validateOpenGlRenderer)(renderer);
19
12
  if (renderer === 'swangle') {
20
13
  return [`--use-gl=angle`, `--use-angle=swiftshader`];
21
14
  }
15
+ if (renderer === 'angle-egl') {
16
+ return [`--use-gl=angle`, `--use-angle=egl`];
17
+ }
22
18
  if (renderer === 'vulkan') {
23
19
  return [
24
20
  '--use-angle=vulkan',
@@ -7,6 +7,6 @@ export declare const colorSpaceOption: {
7
7
  description: () => JSX.Element;
8
8
  docLink: string;
9
9
  ssrName: string;
10
- type: "bt709" | "default";
10
+ type: "default" | "bt709";
11
11
  };
12
12
  export declare const validateColorSpace: (option: unknown) => void;
@@ -0,0 +1,13 @@
1
+ /// <reference types="react" />
2
+ export declare const validOpenGlRenderers: readonly ["swangle", "angle", "egl", "swiftshader", "vulkan", "angle-egl"];
3
+ export declare const glOption: {
4
+ cliFlag: string;
5
+ docLink: string;
6
+ name: string;
7
+ type: "angle" | "swangle" | "egl" | "swiftshader" | "vulkan" | "angle-egl";
8
+ ssrName: string;
9
+ description: () => JSX.Element;
10
+ };
11
+ export type OpenGlRenderer = (typeof validOpenGlRenderers)[number];
12
+ export declare const DEFAULT_OPENGL_RENDERER: OpenGlRenderer | null;
13
+ export declare const validateOpenGlRenderer: (option: OpenGlRenderer | null) => OpenGlRenderer | null;
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.validateOpenGlRenderer = exports.DEFAULT_OPENGL_RENDERER = exports.glOption = exports.validOpenGlRenderers = void 0;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ exports.validOpenGlRenderers = [
6
+ 'swangle',
7
+ 'angle',
8
+ 'egl',
9
+ 'swiftshader',
10
+ 'vulkan',
11
+ 'angle-egl',
12
+ ];
13
+ const AngleChangelog = () => {
14
+ return ((0, jsx_runtime_1.jsxs)("details", { style: { fontSize: '0.9em', marginBottom: '1em' }, children: [(0, jsx_runtime_1.jsx)("summary", { children: "Changelog" }), (0, jsx_runtime_1.jsxs)("ul", { children: [(0, jsx_runtime_1.jsxs)("li", { children: ["From Remotion v2.6.7 until v3.0.7, the default for Remotion Lambda was", ' ', (0, jsx_runtime_1.jsx)("code", { children: "swiftshader" }), ", but from v3.0.8 the default is", ' ', (0, jsx_runtime_1.jsx)("code", { children: "swangle" }), " (Swiftshader on Angle) since Chrome 101 added support for it."] }), (0, jsx_runtime_1.jsxs)("li", { children: ["From Remotion v2.4.3 until v2.6.6, the default was ", (0, jsx_runtime_1.jsx)("code", { children: "angle" }), ", however it turns out to have a small memory leak that could crash long Remotion renders."] })] })] }));
15
+ };
16
+ exports.glOption = {
17
+ cliFlag: 'gl',
18
+ docLink: 'https://www.remotion.dev/docs/chromium-flags#--gl',
19
+ name: 'OpenGL renderer',
20
+ type: 'angle',
21
+ ssrName: 'gl',
22
+ description: () => {
23
+ return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(AngleChangelog, {}), (0, jsx_runtime_1.jsxs)("p", { children: ["Select the OpenGL renderer backend for Chromium. ", (0, jsx_runtime_1.jsx)("br", {}), "Accepted values:"] }), (0, jsx_runtime_1.jsxs)("ul", { children: [(0, jsx_runtime_1.jsx)("li", { children: (0, jsx_runtime_1.jsx)("code", { children: '"angle"' }) }), (0, jsx_runtime_1.jsx)("li", { children: (0, jsx_runtime_1.jsx)("code", { children: '"egl"' }) }), (0, jsx_runtime_1.jsx)("li", { children: (0, jsx_runtime_1.jsx)("code", { children: '"swiftshader"' }) }), (0, jsx_runtime_1.jsx)("li", { children: (0, jsx_runtime_1.jsx)("code", { children: '"swangle"' }) }), (0, jsx_runtime_1.jsxs)("li", { children: [(0, jsx_runtime_1.jsx)("code", { children: '"vulkan"' }), " (", (0, jsx_runtime_1.jsx)("em", { children: "from Remotion v4.0.41" }), ")"] }), (0, jsx_runtime_1.jsxs)("li", { children: [(0, jsx_runtime_1.jsx)("code", { children: '"angle-egl"' }), " (", (0, jsx_runtime_1.jsx)("em", { children: "from Remotion v4.0.51" }), ")"] })] }), (0, jsx_runtime_1.jsxs)("p", { children: ["The default is ", (0, jsx_runtime_1.jsx)("code", { children: "null" }), ", letting Chrome decide, except on Lambda where the default is ", (0, jsx_runtime_1.jsx)("code", { children: '"swangle"' })] })] }));
24
+ },
25
+ };
26
+ exports.DEFAULT_OPENGL_RENDERER = null;
27
+ const validateOpenGlRenderer = (option) => {
28
+ if (option === null) {
29
+ return null;
30
+ }
31
+ if (!exports.validOpenGlRenderers.includes(option)) {
32
+ throw new TypeError(`${option} is not a valid GL backend. Accepted values: ${exports.validOpenGlRenderers.join(', ')}`);
33
+ }
34
+ return option;
35
+ };
36
+ exports.validateOpenGlRenderer = validateOpenGlRenderer;
@@ -0,0 +1,123 @@
1
+ /// <reference types="react" />
2
+ export declare const allOptions: {
3
+ scaleOption: {
4
+ name: string;
5
+ cliFlag: string;
6
+ description: () => JSX.Element;
7
+ ssrName: string;
8
+ docLink: string;
9
+ type: number;
10
+ };
11
+ crfOption: {
12
+ name: string;
13
+ cliFlag: string;
14
+ description: () => JSX.Element;
15
+ ssrName: string;
16
+ docLink: string;
17
+ type: number;
18
+ };
19
+ jpegQualityOption: {
20
+ name: string;
21
+ cliFlag: string;
22
+ description: () => JSX.Element;
23
+ ssrName: string;
24
+ docLink: string;
25
+ type: number;
26
+ };
27
+ videoBitrate: {
28
+ name: string;
29
+ cliFlag: string;
30
+ description: () => JSX.Element;
31
+ ssrName: string;
32
+ docLink: string;
33
+ type: string;
34
+ };
35
+ audioBitrateOption: {
36
+ name: string;
37
+ cliFlag: string;
38
+ description: () => JSX.Element;
39
+ ssrName: string;
40
+ docLink: string;
41
+ type: string;
42
+ };
43
+ enforceAudioOption: {
44
+ name: string;
45
+ cliFlag: string;
46
+ description: () => JSX.Element;
47
+ ssrName: string;
48
+ docLink: string;
49
+ type: boolean;
50
+ };
51
+ muteOption: {
52
+ name: string;
53
+ cliFlag: string;
54
+ description: () => JSX.Element;
55
+ ssrName: string;
56
+ docLink: string;
57
+ type: boolean;
58
+ };
59
+ videoCodecOption: {
60
+ name: string;
61
+ cliFlag: string;
62
+ description: () => JSX.Element;
63
+ ssrName: string;
64
+ docLink: string;
65
+ type: string;
66
+ };
67
+ offthreadVideoCacheSizeInBytesOption: {
68
+ name: string;
69
+ cliFlag: "offthreadvideo-cache-size-in-bytes";
70
+ description: () => JSX.Element;
71
+ ssrName: "offthreadVideoCacheSizeInBytes";
72
+ docLink: string;
73
+ type: number | null;
74
+ };
75
+ webhookCustomDataOption: {
76
+ name: string;
77
+ cliFlag: "webhook-custom-data";
78
+ description: (type: "ssr" | "cli") => JSX.Element;
79
+ ssrName: "customData";
80
+ docLink: string;
81
+ type: Record<string, unknown> | null;
82
+ };
83
+ colorSpaceOption: {
84
+ name: string;
85
+ cliFlag: "color-space";
86
+ description: () => JSX.Element;
87
+ docLink: string;
88
+ ssrName: string;
89
+ type: "default" | "bt709";
90
+ };
91
+ deleteAfterOption: {
92
+ name: string;
93
+ cliFlag: "delete-after";
94
+ description: () => JSX.Element;
95
+ ssrName: "deleteAfter";
96
+ docLink: string;
97
+ type: string | null;
98
+ };
99
+ folderExpiryOption: {
100
+ name: string;
101
+ cliFlag: "enable-folder-expiry";
102
+ description: () => JSX.Element;
103
+ ssrName: "enableFolderExpiry";
104
+ docLink: string;
105
+ type: boolean | null;
106
+ };
107
+ enableMultiprocessOnLinuxOption: {
108
+ name: string;
109
+ cliFlag: "enable-multiprocess-on-linux";
110
+ description: () => JSX.Element;
111
+ ssrName: string;
112
+ docLink: string;
113
+ type: boolean;
114
+ };
115
+ glOption: {
116
+ cliFlag: string;
117
+ docLink: string;
118
+ name: string;
119
+ type: "angle" | "swangle" | "egl" | "swiftshader" | "vulkan" | "angle-egl";
120
+ ssrName: string;
121
+ description: () => JSX.Element;
122
+ };
123
+ };
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.allOptions = void 0;
4
+ const audio_bitrate_1 = require("./audio-bitrate");
5
+ const color_space_1 = require("./color-space");
6
+ const crf_1 = require("./crf");
7
+ const delete_after_1 = require("./delete-after");
8
+ const enable_multiprocess_on_linux_1 = require("./enable-multiprocess-on-linux");
9
+ const enforce_audio_1 = require("./enforce-audio");
10
+ const folder_expiry_1 = require("./folder-expiry");
11
+ const gl_1 = require("./gl");
12
+ const jpeg_quality_1 = require("./jpeg-quality");
13
+ const mute_1 = require("./mute");
14
+ const offthreadvideo_cache_size_1 = require("./offthreadvideo-cache-size");
15
+ const scale_1 = require("./scale");
16
+ const video_bitrate_1 = require("./video-bitrate");
17
+ const video_codec_1 = require("./video-codec");
18
+ const webhook_custom_data_1 = require("./webhook-custom-data");
19
+ exports.allOptions = {
20
+ scaleOption: scale_1.scaleOption,
21
+ crfOption: crf_1.crfOption,
22
+ jpegQualityOption: jpeg_quality_1.jpegQualityOption,
23
+ videoBitrate: video_bitrate_1.videoBitrate,
24
+ audioBitrateOption: audio_bitrate_1.audioBitrateOption,
25
+ enforceAudioOption: enforce_audio_1.enforceAudioOption,
26
+ muteOption: mute_1.muteOption,
27
+ videoCodecOption: video_codec_1.videoCodecOption,
28
+ offthreadVideoCacheSizeInBytesOption: offthreadvideo_cache_size_1.offthreadVideoCacheSizeInBytesOption,
29
+ webhookCustomDataOption: webhook_custom_data_1.webhookCustomDataOption,
30
+ colorSpaceOption: color_space_1.colorSpaceOption,
31
+ deleteAfterOption: delete_after_1.deleteAfterOption,
32
+ folderExpiryOption: folder_expiry_1.folderExpiryOption,
33
+ enableMultiprocessOnLinuxOption: enable_multiprocess_on_linux_1.enableMultiprocessOnLinuxOption,
34
+ glOption: gl_1.glOption,
35
+ };
@@ -78,10 +78,14 @@ const serveStatic = async (path, options) => {
78
78
  };
79
79
  const close = async () => {
80
80
  await Promise.all([
81
- new Promise((resolve) => {
81
+ new Promise((resolve, reject) => {
82
82
  // compositor may have already quit before,
83
83
  // this is okay as we are in cleanup phase
84
- closeCompositor().finally(() => {
84
+ closeCompositor()
85
+ .catch((err) => {
86
+ reject(err);
87
+ })
88
+ .finally(() => {
85
89
  resolve();
86
90
  });
87
91
  }),
@@ -1,5 +1,5 @@
1
1
  import type { AudioCodec } from './audio-codec';
2
- export declare const validateOutputFilename: <T extends "h264" | "h265" | "vp8" | "vp9" | "prores" | "aac" | "mp3" | "wav" | "h264-mkv" | "gif">({ codec, audioCodec, extension, preferLossless, }: {
2
+ export declare const validateOutputFilename: <T extends "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "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.50",
3
+ "version": "4.0.51",
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.50"
21
+ "remotion": "4.0.51"
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.50",
44
- "@remotion/compositor-darwin-x64": "4.0.50",
45
- "@remotion/compositor-linux-x64-gnu": "4.0.50",
46
- "@remotion/compositor-linux-arm64-musl": "4.0.50",
47
- "@remotion/compositor-linux-arm64-gnu": "4.0.50",
48
- "@remotion/compositor-linux-x64-musl": "4.0.50",
49
- "@remotion/compositor-win32-x64-msvc": "4.0.50"
43
+ "@remotion/compositor-darwin-arm64": "4.0.51",
44
+ "@remotion/compositor-darwin-x64": "4.0.51",
45
+ "@remotion/compositor-linux-arm64-gnu": "4.0.51",
46
+ "@remotion/compositor-linux-x64-gnu": "4.0.51",
47
+ "@remotion/compositor-linux-x64-musl": "4.0.51",
48
+ "@remotion/compositor-linux-arm64-musl": "4.0.51",
49
+ "@remotion/compositor-win32-x64-msvc": "4.0.51"
50
50
  },
51
51
  "keywords": [
52
52
  "remotion",
@@ -1,8 +0,0 @@
1
- export declare const deleteAfterOption: {
2
- name: string;
3
- cliFlag: "delete-after";
4
- description: () => JSX.Element;
5
- ssrName: "deleteAfter";
6
- docLink: string;
7
- type: number | null;
8
- };
@@ -1,14 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.deleteAfterOption = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- exports.deleteAfterOption = {
6
- name: 'Render expiry days',
7
- cliFlag: 'delete-after',
8
- description: () => {
9
- return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: ["Automatically delete the render after a certain period. Accepted values are ", (0, jsx_runtime_1.jsx)("code", { children: "1-day" }), ", ", (0, jsx_runtime_1.jsx)("code", { children: "3-days" }), ", ", (0, jsx_runtime_1.jsx)("code", { children: "7-days" }), " and", ' ', (0, jsx_runtime_1.jsx)("code", { children: "30-days" }), ".", (0, jsx_runtime_1.jsx)("br", {}), " For this to work, your bucket needs to have", ' ', (0, jsx_runtime_1.jsx)("a", { href: "/docs/lambda/autodelete", children: "lifecycles enabled" }), "."] }));
10
- },
11
- ssrName: 'deleteAfter',
12
- docLink: 'https://www.remotion.dev/docs/autodelete',
13
- type: 0,
14
- };
@@ -1,7 +0,0 @@
1
- import type { Codec } from './codec';
2
- export declare const x264PresetOptions: readonly ["ultrafast", "superfast", "veryfast", "faster", "fast", "medium", "slow", "slower", "veryslow", "placebo"];
3
- export type x264Preset = typeof x264PresetOptions[number];
4
- export declare const validateSelectedCodecAndPresetCombination: ({ codec, x264Preset, }: {
5
- codec: Codec;
6
- x264Preset: "ultrafast" | "superfast" | "veryfast" | "faster" | "fast" | "medium" | "slow" | "slower" | "veryslow" | "placebo" | undefined;
7
- }) => void;
@@ -1,27 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.validateSelectedCodecAndPresetCombination = exports.x264PresetOptions = void 0;
4
- exports.x264PresetOptions = [
5
- 'ultrafast',
6
- 'superfast',
7
- 'veryfast',
8
- 'faster',
9
- 'fast',
10
- 'medium',
11
- 'slow',
12
- 'slower',
13
- 'veryslow',
14
- 'placebo',
15
- ];
16
- const validateSelectedCodecAndPresetCombination = ({ codec, x264Preset, }) => {
17
- if (typeof x264Preset !== 'undefined' && codec !== 'h264') {
18
- throw new TypeError(`You have set a Preset profile but the codec is "${codec}". Set the codec to "h264" or remove the Preset profile.`);
19
- }
20
- if (x264Preset !== undefined &&
21
- !exports.x264PresetOptions.includes(x264Preset)) {
22
- throw new TypeError(`The Preset profile "${x264Preset}" is not valid. Valid options are ${exports.x264PresetOptions
23
- .map((p) => `"${p}"`)
24
- .join(', ')}`);
25
- }
26
- };
27
- exports.validateSelectedCodecAndPresetCombination = validateSelectedCodecAndPresetCombination;
@@ -1,4 +0,0 @@
1
- export declare const validOpenGlRenderers: readonly ["swangle", "angle", "egl", "swiftshader", "vulkan"];
2
- export type OpenGlRenderer = (typeof validOpenGlRenderers)[number];
3
- export declare const DEFAULT_OPENGL_RENDERER: OpenGlRenderer | null;
4
- export declare const validateOpenGlRenderer: (option: OpenGlRenderer | null) => OpenGlRenderer | null;
@@ -1,21 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.validateOpenGlRenderer = exports.DEFAULT_OPENGL_RENDERER = exports.validOpenGlRenderers = void 0;
4
- exports.validOpenGlRenderers = [
5
- 'swangle',
6
- 'angle',
7
- 'egl',
8
- 'swiftshader',
9
- 'vulkan',
10
- ];
11
- exports.DEFAULT_OPENGL_RENDERER = null;
12
- const validateOpenGlRenderer = (option) => {
13
- if (option === null) {
14
- return null;
15
- }
16
- if (!exports.validOpenGlRenderers.includes(option)) {
17
- throw new TypeError(`${option} is not a valid GL backend. Accepted values: ${exports.validOpenGlRenderers.join(', ')}`);
18
- }
19
- return option;
20
- };
21
- exports.validateOpenGlRenderer = validateOpenGlRenderer;