@remotion/renderer 3.3.56 → 3.3.59

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.
@@ -65,5 +65,5 @@ export declare type RenderAssetInfo = {
65
65
  downloadMap: DownloadMap;
66
66
  };
67
67
  export declare const makeDownloadMap: () => DownloadMap;
68
- export declare const cleanDownloadMap: (downloadMap: DownloadMap) => Promise<void>;
68
+ export declare const cleanDownloadMap: (downloadMap: DownloadMap) => void;
69
69
  export {};
@@ -67,11 +67,11 @@ const makeDownloadMap = () => {
67
67
  };
68
68
  };
69
69
  exports.makeDownloadMap = makeDownloadMap;
70
- const cleanDownloadMap = async (downloadMap) => {
71
- await (0, delete_directory_1.deleteDirectory)(downloadMap.downloadDir);
72
- await (0, delete_directory_1.deleteDirectory)(downloadMap.complexFilter);
73
- await (0, delete_directory_1.deleteDirectory)(downloadMap.compositingDir);
70
+ const cleanDownloadMap = (downloadMap) => {
71
+ (0, delete_directory_1.deleteDirectory)(downloadMap.downloadDir);
72
+ (0, delete_directory_1.deleteDirectory)(downloadMap.complexFilter);
73
+ (0, delete_directory_1.deleteDirectory)(downloadMap.compositingDir);
74
74
  // Assets dir must be last since the others are contained
75
- await (0, delete_directory_1.deleteDirectory)(downloadMap.assetDir);
75
+ (0, delete_directory_1.deleteDirectory)(downloadMap.assetDir);
76
76
  };
77
77
  exports.cleanDownloadMap = cleanDownloadMap;
@@ -310,7 +310,7 @@ class BrowserFetcher {
310
310
  async remove(revision) {
311
311
  const folderPath = __classPrivateFieldGet(this, _BrowserFetcher_instances, "m", _BrowserFetcher_getFolderPath).call(this, revision);
312
312
  (0, assert_1.assert)(await existsAsync(folderPath), `Failed to remove: revision ${revision} is not downloaded`);
313
- await (0, delete_directory_1.deleteDirectory)(folderPath);
313
+ (0, delete_directory_1.deleteDirectory)(folderPath);
314
314
  }
315
315
  /**
316
316
  * @param revision - The revision to get info for.
@@ -110,12 +110,12 @@ class BrowserRunner {
110
110
  }
111
111
  __classPrivateFieldSet(this, _BrowserRunner_closed, false, "f");
112
112
  __classPrivateFieldSet(this, _BrowserRunner_processClosing, new Promise((fulfill, reject) => {
113
- this.proc.once('exit', async () => {
113
+ this.proc.once('exit', () => {
114
114
  __classPrivateFieldSet(this, _BrowserRunner_closed, true, "f");
115
115
  // Cleanup as processes exit.
116
116
  try {
117
117
  if (fs.existsSync(__classPrivateFieldGet(this, _BrowserRunner_userDataDir, "f"))) {
118
- await (0, delete_directory_1.deleteDirectory)(__classPrivateFieldGet(this, _BrowserRunner_userDataDir, "f"));
118
+ (0, delete_directory_1.deleteDirectory)(__classPrivateFieldGet(this, _BrowserRunner_userDataDir, "f"));
119
119
  }
120
120
  fulfill();
121
121
  }
@@ -22,6 +22,9 @@ var __importStar = (this && this.__importStar) || function (mod) {
22
22
  __setModuleDefault(result, mod);
23
23
  return result;
24
24
  };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
25
28
  Object.defineProperty(exports, "__esModule", { value: true });
26
29
  exports.ChromeLauncher = void 0;
27
30
  /**
@@ -39,14 +42,13 @@ exports.ChromeLauncher = void 0;
39
42
  * See the License for the specific language governing permissions and
40
43
  * limitations under the License.
41
44
  */
42
- const fs = __importStar(require("fs"));
45
+ const fs_1 = __importDefault(require("fs"));
43
46
  const os = __importStar(require("os"));
44
47
  const path = __importStar(require("path"));
45
48
  const assert_1 = require("./assert");
46
49
  const Browser_1 = require("./Browser");
47
50
  const BrowserFetcher_1 = require("./BrowserFetcher");
48
51
  const BrowserRunner_1 = require("./BrowserRunner");
49
- const mkdtempAsync = fs.promises.mkdtemp;
50
52
  const tmpDir = () => {
51
53
  return process.env.PUPPETEER_TMP_DIR || os.tmpdir();
52
54
  };
@@ -70,7 +72,7 @@ class ChromeLauncher {
70
72
  }
71
73
  // Check for the user data dir argument, which will always be set even
72
74
  // with a custom directory specified via the userDataDir option.
73
- const userDataDir = await mkdtempAsync(path.join(tmpDir(), 'puppeteer_dev_chrome_profile-'));
75
+ const userDataDir = await fs_1.default.promises.mkdtemp(path.join(tmpDir(), 'puppeteer_dev_chrome_profile-'));
74
76
  chromeArguments.push(`--user-data-dir=${userDataDir}`);
75
77
  let chromeExecutable = executablePath;
76
78
  if (!chromeExecutable) {
@@ -1,5 +1,8 @@
1
1
  import type { DownloadMap } from './assets/download-map';
2
2
  export declare const createFfmpegComplexFilter: (filters: number, downloadMap: DownloadMap) => Promise<{
3
- complexFilterFlag: [string, string] | null;
3
+ complexFilterFlag: [
4
+ string,
5
+ string
6
+ ] | null;
4
7
  cleanup: () => void;
5
8
  }>;
@@ -1 +1 @@
1
- export declare const deleteDirectory: (directory: string) => Promise<void>;
1
+ export declare const deleteDirectory: (directory: string) => void;
@@ -1,30 +1,56 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
2
25
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
27
  };
5
28
  Object.defineProperty(exports, "__esModule", { value: true });
6
29
  exports.deleteDirectory = void 0;
7
30
  const execa_1 = __importDefault(require("execa"));
8
- const fs_1 = __importDefault(require("fs"));
31
+ const fs_1 = __importStar(require("fs"));
9
32
  const is_serve_url_1 = require("./is-serve-url");
10
- const deleteDirectory = async (directory) => {
33
+ const deleteDirectory = (directory) => {
11
34
  var _a;
12
35
  if ((0, is_serve_url_1.isServeUrl)(directory)) {
13
36
  return;
14
37
  }
38
+ if (!(0, fs_1.existsSync)(directory)) {
39
+ return;
40
+ }
15
41
  if (process.platform === 'win32') {
16
42
  // We use del before to remove all files inside the directories otherwise
17
43
  // rmdir will throw an error.
18
- await (0, execa_1.default)('cmd', ['/c', 'del', '/f', '/s', '/q', directory]);
44
+ execa_1.default.sync('cmd', ['/c', 'del', '/f', '/s', '/q', directory]);
19
45
  try {
20
- await (0, execa_1.default)('cmd', ['/c', 'rmdir', '/s', '/q', directory]);
46
+ execa_1.default.sync('cmd', ['/c', 'rmdir', '/s', '/q', directory]);
21
47
  }
22
48
  catch (err) {
23
49
  // Is not a directory
24
50
  }
25
51
  }
26
52
  else {
27
- await ((_a = fs_1.default.promises.rm) !== null && _a !== void 0 ? _a : fs_1.default.promises.rmdir)(directory, {
53
+ ((_a = fs_1.default.rmSync) !== null && _a !== void 0 ? _a : fs_1.default.rmdirSync)(directory, {
28
54
  recursive: true,
29
55
  });
30
56
  }
@@ -1 +1,4 @@
1
- export declare const determineResizeParams: (needsResize: [number, number] | null) => string[];
1
+ export declare const determineResizeParams: (needsResize: [
2
+ number,
3
+ number
4
+ ] | null) => string[];
@@ -16,6 +16,9 @@ exports.ErrorWithStackFrame = ErrorWithStackFrame;
16
16
  const cleanUpErrorMessage = (exception) => {
17
17
  var _a, _b, _c, _d;
18
18
  let errorMessage = (_a = exception.exceptionDetails.exception) === null || _a === void 0 ? void 0 : _a.description;
19
+ if (!errorMessage) {
20
+ return null;
21
+ }
19
22
  const errorType = (_b = exception.exceptionDetails.exception) === null || _b === void 0 ? void 0 : _b.className;
20
23
  const prefix = `${errorType}: `;
21
24
  if (errorMessage.startsWith(prefix)) {
@@ -46,6 +49,13 @@ const handleJavascriptException = ({ page, onError, frame, }) => {
46
49
  var _a, _b, _c;
47
50
  const rawErrorMessage = (_a = exception.exceptionDetails.exception) === null || _a === void 0 ? void 0 : _a.description;
48
51
  const cleanErrorMessage = cleanUpErrorMessage(exception);
52
+ if (!cleanErrorMessage) {
53
+ console.error(exception);
54
+ const err = new Error(rawErrorMessage);
55
+ err.stack = rawErrorMessage;
56
+ onError(err);
57
+ return;
58
+ }
49
59
  if (!exception.exceptionDetails.stackTrace) {
50
60
  const err = new Error(removeDelayRenderStack(cleanErrorMessage));
51
61
  err.stack = rawErrorMessage;
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import type { OffthreadVideoImageFormat } from 'remotion';
3
2
  import type { DownloadMap } from './assets/download-map';
4
3
  import type { FfmpegExecutable } from './ffmpeg-executable';
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import type { OffthreadVideoImageFormat } from 'remotion';
3
2
  import type { SpecialVCodecForTransparency } from './assets/download-map';
4
3
  import type { FfmpegExecutable } from './ffmpeg-executable';
@@ -8,7 +7,10 @@ export declare const getFrameOfVideoSlow: ({ src, duration, ffmpegExecutable, im
8
7
  duration: number;
9
8
  imageFormat: OffthreadVideoImageFormat;
10
9
  specialVCodecForTransparency: SpecialVCodecForTransparency;
11
- needsResize: [number, number] | null;
10
+ needsResize: [
11
+ number,
12
+ number
13
+ ] | null;
12
14
  offset: number;
13
15
  fps: number | null;
14
16
  remotionRoot: string;
package/dist/index.d.ts CHANGED
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import execa from 'execa';
3
2
  import { SymbolicateableError } from './error-handling/symbolicateable-error';
4
3
  import { mimeContentType, mimeLookup } from './mime-types';
@@ -64,7 +63,7 @@ export declare const RenderInternals: {
64
63
  }) => void;
65
64
  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;
66
65
  tmpDir: (str: string) => string;
67
- deleteDirectory: (directory: string) => Promise<void>;
66
+ deleteDirectory: (directory: string) => void;
68
67
  isServeUrl: (potentialUrl: string) => boolean;
69
68
  ensureOutputDirectory: (outputLocation: string) => void;
70
69
  getRealFrameRange: (durationInFrames: number, frameRange: import("./frame-range").FrameRange | null) => [number, number];
@@ -133,7 +132,7 @@ export declare const RenderInternals: {
133
132
  isValidLogLevel: (level: string) => boolean;
134
133
  perf: typeof perf;
135
134
  makeDownloadMap: () => import("./assets/download-map").DownloadMap;
136
- cleanDownloadMap: (downloadMap: import("./assets/download-map").DownloadMap) => Promise<void>;
135
+ cleanDownloadMap: (downloadMap: import("./assets/download-map").DownloadMap) => void;
137
136
  convertToPositiveFrameIndex: ({ frame, durationInFrames, }: {
138
137
  frame: number;
139
138
  durationInFrames: number;
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import type { OffthreadVideoImageFormat } from 'remotion';
3
2
  import type { DownloadMap, SpecialVCodecForTransparency } from './assets/download-map';
4
3
  import type { FfmpegExecutable } from './ffmpeg-executable';
@@ -38,28 +38,32 @@ const mergeAudioTrackUnlimited = async ({ ffmpegExecutable, outName, files, numb
38
38
  if (files.length >= 32) {
39
39
  const chunked = (0, chunk_1.chunk)(files, 10);
40
40
  const tempPath = (0, tmp_dir_1.tmpDir)('remotion-large-audio-mixing');
41
- const chunkNames = await Promise.all(chunked.map(async (chunkFiles, i) => {
42
- const chunkOutname = path_1.default.join(tempPath, `chunk-${i}.wav`);
41
+ try {
42
+ const chunkNames = await Promise.all(chunked.map(async (chunkFiles, i) => {
43
+ const chunkOutname = path_1.default.join(tempPath, `chunk-${i}.wav`);
44
+ await (0, exports.mergeAudioTrack)({
45
+ ffmpegExecutable,
46
+ files: chunkFiles,
47
+ numberOfSeconds,
48
+ outName: chunkOutname,
49
+ downloadMap,
50
+ remotionRoot,
51
+ });
52
+ return chunkOutname;
53
+ }));
43
54
  await (0, exports.mergeAudioTrack)({
44
55
  ffmpegExecutable,
45
- files: chunkFiles,
56
+ files: chunkNames,
46
57
  numberOfSeconds,
47
- outName: chunkOutname,
58
+ outName,
48
59
  downloadMap,
49
60
  remotionRoot,
50
61
  });
51
- return chunkOutname;
52
- }));
53
- await (0, exports.mergeAudioTrack)({
54
- ffmpegExecutable,
55
- files: chunkNames,
56
- numberOfSeconds,
57
- outName,
58
- downloadMap,
59
- remotionRoot,
60
- });
61
- await (0, delete_directory_1.deleteDirectory)(tempPath);
62
- return;
62
+ return;
63
+ }
64
+ finally {
65
+ (0, delete_directory_1.deleteDirectory)(tempPath);
66
+ }
63
67
  }
64
68
  const { complexFilterFlag: mergeFilter, cleanup } = await (0, create_ffmpeg_complex_filter_1.createFfmpegComplexFilter)(files.length, downloadMap);
65
69
  const args = [
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import type { ClipRegion } from 'remotion';
3
2
  import type { Page } from './browser/BrowserPage';
4
3
  import type { ImageFormat } from './image-format';
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import type { ClipRegion } from 'remotion';
3
2
  import type { Page } from './browser/BrowserPage';
4
3
  export declare const screenshot: (options: {
@@ -324,6 +324,9 @@ const renderFrames = (options) => {
324
324
  return new Promise((resolve, reject) => {
325
325
  var _a, _b, _c;
326
326
  const cleanup = [];
327
+ if (!options.downloadMap) {
328
+ cleanup.push(() => (0, download_map_1.cleanDownloadMap)(downloadMap));
329
+ }
327
330
  const onError = (err) => {
328
331
  reject(err);
329
332
  };
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import type { SmallTCompMetadata } from 'remotion';
3
2
  import type { RenderMediaOnDownload } from './assets/download-and-map-assets-to-file';
4
3
  import type { DownloadMap } from './assets/download-map';
@@ -60,13 +59,16 @@ export declare type RenderMediaOptions = {
60
59
  cancelSignal?: CancelSignal;
61
60
  browserExecutable?: BrowserExecutable;
62
61
  verbose?: boolean;
63
- /**
64
- * @deprecated Only for Remotion internal usage
65
- */
66
- downloadMap?: DownloadMap;
67
- /**
68
- * @deprecated Only for Remotion internal usage
69
- */
62
+ internal?: {
63
+ /**
64
+ * @deprecated Only for Remotion internal usage
65
+ */
66
+ downloadMap?: DownloadMap;
67
+ /**
68
+ * @deprecated Only for Remotion internal usage
69
+ */
70
+ onCtrlCExit?: (fn: () => void) => void;
71
+ };
70
72
  preferLossless?: boolean;
71
73
  muted?: boolean;
72
74
  enforceAudioTrack?: boolean;
@@ -56,7 +56,7 @@ const getConcurrency = (others) => {
56
56
  * @see [Documentation](https://www.remotion.dev/docs/renderer/render-media)
57
57
  */
58
58
  const renderMedia = ({ proResProfile, crf, composition, ffmpegExecutable, ffprobeExecutable, inputProps, pixelFormat, codec, envVariables, frameRange, puppeteerInstance, outputLocation, onProgress, overwrite, onDownload, dumpBrowserLogs, onBrowserLog, onStart, timeoutInMilliseconds, chromiumOptions, scale, browserExecutable, port, cancelSignal, muted, enforceAudioTrack, ffmpegOverride, audioBitrate, videoBitrate, onSlowestFrames, audioCodec, ...options }) => {
59
- var _a, _b, _c, _d, _e;
59
+ var _a, _b, _c, _d, _e, _f, _g;
60
60
  const remotionRoot = (0, find_closest_package_json_1.findRemotionRoot)();
61
61
  (0, validate_ffmpeg_1.validateFfmpeg)(ffmpegExecutable !== null && ffmpegExecutable !== void 0 ? ffmpegExecutable : null, remotionRoot, 'ffmpeg');
62
62
  (0, quality_1.validateQuality)(options.quality);
@@ -95,7 +95,7 @@ const renderMedia = ({ proResProfile, crf, composition, ffmpegExecutable, ffprob
95
95
  let encodedDoneIn = null;
96
96
  let cancelled = false;
97
97
  const renderStart = Date.now();
98
- const downloadMap = (_d = options.downloadMap) !== null && _d !== void 0 ? _d : (0, download_map_1.makeDownloadMap)();
98
+ const downloadMap = (_e = (_d = options.internal) === null || _d === void 0 ? void 0 : _d.downloadMap) !== null && _e !== void 0 ? _e : (0, download_map_1.makeDownloadMap)();
99
99
  const { estimatedUsage, freeMemory, hasEnoughMemory } = (0, prestitcher_memory_usage_1.shouldUseParallelEncoding)({
100
100
  height: composition.height,
101
101
  width: composition.width,
@@ -116,7 +116,7 @@ const renderMedia = ({ proResProfile, crf, composition, ffmpegExecutable, ffprob
116
116
  }
117
117
  const imageFormat = (0, is_audio_codec_1.isAudioCodec)(codec)
118
118
  ? 'none'
119
- : (_e = options.imageFormat) !== null && _e !== void 0 ? _e : 'jpeg';
119
+ : (_f = options.imageFormat) !== null && _f !== void 0 ? _f : 'jpeg';
120
120
  const quality = imageFormat === 'jpeg' ? options.quality : undefined;
121
121
  (0, image_format_1.validateSelectedPixelFormatAndImageFormatCombination)(pixelFormat, imageFormat);
122
122
  const preEncodedFileLocation = parallelEncoding
@@ -125,6 +125,9 @@ const renderMedia = ({ proResProfile, crf, composition, ffmpegExecutable, ffprob
125
125
  const outputDir = parallelEncoding
126
126
  ? null
127
127
  : fs_1.default.mkdtempSync(path_1.default.join(os_1.default.tmpdir(), 'react-motion-render'));
128
+ if (((_g = options.internal) === null || _g === void 0 ? void 0 : _g.onCtrlCExit) && outputDir) {
129
+ options.internal.onCtrlCExit(() => (0, delete_directory_1.deleteDirectory)(outputDir));
130
+ }
128
131
  (0, validate_even_dimensions_with_codec_1.validateEvenDimensionsWithCodec)({
129
132
  codec,
130
133
  height: composition.height,
@@ -353,12 +356,13 @@ const renderMedia = ({ proResProfile, crf, composition, ffmpegExecutable, ffprob
353
356
  throw err;
354
357
  })
355
358
  .finally(() => {
359
+ var _a;
356
360
  if (preEncodedFileLocation !== null &&
357
361
  fs_1.default.existsSync(preEncodedFileLocation)) {
358
362
  (0, delete_directory_1.deleteDirectory)(path_1.default.dirname(preEncodedFileLocation));
359
363
  }
360
364
  // Clean download map if it was not passed in
361
- if (!(options === null || options === void 0 ? void 0 : options.downloadMap)) {
365
+ if (!((_a = options.internal) === null || _a === void 0 ? void 0 : _a.downloadMap)) {
362
366
  (0, download_map_1.cleanDownloadMap)(downloadMap);
363
367
  }
364
368
  // Clean temporary image frames when rendering ends or fails
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import type { ClipRegion } from 'remotion';
3
2
  import type { Page } from './browser/BrowserPage';
4
3
  import type { ImageFormat } from './image-format';
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import type { ClipRegion } from 'remotion';
3
2
  import type { Page } from './browser/BrowserPage';
4
3
  import type { StillImageFormat } from './image-format';
@@ -100,12 +100,10 @@ const getAssetsData = async ({ assets, onDownload, fps, expectedFrames, verbose,
100
100
  remotionRoot,
101
101
  });
102
102
  onProgress(1);
103
- await Promise.all([
104
- (0, delete_directory_1.deleteDirectory)(downloadMap.audioMixing),
105
- ...preprocessed.map((p) => {
106
- return (0, delete_directory_1.deleteDirectory)(p);
107
- }),
108
- ]);
103
+ (0, delete_directory_1.deleteDirectory)(downloadMap.audioMixing);
104
+ preprocessed.forEach((p) => {
105
+ (0, delete_directory_1.deleteDirectory)(p);
106
+ });
109
107
  return outName;
110
108
  };
111
109
  const spawnFfmpeg = async (options, remotionRoot) => {
@@ -206,7 +204,7 @@ const spawnFfmpeg = async (options, remotionRoot) => {
206
204
  await ffmpegTask;
207
205
  (_p = options.onProgress) === null || _p === void 0 ? void 0 : _p.call(options, expectedFrames);
208
206
  if (audio) {
209
- await (0, delete_directory_1.deleteDirectory)(path_1.default.dirname(audio));
207
+ (0, delete_directory_1.deleteDirectory)(path_1.default.dirname(audio));
210
208
  }
211
209
  const file = await new Promise((resolve, reject) => {
212
210
  if (tempFile) {
@@ -221,7 +219,7 @@ const spawnFfmpeg = async (options, remotionRoot) => {
221
219
  resolve(null);
222
220
  }
223
221
  });
224
- await (0, delete_directory_1.deleteDirectory)(options.assetsInfo.downloadMap.stitchFrames);
222
+ (0, delete_directory_1.deleteDirectory)(options.assetsInfo.downloadMap.stitchFrames);
225
223
  return {
226
224
  getLogs: () => '',
227
225
  task: Promise.resolve(file),
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import type { TAsset } from 'remotion';
3
2
  import type { DownloadMap } from './assets/download-map';
4
3
  import type { Page } from './browser/BrowserPage';
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import type { OffthreadVideoImageFormat } from 'remotion';
3
2
  import type { NeedsResize, SpecialVCodecForTransparency } from './assets/download-map';
4
3
  import type { FfmpegExecutable } from './ffmpeg-executable';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@remotion/renderer",
3
- "version": "3.3.56",
3
+ "version": "3.3.59",
4
4
  "description": "Renderer for Remotion",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -24,7 +24,7 @@
24
24
  "dependencies": {
25
25
  "execa": "5.1.1",
26
26
  "extract-zip": "2.0.1",
27
- "remotion": "3.3.56",
27
+ "remotion": "3.3.59",
28
28
  "source-map": "^0.8.0-beta.0",
29
29
  "ws": "8.7.0"
30
30
  },
@@ -49,13 +49,13 @@
49
49
  "vitest": "0.24.3"
50
50
  },
51
51
  "optionalDependencies": {
52
- "@remotion/compositor-darwin-arm64": "3.3.56",
53
- "@remotion/compositor-darwin-x64": "3.3.56",
54
- "@remotion/compositor-linux-arm64-gnu": "3.3.56",
55
- "@remotion/compositor-linux-arm64-musl": "3.3.56",
56
- "@remotion/compositor-linux-x64-gnu": "3.3.56",
57
- "@remotion/compositor-linux-x64-musl": "3.3.56",
58
- "@remotion/compositor-win32-x64-msvc": "3.3.56"
52
+ "@remotion/compositor-darwin-arm64": "3.3.59",
53
+ "@remotion/compositor-darwin-x64": "3.3.59",
54
+ "@remotion/compositor-linux-arm64-gnu": "3.3.59",
55
+ "@remotion/compositor-linux-arm64-musl": "3.3.59",
56
+ "@remotion/compositor-linux-x64-gnu": "3.3.59",
57
+ "@remotion/compositor-linux-x64-musl": "3.3.59",
58
+ "@remotion/compositor-win32-x64-msvc": "3.3.59"
59
59
  },
60
60
  "keywords": [
61
61
  "remotion",
@@ -67,5 +67,5 @@
67
67
  "publishConfig": {
68
68
  "access": "public"
69
69
  },
70
- "gitHead": "40e96323b08717213c20fffcce8a985f0310f6e5"
70
+ "gitHead": "4ee88b056704d7224838a8fbc32d2d3522c5afbe"
71
71
  }