@remotion/renderer 4.0.0-alpha13 → 4.0.0-alpha16
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/assets/download-and-map-assets-to-file.d.ts +6 -4
- package/dist/assets/download-and-map-assets-to-file.js +30 -6
- package/dist/assets/download-file.d.ts +2 -2
- package/dist/assets/download-map.d.ts +3 -3
- package/dist/assets/ffmpeg-volume-expression.d.ts +2 -2
- package/dist/assets/get-audio-channels.d.ts +1 -0
- package/dist/assets/get-audio-channels.js +10 -5
- package/dist/assets/read-file.js +1 -1
- package/dist/assets/types.d.ts +4 -4
- package/dist/audio-codec.d.ts +2 -2
- package/dist/browser/Browser.d.ts +9 -9
- package/dist/browser/Browser.js +26 -32
- package/dist/browser/BrowserFetcher.d.ts +1 -1
- package/dist/browser/BrowserPage.d.ts +11 -2
- package/dist/browser/BrowserPage.js +47 -12
- package/dist/browser/BrowserRunner.js +19 -2
- package/dist/browser/ConsoleMessage.d.ts +1 -1
- package/dist/browser/DOMWorld.js +8 -8
- package/dist/browser/EvalTypes.d.ts +7 -7
- package/dist/browser/FrameManager.js +11 -11
- package/dist/browser/JSHandle.js +14 -14
- package/dist/browser/LaunchOptions.d.ts +1 -1
- package/dist/browser/Launcher.js +0 -1
- package/dist/browser/LifecycleWatcher.d.ts +1 -1
- package/dist/browser/NetworkEventManager.d.ts +4 -4
- package/dist/browser/NodeWebSocketTransport.js +16 -16
- package/dist/browser/Product.d.ts +1 -1
- package/dist/browser/Target.d.ts +2 -1
- package/dist/browser/Target.js +8 -2
- package/dist/browser/devtools-types.d.ts +10 -10
- package/dist/browser/mitt/index.d.ts +6 -6
- package/dist/browser/revisions.d.ts +1 -1
- package/dist/browser/should-log-message.d.ts +24 -0
- package/dist/browser/should-log-message.js +72 -0
- package/dist/browser-executable.d.ts +1 -1
- package/dist/browser-log.d.ts +1 -1
- package/dist/browser.d.ts +1 -1
- package/dist/chalk/index.d.ts +4 -4
- package/dist/codec-supports-media.d.ts +1 -1
- package/dist/codec.d.ts +2 -2
- package/dist/combine-videos.d.ts +1 -1
- package/dist/compositor/compose.d.ts +11 -2
- package/dist/compositor/compose.js +15 -4
- package/dist/compositor/compositor.d.ts +1 -1
- package/dist/compositor/compositor.js +19 -7
- package/dist/compositor/payloads.d.ts +5 -5
- package/dist/crf.d.ts +1 -1
- package/dist/error-handling/symbolicate-error.js +4 -2
- package/dist/ffmpeg-override.d.ts +1 -1
- package/dist/file-extensions.d.ts +1 -1
- package/dist/frame-range.d.ts +1 -1
- package/dist/get-browser-instance.d.ts +6 -1
- package/dist/get-browser-instance.js +9 -4
- package/dist/get-compositions.d.ts +18 -11
- package/dist/get-compositions.js +66 -49
- package/dist/get-frame-padded-index.d.ts +1 -1
- package/dist/image-format.d.ts +3 -3
- package/dist/index.d.ts +106 -16
- package/dist/index.js +25 -13
- package/dist/jpeg-quality.d.ts +1 -0
- package/dist/jpeg-quality.js +2 -1
- package/dist/log-level.d.ts +1 -1
- package/dist/logger.d.ts +5 -3
- package/dist/logger.js +12 -5
- package/dist/make-cancel-signal.d.ts +2 -2
- package/dist/merge-audio-track.d.ts +1 -1
- package/dist/mime-types.js +1 -1
- package/dist/offthread-video-server.d.ts +36 -4
- package/dist/offthread-video-server.js +48 -4
- package/dist/open-browser.d.ts +19 -10
- package/dist/open-browser.js +34 -21
- package/dist/options/option.d.ts +1 -1
- package/dist/parse-browser-error-stack.d.ts +1 -1
- package/dist/perf.d.ts +1 -1
- package/dist/pixel-format.d.ts +1 -1
- package/dist/prepare-server.d.ts +20 -8
- package/dist/prepare-server.js +52 -8
- package/dist/preprocess-audio-track.d.ts +2 -2
- package/dist/prespawn-ffmpeg.d.ts +1 -1
- package/dist/prespawn-ffmpeg.js +7 -7
- package/dist/prores-profile.d.ts +1 -1
- package/dist/puppeteer-screenshot.js +1 -2
- package/dist/render-frames.d.ts +32 -11
- package/dist/render-frames.js +112 -77
- package/dist/render-media.d.ts +50 -21
- package/dist/render-media.js +249 -197
- package/dist/render-still.d.ts +33 -18
- package/dist/render-still.js +71 -43
- package/dist/replace-browser.d.ts +1 -1
- package/dist/select-composition.d.ts +19 -11
- package/dist/select-composition.js +79 -42
- package/dist/serve-static.d.ts +2 -3
- package/dist/serve-static.js +2 -4
- package/dist/set-props-and-env.d.ts +1 -1
- package/dist/stitch-frames-to-video.d.ts +32 -10
- package/dist/stitch-frames-to-video.js +121 -99
- package/dist/stringify-ffmpeg-filter.d.ts +2 -2
- package/dist/symbolicate-stacktrace.d.ts +16 -3
- package/dist/symbolicate-stacktrace.js +49 -24
- package/dist/truthy.d.ts +1 -1
- package/dist/types.d.ts +2 -2
- package/dist/validate-opengl-renderer.d.ts +1 -1
- package/package.json +11 -11
package/dist/index.d.ts
CHANGED
|
@@ -5,7 +5,6 @@ import { SymbolicateableError } from './error-handling/symbolicateable-error';
|
|
|
5
5
|
import { mimeContentType, mimeLookup } from './mime-types';
|
|
6
6
|
import * as perf from './perf';
|
|
7
7
|
export type { RenderMediaOnDownload } from './assets/download-and-map-assets-to-file';
|
|
8
|
-
export type { DownloadMap } from './assets/download-map';
|
|
9
8
|
export { AudioCodec } from './audio-codec';
|
|
10
9
|
export { Browser } from './browser';
|
|
11
10
|
export { BrowserExecutable } from './browser-executable';
|
|
@@ -17,7 +16,7 @@ export { ErrorWithStackFrame } from './error-handling/handle-javascript-exceptio
|
|
|
17
16
|
export type { FfmpegOverrideFn } from './ffmpeg-override';
|
|
18
17
|
export { FileExtension } from './file-extensions';
|
|
19
18
|
export { FrameRange } from './frame-range';
|
|
20
|
-
export { getCompositions } from './get-compositions';
|
|
19
|
+
export { getCompositions, GetCompositionsOptions } from './get-compositions';
|
|
21
20
|
export { ImageFormat, StillImageFormat, validateSelectedPixelFormatAndImageFormatCombination, VideoImageFormat, } from './image-format';
|
|
22
21
|
export type { LogLevel } from './log-level';
|
|
23
22
|
export { CancelSignal, makeCancelSignal } from './make-cancel-signal';
|
|
@@ -25,12 +24,13 @@ export { openBrowser } from './open-browser';
|
|
|
25
24
|
export type { ChromiumOptions } from './open-browser';
|
|
26
25
|
export { RemotionOption } from './options/option';
|
|
27
26
|
export { PixelFormat } from './pixel-format';
|
|
27
|
+
export { RemotionServer } from './prepare-server';
|
|
28
28
|
export { ProResProfile } from './prores-profile';
|
|
29
|
-
export { renderFrames } from './render-frames';
|
|
30
|
-
export { renderMedia, RenderMediaOnProgress, RenderMediaOptions, SlowFrame, StitchingState, } from './render-media';
|
|
29
|
+
export { renderFrames, RenderFramesOptions } from './render-frames';
|
|
30
|
+
export { InternalRenderMediaOptions, renderMedia, RenderMediaOnProgress, RenderMediaOptions, SlowFrame, StitchingState, } from './render-media';
|
|
31
31
|
export { renderStill, RenderStillOptions } from './render-still';
|
|
32
|
-
export { selectComposition } from './select-composition';
|
|
33
|
-
export {
|
|
32
|
+
export { selectComposition, SelectCompositionOptions, } from './select-composition';
|
|
33
|
+
export { stitchFramesToVideo, StitchFramesToVideoOptions, } from './stitch-frames-to-video';
|
|
34
34
|
export { SymbolicatedStackFrame } from './symbolicate-stacktrace';
|
|
35
35
|
export { OnStartData, RenderFramesOutput } from './types';
|
|
36
36
|
export { OpenGlRenderer } from './validate-opengl-renderer';
|
|
@@ -40,8 +40,6 @@ export declare const RenderInternals: {
|
|
|
40
40
|
getActualConcurrency: (userPreference: string | number | null) => number;
|
|
41
41
|
serveStatic: (path: string | null, options: {
|
|
42
42
|
port: number | null;
|
|
43
|
-
onDownload: import("./assets/download-and-map-assets-to-file").RenderMediaOnDownload;
|
|
44
|
-
onError: (err: Error) => void;
|
|
45
43
|
downloadMap: import("./assets/download-map").DownloadMap;
|
|
46
44
|
remotionRoot: string;
|
|
47
45
|
concurrency: number;
|
|
@@ -51,6 +49,7 @@ export declare const RenderInternals: {
|
|
|
51
49
|
port: number;
|
|
52
50
|
close: () => Promise<void>;
|
|
53
51
|
compositor: import("./compositor/compositor").Compositor;
|
|
52
|
+
events: import("./offthread-video-server").OffthreadVideoServerEmitter;
|
|
54
53
|
}>;
|
|
55
54
|
validateEvenDimensionsWithCodec: ({ width, height, codec, scale, }: {
|
|
56
55
|
width: number;
|
|
@@ -124,11 +123,9 @@ export declare const RenderInternals: {
|
|
|
124
123
|
DEFAULT_CODEC: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif";
|
|
125
124
|
isAudioCodec: (codec: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv" | "gif" | undefined) => boolean;
|
|
126
125
|
logLevels: readonly ["verbose", "info", "warn", "error"];
|
|
127
|
-
isEqualOrBelowLogLevel: (currentLevel: "
|
|
126
|
+
isEqualOrBelowLogLevel: (currentLevel: "verbose" | "error" | "info" | "warn", level: "verbose" | "error" | "info" | "warn") => boolean;
|
|
128
127
|
isValidLogLevel: (level: string) => boolean;
|
|
129
128
|
perf: typeof perf;
|
|
130
|
-
makeDownloadMap: () => import("./assets/download-map").DownloadMap;
|
|
131
|
-
cleanDownloadMap: (downloadMap: import("./assets/download-map").DownloadMap) => void;
|
|
132
129
|
convertToPositiveFrameIndex: ({ frame, durationInFrames, }: {
|
|
133
130
|
frame: number;
|
|
134
131
|
durationInFrames: number;
|
|
@@ -305,6 +302,7 @@ export declare const RenderInternals: {
|
|
|
305
302
|
validVideoImageFormats: readonly ["png", "jpeg", "none"];
|
|
306
303
|
DEFAULT_STILL_IMAGE_FORMAT: "jpeg" | "png" | "webp" | "pdf";
|
|
307
304
|
DEFAULT_VIDEO_IMAGE_FORMAT: "jpeg" | "png" | "none";
|
|
305
|
+
DEFAULT_JPEG_QUALITY: number;
|
|
308
306
|
chalk: {
|
|
309
307
|
enabled: boolean;
|
|
310
308
|
visible: boolean;
|
|
@@ -358,25 +356,117 @@ export declare const RenderInternals: {
|
|
|
358
356
|
verbose: (message?: any, ...optionalParams: any[]) => void;
|
|
359
357
|
verboseAdvanced: (options: {
|
|
360
358
|
indent: boolean;
|
|
361
|
-
logLevel: "
|
|
359
|
+
logLevel: "verbose" | "error" | "info" | "warn";
|
|
362
360
|
} & {
|
|
363
361
|
tag?: string | undefined;
|
|
362
|
+
secondTag?: string | undefined;
|
|
364
363
|
}, message?: any, ...optionalParams: any[]) => void;
|
|
365
364
|
info: (message?: any, ...optionalParams: any[]) => void;
|
|
366
365
|
infoAdvanced: (options: {
|
|
367
366
|
indent: boolean;
|
|
368
|
-
logLevel: "
|
|
367
|
+
logLevel: "verbose" | "error" | "info" | "warn";
|
|
369
368
|
}, message?: any, ...optionalParams: any[]) => void;
|
|
370
369
|
warn: (message?: any, ...optionalParams: any[]) => void;
|
|
371
370
|
warnAdvanced: (options: {
|
|
372
371
|
indent: boolean;
|
|
373
|
-
logLevel: "
|
|
372
|
+
logLevel: "verbose" | "error" | "info" | "warn";
|
|
374
373
|
}, message?: any, ...optionalParams: any[]) => void;
|
|
375
374
|
error: (message?: any, ...optionalParams: any[]) => void;
|
|
376
375
|
};
|
|
377
|
-
getLogLevel: () => "
|
|
378
|
-
setLogLevel: (newLogLevel: "
|
|
376
|
+
getLogLevel: () => "verbose" | "error" | "info" | "warn";
|
|
377
|
+
setLogLevel: (newLogLevel: "verbose" | "error" | "info" | "warn") => void;
|
|
379
378
|
INDENT_TOKEN: string;
|
|
380
379
|
isColorSupported: boolean;
|
|
381
380
|
HeadlessBrowser: typeof HeadlessBrowser;
|
|
381
|
+
prepareServer: ({ webpackConfigOrServeUrl, port, remotionRoot, concurrency, verbose, indent, }: {
|
|
382
|
+
webpackConfigOrServeUrl: string;
|
|
383
|
+
port: number | null;
|
|
384
|
+
remotionRoot: string;
|
|
385
|
+
concurrency: number;
|
|
386
|
+
verbose: boolean;
|
|
387
|
+
indent: boolean;
|
|
388
|
+
}) => Promise<import("./prepare-server").RemotionServer>;
|
|
389
|
+
makeOrReuseServer: (server: import("./prepare-server").RemotionServer | undefined, config: {
|
|
390
|
+
webpackConfigOrServeUrl: string;
|
|
391
|
+
port: number | null;
|
|
392
|
+
remotionRoot: string;
|
|
393
|
+
concurrency: number;
|
|
394
|
+
verbose: boolean;
|
|
395
|
+
indent: boolean;
|
|
396
|
+
}, { onDownload, onError, }: {
|
|
397
|
+
onError: (err: Error) => void;
|
|
398
|
+
onDownload: import("./assets/download-and-map-assets-to-file").RenderMediaOnDownload | null;
|
|
399
|
+
}) => Promise<{
|
|
400
|
+
server: import("./prepare-server").RemotionServer;
|
|
401
|
+
cleanupServer: (force: boolean) => Promise<unknown>;
|
|
402
|
+
}>;
|
|
403
|
+
internalRenderStill: (options: {
|
|
404
|
+
composition: import("remotion").AnySmallCompMetadata;
|
|
405
|
+
output: string | null;
|
|
406
|
+
frame: number;
|
|
407
|
+
inputProps: Record<string, unknown>;
|
|
408
|
+
imageFormat: "jpeg" | "png" | "webp" | "pdf";
|
|
409
|
+
jpegQuality: number;
|
|
410
|
+
puppeteerInstance: HeadlessBrowser | null;
|
|
411
|
+
dumpBrowserLogs: boolean;
|
|
412
|
+
envVariables: Record<string, string>;
|
|
413
|
+
overwrite: boolean;
|
|
414
|
+
browserExecutable: import("./browser-executable").BrowserExecutable;
|
|
415
|
+
onBrowserLog: ((log: import("./browser-log").BrowserLog) => void) | null;
|
|
416
|
+
timeoutInMilliseconds: number;
|
|
417
|
+
chromiumOptions: import("./open-browser").ChromiumOptions;
|
|
418
|
+
scale: number;
|
|
419
|
+
onDownload: import("./assets/download-and-map-assets-to-file").RenderMediaOnDownload | null;
|
|
420
|
+
cancelSignal: import("./make-cancel-signal").CancelSignal | null;
|
|
421
|
+
indent: boolean;
|
|
422
|
+
server: import("./prepare-server").RemotionServer | undefined;
|
|
423
|
+
verbose: boolean;
|
|
424
|
+
serveUrl: string;
|
|
425
|
+
port: number | null;
|
|
426
|
+
}) => Promise<{
|
|
427
|
+
buffer: Buffer | null;
|
|
428
|
+
}>;
|
|
429
|
+
internalOpenBrowser: ({ browser, browserExecutable, chromiumOptions, forceDeviceScaleFactor, indent, shouldDumpIo, viewport, }: {
|
|
430
|
+
shouldDumpIo: boolean;
|
|
431
|
+
browserExecutable: string | null;
|
|
432
|
+
chromiumOptions: import("./open-browser").ChromiumOptions;
|
|
433
|
+
forceDeviceScaleFactor: number | undefined;
|
|
434
|
+
viewport: import("./browser/PuppeteerViewport").Viewport | null;
|
|
435
|
+
indent: boolean;
|
|
436
|
+
browser: import("./browser").Browser;
|
|
437
|
+
}) => Promise<HeadlessBrowser>;
|
|
438
|
+
internalSelectComposition: (options: {
|
|
439
|
+
inputProps: Record<string, unknown>;
|
|
440
|
+
envVariables: Record<string, string>;
|
|
441
|
+
puppeteerInstance: HeadlessBrowser | undefined;
|
|
442
|
+
onBrowserLog: ((log: import("./browser-log").BrowserLog) => void) | null;
|
|
443
|
+
browserExecutable: import("./browser-executable").BrowserExecutable;
|
|
444
|
+
timeoutInMilliseconds: number;
|
|
445
|
+
chromiumOptions: import("./open-browser").ChromiumOptions;
|
|
446
|
+
port: number | null;
|
|
447
|
+
indent: boolean;
|
|
448
|
+
server: import("./prepare-server").RemotionServer | undefined;
|
|
449
|
+
verbose: boolean;
|
|
450
|
+
serveUrl: string;
|
|
451
|
+
id: string;
|
|
452
|
+
}) => Promise<import("remotion").AnyCompMetadata>;
|
|
453
|
+
internalGetCompositions: ({ browserExecutable, chromiumOptions, envVariables, indent, inputProps, onBrowserLog, port, puppeteerInstance, serveUrlOrWebpackUrl, server, timeoutInMilliseconds, verbose, }: {
|
|
454
|
+
inputProps: Record<string, unknown>;
|
|
455
|
+
envVariables: Record<string, string>;
|
|
456
|
+
puppeteerInstance: HeadlessBrowser | undefined;
|
|
457
|
+
onBrowserLog: ((log: import("./browser-log").BrowserLog) => void) | null;
|
|
458
|
+
browserExecutable: import("./browser-executable").BrowserExecutable;
|
|
459
|
+
timeoutInMilliseconds: number;
|
|
460
|
+
chromiumOptions: import("./open-browser").ChromiumOptions;
|
|
461
|
+
port: number | null;
|
|
462
|
+
server: import("./prepare-server").RemotionServer | undefined;
|
|
463
|
+
indent: boolean;
|
|
464
|
+
verbose: boolean;
|
|
465
|
+
serveUrlOrWebpackUrl: string;
|
|
466
|
+
}) => Promise<import("remotion").AnyCompMetadata[]>;
|
|
467
|
+
internalRenderFrames: ({ browserExecutable, cancelSignal, chromiumOptions, composition, concurrency, dumpBrowserLogs, envVariables, everyNthFrame, frameRange, imageFormat, indent, inputProps, jpegQuality, muted, onBrowserLog, onDownload, onFrameBuffer, onFrameUpdate, onStart, outputDir, port, puppeteerInstance, scale, server, timeoutInMilliseconds, verbose, webpackBundleOrServeUrl, }: import("./render-frames").InternalRenderFramesOptions) => Promise<import("./types").RenderFramesOutput>;
|
|
468
|
+
internalRenderMedia: ({ proResProfile, crf, composition, inputProps, pixelFormat, codec, envVariables, frameRange, puppeteerInstance, outputLocation, onProgress, overwrite, onDownload, dumpBrowserLogs, onBrowserLog, onStart, timeoutInMilliseconds, chromiumOptions, scale, browserExecutable, port, cancelSignal, muted, enforceAudioTrack, ffmpegOverride, audioBitrate, videoBitrate, audioCodec, concurrency, disallowParallelEncoding, everyNthFrame, imageFormat: provisionalImageFormat, indent, jpegQuality, numberOfGifLoops, onCtrlCExit, preferLossless, serveUrl, server: reusedServer, verbose, }: import("./render-media").InternalRenderMediaOptions) => Promise<{
|
|
469
|
+
buffer: Buffer | null;
|
|
470
|
+
slowestFrames: import("./render-media").SlowFrame[];
|
|
471
|
+
}>;
|
|
382
472
|
};
|
package/dist/index.js
CHANGED
|
@@ -29,7 +29,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
29
29
|
exports.RenderInternals = exports.validateOutputFilename = exports.stitchFramesToVideo = exports.selectComposition = exports.renderStill = exports.renderMedia = exports.renderFrames = exports.openBrowser = exports.makeCancelSignal = exports.validateSelectedPixelFormatAndImageFormatCombination = exports.getCompositions = exports.ErrorWithStackFrame = void 0;
|
|
30
30
|
const execa_1 = __importDefault(require("execa"));
|
|
31
31
|
const download_file_1 = require("./assets/download-file");
|
|
32
|
-
const download_map_1 = require("./assets/download-map");
|
|
33
32
|
const audio_codec_1 = require("./audio-codec");
|
|
34
33
|
const browser_1 = require("./browser");
|
|
35
34
|
const Browser_1 = require("./browser/Browser");
|
|
@@ -50,6 +49,7 @@ const symbolicateable_error_1 = require("./error-handling/symbolicateable-error"
|
|
|
50
49
|
const file_extensions_1 = require("./file-extensions");
|
|
51
50
|
const find_closest_package_json_1 = require("./find-closest-package-json");
|
|
52
51
|
const frame_range_1 = require("./frame-range");
|
|
52
|
+
const get_compositions_1 = require("./get-compositions");
|
|
53
53
|
const get_concurrency_1 = require("./get-concurrency");
|
|
54
54
|
const get_duration_from_frame_range_1 = require("./get-duration-from-frame-range");
|
|
55
55
|
const get_extension_from_codec_1 = require("./get-extension-from-codec");
|
|
@@ -68,6 +68,11 @@ const open_browser_1 = require("./open-browser");
|
|
|
68
68
|
const parse_browser_error_stack_1 = require("./parse-browser-error-stack");
|
|
69
69
|
const perf = __importStar(require("./perf"));
|
|
70
70
|
const pixel_format_1 = require("./pixel-format");
|
|
71
|
+
const prepare_server_1 = require("./prepare-server");
|
|
72
|
+
const render_frames_1 = require("./render-frames");
|
|
73
|
+
const render_media_1 = require("./render-media");
|
|
74
|
+
const render_still_1 = require("./render-still");
|
|
75
|
+
const select_composition_1 = require("./select-composition");
|
|
71
76
|
const is_path_inside_1 = require("./serve-handler/is-path-inside");
|
|
72
77
|
const serve_static_1 = require("./serve-static");
|
|
73
78
|
const tmp_dir_1 = require("./tmp-dir");
|
|
@@ -79,22 +84,22 @@ const validate_videobitrate_1 = require("./validate-videobitrate");
|
|
|
79
84
|
const wait_for_symbolication_error_to_be_done_1 = require("./wait-for-symbolication-error-to-be-done");
|
|
80
85
|
var handle_javascript_exception_1 = require("./error-handling/handle-javascript-exception");
|
|
81
86
|
Object.defineProperty(exports, "ErrorWithStackFrame", { enumerable: true, get: function () { return handle_javascript_exception_1.ErrorWithStackFrame; } });
|
|
82
|
-
var
|
|
83
|
-
Object.defineProperty(exports, "getCompositions", { enumerable: true, get: function () { return
|
|
87
|
+
var get_compositions_2 = require("./get-compositions");
|
|
88
|
+
Object.defineProperty(exports, "getCompositions", { enumerable: true, get: function () { return get_compositions_2.getCompositions; } });
|
|
84
89
|
var image_format_2 = require("./image-format");
|
|
85
90
|
Object.defineProperty(exports, "validateSelectedPixelFormatAndImageFormatCombination", { enumerable: true, get: function () { return image_format_2.validateSelectedPixelFormatAndImageFormatCombination; } });
|
|
86
91
|
var make_cancel_signal_1 = require("./make-cancel-signal");
|
|
87
92
|
Object.defineProperty(exports, "makeCancelSignal", { enumerable: true, get: function () { return make_cancel_signal_1.makeCancelSignal; } });
|
|
88
93
|
var open_browser_2 = require("./open-browser");
|
|
89
94
|
Object.defineProperty(exports, "openBrowser", { enumerable: true, get: function () { return open_browser_2.openBrowser; } });
|
|
90
|
-
var
|
|
91
|
-
Object.defineProperty(exports, "renderFrames", { enumerable: true, get: function () { return
|
|
92
|
-
var
|
|
93
|
-
Object.defineProperty(exports, "renderMedia", { enumerable: true, get: function () { return
|
|
94
|
-
var
|
|
95
|
-
Object.defineProperty(exports, "renderStill", { enumerable: true, get: function () { return
|
|
96
|
-
var
|
|
97
|
-
Object.defineProperty(exports, "selectComposition", { enumerable: true, get: function () { return
|
|
95
|
+
var render_frames_2 = require("./render-frames");
|
|
96
|
+
Object.defineProperty(exports, "renderFrames", { enumerable: true, get: function () { return render_frames_2.renderFrames; } });
|
|
97
|
+
var render_media_2 = require("./render-media");
|
|
98
|
+
Object.defineProperty(exports, "renderMedia", { enumerable: true, get: function () { return render_media_2.renderMedia; } });
|
|
99
|
+
var render_still_2 = require("./render-still");
|
|
100
|
+
Object.defineProperty(exports, "renderStill", { enumerable: true, get: function () { return render_still_2.renderStill; } });
|
|
101
|
+
var select_composition_2 = require("./select-composition");
|
|
102
|
+
Object.defineProperty(exports, "selectComposition", { enumerable: true, get: function () { return select_composition_2.selectComposition; } });
|
|
98
103
|
var stitch_frames_to_video_1 = require("./stitch-frames-to-video");
|
|
99
104
|
Object.defineProperty(exports, "stitchFramesToVideo", { enumerable: true, get: function () { return stitch_frames_to_video_1.stitchFramesToVideo; } });
|
|
100
105
|
var validate_output_filename_1 = require("./validate-output-filename");
|
|
@@ -142,8 +147,6 @@ exports.RenderInternals = {
|
|
|
142
147
|
isEqualOrBelowLogLevel: log_level_1.isEqualOrBelowLogLevel,
|
|
143
148
|
isValidLogLevel: log_level_1.isValidLogLevel,
|
|
144
149
|
perf,
|
|
145
|
-
makeDownloadMap: download_map_1.makeDownloadMap,
|
|
146
|
-
cleanDownloadMap: download_map_1.cleanDownloadMap,
|
|
147
150
|
convertToPositiveFrameIndex: convert_to_positive_frame_index_1.convertToPositiveFrameIndex,
|
|
148
151
|
findRemotionRoot: find_closest_package_json_1.findRemotionRoot,
|
|
149
152
|
validateBitrate: validate_videobitrate_1.validateBitrate,
|
|
@@ -163,6 +166,7 @@ exports.RenderInternals = {
|
|
|
163
166
|
validVideoImageFormats: image_format_1.validVideoImageFormats,
|
|
164
167
|
DEFAULT_STILL_IMAGE_FORMAT: image_format_1.DEFAULT_STILL_IMAGE_FORMAT,
|
|
165
168
|
DEFAULT_VIDEO_IMAGE_FORMAT: image_format_1.DEFAULT_VIDEO_IMAGE_FORMAT,
|
|
169
|
+
DEFAULT_JPEG_QUALITY: jpeg_quality_1.DEFAULT_JPEG_QUALITY,
|
|
166
170
|
chalk: chalk_1.chalk,
|
|
167
171
|
Log: logger_1.Log,
|
|
168
172
|
getLogLevel: logger_1.getLogLevel,
|
|
@@ -170,6 +174,14 @@ exports.RenderInternals = {
|
|
|
170
174
|
INDENT_TOKEN: logger_1.INDENT_TOKEN,
|
|
171
175
|
isColorSupported: is_color_supported_1.isColorSupported,
|
|
172
176
|
HeadlessBrowser: Browser_1.HeadlessBrowser,
|
|
177
|
+
prepareServer: prepare_server_1.prepareServer,
|
|
178
|
+
makeOrReuseServer: prepare_server_1.makeOrReuseServer,
|
|
179
|
+
internalRenderStill: render_still_1.internalRenderStill,
|
|
180
|
+
internalOpenBrowser: open_browser_1.internalOpenBrowser,
|
|
181
|
+
internalSelectComposition: select_composition_1.internalSelectComposition,
|
|
182
|
+
internalGetCompositions: get_compositions_1.internalGetCompositions,
|
|
183
|
+
internalRenderFrames: render_frames_1.internalRenderFrames,
|
|
184
|
+
internalRenderMedia: render_media_1.internalRenderMedia,
|
|
173
185
|
};
|
|
174
186
|
// Warn of potential performance issues with Apple Silicon (M1 chip under Rosetta)
|
|
175
187
|
(0, check_apple_silicon_1.checkNodeVersionAndWarnAboutRosetta)();
|
package/dist/jpeg-quality.d.ts
CHANGED
package/dist/jpeg-quality.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.validateJpegQuality = void 0;
|
|
3
|
+
exports.validateJpegQuality = exports.DEFAULT_JPEG_QUALITY = void 0;
|
|
4
|
+
exports.DEFAULT_JPEG_QUALITY = 80;
|
|
4
5
|
const validateJpegQuality = (q) => {
|
|
5
6
|
if (typeof q !== 'undefined' && typeof q !== 'number') {
|
|
6
7
|
throw new Error(`JPEG Quality option must be a number or undefined. Got ${typeof q} (${JSON.stringify(q)})`);
|
package/dist/log-level.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export declare const logLevels: readonly ["verbose", "info", "warn", "error"];
|
|
2
|
-
export
|
|
2
|
+
export type LogLevel = typeof logLevels[number];
|
|
3
3
|
export declare const isValidLogLevel: (level: string) => boolean;
|
|
4
4
|
export declare const isEqualOrBelowLogLevel: (currentLevel: LogLevel, level: LogLevel) => boolean;
|
package/dist/logger.d.ts
CHANGED
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import type { LogLevel } from './log-level';
|
|
2
2
|
export declare const INDENT_TOKEN: string;
|
|
3
|
-
|
|
3
|
+
type LogOptions = {
|
|
4
4
|
indent: boolean;
|
|
5
5
|
logLevel: LogLevel;
|
|
6
6
|
};
|
|
7
|
-
|
|
7
|
+
type VerboseLogOptions = LogOptions & {
|
|
8
8
|
tag?: string;
|
|
9
|
+
secondTag?: string;
|
|
9
10
|
};
|
|
10
11
|
export declare const verboseTag: (str: string) => string;
|
|
12
|
+
export declare const secondverboseTag: (str: string) => string;
|
|
11
13
|
export declare const Log: {
|
|
12
14
|
verbose: (message?: any, ...optionalParams: any[]) => void;
|
|
13
15
|
verboseAdvanced: (options: VerboseLogOptions, message?: any, ...optionalParams: any[]) => void;
|
|
@@ -17,6 +19,6 @@ export declare const Log: {
|
|
|
17
19
|
warnAdvanced: (options: LogOptions, message?: any, ...optionalParams: any[]) => void;
|
|
18
20
|
error: (message?: any, ...optionalParams: any[]) => void;
|
|
19
21
|
};
|
|
20
|
-
export declare const getLogLevel: () => "
|
|
22
|
+
export declare const getLogLevel: () => "verbose" | "error" | "info" | "warn";
|
|
21
23
|
export declare const setLogLevel: (newLogLevel: LogLevel) => void;
|
|
22
24
|
export {};
|
package/dist/logger.js
CHANGED
|
@@ -1,17 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.setLogLevel = exports.getLogLevel = exports.Log = exports.verboseTag = exports.INDENT_TOKEN = void 0;
|
|
3
|
+
exports.setLogLevel = exports.getLogLevel = exports.Log = exports.secondverboseTag = exports.verboseTag = exports.INDENT_TOKEN = void 0;
|
|
4
4
|
const chalk_1 = require("./chalk");
|
|
5
5
|
const is_color_supported_1 = require("./chalk/is-color-supported");
|
|
6
6
|
const log_level_1 = require("./log-level");
|
|
7
7
|
const truthy_1 = require("./truthy");
|
|
8
8
|
exports.INDENT_TOKEN = chalk_1.chalk.gray('│');
|
|
9
9
|
const verboseTag = (str) => {
|
|
10
|
-
return is_color_supported_1.isColorSupported
|
|
11
|
-
? chalk_1.chalk.bgBlack(` ${str.toUpperCase()} `)
|
|
12
|
-
: `[${str.toUpperCase()}]`;
|
|
10
|
+
return is_color_supported_1.isColorSupported ? chalk_1.chalk.bgBlack(` ${str} `) : `[${str}]`;
|
|
13
11
|
};
|
|
14
12
|
exports.verboseTag = verboseTag;
|
|
13
|
+
const secondverboseTag = (str) => {
|
|
14
|
+
return is_color_supported_1.isColorSupported ? chalk_1.chalk.bgWhite(` ${str} `) : `[${str}]`;
|
|
15
|
+
};
|
|
16
|
+
exports.secondverboseTag = secondverboseTag;
|
|
15
17
|
exports.Log = {
|
|
16
18
|
verbose: (...args) => {
|
|
17
19
|
exports.Log.verboseAdvanced({ indent: false, logLevel: (0, exports.getLogLevel)() }, ...args);
|
|
@@ -20,7 +22,12 @@ exports.Log = {
|
|
|
20
22
|
if ((0, log_level_1.isEqualOrBelowLogLevel)(options.logLevel, 'verbose')) {
|
|
21
23
|
return console.log(...[
|
|
22
24
|
options.indent ? exports.INDENT_TOKEN : null,
|
|
23
|
-
|
|
25
|
+
[
|
|
26
|
+
options.tag ? (0, exports.verboseTag)(options.tag) : null,
|
|
27
|
+
options.secondTag ? (0, exports.secondverboseTag)(options.secondTag) : null,
|
|
28
|
+
]
|
|
29
|
+
.filter(truthy_1.truthy)
|
|
30
|
+
.join(''),
|
|
24
31
|
...args.map((a) => chalk_1.chalk.gray(a)),
|
|
25
32
|
].filter(truthy_1.truthy));
|
|
26
33
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
export
|
|
1
|
+
type Callback = () => void;
|
|
2
|
+
export type CancelSignal = (callback: Callback) => void;
|
|
3
3
|
/**
|
|
4
4
|
* @description Returns a signal and a cancel function that allows to you cancel a render triggered using renderMedia(), renderStill(), renderFrames() or stitchFramesToVideo().
|
|
5
5
|
* @see [Documentation](https://www.remotion.dev/docs/renderer/make-cancel-signal)
|
package/dist/mime-types.js
CHANGED
|
@@ -36,7 +36,7 @@ function populateMaps(exts, _types) {
|
|
|
36
36
|
Object.keys(mime_db_1.mimeDb).forEach((type) => {
|
|
37
37
|
const mime = mime_db_1.mimeDb[type];
|
|
38
38
|
const _exts = mime.extensions;
|
|
39
|
-
if (!_exts ||
|
|
39
|
+
if (!(_exts === null || _exts === void 0 ? void 0 : _exts.length)) {
|
|
40
40
|
return;
|
|
41
41
|
}
|
|
42
42
|
// mime -> extensions
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type { RequestListener } from 'node:http';
|
|
2
|
-
import type { RenderMediaOnDownload } from './assets/download-and-map-assets-to-file';
|
|
3
2
|
import type { DownloadMap } from './assets/download-map';
|
|
4
3
|
import type { Compositor } from './compositor/compositor';
|
|
5
4
|
export declare const extractUrlAndSourceFromUrl: (url: string) => {
|
|
@@ -7,9 +6,7 @@ export declare const extractUrlAndSourceFromUrl: (url: string) => {
|
|
|
7
6
|
time: number;
|
|
8
7
|
transparent: boolean;
|
|
9
8
|
};
|
|
10
|
-
export declare const startOffthreadVideoServer: ({
|
|
11
|
-
onDownload: RenderMediaOnDownload;
|
|
12
|
-
onError: (err: Error) => void;
|
|
9
|
+
export declare const startOffthreadVideoServer: ({ downloadMap, concurrency, verbose, indent, }: {
|
|
13
10
|
downloadMap: DownloadMap;
|
|
14
11
|
concurrency: number;
|
|
15
12
|
verbose: boolean;
|
|
@@ -18,4 +15,39 @@ export declare const startOffthreadVideoServer: ({ onDownload, onError, download
|
|
|
18
15
|
listener: RequestListener;
|
|
19
16
|
close: () => Promise<void>;
|
|
20
17
|
compositor: Compositor;
|
|
18
|
+
events: OffthreadVideoServerEmitter;
|
|
21
19
|
};
|
|
20
|
+
type DownloadEventPayload = {
|
|
21
|
+
src: string;
|
|
22
|
+
};
|
|
23
|
+
type ProgressEventPayload = {
|
|
24
|
+
percent: number | null;
|
|
25
|
+
downloaded: number;
|
|
26
|
+
totalSize: number | null;
|
|
27
|
+
src: string;
|
|
28
|
+
};
|
|
29
|
+
type ErrorEventPayload = {
|
|
30
|
+
error: Error;
|
|
31
|
+
};
|
|
32
|
+
type EventMap = {
|
|
33
|
+
progress: ProgressEventPayload;
|
|
34
|
+
error: ErrorEventPayload;
|
|
35
|
+
download: DownloadEventPayload;
|
|
36
|
+
};
|
|
37
|
+
export type EventTypes = keyof EventMap;
|
|
38
|
+
export type CallbackListener<T extends EventTypes> = (data: {
|
|
39
|
+
detail: EventMap[T];
|
|
40
|
+
}) => void;
|
|
41
|
+
type Listeners = {
|
|
42
|
+
[EventType in EventTypes]: CallbackListener<EventType>[];
|
|
43
|
+
};
|
|
44
|
+
export declare class OffthreadVideoServerEmitter {
|
|
45
|
+
listeners: Listeners;
|
|
46
|
+
addEventListener<Q extends EventTypes>(name: Q, callback: CallbackListener<Q>): () => void;
|
|
47
|
+
removeEventListener<Q extends EventTypes>(name: Q, callback: CallbackListener<Q>): void;
|
|
48
|
+
private dispatchEvent;
|
|
49
|
+
dispatchError(error: Error): void;
|
|
50
|
+
dispatchDownloadProgress(src: string, percent: number | null, downloaded: number, totalSize: number | null): void;
|
|
51
|
+
dispatchDownload(src: string): void;
|
|
52
|
+
}
|
|
53
|
+
export {};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.startOffthreadVideoServer = exports.extractUrlAndSourceFromUrl = void 0;
|
|
3
|
+
exports.OffthreadVideoServerEmitter = exports.startOffthreadVideoServer = exports.extractUrlAndSourceFromUrl = void 0;
|
|
4
4
|
const node_url_1 = require("node:url");
|
|
5
5
|
const download_and_map_assets_to_file_1 = require("./assets/download-and-map-assets-to-file");
|
|
6
6
|
const compositor_1 = require("./compositor/compositor");
|
|
@@ -27,7 +27,8 @@ const extractUrlAndSourceFromUrl = (url) => {
|
|
|
27
27
|
};
|
|
28
28
|
};
|
|
29
29
|
exports.extractUrlAndSourceFromUrl = extractUrlAndSourceFromUrl;
|
|
30
|
-
const startOffthreadVideoServer = ({
|
|
30
|
+
const startOffthreadVideoServer = ({ downloadMap, concurrency, verbose, indent, }) => {
|
|
31
|
+
const events = new OffthreadVideoServerEmitter();
|
|
31
32
|
const compositor = (0, compositor_1.startCompositor)('StartLongRunningProcess', {
|
|
32
33
|
concurrency,
|
|
33
34
|
maximum_frame_cache_items: (0, compositor_1.getIdealMaximumFrameCacheItems)(),
|
|
@@ -66,7 +67,7 @@ const startOffthreadVideoServer = ({ onDownload, onError, downloadMap, concurren
|
|
|
66
67
|
res.end();
|
|
67
68
|
return;
|
|
68
69
|
}
|
|
69
|
-
(0, download_and_map_assets_to_file_1.downloadAsset)({ src,
|
|
70
|
+
(0, download_and_map_assets_to_file_1.downloadAsset)({ src, emitter: events, downloadMap })
|
|
70
71
|
.then((to) => {
|
|
71
72
|
return compositor.executeCommand('ExtractFrame', {
|
|
72
73
|
input: to,
|
|
@@ -85,11 +86,54 @@ const startOffthreadVideoServer = ({ onDownload, onError, downloadMap, concurren
|
|
|
85
86
|
.catch((err) => {
|
|
86
87
|
res.writeHead(500);
|
|
87
88
|
res.end();
|
|
88
|
-
|
|
89
|
+
events.dispatchError(err);
|
|
89
90
|
console.log('Error occurred', err);
|
|
90
91
|
});
|
|
91
92
|
},
|
|
92
93
|
compositor,
|
|
94
|
+
events,
|
|
93
95
|
};
|
|
94
96
|
};
|
|
95
97
|
exports.startOffthreadVideoServer = startOffthreadVideoServer;
|
|
98
|
+
class OffthreadVideoServerEmitter {
|
|
99
|
+
constructor() {
|
|
100
|
+
this.listeners = {
|
|
101
|
+
error: [],
|
|
102
|
+
progress: [],
|
|
103
|
+
download: [],
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
addEventListener(name, callback) {
|
|
107
|
+
this.listeners[name].push(callback);
|
|
108
|
+
return () => {
|
|
109
|
+
this.removeEventListener(name, callback);
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
removeEventListener(name, callback) {
|
|
113
|
+
this.listeners[name] = this.listeners[name].filter((l) => l !== callback);
|
|
114
|
+
}
|
|
115
|
+
dispatchEvent(dispatchName, context) {
|
|
116
|
+
this.listeners[dispatchName].forEach((callback) => {
|
|
117
|
+
callback({ detail: context });
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
dispatchError(error) {
|
|
121
|
+
this.dispatchEvent('error', {
|
|
122
|
+
error,
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
dispatchDownloadProgress(src, percent, downloaded, totalSize) {
|
|
126
|
+
this.dispatchEvent('progress', {
|
|
127
|
+
downloaded,
|
|
128
|
+
percent,
|
|
129
|
+
totalSize,
|
|
130
|
+
src,
|
|
131
|
+
});
|
|
132
|
+
}
|
|
133
|
+
dispatchDownload(src) {
|
|
134
|
+
this.dispatchEvent('download', {
|
|
135
|
+
src,
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
exports.OffthreadVideoServerEmitter = OffthreadVideoServerEmitter;
|
package/dist/open-browser.d.ts
CHANGED
|
@@ -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
|
declare const validRenderers: readonly ["swangle", "angle", "egl", "swiftshader"];
|
|
5
|
-
|
|
6
|
-
export
|
|
5
|
+
type OpenGlRenderer = typeof validRenderers[number];
|
|
6
|
+
export type ChromiumOptions = {
|
|
7
7
|
ignoreCertificateErrors?: boolean;
|
|
8
8
|
disableWebSecurity?: boolean;
|
|
9
9
|
gl?: OpenGlRenderer | null;
|
|
@@ -11,16 +11,25 @@ export declare type ChromiumOptions = {
|
|
|
11
11
|
userAgent?: string | null;
|
|
12
12
|
};
|
|
13
13
|
export declare const killAllBrowsers: () => Promise<void>;
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
14
|
+
type InternalOpenBrowserOptions = {
|
|
15
|
+
shouldDumpIo: boolean;
|
|
16
|
+
browserExecutable: string | null;
|
|
17
|
+
chromiumOptions: ChromiumOptions;
|
|
18
|
+
forceDeviceScaleFactor: number | undefined;
|
|
19
|
+
viewport: Viewport | null;
|
|
20
|
+
indent: boolean;
|
|
21
|
+
browser: Browser;
|
|
22
|
+
};
|
|
23
|
+
export type OpenBrowserOptions = {
|
|
19
24
|
shouldDumpIo?: boolean;
|
|
20
25
|
browserExecutable?: string | null;
|
|
21
26
|
chromiumOptions?: ChromiumOptions;
|
|
22
27
|
forceDeviceScaleFactor?: number;
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
28
|
+
};
|
|
29
|
+
export declare const internalOpenBrowser: ({ browser, browserExecutable, chromiumOptions, forceDeviceScaleFactor, indent, shouldDumpIo, viewport, }: InternalOpenBrowserOptions) => Promise<HeadlessBrowser>;
|
|
30
|
+
/**
|
|
31
|
+
* @description Opens a Chrome or Chromium browser instance.
|
|
32
|
+
* @see [Documentation](https://www.remotion.dev/docs/renderer/open-browser)
|
|
33
|
+
*/
|
|
34
|
+
export declare const openBrowser: (browser: Browser, options?: OpenBrowserOptions) => Promise<HeadlessBrowser>;
|
|
26
35
|
export {};
|