@remotion/renderer 4.0.533 → 4.0.535
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/aac-priming.js +6 -2
- package/dist/browser/BrowserFetcher.d.ts +7 -1
- package/dist/browser/BrowserFetcher.js +33 -13
- package/dist/browser/BrowserPage.js +4 -0
- package/dist/browser/Connection.js +5 -17
- package/dist/browser/DOMWorld.js +19 -13
- package/dist/browser/devtools-commands.d.ts +13 -1
- package/dist/browser/devtools-types.d.ts +62 -0
- package/dist/browser/get-chrome-download-url.d.ts +1 -1
- package/dist/browser/get-chrome-download-url.js +19 -33
- package/dist/can-use-parallel-encoding.d.ts +0 -1
- package/dist/can-use-parallel-encoding.js +10 -10
- package/dist/client.d.ts +402 -4
- package/dist/client.js +2 -0
- package/dist/combine-chunks.d.ts +2 -1
- package/dist/combine-chunks.js +81 -52
- package/dist/combine-video-streams.js +3 -0
- package/dist/compositor/get-executable-path.js +30 -15
- package/dist/cycle-browser-tabs.js +9 -1
- package/dist/ensure-browser.d.ts +3 -0
- package/dist/ensure-browser.js +30 -6
- package/dist/esm/client.mjs +1325 -954
- package/dist/esm/index.mjs +4465 -3324
- package/dist/esm/pure.mjs +36 -10
- package/dist/file-extensions.js +4 -1
- package/dist/get-mp4-brand.d.ts +1 -0
- package/dist/get-mp4-brand.js +21 -0
- package/dist/get-video-threads-flag.js +5 -1
- package/dist/image-format.d.ts +1 -0
- package/dist/image-format.js +8 -4
- package/dist/index.d.ts +58 -2
- package/dist/index.js +4 -0
- package/dist/memory/from-macos-sysctl.d.ts +1 -0
- package/dist/memory/from-macos-sysctl.js +50 -0
- package/dist/memory/from-proc-meminfo.d.ts +1 -1
- package/dist/memory/from-proc-meminfo.js +7 -4
- package/dist/memory/get-available-memory.js +29 -21
- package/dist/mux-video-and-audio.js +11 -2
- package/dist/next-frame-to-render.d.ts +3 -7
- package/dist/next-frame-to-render.js +3 -22
- package/dist/open-browser.js +1 -0
- package/dist/options/allow-html-in-canvas.d.ts +1 -0
- package/dist/options/allow-html-in-canvas.js +2 -1
- package/dist/options/api-key.d.ts +1 -0
- package/dist/options/api-key.js +2 -1
- package/dist/options/ask-ai.d.ts +1 -0
- package/dist/options/ask-ai.js +2 -1
- package/dist/options/audio-bitrate.d.ts +1 -0
- package/dist/options/audio-bitrate.js +2 -1
- package/dist/options/audio-codec.d.ts +1 -0
- package/dist/options/audio-codec.js +13 -6
- package/dist/options/beep-on-finish.d.ts +1 -0
- package/dist/options/beep-on-finish.js +2 -1
- package/dist/options/benchmark-concurrencies.d.ts +1 -0
- package/dist/options/benchmark-concurrencies.js +2 -1
- package/dist/options/binaries-directory.d.ts +1 -0
- package/dist/options/binaries-directory.js +2 -1
- package/dist/options/browser-executable.d.ts +1 -0
- package/dist/options/browser-executable.js +2 -1
- package/dist/options/browser.d.ts +1 -0
- package/dist/options/browser.js +2 -1
- package/dist/options/bundle-cache.d.ts +1 -0
- package/dist/options/bundle-cache.js +2 -1
- package/dist/options/canvas-tabs.d.ts +1 -0
- package/dist/options/canvas-tabs.js +2 -1
- package/dist/options/chrome-mode.d.ts +1 -0
- package/dist/options/chrome-mode.js +2 -1
- package/dist/options/color-space.d.ts +1 -0
- package/dist/options/color-space.js +2 -1
- package/dist/options/concurrency.d.ts +1 -0
- package/dist/options/concurrency.js +2 -1
- package/dist/options/config.d.ts +1 -0
- package/dist/options/config.js +2 -1
- package/dist/options/crf.d.ts +1 -0
- package/dist/options/crf.js +2 -1
- package/dist/options/cross-site-isolation.d.ts +1 -0
- package/dist/options/cross-site-isolation.js +2 -1
- package/dist/options/dark-mode.d.ts +1 -0
- package/dist/options/dark-mode.js +2 -1
- package/dist/options/default-coding-agent.d.ts +1 -0
- package/dist/options/default-coding-agent.js +2 -1
- package/dist/options/default-editor.d.ts +1 -0
- package/dist/options/default-editor.js +2 -1
- package/dist/options/default-premount-in-seconds.d.ts +19 -0
- package/dist/options/default-premount-in-seconds.js +36 -0
- package/dist/options/delete-after.d.ts +1 -0
- package/dist/options/delete-after.js +2 -1
- package/dist/options/disable-git-source.d.ts +1 -0
- package/dist/options/disable-git-source.js +2 -1
- package/dist/options/disable-shared-memory-capture.d.ts +17 -0
- package/dist/options/disable-shared-memory-capture.js +30 -0
- package/dist/options/disable-web-security.d.ts +1 -0
- package/dist/options/disable-web-security.js +2 -1
- package/dist/options/disallow-parallel-encoding.d.ts +1 -0
- package/dist/options/disallow-parallel-encoding.js +2 -1
- package/dist/options/enable-cancellation.d.ts +1 -0
- package/dist/options/enable-cancellation.js +2 -1
- package/dist/options/enable-lambda-insights.d.ts +1 -0
- package/dist/options/enable-lambda-insights.js +2 -1
- package/dist/options/enable-multiprocess-on-linux.d.ts +1 -0
- package/dist/options/enable-multiprocess-on-linux.js +2 -1
- package/dist/options/encoding-buffer-size.d.ts +1 -0
- package/dist/options/encoding-buffer-size.js +2 -1
- package/dist/options/encoding-max-rate.d.ts +1 -0
- package/dist/options/encoding-max-rate.js +2 -1
- package/dist/options/enforce-audio.d.ts +1 -0
- package/dist/options/enforce-audio.js +2 -1
- package/dist/options/env-file.d.ts +1 -0
- package/dist/options/env-file.js +2 -1
- package/dist/options/every-nth-frame.d.ts +1 -0
- package/dist/options/every-nth-frame.js +2 -1
- package/dist/options/experimental-keep-audio-context-alive.d.ts +1 -0
- package/dist/options/experimental-keep-audio-context-alive.js +2 -1
- package/dist/options/experimental-sequence-activity-limit.d.ts +19 -0
- package/dist/options/experimental-sequence-activity-limit.js +40 -0
- package/dist/options/experimental-sequence-activity.d.ts +19 -0
- package/dist/options/experimental-sequence-activity.js +38 -0
- package/dist/options/experimental-tracks.d.ts +19 -0
- package/dist/options/experimental-tracks.js +43 -0
- package/dist/options/folder-expiry.d.ts +1 -0
- package/dist/options/folder-expiry.js +2 -1
- package/dist/options/for-seamless-aac-concatenation.d.ts +1 -0
- package/dist/options/for-seamless-aac-concatenation.js +2 -1
- package/dist/options/force-new-studio.d.ts +1 -0
- package/dist/options/force-new-studio.js +2 -1
- package/dist/options/frames.d.ts +1 -0
- package/dist/options/frames.js +2 -1
- package/dist/options/gl.d.ts +1 -0
- package/dist/options/gl.js +2 -1
- package/dist/options/gop-size.d.ts +1 -0
- package/dist/options/gop-size.js +2 -1
- package/dist/options/hardware-acceleration.d.ts +1 -0
- package/dist/options/hardware-acceleration.js +2 -1
- package/dist/options/headless.d.ts +1 -0
- package/dist/options/headless.js +2 -1
- package/dist/options/ignore-certificate-errors.d.ts +1 -0
- package/dist/options/ignore-certificate-errors.js +2 -1
- package/dist/options/image-sequence-pattern.d.ts +2 -1
- package/dist/options/image-sequence-pattern.js +2 -1
- package/dist/options/image-sequence.d.ts +1 -0
- package/dist/options/image-sequence.js +2 -1
- package/dist/options/index.d.ts +211 -2
- package/dist/options/index.js +12 -0
- package/dist/options/interactivity.d.ts +1 -0
- package/dist/options/interactivity.js +2 -1
- package/dist/options/ipv4.d.ts +1 -0
- package/dist/options/ipv4.js +2 -1
- package/dist/options/is-production.d.ts +1 -0
- package/dist/options/is-production.js +2 -1
- package/dist/options/jpeg-quality.d.ts +1 -0
- package/dist/options/jpeg-quality.js +6 -2
- package/dist/options/keyboard-shortcuts.d.ts +1 -0
- package/dist/options/keyboard-shortcuts.js +2 -1
- package/dist/options/latency-hint.d.ts +1 -0
- package/dist/options/latency-hint.js +2 -1
- package/dist/options/license-key.d.ts +1 -0
- package/dist/options/license-key.js +2 -1
- package/dist/options/log-level.d.ts +1 -0
- package/dist/options/log-level.js +2 -1
- package/dist/options/metadata.d.ts +1 -0
- package/dist/options/metadata.js +2 -1
- package/dist/options/mute.d.ts +1 -0
- package/dist/options/mute.js +2 -1
- package/dist/options/no-open.d.ts +1 -0
- package/dist/options/no-open.js +2 -1
- package/dist/options/number-of-gif-loops.d.ts +1 -0
- package/dist/options/number-of-gif-loops.js +2 -1
- package/dist/options/number-of-shared-audio-tags.d.ts +1 -0
- package/dist/options/number-of-shared-audio-tags.js +2 -1
- package/dist/options/offthreadvideo-cache-size.d.ts +1 -0
- package/dist/options/offthreadvideo-cache-size.js +2 -1
- package/dist/options/offthreadvideo-threads.d.ts +1 -0
- package/dist/options/offthreadvideo-threads.js +2 -1
- package/dist/options/on-browser-download.d.ts +1 -0
- package/dist/options/on-browser-download.js +2 -1
- package/dist/options/option.d.ts +1 -0
- package/dist/options/options-map.d.ts +189 -1
- package/dist/options/options-map.js +4 -0
- package/dist/options/out-dir.d.ts +1 -0
- package/dist/options/out-dir.js +2 -1
- package/dist/options/override-duration.d.ts +1 -0
- package/dist/options/override-duration.js +2 -1
- package/dist/options/override-fps.d.ts +1 -0
- package/dist/options/override-fps.js +2 -1
- package/dist/options/override-height.d.ts +1 -0
- package/dist/options/override-height.js +2 -1
- package/dist/options/override-width.d.ts +1 -0
- package/dist/options/override-width.js +2 -1
- package/dist/options/overwrite.d.ts +1 -0
- package/dist/options/overwrite.js +2 -1
- package/dist/options/package-manager.d.ts +1 -0
- package/dist/options/package-manager.js +2 -1
- package/dist/options/pixel-format.d.ts +1 -0
- package/dist/options/pixel-format.js +2 -1
- package/dist/options/port.d.ts +1 -0
- package/dist/options/port.js +2 -1
- package/dist/options/prefer-lossless.d.ts +1 -0
- package/dist/options/prefer-lossless.js +2 -1
- package/dist/options/preview-sample-rate.d.ts +1 -0
- package/dist/options/preview-sample-rate.js +2 -1
- package/dist/options/props.d.ts +1 -0
- package/dist/options/props.js +2 -1
- package/dist/options/prores-profile.d.ts +1 -0
- package/dist/options/prores-profile.js +2 -1
- package/dist/options/public-dir.d.ts +1 -0
- package/dist/options/public-dir.js +2 -1
- package/dist/options/public-license-key.d.ts +1 -0
- package/dist/options/public-license-key.js +2 -1
- package/dist/options/public-path.d.ts +1 -0
- package/dist/options/public-path.js +2 -1
- package/dist/options/repro.d.ts +1 -0
- package/dist/options/repro.js +2 -1
- package/dist/options/rspack.d.ts +2 -1
- package/dist/options/rspack.js +2 -1
- package/dist/options/runs.d.ts +1 -0
- package/dist/options/runs.js +2 -1
- package/dist/options/sample-rate.d.ts +1 -0
- package/dist/options/sample-rate.js +2 -1
- package/dist/options/scale.d.ts +1 -0
- package/dist/options/scale.js +2 -1
- package/dist/options/separate-audio.d.ts +1 -0
- package/dist/options/separate-audio.js +3 -2
- package/dist/options/show-premounting.d.ts +19 -0
- package/dist/options/show-premounting.js +33 -0
- package/dist/options/skip-skills.d.ts +1 -0
- package/dist/options/skip-skills.js +2 -1
- package/dist/options/still-frame.d.ts +1 -0
- package/dist/options/still-frame.js +2 -1
- package/dist/options/still-image-format.d.ts +1 -0
- package/dist/options/still-image-format.js +2 -1
- package/dist/options/throw-if-site-exists.d.ts +1 -0
- package/dist/options/throw-if-site-exists.js +2 -1
- package/dist/options/timeout.d.ts +1 -0
- package/dist/options/timeout.js +2 -1
- package/dist/options/user-agent.d.ts +1 -0
- package/dist/options/user-agent.js +2 -1
- package/dist/options/version-flag.d.ts +1 -0
- package/dist/options/version-flag.js +2 -1
- package/dist/options/video-bitrate.d.ts +1 -0
- package/dist/options/video-bitrate.js +2 -1
- package/dist/options/video-cache-size.d.ts +1 -0
- package/dist/options/video-cache-size.js +2 -1
- package/dist/options/video-codec.d.ts +1 -0
- package/dist/options/video-codec.js +5 -3
- package/dist/options/video-image-format.d.ts +1 -0
- package/dist/options/video-image-format.js +7 -2
- package/dist/options/webhook-custom-data.d.ts +1 -0
- package/dist/options/webhook-custom-data.js +2 -1
- package/dist/options/webpack-poll.d.ts +1 -0
- package/dist/options/webpack-poll.js +2 -1
- package/dist/options/x264-preset.d.ts +1 -0
- package/dist/options/x264-preset.js +2 -1
- package/dist/prespawn-ffmpeg.d.ts +20 -0
- package/dist/prespawn-ffmpeg.js +157 -29
- package/dist/probe-shared-memory-capture.d.ts +8 -0
- package/dist/probe-shared-memory-capture.js +111 -0
- package/dist/puppeteer-screenshot.d.ts +3 -1
- package/dist/puppeteer-screenshot.js +1 -0
- package/dist/pure.d.ts +1 -1
- package/dist/remotion-shared-memory-ffmpeg.d.ts +26 -0
- package/dist/remotion-shared-memory-ffmpeg.js +312 -0
- package/dist/remotion-shared-memory.d.ts +49 -0
- package/dist/remotion-shared-memory.js +359 -0
- package/dist/render-frame-and-retry-target-close.d.ts +5 -2
- package/dist/render-frame-and-retry-target-close.js +20 -4
- package/dist/render-frame-with-option-to-reject.d.ts +4 -1
- package/dist/render-frame-with-option-to-reject.js +206 -115
- package/dist/render-frame.d.ts +4 -5
- package/dist/render-frame.js +3 -1
- package/dist/render-frames.d.ts +3 -0
- package/dist/render-frames.js +15 -18
- package/dist/render-media.d.ts +1 -1
- package/dist/render-media.js +131 -46
- package/dist/render-still.js +1 -0
- package/dist/screenshot-background.d.ts +2 -0
- package/dist/screenshot-background.js +20 -0
- package/dist/screenshot-task.d.ts +4 -2
- package/dist/screenshot-task.js +40 -21
- package/dist/seek-to-frame.js +1 -1
- package/dist/stitch-frames-to-video.js +71 -10
- package/dist/take-frame.d.ts +11 -3
- package/dist/take-frame.js +10 -8
- package/dist/validate-output-filename.d.ts +1 -1
- package/dist/validate-output-filename.js +10 -2
- package/package.json +13 -13
package/dist/esm/pure.mjs
CHANGED
|
@@ -88,6 +88,7 @@ var validCodecs = [
|
|
|
88
88
|
];
|
|
89
89
|
|
|
90
90
|
// src/file-extensions.ts
|
|
91
|
+
import { NoReactInternals } from "remotion/no-react";
|
|
91
92
|
var defaultFileExtensionMap = {
|
|
92
93
|
"h264-mkv": {
|
|
93
94
|
default: "mkv",
|
|
@@ -107,7 +108,7 @@ var defaultFileExtensionMap = {
|
|
|
107
108
|
default: "aac",
|
|
108
109
|
forAudioCodec: {
|
|
109
110
|
aac: {
|
|
110
|
-
possible: ["aac", "3gp", "m4a", "m4b", "mpg", "mpeg"],
|
|
111
|
+
possible: NoReactInternals.ENABLE_V5_BREAKING_CHANGES ? ["aac", "3gp", "m4a", "m4b"] : ["aac", "3gp", "m4a", "m4b", "mpg", "mpeg"],
|
|
111
112
|
default: "aac"
|
|
112
113
|
},
|
|
113
114
|
"pcm-16": {
|
|
@@ -311,13 +312,29 @@ var getExtensionOfFilename = (filename) => {
|
|
|
311
312
|
return extension;
|
|
312
313
|
};
|
|
313
314
|
|
|
315
|
+
// src/validate-output-filename.ts
|
|
316
|
+
import { NoReactInternals as NoReactInternals2 } from "remotion/no-react";
|
|
317
|
+
|
|
318
|
+
// src/get-mp4-brand.ts
|
|
319
|
+
var mp4Brands = {
|
|
320
|
+
m4a: "M4A ",
|
|
321
|
+
m4b: "M4B ",
|
|
322
|
+
"3gp": "3gp4"
|
|
323
|
+
};
|
|
324
|
+
var getMp4BrandForExtension = (extension) => {
|
|
325
|
+
if (extension === null) {
|
|
326
|
+
return null;
|
|
327
|
+
}
|
|
328
|
+
return mp4Brands[extension.toLowerCase()] ?? null;
|
|
329
|
+
};
|
|
330
|
+
|
|
314
331
|
// src/options/separate-audio.tsx
|
|
315
332
|
var DEFAULT = null;
|
|
316
333
|
var cliFlag = "separate-audio-to";
|
|
317
334
|
var separateAudioOption = {
|
|
318
335
|
cliFlag,
|
|
319
|
-
description: () => `If set, the audio will not be included in the main output but rendered as a separate file at the location you pass. If the render contains no audio, a silent audio file is produced even when enforceAudioTrack is false.
|
|
320
|
-
docLink: "https://remotion.dev/docs/
|
|
336
|
+
description: () => `If set, the audio will not be included in the main output but rendered as a separate file at the location you pass. If the render contains no audio, a silent audio file is produced even when enforceAudioTrack is false. Audio-only renders, muted renders and codecs without audio support cannot use this option. For local renders, use an absolute path; relative paths are resolved against the Remotion Root. On Lambda, pass an output name or custom destination as described in renderMediaOnLambda().`,
|
|
337
|
+
docLink: "https://www.remotion.dev/docs/options/separate-audio-to",
|
|
321
338
|
getValue: ({ commandLine }) => {
|
|
322
339
|
if (commandLine[cliFlag]) {
|
|
323
340
|
return {
|
|
@@ -331,6 +348,7 @@ var separateAudioOption = {
|
|
|
331
348
|
};
|
|
332
349
|
},
|
|
333
350
|
name: "Separate audio to",
|
|
351
|
+
addedIn: "4.0.123",
|
|
334
352
|
setConfig: () => {
|
|
335
353
|
throw new Error("Not implemented");
|
|
336
354
|
},
|
|
@@ -424,15 +442,18 @@ var resolveAudioCodec = ({
|
|
|
424
442
|
}) => {
|
|
425
443
|
let derivedFromSeparateAudioToExtension = null;
|
|
426
444
|
if (separateAudioTo) {
|
|
427
|
-
const extension = separateAudioTo.split(".").pop();
|
|
445
|
+
const extension = separateAudioTo.split(".").pop() ?? null;
|
|
428
446
|
for (const [key, value] of Object.entries(extensionMap)) {
|
|
429
447
|
if (value === extension) {
|
|
430
448
|
derivedFromSeparateAudioToExtension = key;
|
|
431
|
-
if (!supportedAudioCodecs[codec].includes(derivedFromSeparateAudioToExtension) && derivedFromSeparateAudioToExtension) {
|
|
432
|
-
throw new Error(`The codec is ${codec} but the audio codec derived from --${separateAudioOption.cliFlag} is ${derivedFromSeparateAudioToExtension}. The only supported codecs are: ${supportedAudioCodecs[codec].join(", ")}`);
|
|
433
|
-
}
|
|
434
449
|
}
|
|
435
450
|
}
|
|
451
|
+
if (getMp4BrandForExtension(extension)) {
|
|
452
|
+
derivedFromSeparateAudioToExtension = "aac";
|
|
453
|
+
}
|
|
454
|
+
if (derivedFromSeparateAudioToExtension && !supportedAudioCodecs[codec].includes(derivedFromSeparateAudioToExtension)) {
|
|
455
|
+
throw new Error(`The codec is ${codec} but the audio codec derived from --${separateAudioOption.cliFlag} is ${derivedFromSeparateAudioToExtension}. The only supported codecs are: ${supportedAudioCodecs[codec].join(", ")}`);
|
|
456
|
+
}
|
|
436
457
|
}
|
|
437
458
|
if (preferLossless) {
|
|
438
459
|
const selected = getDefaultAudioCodec({ codec, preferLossless });
|
|
@@ -494,8 +515,9 @@ var audioCodecOption = {
|
|
|
494
515
|
};
|
|
495
516
|
},
|
|
496
517
|
description: () => `Set the format of the audio that is embedded in the video. Not all codec and audio codec combinations are supported and certain combinations require a certain file extension and container format. See the table in the docs to see possible combinations.`,
|
|
497
|
-
docLink: "https://www.remotion.dev/docs/
|
|
518
|
+
docLink: "https://www.remotion.dev/docs/options/audio-codec",
|
|
498
519
|
name: "Audio Codec",
|
|
520
|
+
addedIn: "3.3.41",
|
|
499
521
|
ssrName,
|
|
500
522
|
type: "aac",
|
|
501
523
|
id: cliFlag2
|
|
@@ -512,6 +534,10 @@ var validateOutputFilename = ({
|
|
|
512
534
|
if (!defaultFileExtensionMap[codec]) {
|
|
513
535
|
throw new TypeError(`The codec "${codec}" is not supported. Supported codecs are: ${Object.keys(defaultFileExtensionMap).join(", ")}`);
|
|
514
536
|
}
|
|
537
|
+
const normalizedExtension = extension === null ? null : extension.toLowerCase();
|
|
538
|
+
if (NoReactInternals2.ENABLE_V5_BREAKING_CHANGES && codec === "aac" && (normalizedExtension === "mpg" || normalizedExtension === "mpeg")) {
|
|
539
|
+
throw new Error("AAC output with .mpg or .mpeg extensions is not supported. Use .aac for raw ADTS AAC or .m4a for an MPEG-4 audio container.");
|
|
540
|
+
}
|
|
515
541
|
const map = defaultFileExtensionMap[codec];
|
|
516
542
|
const resolvedAudioCodec = resolveAudioCodec({
|
|
517
543
|
codec,
|
|
@@ -520,7 +546,7 @@ var validateOutputFilename = ({
|
|
|
520
546
|
separateAudioTo
|
|
521
547
|
});
|
|
522
548
|
if (resolvedAudioCodec === null) {
|
|
523
|
-
if (
|
|
549
|
+
if (normalizedExtension !== map.default) {
|
|
524
550
|
throw new TypeError(`When using the ${codec} codec, the output filename must end in .${map.default}.`);
|
|
525
551
|
}
|
|
526
552
|
return;
|
|
@@ -529,7 +555,7 @@ var validateOutputFilename = ({
|
|
|
529
555
|
throw new Error(`Audio codec ${resolvedAudioCodec} is not supported for codec ${codec}`);
|
|
530
556
|
}
|
|
531
557
|
const acceptableExtensions = map.forAudioCodec[resolvedAudioCodec].possible;
|
|
532
|
-
if (!acceptableExtensions.includes(
|
|
558
|
+
if (!acceptableExtensions.includes(normalizedExtension) && !separateAudioTo) {
|
|
533
559
|
throw new TypeError(`When using the ${codec} codec with the ${resolvedAudioCodec} audio codec, the output filename must end in one of the following: ${acceptableExtensions.join(", ")}.`);
|
|
534
560
|
}
|
|
535
561
|
};
|
package/dist/file-extensions.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.defaultFileExtensionMap = void 0;
|
|
4
|
+
const no_react_1 = require("remotion/no-react");
|
|
4
5
|
exports.defaultFileExtensionMap = {
|
|
5
6
|
'h264-mkv': {
|
|
6
7
|
default: 'mkv',
|
|
@@ -20,7 +21,9 @@ exports.defaultFileExtensionMap = {
|
|
|
20
21
|
default: 'aac',
|
|
21
22
|
forAudioCodec: {
|
|
22
23
|
aac: {
|
|
23
|
-
possible:
|
|
24
|
+
possible: no_react_1.NoReactInternals.ENABLE_V5_BREAKING_CHANGES
|
|
25
|
+
? ['aac', '3gp', 'm4a', 'm4b']
|
|
26
|
+
: ['aac', '3gp', 'm4a', 'm4b', 'mpg', 'mpeg'],
|
|
24
27
|
default: 'aac',
|
|
25
28
|
},
|
|
26
29
|
'pcm-16': {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const getMp4BrandForExtension: (extension: string | null) => string | null;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getMp4BrandForExtension = void 0;
|
|
4
|
+
// Audio-only AAC renders may be saved as .m4a, .m4b or .3gp. These are
|
|
5
|
+
// ISO BMFF files, but the compressed audio is ADTS, so it must be remuxed
|
|
6
|
+
// rather than copied. Remotion's FFmpeg build has no `ipod` or `3gp` muxer,
|
|
7
|
+
// so the `mp4` muxer is used with the major brand that players use to
|
|
8
|
+
// identify these files.
|
|
9
|
+
const mp4Brands = {
|
|
10
|
+
m4a: 'M4A ',
|
|
11
|
+
m4b: 'M4B ',
|
|
12
|
+
'3gp': '3gp4',
|
|
13
|
+
};
|
|
14
|
+
const getMp4BrandForExtension = (extension) => {
|
|
15
|
+
var _a;
|
|
16
|
+
if (extension === null) {
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
return (_a = mp4Brands[extension.toLowerCase()]) !== null && _a !== void 0 ? _a : null;
|
|
20
|
+
};
|
|
21
|
+
exports.getMp4BrandForExtension = getMp4BrandForExtension;
|
|
@@ -5,12 +5,16 @@ const get_cpu_count_1 = require("./get-cpu-count");
|
|
|
5
5
|
const get_available_memory_1 = require("./memory/get-available-memory");
|
|
6
6
|
const MEMORY_USAGE_PER_THREAD = 400000000; // 400MB
|
|
7
7
|
const RESERVED_MEMORY = 2000000000;
|
|
8
|
+
// Match Chromium's normal decoder thread limit. --video-threads bypasses that
|
|
9
|
+
// limit, and too many frame threads can require more packets before producing
|
|
10
|
+
// output than Mediabunny's decoder queue permits, causing frame extraction to hang.
|
|
11
|
+
const MAX_VIDEO_THREADS = 16;
|
|
8
12
|
const getIdealVideoThreadsFlag = (logLevel) => {
|
|
9
13
|
const freeMemory = (0, get_available_memory_1.getAvailableMemory)(logLevel);
|
|
10
14
|
const cpus = (0, get_cpu_count_1.getCpuCount)();
|
|
11
15
|
const maxRecommendedBasedOnCpus = (cpus * 2) / 3;
|
|
12
16
|
const maxRecommendedBasedOnMemory = (freeMemory - RESERVED_MEMORY) / MEMORY_USAGE_PER_THREAD;
|
|
13
|
-
const maxRecommended = Math.min(maxRecommendedBasedOnCpus, maxRecommendedBasedOnMemory);
|
|
17
|
+
const maxRecommended = Math.min(maxRecommendedBasedOnCpus, maxRecommendedBasedOnMemory, MAX_VIDEO_THREADS);
|
|
14
18
|
return Math.max(1, Math.round(maxRecommended));
|
|
15
19
|
};
|
|
16
20
|
exports.getIdealVideoThreadsFlag = getIdealVideoThreadsFlag;
|
package/dist/image-format.d.ts
CHANGED
|
@@ -8,5 +8,6 @@ export type StillImageFormat = (typeof validStillImageFormats)[number];
|
|
|
8
8
|
export type ImageFormat = 'This type is deprecated, use VideoImageFormat or StillImageFormat instead';
|
|
9
9
|
export declare const DEFAULT_VIDEO_IMAGE_FORMAT: VideoImageFormat;
|
|
10
10
|
export declare const DEFAULT_STILL_IMAGE_FORMAT: StillImageFormat;
|
|
11
|
+
export declare const validateVideoImageFormat: (videoImageFormat: "jpeg" | "none" | "png") => void;
|
|
11
12
|
export declare const validateSelectedPixelFormatAndImageFormatCombination: (pixelFormat: "yuv420p" | "yuv420p10le" | "yuv422p" | "yuv422p10le" | "yuv444p" | "yuv444p10le" | "yuva420p" | "yuva444p10le" | undefined, videoImageFormat: "jpeg" | "none" | "png") => "none" | "valid";
|
|
12
13
|
export declare const validateStillImageFormat: (imageFormat: "jpeg" | "pdf" | "png" | "webp") => void;
|
package/dist/image-format.js
CHANGED
|
@@ -2,22 +2,26 @@
|
|
|
2
2
|
// Keeping the default image format PNG if you don't pass a
|
|
3
3
|
// value to the renderer for backwards compatibility.
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
-
exports.validateStillImageFormat = exports.validateSelectedPixelFormatAndImageFormatCombination = exports.DEFAULT_STILL_IMAGE_FORMAT = exports.DEFAULT_VIDEO_IMAGE_FORMAT = exports.validStillImageFormats = exports.validVideoImageFormats = void 0;
|
|
5
|
+
exports.validateStillImageFormat = exports.validateSelectedPixelFormatAndImageFormatCombination = exports.validateVideoImageFormat = exports.DEFAULT_STILL_IMAGE_FORMAT = exports.DEFAULT_VIDEO_IMAGE_FORMAT = exports.validStillImageFormats = exports.validVideoImageFormats = void 0;
|
|
6
6
|
exports.validVideoImageFormats = ['png', 'jpeg', 'none'];
|
|
7
7
|
exports.validStillImageFormats = ['png', 'jpeg', 'pdf', 'webp'];
|
|
8
8
|
exports.DEFAULT_VIDEO_IMAGE_FORMAT = 'jpeg';
|
|
9
9
|
exports.DEFAULT_STILL_IMAGE_FORMAT = 'png';
|
|
10
|
+
const validateVideoImageFormat = (videoImageFormat) => {
|
|
11
|
+
if (!exports.validVideoImageFormats.includes(videoImageFormat)) {
|
|
12
|
+
throw new TypeError(`Value ${videoImageFormat} is not valid as an image format.`);
|
|
13
|
+
}
|
|
14
|
+
};
|
|
15
|
+
exports.validateVideoImageFormat = validateVideoImageFormat;
|
|
10
16
|
// By returning a value, we improve testability as we can specifically test certain branches
|
|
11
17
|
const validateSelectedPixelFormatAndImageFormatCombination = (pixelFormat, videoImageFormat) => {
|
|
18
|
+
(0, exports.validateVideoImageFormat)(videoImageFormat);
|
|
12
19
|
if (videoImageFormat === 'none') {
|
|
13
20
|
return 'none';
|
|
14
21
|
}
|
|
15
22
|
if (typeof pixelFormat === 'undefined') {
|
|
16
23
|
return 'valid';
|
|
17
24
|
}
|
|
18
|
-
if (!exports.validVideoImageFormats.includes(videoImageFormat)) {
|
|
19
|
-
throw new TypeError(`Value ${videoImageFormat} is not valid as an image format.`);
|
|
20
|
-
}
|
|
21
25
|
if (pixelFormat !== 'yuva420p' && pixelFormat !== 'yuva444p10le') {
|
|
22
26
|
return 'valid';
|
|
23
27
|
}
|
package/dist/index.d.ts
CHANGED
|
@@ -115,6 +115,7 @@ export declare const RenderInternals: {
|
|
|
115
115
|
SymbolicateableError: typeof SymbolicateableError;
|
|
116
116
|
getFramesToRender: (frameRange: import("./frame-range").ResolvedFrameRange[] | import("./frame-range").ResolvedFrameRange, everyNthFrame: number) => number[];
|
|
117
117
|
getExtensionOfFilename: (filename: string | null) => string | null;
|
|
118
|
+
getMp4BrandForExtension: (extension: string | null) => string | null;
|
|
118
119
|
getDesiredPort: ({ desiredPort, from, hostsToTry, to, onPortUnavailable, }: {
|
|
119
120
|
desiredPort: number | undefined;
|
|
120
121
|
from: number;
|
|
@@ -152,6 +153,13 @@ export declare const RenderInternals: {
|
|
|
152
153
|
registerErrorSymbolicationLock: () => number;
|
|
153
154
|
unlockErrorSymbolicationLock: (id: number) => void;
|
|
154
155
|
canUseParallelEncoding: (codec: "aac" | "av1" | "gif" | "h264" | "h264-mkv" | "h264-ts" | "h265" | "mp3" | "prores" | "vp8" | "vp9" | "wav") => boolean;
|
|
156
|
+
probeSharedMemoryCapture: ({ browserExecutable, chromeMode, chromiumOptions, binariesDirectory, logLevel, }: {
|
|
157
|
+
browserExecutable: string | null;
|
|
158
|
+
chromeMode: "chrome-for-testing" | "headless-shell";
|
|
159
|
+
chromiumOptions: import("./open-browser").ChromiumOptions;
|
|
160
|
+
binariesDirectory: string | null;
|
|
161
|
+
logLevel: "error" | "info" | "trace" | "verbose" | "warn";
|
|
162
|
+
}) => Promise<boolean>;
|
|
155
163
|
mimeContentType: typeof mimeContentType;
|
|
156
164
|
mimeLookup: typeof mimeLookup;
|
|
157
165
|
validateConcurrency: ({ setting, value, checkIfValidForCurrentMachine, }: {
|
|
@@ -504,6 +512,7 @@ export declare const RenderInternals: {
|
|
|
504
512
|
} & import(".").ToOptions<Omit<{
|
|
505
513
|
readonly mediaCacheSizeInBytes: {
|
|
506
514
|
name: string;
|
|
515
|
+
addedIn: string;
|
|
507
516
|
cliFlag: "media-cache-size-in-bytes";
|
|
508
517
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
509
518
|
ssrName: "mediaCacheSizeInBytes";
|
|
@@ -523,6 +532,7 @@ export declare const RenderInternals: {
|
|
|
523
532
|
};
|
|
524
533
|
readonly offthreadVideoCacheSizeInBytes: {
|
|
525
534
|
name: string;
|
|
535
|
+
addedIn: string;
|
|
526
536
|
cliFlag: "offthreadvideo-cache-size-in-bytes";
|
|
527
537
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
528
538
|
ssrName: "offthreadVideoCacheSizeInBytes";
|
|
@@ -542,6 +552,7 @@ export declare const RenderInternals: {
|
|
|
542
552
|
};
|
|
543
553
|
readonly offthreadVideoThreads: {
|
|
544
554
|
name: string;
|
|
555
|
+
addedIn: string;
|
|
545
556
|
cliFlag: "offthreadvideo-video-threads";
|
|
546
557
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
547
558
|
ssrName: "offthreadVideoThreads";
|
|
@@ -561,6 +572,7 @@ export declare const RenderInternals: {
|
|
|
561
572
|
};
|
|
562
573
|
readonly jpegQuality: {
|
|
563
574
|
name: string;
|
|
575
|
+
addedIn: string;
|
|
564
576
|
cliFlag: "jpeg-quality";
|
|
565
577
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
566
578
|
ssrName: string;
|
|
@@ -578,6 +590,7 @@ export declare const RenderInternals: {
|
|
|
578
590
|
readonly logLevel: {
|
|
579
591
|
cliFlag: "log";
|
|
580
592
|
name: string;
|
|
593
|
+
addedIn: string;
|
|
581
594
|
ssrName: string;
|
|
582
595
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
583
596
|
docLink: string;
|
|
@@ -595,6 +608,7 @@ export declare const RenderInternals: {
|
|
|
595
608
|
};
|
|
596
609
|
readonly timeoutInMilliseconds: {
|
|
597
610
|
name: string;
|
|
611
|
+
addedIn: string;
|
|
598
612
|
cliFlag: "timeout";
|
|
599
613
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
600
614
|
ssrName: "timeoutInMilliseconds";
|
|
@@ -611,6 +625,7 @@ export declare const RenderInternals: {
|
|
|
611
625
|
};
|
|
612
626
|
readonly binariesDirectory: {
|
|
613
627
|
name: string;
|
|
628
|
+
addedIn: string;
|
|
614
629
|
cliFlag: "binaries-directory";
|
|
615
630
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
616
631
|
ssrName: "binariesDirectory";
|
|
@@ -627,6 +642,7 @@ export declare const RenderInternals: {
|
|
|
627
642
|
};
|
|
628
643
|
readonly onBrowserDownload: {
|
|
629
644
|
name: string;
|
|
645
|
+
addedIn: string;
|
|
630
646
|
cliFlag: "on-browser-download";
|
|
631
647
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
632
648
|
ssrName: "onBrowserDownload";
|
|
@@ -639,6 +655,7 @@ export declare const RenderInternals: {
|
|
|
639
655
|
readonly chromeMode: {
|
|
640
656
|
cliFlag: "chrome-mode";
|
|
641
657
|
name: string;
|
|
658
|
+
addedIn: string;
|
|
642
659
|
ssrName: string;
|
|
643
660
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
644
661
|
docLink: string;
|
|
@@ -654,6 +671,7 @@ export declare const RenderInternals: {
|
|
|
654
671
|
};
|
|
655
672
|
readonly apiKey: {
|
|
656
673
|
name: string;
|
|
674
|
+
addedIn: string;
|
|
657
675
|
cliFlag: "api-key";
|
|
658
676
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
659
677
|
ssrName: "apiKey";
|
|
@@ -670,6 +688,7 @@ export declare const RenderInternals: {
|
|
|
670
688
|
};
|
|
671
689
|
readonly licenseKey: {
|
|
672
690
|
name: string;
|
|
691
|
+
addedIn: string;
|
|
673
692
|
cliFlag: "license-key";
|
|
674
693
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
675
694
|
ssrName: "licenseKey";
|
|
@@ -699,6 +718,7 @@ export declare const RenderInternals: {
|
|
|
699
718
|
readonly logLevel: {
|
|
700
719
|
cliFlag: "log";
|
|
701
720
|
name: string;
|
|
721
|
+
addedIn: string;
|
|
702
722
|
ssrName: string;
|
|
703
723
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
704
724
|
docLink: string;
|
|
@@ -716,6 +736,7 @@ export declare const RenderInternals: {
|
|
|
716
736
|
};
|
|
717
737
|
readonly onBrowserDownload: {
|
|
718
738
|
name: string;
|
|
739
|
+
addedIn: string;
|
|
719
740
|
cliFlag: "on-browser-download";
|
|
720
741
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
721
742
|
ssrName: "onBrowserDownload";
|
|
@@ -728,6 +749,7 @@ export declare const RenderInternals: {
|
|
|
728
749
|
readonly chromeMode: {
|
|
729
750
|
cliFlag: "chrome-mode";
|
|
730
751
|
name: string;
|
|
752
|
+
addedIn: string;
|
|
731
753
|
ssrName: string;
|
|
732
754
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
733
755
|
docLink: string;
|
|
@@ -758,6 +780,7 @@ export declare const RenderInternals: {
|
|
|
758
780
|
} & import(".").ToOptions<{
|
|
759
781
|
readonly mediaCacheSizeInBytes: {
|
|
760
782
|
name: string;
|
|
783
|
+
addedIn: string;
|
|
761
784
|
cliFlag: "media-cache-size-in-bytes";
|
|
762
785
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
763
786
|
ssrName: "mediaCacheSizeInBytes";
|
|
@@ -777,6 +800,7 @@ export declare const RenderInternals: {
|
|
|
777
800
|
};
|
|
778
801
|
readonly offthreadVideoCacheSizeInBytes: {
|
|
779
802
|
name: string;
|
|
803
|
+
addedIn: string;
|
|
780
804
|
cliFlag: "offthreadvideo-cache-size-in-bytes";
|
|
781
805
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
782
806
|
ssrName: "offthreadVideoCacheSizeInBytes";
|
|
@@ -796,6 +820,7 @@ export declare const RenderInternals: {
|
|
|
796
820
|
};
|
|
797
821
|
readonly offthreadVideoThreads: {
|
|
798
822
|
name: string;
|
|
823
|
+
addedIn: string;
|
|
799
824
|
cliFlag: "offthreadvideo-video-threads";
|
|
800
825
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
801
826
|
ssrName: "offthreadVideoThreads";
|
|
@@ -816,6 +841,7 @@ export declare const RenderInternals: {
|
|
|
816
841
|
readonly logLevel: {
|
|
817
842
|
cliFlag: "log";
|
|
818
843
|
name: string;
|
|
844
|
+
addedIn: string;
|
|
819
845
|
ssrName: string;
|
|
820
846
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
821
847
|
docLink: string;
|
|
@@ -833,6 +859,7 @@ export declare const RenderInternals: {
|
|
|
833
859
|
};
|
|
834
860
|
readonly timeoutInMilliseconds: {
|
|
835
861
|
name: string;
|
|
862
|
+
addedIn: string;
|
|
836
863
|
cliFlag: "timeout";
|
|
837
864
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
838
865
|
ssrName: "timeoutInMilliseconds";
|
|
@@ -849,6 +876,7 @@ export declare const RenderInternals: {
|
|
|
849
876
|
};
|
|
850
877
|
readonly binariesDirectory: {
|
|
851
878
|
name: string;
|
|
879
|
+
addedIn: string;
|
|
852
880
|
cliFlag: "binaries-directory";
|
|
853
881
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
854
882
|
ssrName: "binariesDirectory";
|
|
@@ -865,6 +893,7 @@ export declare const RenderInternals: {
|
|
|
865
893
|
};
|
|
866
894
|
readonly onBrowserDownload: {
|
|
867
895
|
name: string;
|
|
896
|
+
addedIn: string;
|
|
868
897
|
cliFlag: "on-browser-download";
|
|
869
898
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
870
899
|
ssrName: "onBrowserDownload";
|
|
@@ -877,6 +906,7 @@ export declare const RenderInternals: {
|
|
|
877
906
|
readonly chromeMode: {
|
|
878
907
|
cliFlag: "chrome-mode";
|
|
879
908
|
name: string;
|
|
909
|
+
addedIn: string;
|
|
880
910
|
ssrName: string;
|
|
881
911
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
882
912
|
docLink: string;
|
|
@@ -909,6 +939,7 @@ export declare const RenderInternals: {
|
|
|
909
939
|
} & import(".").ToOptions<{
|
|
910
940
|
readonly mediaCacheSizeInBytes: {
|
|
911
941
|
name: string;
|
|
942
|
+
addedIn: string;
|
|
912
943
|
cliFlag: "media-cache-size-in-bytes";
|
|
913
944
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
914
945
|
ssrName: "mediaCacheSizeInBytes";
|
|
@@ -928,6 +959,7 @@ export declare const RenderInternals: {
|
|
|
928
959
|
};
|
|
929
960
|
readonly offthreadVideoCacheSizeInBytes: {
|
|
930
961
|
name: string;
|
|
962
|
+
addedIn: string;
|
|
931
963
|
cliFlag: "offthreadvideo-cache-size-in-bytes";
|
|
932
964
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
933
965
|
ssrName: "offthreadVideoCacheSizeInBytes";
|
|
@@ -947,6 +979,7 @@ export declare const RenderInternals: {
|
|
|
947
979
|
};
|
|
948
980
|
readonly offthreadVideoThreads: {
|
|
949
981
|
name: string;
|
|
982
|
+
addedIn: string;
|
|
950
983
|
cliFlag: "offthreadvideo-video-threads";
|
|
951
984
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
952
985
|
ssrName: "offthreadVideoThreads";
|
|
@@ -967,6 +1000,7 @@ export declare const RenderInternals: {
|
|
|
967
1000
|
readonly logLevel: {
|
|
968
1001
|
cliFlag: "log";
|
|
969
1002
|
name: string;
|
|
1003
|
+
addedIn: string;
|
|
970
1004
|
ssrName: string;
|
|
971
1005
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
972
1006
|
docLink: string;
|
|
@@ -984,6 +1018,7 @@ export declare const RenderInternals: {
|
|
|
984
1018
|
};
|
|
985
1019
|
readonly timeoutInMilliseconds: {
|
|
986
1020
|
name: string;
|
|
1021
|
+
addedIn: string;
|
|
987
1022
|
cliFlag: "timeout";
|
|
988
1023
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
989
1024
|
ssrName: "timeoutInMilliseconds";
|
|
@@ -1000,6 +1035,7 @@ export declare const RenderInternals: {
|
|
|
1000
1035
|
};
|
|
1001
1036
|
readonly binariesDirectory: {
|
|
1002
1037
|
name: string;
|
|
1038
|
+
addedIn: string;
|
|
1003
1039
|
cliFlag: "binaries-directory";
|
|
1004
1040
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
1005
1041
|
ssrName: "binariesDirectory";
|
|
@@ -1016,6 +1052,7 @@ export declare const RenderInternals: {
|
|
|
1016
1052
|
};
|
|
1017
1053
|
readonly onBrowserDownload: {
|
|
1018
1054
|
name: string;
|
|
1055
|
+
addedIn: string;
|
|
1019
1056
|
cliFlag: "on-browser-download";
|
|
1020
1057
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
1021
1058
|
ssrName: "onBrowserDownload";
|
|
@@ -1028,6 +1065,7 @@ export declare const RenderInternals: {
|
|
|
1028
1065
|
readonly chromeMode: {
|
|
1029
1066
|
cliFlag: "chrome-mode";
|
|
1030
1067
|
name: string;
|
|
1068
|
+
addedIn: string;
|
|
1031
1069
|
ssrName: string;
|
|
1032
1070
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
1033
1071
|
docLink: string;
|
|
@@ -1057,6 +1095,8 @@ export declare const RenderInternals: {
|
|
|
1057
1095
|
browserExecutable: import("./browser-executable").BrowserExecutable;
|
|
1058
1096
|
onBrowserLog: ((log: import("./browser-log").BrowserLog) => void) | null;
|
|
1059
1097
|
onFrameBuffer: ((buffer: Buffer, frame: number) => void | Promise<void>) | null;
|
|
1098
|
+
onFrame: ((frame: import("./remotion-shared-memory").CapturedFrame, frameNumber: number) => void | Promise<void>) | null;
|
|
1099
|
+
remotionSharedMemory: import("./remotion-shared-memory").RemotionSharedMemoryCapture | null;
|
|
1060
1100
|
onDownload: import(".").RenderMediaOnDownload | null;
|
|
1061
1101
|
chromiumOptions: import("./open-browser").ChromiumOptions;
|
|
1062
1102
|
scale: number;
|
|
@@ -1077,6 +1117,7 @@ export declare const RenderInternals: {
|
|
|
1077
1117
|
} & import(".").ToOptions<{
|
|
1078
1118
|
readonly mediaCacheSizeInBytes: {
|
|
1079
1119
|
name: string;
|
|
1120
|
+
addedIn: string;
|
|
1080
1121
|
cliFlag: "media-cache-size-in-bytes";
|
|
1081
1122
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
1082
1123
|
ssrName: "mediaCacheSizeInBytes";
|
|
@@ -1096,6 +1137,7 @@ export declare const RenderInternals: {
|
|
|
1096
1137
|
};
|
|
1097
1138
|
readonly forSeamlessAacConcatenation: {
|
|
1098
1139
|
name: string;
|
|
1140
|
+
addedIn: string;
|
|
1099
1141
|
cliFlag: "for-seamless-aac-concatenation";
|
|
1100
1142
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
1101
1143
|
docLink: string;
|
|
@@ -1115,6 +1157,7 @@ export declare const RenderInternals: {
|
|
|
1115
1157
|
};
|
|
1116
1158
|
readonly offthreadVideoCacheSizeInBytes: {
|
|
1117
1159
|
name: string;
|
|
1160
|
+
addedIn: string;
|
|
1118
1161
|
cliFlag: "offthreadvideo-cache-size-in-bytes";
|
|
1119
1162
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
1120
1163
|
ssrName: "offthreadVideoCacheSizeInBytes";
|
|
@@ -1134,6 +1177,7 @@ export declare const RenderInternals: {
|
|
|
1134
1177
|
};
|
|
1135
1178
|
readonly offthreadVideoThreads: {
|
|
1136
1179
|
name: string;
|
|
1180
|
+
addedIn: string;
|
|
1137
1181
|
cliFlag: "offthreadvideo-video-threads";
|
|
1138
1182
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
1139
1183
|
ssrName: "offthreadVideoThreads";
|
|
@@ -1153,6 +1197,7 @@ export declare const RenderInternals: {
|
|
|
1153
1197
|
};
|
|
1154
1198
|
readonly jpegQuality: {
|
|
1155
1199
|
name: string;
|
|
1200
|
+
addedIn: string;
|
|
1156
1201
|
cliFlag: "jpeg-quality";
|
|
1157
1202
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
1158
1203
|
ssrName: string;
|
|
@@ -1170,6 +1215,7 @@ export declare const RenderInternals: {
|
|
|
1170
1215
|
readonly logLevel: {
|
|
1171
1216
|
cliFlag: "log";
|
|
1172
1217
|
name: string;
|
|
1218
|
+
addedIn: string;
|
|
1173
1219
|
ssrName: string;
|
|
1174
1220
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
1175
1221
|
docLink: string;
|
|
@@ -1187,6 +1233,7 @@ export declare const RenderInternals: {
|
|
|
1187
1233
|
};
|
|
1188
1234
|
readonly timeoutInMilliseconds: {
|
|
1189
1235
|
name: string;
|
|
1236
|
+
addedIn: string;
|
|
1190
1237
|
cliFlag: "timeout";
|
|
1191
1238
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
1192
1239
|
ssrName: "timeoutInMilliseconds";
|
|
@@ -1203,6 +1250,7 @@ export declare const RenderInternals: {
|
|
|
1203
1250
|
};
|
|
1204
1251
|
readonly binariesDirectory: {
|
|
1205
1252
|
name: string;
|
|
1253
|
+
addedIn: string;
|
|
1206
1254
|
cliFlag: "binaries-directory";
|
|
1207
1255
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
1208
1256
|
ssrName: "binariesDirectory";
|
|
@@ -1219,6 +1267,7 @@ export declare const RenderInternals: {
|
|
|
1219
1267
|
};
|
|
1220
1268
|
readonly onBrowserDownload: {
|
|
1221
1269
|
name: string;
|
|
1270
|
+
addedIn: string;
|
|
1222
1271
|
cliFlag: "on-browser-download";
|
|
1223
1272
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
1224
1273
|
ssrName: "onBrowserDownload";
|
|
@@ -1231,6 +1280,7 @@ export declare const RenderInternals: {
|
|
|
1231
1280
|
readonly chromeMode: {
|
|
1232
1281
|
cliFlag: "chrome-mode";
|
|
1233
1282
|
name: string;
|
|
1283
|
+
addedIn: string;
|
|
1234
1284
|
ssrName: string;
|
|
1235
1285
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
1236
1286
|
docLink: string;
|
|
@@ -1246,10 +1296,11 @@ export declare const RenderInternals: {
|
|
|
1246
1296
|
};
|
|
1247
1297
|
readonly imageSequencePattern: {
|
|
1248
1298
|
name: string;
|
|
1299
|
+
addedIn: string;
|
|
1249
1300
|
cliFlag: "image-sequence-pattern";
|
|
1250
1301
|
ssrName: string;
|
|
1251
1302
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
1252
|
-
docLink:
|
|
1303
|
+
docLink: string;
|
|
1253
1304
|
type: string | null;
|
|
1254
1305
|
getValue: ({ commandLine }: {
|
|
1255
1306
|
commandLine: Record<string, unknown>;
|
|
@@ -1266,6 +1317,7 @@ export declare const RenderInternals: {
|
|
|
1266
1317
|
};
|
|
1267
1318
|
readonly sampleRate: {
|
|
1268
1319
|
name: string;
|
|
1320
|
+
addedIn: string;
|
|
1269
1321
|
cliFlag: "sample-rate";
|
|
1270
1322
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
1271
1323
|
ssrName: "sampleRate";
|
|
@@ -1333,6 +1385,7 @@ export declare const RenderInternals: {
|
|
|
1333
1385
|
readonly logLevel: {
|
|
1334
1386
|
cliFlag: "log";
|
|
1335
1387
|
name: string;
|
|
1388
|
+
addedIn: string;
|
|
1336
1389
|
ssrName: string;
|
|
1337
1390
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
1338
1391
|
docLink: string;
|
|
@@ -1350,6 +1403,7 @@ export declare const RenderInternals: {
|
|
|
1350
1403
|
};
|
|
1351
1404
|
readonly onBrowserDownload: {
|
|
1352
1405
|
name: string;
|
|
1406
|
+
addedIn: string;
|
|
1353
1407
|
cliFlag: "on-browser-download";
|
|
1354
1408
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
1355
1409
|
ssrName: "onBrowserDownload";
|
|
@@ -1362,6 +1416,7 @@ export declare const RenderInternals: {
|
|
|
1362
1416
|
readonly chromeMode: {
|
|
1363
1417
|
cliFlag: "chrome-mode";
|
|
1364
1418
|
name: string;
|
|
1419
|
+
addedIn: string;
|
|
1365
1420
|
ssrName: string;
|
|
1366
1421
|
description: () => import("react/jsx-runtime").JSX.Element;
|
|
1367
1422
|
docLink: string;
|
|
@@ -1380,7 +1435,7 @@ export declare const RenderInternals: {
|
|
|
1380
1435
|
DEFAULT_RENDER_FRAMES_OFFTHREAD_VIDEO_THREADS: number;
|
|
1381
1436
|
canConcatVideoSeamlessly: (codec: "aac" | "av1" | "gif" | "h264" | "h264-mkv" | "h264-ts" | "h265" | "mp3" | "prores" | "vp8" | "vp9" | "wav") => codec is "h264";
|
|
1382
1437
|
canConcatAudioSeamlessly: (audioCodec: "aac" | "mp3" | "opus" | "pcm-16" | null, chunkDurationInFrames: number) => boolean;
|
|
1383
|
-
internalCombineChunks: ({ outputLocation: output, onProgress, codec, fps, numberOfGifLoops, audioBitrate, indent, logLevel, binariesDirectory, cancelSignal, metadata, audioFiles, videoFiles, framesPerChunk, audioCodec, preferLossless, everyNthFrame, frameRange, compositionDurationInFrames, sampleRate, }: {
|
|
1438
|
+
internalCombineChunks: ({ outputLocation: output, onProgress, codec, fps, numberOfGifLoops, audioBitrate, indent, logLevel, binariesDirectory, cancelSignal, metadata, audioFiles, videoFiles, framesPerChunk, audioCodec, preferLossless, everyNthFrame, frameRange, compositionDurationInFrames, sampleRate, separateAudioTo, }: {
|
|
1384
1439
|
outputLocation: string;
|
|
1385
1440
|
audioFiles: string[];
|
|
1386
1441
|
codec: "aac" | "av1" | "gif" | "h264" | "h264-mkv" | "h264-ts" | "h265" | "mp3" | "prores" | "vp8" | "vp9" | "wav";
|
|
@@ -1403,6 +1458,7 @@ export declare const RenderInternals: {
|
|
|
1403
1458
|
sampleRate: number;
|
|
1404
1459
|
} & {
|
|
1405
1460
|
indent: boolean;
|
|
1461
|
+
separateAudioTo: string | null;
|
|
1406
1462
|
}) => Promise<void>;
|
|
1407
1463
|
defaultOnLog: import(".").OnLog;
|
|
1408
1464
|
};
|
package/dist/index.js
CHANGED
|
@@ -64,6 +64,7 @@ const get_duration_from_frame_range_1 = require("./get-duration-from-frame-range
|
|
|
64
64
|
const get_extension_from_codec_1 = require("./get-extension-from-codec");
|
|
65
65
|
const get_extension_of_filename_1 = require("./get-extension-of-filename");
|
|
66
66
|
const get_frame_to_render_1 = require("./get-frame-to-render");
|
|
67
|
+
const get_mp4_brand_1 = require("./get-mp4-brand");
|
|
67
68
|
const get_port_1 = require("./get-port");
|
|
68
69
|
const image_format_1 = require("./image-format");
|
|
69
70
|
const is_serve_url_1 = require("./is-serve-url");
|
|
@@ -78,6 +79,7 @@ const perf = __importStar(require("./perf"));
|
|
|
78
79
|
const pixel_format_1 = require("./pixel-format");
|
|
79
80
|
const port_config_1 = require("./port-config");
|
|
80
81
|
const prepare_server_1 = require("./prepare-server");
|
|
82
|
+
const probe_shared_memory_capture_1 = require("./probe-shared-memory-capture");
|
|
81
83
|
const render_frames_1 = require("./render-frames");
|
|
82
84
|
const render_media_1 = require("./render-media");
|
|
83
85
|
const render_still_1 = require("./render-still");
|
|
@@ -164,12 +166,14 @@ exports.RenderInternals = {
|
|
|
164
166
|
SymbolicateableError: symbolicateable_error_1.SymbolicateableError,
|
|
165
167
|
getFramesToRender: get_duration_from_frame_range_1.getFramesToRender,
|
|
166
168
|
getExtensionOfFilename: get_extension_of_filename_1.getExtensionOfFilename,
|
|
169
|
+
getMp4BrandForExtension: get_mp4_brand_1.getMp4BrandForExtension,
|
|
167
170
|
getDesiredPort: get_port_1.getDesiredPort,
|
|
168
171
|
isPathInside: is_path_inside_1.isPathInside,
|
|
169
172
|
execa: execa_1.default,
|
|
170
173
|
registerErrorSymbolicationLock: wait_for_symbolication_error_to_be_done_1.registerErrorSymbolicationLock,
|
|
171
174
|
unlockErrorSymbolicationLock: wait_for_symbolication_error_to_be_done_1.unlockErrorSymbolicationLock,
|
|
172
175
|
canUseParallelEncoding: can_use_parallel_encoding_1.canUseParallelEncoding,
|
|
176
|
+
probeSharedMemoryCapture: probe_shared_memory_capture_1.probeSharedMemoryCapture,
|
|
173
177
|
mimeContentType: mime_types_1.mimeContentType,
|
|
174
178
|
mimeLookup: mime_types_1.mimeLookup,
|
|
175
179
|
validateConcurrency: validate_concurrency_1.validateConcurrency,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const getAvailableMemoryFromMacos: (logLevel: "error" | "info" | "trace" | "verbose" | "warn") => number | null;
|