@remotion/renderer 3.2.42 → 3.2.44

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.
@@ -42,7 +42,6 @@ const combineVideos = async ({ files, filelistDir, output, onProgress, numberOfF
42
42
  '512K',
43
43
  codec === 'h264' ? '-movflags' : null,
44
44
  codec === 'h264' ? 'faststart' : null,
45
- '-shortest',
46
45
  '-y',
47
46
  output,
48
47
  ].filter(truthy_1.truthy));
@@ -0,0 +1,2 @@
1
+ export declare const findClosestPackageJson: () => string | null;
2
+ export declare const findRemotionRoot: () => string;
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.findRemotionRoot = exports.findClosestPackageJson = void 0;
7
+ const fs_1 = __importDefault(require("fs"));
8
+ const path_1 = __importDefault(require("path"));
9
+ const recursionLimit = 5;
10
+ const findClosestPackageJson = () => {
11
+ let currentDir = process.cwd();
12
+ let possiblePackageJson = '';
13
+ for (let i = 0; i < recursionLimit; i++) {
14
+ possiblePackageJson = path_1.default.join(currentDir, 'package.json');
15
+ const exists = fs_1.default.existsSync(possiblePackageJson);
16
+ if (exists) {
17
+ return possiblePackageJson;
18
+ }
19
+ currentDir = path_1.default.dirname(currentDir);
20
+ }
21
+ return null;
22
+ };
23
+ exports.findClosestPackageJson = findClosestPackageJson;
24
+ const findRemotionRoot = () => {
25
+ const closestPackageJson = (0, exports.findClosestPackageJson)();
26
+ if (closestPackageJson === null) {
27
+ return process.cwd();
28
+ }
29
+ return path_1.default.dirname(closestPackageJson);
30
+ };
31
+ exports.findRemotionRoot = findRemotionRoot;
@@ -1,2 +1,2 @@
1
1
  import type { Codec } from './codec';
2
- export declare const getFileExtensionFromCodec: (codec: Codec, type: 'chunk' | 'final') => "mp3" | "aac" | "wav" | "gif" | "webm" | "mp4" | "mov" | "mkv";
2
+ export declare const getFileExtensionFromCodec: (codec: Codec, type: 'chunk' | 'final') => "mp3" | "aac" | "wav" | "gif" | "mp4" | "mkv" | "mov" | "webm";
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getFileExtensionFromCodec = void 0;
4
+ const codec_1 = require("./codec");
4
5
  const getFileExtensionFromCodec = (codec, type) => {
6
+ if (!codec_1.validCodecs.includes(codec)) {
7
+ throw new Error(`Codec must be one of the following: ${codec_1.validCodecs.join(', ')}, but got ${codec}`);
8
+ }
5
9
  switch (codec) {
6
10
  case 'aac':
7
11
  return 'aac';
package/dist/index.d.ts CHANGED
@@ -57,7 +57,7 @@ export declare const RenderInternals: {
57
57
  scale: number;
58
58
  codec: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif";
59
59
  }) => void;
60
- getFileExtensionFromCodec: (codec: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif", type: "chunk" | "final") => "mp3" | "aac" | "wav" | "gif" | "webm" | "mp4" | "mov" | "mkv";
60
+ getFileExtensionFromCodec: (codec: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif", type: "chunk" | "final") => "mp3" | "aac" | "wav" | "gif" | "mp4" | "mkv" | "mov" | "webm";
61
61
  tmpDir: (str: string) => string;
62
62
  deleteDirectory: (directory: string) => Promise<void>;
63
63
  isServeUrl: (potentialUrl: string) => boolean;
@@ -111,8 +111,8 @@ export declare const RenderInternals: {
111
111
  validPixelFormats: readonly ["yuv420p", "yuva420p", "yuv422p", "yuv444p", "yuv420p10le", "yuv422p10le", "yuv444p10le", "yuva444p10le"];
112
112
  DEFAULT_BROWSER: import("./browser").Browser;
113
113
  validateFrameRange: (frameRange: import("./frame-range").FrameRange | null) => void;
114
- DEFAULT_OPENGL_RENDERER: "angle" | "swangle" | "egl" | "swiftshader" | null;
115
- validateOpenGlRenderer: (option: "angle" | "swangle" | "egl" | "swiftshader" | null) => "angle" | "swangle" | "egl" | "swiftshader" | null;
114
+ DEFAULT_OPENGL_RENDERER: "swangle" | "angle" | "egl" | "swiftshader" | null;
115
+ validateOpenGlRenderer: (option: "swangle" | "angle" | "egl" | "swiftshader" | null) => "swangle" | "angle" | "egl" | "swiftshader" | null;
116
116
  validImageFormats: readonly ["png", "jpeg", "none"];
117
117
  validCodecs: readonly ["h264", "h265", "vp8", "vp9", "mp3", "aac", "wav", "prores", "h264-mkv", "gif"];
118
118
  DEFAULT_PIXEL_FORMAT: "yuv420p" | "yuva420p" | "yuv422p" | "yuv444p" | "yuv420p10le" | "yuv422p10le" | "yuv444p10le" | "yuva444p10le";
@@ -122,7 +122,7 @@ export declare const RenderInternals: {
122
122
  DEFAULT_CODEC: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif";
123
123
  isAudioCodec: (codec: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif" | undefined) => boolean;
124
124
  logLevels: readonly ["verbose", "info", "warn", "error"];
125
- isEqualOrBelowLogLevel: (currentLevel: "error" | "info" | "verbose" | "warn", level: "error" | "info" | "verbose" | "warn") => boolean;
125
+ isEqualOrBelowLogLevel: (currentLevel: "error" | "verbose" | "info" | "warn", level: "error" | "verbose" | "info" | "warn") => boolean;
126
126
  isValidLogLevel: (level: string) => boolean;
127
127
  perf: typeof perf;
128
128
  makeDownloadMap: () => import("./assets/download-map").DownloadMap;
@@ -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';
@@ -0,0 +1,6 @@
1
+ import type { Browser } from './browser/Browser';
2
+ export declare type BrowserReplacer = {
3
+ getBrowser: () => Browser;
4
+ replaceBrowser: (make: () => Promise<Browser>) => Promise<Browser>;
5
+ };
6
+ export declare const handleBrowserCrash: (instance: Browser) => BrowserReplacer;
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.handleBrowserCrash = void 0;
4
+ const handleBrowserCrash = (instance) => {
5
+ let _instance = instance;
6
+ const waiters = [];
7
+ let replacing = false;
8
+ return {
9
+ getBrowser: () => _instance,
10
+ replaceBrowser: async (make) => {
11
+ if (replacing) {
12
+ const waiter = new Promise((resolve, reject) => {
13
+ waiters.push({
14
+ resolve,
15
+ reject,
16
+ });
17
+ });
18
+ return waiter;
19
+ }
20
+ try {
21
+ replacing = true;
22
+ await instance
23
+ .close(true)
24
+ .then(() => {
25
+ console.log('Killed previous browser and making new one');
26
+ })
27
+ .catch(() => {
28
+ // Ignore as browser crashed
29
+ });
30
+ const browser = await make();
31
+ _instance = browser;
32
+ waiters.forEach((w) => w.resolve(browser));
33
+ console.log('Made new browser');
34
+ return browser;
35
+ }
36
+ catch (err) {
37
+ waiters.forEach((w) => w.reject(err));
38
+ throw err;
39
+ }
40
+ finally {
41
+ replacing = false;
42
+ }
43
+ },
44
+ };
45
+ };
46
+ exports.handleBrowserCrash = handleBrowserCrash;
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import type { RenderMediaOnDownload } from './assets/download-and-map-assets-to-file';
3
2
  import type { RenderAssetInfo } from './assets/download-map';
4
3
  import type { Codec } from './codec';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@remotion/renderer",
3
- "version": "3.2.42",
3
+ "version": "3.2.44",
4
4
  "description": "Renderer for Remotion",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -22,7 +22,7 @@
22
22
  "dependencies": {
23
23
  "execa": "5.1.1",
24
24
  "extract-zip": "2.0.1",
25
- "remotion": "3.2.42",
25
+ "remotion": "3.2.44",
26
26
  "source-map": "^0.8.0-beta.0",
27
27
  "ws": "8.7.0"
28
28
  },
@@ -57,5 +57,5 @@
57
57
  "publishConfig": {
58
58
  "access": "public"
59
59
  },
60
- "gitHead": "d297af4ecea4d09948bbf05eeb66dfa701be3787"
60
+ "gitHead": "443b4b387b78905e747ebe69b3b91ee85966796d"
61
61
  }