@remotion/renderer 4.1.0-alpha2 → 4.1.0-alpha4
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/get-video-stream-duration.d.ts +9 -0
- package/dist/assets/get-video-stream-duration.js +71 -0
- package/dist/browser/Browser.d.ts +7 -6
- package/dist/browser/Browser.js +12 -12
- package/dist/browser/BrowserPage.d.ts +13 -2
- package/dist/browser/BrowserPage.js +15 -8
- package/dist/browser/BrowserRunner.js +2 -2
- package/dist/browser/LaunchOptions.d.ts +2 -0
- package/dist/browser/Launcher.js +2 -1
- package/dist/browser/Target.d.ts +2 -1
- package/dist/browser/Target.js +3 -1
- package/dist/browser/should-log-message.js +8 -0
- package/dist/calculate-sar-dar-pixels.d.ts +9 -0
- package/dist/calculate-sar-dar-pixels.js +19 -0
- package/dist/compositor/compositor.d.ts +3 -2
- package/dist/compositor/compositor.js +6 -5
- package/dist/cycle-browser-tabs.d.ts +2 -1
- package/dist/cycle-browser-tabs.js +2 -2
- package/dist/determine-resize-params.d.ts +4 -0
- package/dist/determine-resize-params.js +10 -0
- package/dist/determine-vcodec-ffmpeg-flags.d.ts +2 -0
- package/dist/determine-vcodec-ffmpeg-flags.js +13 -0
- package/dist/ensure-ffmpeg.d.ts +18 -0
- package/dist/ensure-ffmpeg.js +58 -0
- package/dist/ensure-presentation-timestamp.d.ts +15 -0
- package/dist/ensure-presentation-timestamp.js +88 -0
- package/dist/extract-frame-from-video.d.ts +16 -0
- package/dist/extract-frame-from-video.js +191 -0
- package/dist/ffmpeg-executable.d.ts +1 -0
- package/dist/ffmpeg-executable.js +2 -0
- package/dist/ffmpeg-flags.d.ts +31 -0
- package/dist/ffmpeg-flags.js +245 -0
- package/dist/format-logs.d.ts +3 -0
- package/dist/format-logs.js +201 -0
- package/dist/frame-to-ffmpeg-timestamp.d.ts +1 -0
- package/dist/frame-to-ffmpeg-timestamp.js +8 -0
- package/dist/get-browser-instance.d.ts +3 -2
- package/dist/get-browser-instance.js +5 -5
- package/dist/get-can-extract-frames-fast.d.ts +14 -0
- package/dist/get-can-extract-frames-fast.js +71 -0
- package/dist/get-compositions.d.ts +4 -3
- package/dist/get-compositions.js +6 -5
- package/dist/get-frame-of-video-slow.d.ts +17 -0
- package/dist/get-frame-of-video-slow.js +72 -0
- package/dist/get-video-info.d.ts +8 -0
- package/dist/get-video-info.js +59 -0
- package/dist/index.d.ts +23 -25
- package/dist/is-beyond-last-frame.d.ts +3 -0
- package/dist/is-beyond-last-frame.js +12 -0
- package/dist/last-frame-from-video-cache.d.ts +17 -0
- package/dist/last-frame-from-video-cache.js +55 -0
- package/dist/legacy-webpack-config.d.ts +9 -0
- package/dist/legacy-webpack-config.js +13 -0
- package/dist/logger.d.ts +1 -2
- package/dist/logger.js +5 -10
- package/dist/offthread-video-server.d.ts +3 -2
- package/dist/offthread-video-server.js +4 -3
- package/dist/open-browser.d.ts +3 -2
- package/dist/open-browser.js +7 -5
- package/dist/perf.js +4 -2
- package/dist/prepare-server.d.ts +3 -2
- package/dist/prepare-server.js +4 -4
- package/dist/prespawn-ffmpeg.d.ts +2 -1
- package/dist/prespawn-ffmpeg.js +2 -30
- package/dist/quality.d.ts +1 -0
- package/dist/quality.js +21 -0
- package/dist/render-frames.d.ts +11 -4
- package/dist/render-frames.js +15 -11
- package/dist/render-media.d.ts +11 -4
- package/dist/render-media.js +12 -14
- package/dist/render-still.d.ts +8 -2
- package/dist/render-still.js +8 -8
- package/dist/replace-browser.d.ts +2 -1
- package/dist/replace-browser.js +2 -2
- package/dist/select-composition.d.ts +2 -1
- package/dist/select-composition.js +8 -8
- package/dist/serve-static.d.ts +2 -1
- package/dist/serve-static.js +1 -1
- package/dist/stitch-frames-to-video.d.ts +2 -1
- package/dist/stitch-frames-to-video.js +12 -22
- package/dist/try-to-extract-frame-of-video-fast.d.ts +12 -0
- package/dist/try-to-extract-frame-of-video-fast.js +55 -0
- package/dist/validate-ffmpeg.d.ts +7 -0
- package/dist/validate-ffmpeg.js +77 -0
- package/dist/warn-about-ffmpeg-version.d.ts +5 -0
- package/dist/warn-about-ffmpeg-version.js +37 -0
- package/package.json +9 -9
package/dist/render-frames.d.ts
CHANGED
|
@@ -10,6 +10,7 @@ import type { CancelSignal } from './make-cancel-signal';
|
|
|
10
10
|
import type { ChromiumOptions } from './open-browser';
|
|
11
11
|
import type { RemotionServer } from './prepare-server';
|
|
12
12
|
import type { OnStartData, RenderFramesOutput } from './types';
|
|
13
|
+
import { type LogLevel } from './log-level';
|
|
13
14
|
export type InternalRenderFramesOptions = {
|
|
14
15
|
onStart: null | ((data: OnStartData) => void);
|
|
15
16
|
onFrameUpdate: null | ((framesRendered: number, frameIndex: number, timeToRenderInMilliseconds: number) => void);
|
|
@@ -20,7 +21,6 @@ export type InternalRenderFramesOptions = {
|
|
|
20
21
|
jpegQuality: number;
|
|
21
22
|
frameRange: FrameRange | null;
|
|
22
23
|
everyNthFrame: number;
|
|
23
|
-
dumpBrowserLogs: boolean;
|
|
24
24
|
puppeteerInstance: HeadlessBrowser | undefined;
|
|
25
25
|
browserExecutable: BrowserExecutable | null;
|
|
26
26
|
onBrowserLog: null | ((log: BrowserLog) => void);
|
|
@@ -37,7 +37,7 @@ export type InternalRenderFramesOptions = {
|
|
|
37
37
|
muted: boolean;
|
|
38
38
|
concurrency: number | string | null;
|
|
39
39
|
webpackBundleOrServeUrl: string;
|
|
40
|
-
|
|
40
|
+
logLevel: LogLevel;
|
|
41
41
|
};
|
|
42
42
|
export type RenderFramesOptions = {
|
|
43
43
|
onStart: (data: OnStartData) => void;
|
|
@@ -53,7 +53,15 @@ export type RenderFramesOptions = {
|
|
|
53
53
|
jpegQuality?: number;
|
|
54
54
|
frameRange?: FrameRange | null;
|
|
55
55
|
everyNthFrame?: number;
|
|
56
|
+
/**
|
|
57
|
+
* @deprecated Use "logLevel": "verbose" instead
|
|
58
|
+
*/
|
|
56
59
|
dumpBrowserLogs?: boolean;
|
|
60
|
+
/**
|
|
61
|
+
* @deprecated Use "logLevel" instead
|
|
62
|
+
*/
|
|
63
|
+
verbose?: boolean;
|
|
64
|
+
logLevel?: LogLevel;
|
|
57
65
|
puppeteerInstance?: HeadlessBrowser;
|
|
58
66
|
browserExecutable?: BrowserExecutable;
|
|
59
67
|
onBrowserLog?: (log: BrowserLog) => void;
|
|
@@ -68,9 +76,8 @@ export type RenderFramesOptions = {
|
|
|
68
76
|
muted?: boolean;
|
|
69
77
|
concurrency?: number | string | null;
|
|
70
78
|
serveUrl: string;
|
|
71
|
-
verbose?: boolean;
|
|
72
79
|
};
|
|
73
|
-
export declare const internalRenderFrames: ({ browserExecutable, cancelSignal, chromiumOptions, composition, concurrency,
|
|
80
|
+
export declare const internalRenderFrames: ({ browserExecutable, cancelSignal, chromiumOptions, composition, concurrency, envVariables, everyNthFrame, frameRange, imageFormat, indent, inputProps, jpegQuality, muted, onBrowserLog, onDownload, onFrameBuffer, onFrameUpdate, onStart, outputDir, port, puppeteerInstance, scale, server, timeoutInMilliseconds, logLevel, webpackBundleOrServeUrl, }: InternalRenderFramesOptions) => Promise<RenderFramesOutput>;
|
|
74
81
|
/**
|
|
75
82
|
* @description Renders a series of images using Puppeteer and computes information for mixing audio.
|
|
76
83
|
* @see [Documentation](https://www.remotion.dev/docs/renderer/render-frames)
|
package/dist/render-frames.js
CHANGED
|
@@ -33,8 +33,9 @@ const set_props_and_env_1 = require("./set-props-and-env");
|
|
|
33
33
|
const take_frame_and_compose_1 = require("./take-frame-and-compose");
|
|
34
34
|
const truthy_1 = require("./truthy");
|
|
35
35
|
const validate_scale_1 = require("./validate-scale");
|
|
36
|
+
const logger_1 = require("./logger");
|
|
36
37
|
const MAX_RETRIES_PER_FRAME = 1;
|
|
37
|
-
const innerRenderFrames = async ({ onFrameUpdate, outputDir, onStart, inputProps, jpegQuality, imageFormat, frameRange, onError, envVariables, onBrowserLog, onFrameBuffer, onDownload, pagesArray, serveUrl, composition, timeoutInMilliseconds, scale, actualConcurrency, everyNthFrame, proxyPort, cancelSignal, downloadMap, muted, makeBrowser, browserReplacer, compositor, sourcemapContext, }) => {
|
|
38
|
+
const innerRenderFrames = async ({ onFrameUpdate, outputDir, onStart, inputProps, jpegQuality, imageFormat, frameRange, onError, envVariables, onBrowserLog, onFrameBuffer, onDownload, pagesArray, serveUrl, composition, timeoutInMilliseconds, scale, actualConcurrency, everyNthFrame, proxyPort, cancelSignal, downloadMap, muted, makeBrowser, browserReplacer, compositor, sourcemapContext, logLevel, indent, }) => {
|
|
38
39
|
if (outputDir) {
|
|
39
40
|
if (!node_fs_1.default.existsSync(outputDir)) {
|
|
40
41
|
node_fs_1.default.mkdirSync(outputDir, {
|
|
@@ -47,7 +48,9 @@ const innerRenderFrames = async ({ onFrameUpdate, outputDir, onStart, inputProps
|
|
|
47
48
|
const framesToRender = (0, get_duration_from_frame_range_1.getFramesToRender)(realFrameRange, everyNthFrame);
|
|
48
49
|
const lastFrame = framesToRender[framesToRender.length - 1];
|
|
49
50
|
const makePage = async (context) => {
|
|
50
|
-
const page = await browserReplacer
|
|
51
|
+
const page = await browserReplacer
|
|
52
|
+
.getBrowser()
|
|
53
|
+
.newPage(context, logLevel, indent);
|
|
51
54
|
pagesArray.push(page);
|
|
52
55
|
await page.setViewport({
|
|
53
56
|
width: composition.width,
|
|
@@ -283,7 +286,7 @@ const innerRenderFrames = async ({ onFrameUpdate, outputDir, onStart, inputProps
|
|
|
283
286
|
await Promise.all(downloadPromises);
|
|
284
287
|
return result;
|
|
285
288
|
};
|
|
286
|
-
const internalRenderFrames = ({ browserExecutable, cancelSignal, chromiumOptions, composition, concurrency,
|
|
289
|
+
const internalRenderFrames = ({ browserExecutable, cancelSignal, chromiumOptions, composition, concurrency, envVariables, everyNthFrame, frameRange, imageFormat, indent, inputProps, jpegQuality, muted, onBrowserLog, onDownload, onFrameBuffer, onFrameUpdate, onStart, outputDir, port, puppeteerInstance, scale, server, timeoutInMilliseconds, logLevel, webpackBundleOrServeUrl, }) => {
|
|
287
290
|
remotion_1.Internals.validateDimension(composition.height, 'height', 'in the `config` object passed to `renderFrames()`');
|
|
288
291
|
remotion_1.Internals.validateDimension(composition.width, 'width', 'in the `config` object passed to `renderFrames()`');
|
|
289
292
|
remotion_1.Internals.validateFps(composition.fps, 'in the `config` object of `renderFrames()`', false);
|
|
@@ -296,12 +299,12 @@ const internalRenderFrames = ({ browserExecutable, cancelSignal, chromiumOptions
|
|
|
296
299
|
(0, validate_scale_1.validateScale)(scale);
|
|
297
300
|
const makeBrowser = () => (0, open_browser_1.internalOpenBrowser)({
|
|
298
301
|
browser: browser_1.DEFAULT_BROWSER,
|
|
299
|
-
shouldDumpIo: dumpBrowserLogs,
|
|
300
302
|
browserExecutable,
|
|
301
303
|
chromiumOptions,
|
|
302
304
|
forceDeviceScaleFactor: scale,
|
|
303
305
|
indent,
|
|
304
306
|
viewport: null,
|
|
307
|
+
logLevel,
|
|
305
308
|
});
|
|
306
309
|
const browserInstance = puppeteerInstance !== null && puppeteerInstance !== void 0 ? puppeteerInstance : makeBrowser();
|
|
307
310
|
const actualConcurrency = (0, get_concurrency_1.getActualConcurrency)(concurrency);
|
|
@@ -323,7 +326,7 @@ const internalRenderFrames = ({ browserExecutable, cancelSignal, chromiumOptions
|
|
|
323
326
|
port,
|
|
324
327
|
remotionRoot: (0, find_closest_package_json_1.findRemotionRoot)(),
|
|
325
328
|
concurrency: actualConcurrency,
|
|
326
|
-
|
|
329
|
+
logLevel,
|
|
327
330
|
indent,
|
|
328
331
|
}, {
|
|
329
332
|
onDownload,
|
|
@@ -331,8 +334,8 @@ const internalRenderFrames = ({ browserExecutable, cancelSignal, chromiumOptions
|
|
|
331
334
|
}),
|
|
332
335
|
browserInstance,
|
|
333
336
|
]).then(([{ server: { serveUrl, offthreadPort, compositor, sourceMap, downloadMap, }, cleanupServer, }, pInstance,]) => {
|
|
334
|
-
const browserReplacer = (0, replace_browser_1.handleBrowserCrash)(pInstance);
|
|
335
|
-
cleanup.push((0, cycle_browser_tabs_1.cycleBrowserTabs)(browserReplacer, actualConcurrency).stopCycling);
|
|
337
|
+
const browserReplacer = (0, replace_browser_1.handleBrowserCrash)(pInstance, logLevel, indent);
|
|
338
|
+
cleanup.push((0, cycle_browser_tabs_1.cycleBrowserTabs)(browserReplacer, actualConcurrency, logLevel, indent).stopCycling);
|
|
336
339
|
cleanup.push(() => cleanupServer(false));
|
|
337
340
|
return innerRenderFrames({
|
|
338
341
|
onError,
|
|
@@ -362,6 +365,8 @@ const internalRenderFrames = ({ browserExecutable, cancelSignal, chromiumOptions
|
|
|
362
365
|
outputDir,
|
|
363
366
|
scale,
|
|
364
367
|
timeoutInMilliseconds,
|
|
368
|
+
logLevel,
|
|
369
|
+
indent,
|
|
365
370
|
});
|
|
366
371
|
}),
|
|
367
372
|
])
|
|
@@ -384,7 +389,7 @@ const internalRenderFrames = ({ browserExecutable, cancelSignal, chromiumOptions
|
|
|
384
389
|
else {
|
|
385
390
|
Promise.resolve(browserInstance)
|
|
386
391
|
.then((instance) => {
|
|
387
|
-
return instance.close(true);
|
|
392
|
+
return instance.close(true, logLevel, indent);
|
|
388
393
|
})
|
|
389
394
|
.catch((err) => {
|
|
390
395
|
if (!(err === null || err === void 0 ? void 0 : err.message.includes('Target closed'))) {
|
|
@@ -405,7 +410,7 @@ exports.internalRenderFrames = internalRenderFrames;
|
|
|
405
410
|
* @see [Documentation](https://www.remotion.dev/docs/renderer/render-frames)
|
|
406
411
|
*/
|
|
407
412
|
const renderFrames = (options) => {
|
|
408
|
-
const { composition, inputProps, onFrameUpdate, onStart, outputDir, serveUrl, browserExecutable, cancelSignal, chromiumOptions, concurrency, dumpBrowserLogs, envVariables, everyNthFrame, frameRange, imageFormat, jpegQuality, muted, onBrowserLog, onDownload, onFrameBuffer, port, puppeteerInstance, scale, timeoutInMilliseconds, verbose, quality, } = options;
|
|
413
|
+
const { composition, inputProps, onFrameUpdate, onStart, outputDir, serveUrl, browserExecutable, cancelSignal, chromiumOptions, concurrency, dumpBrowserLogs, envVariables, everyNthFrame, frameRange, imageFormat, jpegQuality, muted, onBrowserLog, onDownload, onFrameBuffer, port, puppeteerInstance, scale, timeoutInMilliseconds, verbose, quality, logLevel, } = options;
|
|
409
414
|
if (!composition) {
|
|
410
415
|
throw new Error('No `composition` option has been specified for renderFrames()');
|
|
411
416
|
}
|
|
@@ -421,7 +426,6 @@ const renderFrames = (options) => {
|
|
|
421
426
|
chromiumOptions: chromiumOptions !== null && chromiumOptions !== void 0 ? chromiumOptions : {},
|
|
422
427
|
composition,
|
|
423
428
|
concurrency: concurrency !== null && concurrency !== void 0 ? concurrency : null,
|
|
424
|
-
dumpBrowserLogs: dumpBrowserLogs !== null && dumpBrowserLogs !== void 0 ? dumpBrowserLogs : false,
|
|
425
429
|
envVariables: envVariables !== null && envVariables !== void 0 ? envVariables : {},
|
|
426
430
|
everyNthFrame: everyNthFrame !== null && everyNthFrame !== void 0 ? everyNthFrame : 1,
|
|
427
431
|
frameRange: frameRange !== null && frameRange !== void 0 ? frameRange : null,
|
|
@@ -439,7 +443,7 @@ const renderFrames = (options) => {
|
|
|
439
443
|
outputDir,
|
|
440
444
|
port: port !== null && port !== void 0 ? port : null,
|
|
441
445
|
scale: scale !== null && scale !== void 0 ? scale : 1,
|
|
442
|
-
|
|
446
|
+
logLevel: verbose || dumpBrowserLogs ? 'verbose' : logLevel !== null && logLevel !== void 0 ? logLevel : (0, logger_1.getLogLevel)(),
|
|
443
447
|
timeoutInMilliseconds: timeoutInMilliseconds !== null && timeoutInMilliseconds !== void 0 ? timeoutInMilliseconds : TimeoutSettings_1.DEFAULT_TIMEOUT,
|
|
444
448
|
webpackBundleOrServeUrl: serveUrl,
|
|
445
449
|
server: undefined,
|
package/dist/render-media.d.ts
CHANGED
|
@@ -15,6 +15,7 @@ import type { PixelFormat } from './pixel-format';
|
|
|
15
15
|
import type { RemotionServer } from './prepare-server';
|
|
16
16
|
import type { ProResProfile } from './prores-profile';
|
|
17
17
|
import type { OnStartData } from './types';
|
|
18
|
+
import { type LogLevel } from './log-level';
|
|
18
19
|
export type StitchingState = 'encoding' | 'muxing';
|
|
19
20
|
export type SlowFrame = {
|
|
20
21
|
frame: number;
|
|
@@ -46,7 +47,6 @@ export type InternalRenderMediaOptions = {
|
|
|
46
47
|
onProgress: RenderMediaOnProgress;
|
|
47
48
|
onDownload: RenderMediaOnDownload;
|
|
48
49
|
proResProfile: ProResProfile | undefined;
|
|
49
|
-
dumpBrowserLogs: boolean;
|
|
50
50
|
onBrowserLog: ((log: BrowserLog) => void) | null;
|
|
51
51
|
onStart: (data: OnStartData) => void;
|
|
52
52
|
timeoutInMilliseconds: number;
|
|
@@ -55,7 +55,7 @@ export type InternalRenderMediaOptions = {
|
|
|
55
55
|
port: number | null;
|
|
56
56
|
cancelSignal: CancelSignal | undefined;
|
|
57
57
|
browserExecutable: BrowserExecutable | null;
|
|
58
|
-
|
|
58
|
+
logLevel: LogLevel;
|
|
59
59
|
onCtrlCExit: (fn: () => void) => void;
|
|
60
60
|
indent: boolean;
|
|
61
61
|
server: RemotionServer | undefined;
|
|
@@ -92,6 +92,9 @@ export type RenderMediaOptions = {
|
|
|
92
92
|
onProgress?: RenderMediaOnProgress;
|
|
93
93
|
onDownload?: RenderMediaOnDownload;
|
|
94
94
|
proResProfile?: ProResProfile;
|
|
95
|
+
/**
|
|
96
|
+
* @deprecated Use "logLevel": "verbose" instead
|
|
97
|
+
*/
|
|
95
98
|
dumpBrowserLogs?: boolean;
|
|
96
99
|
onBrowserLog?: ((log: BrowserLog) => void) | undefined;
|
|
97
100
|
onStart?: (data: OnStartData) => void;
|
|
@@ -101,6 +104,9 @@ export type RenderMediaOptions = {
|
|
|
101
104
|
port?: number | null;
|
|
102
105
|
cancelSignal?: CancelSignal;
|
|
103
106
|
browserExecutable?: BrowserExecutable;
|
|
107
|
+
/**
|
|
108
|
+
* @deprecated Use "logLevel" instead
|
|
109
|
+
*/
|
|
104
110
|
verbose?: boolean;
|
|
105
111
|
preferLossless?: boolean;
|
|
106
112
|
muted?: boolean;
|
|
@@ -112,16 +118,17 @@ export type RenderMediaOptions = {
|
|
|
112
118
|
audioCodec?: AudioCodec | null;
|
|
113
119
|
serveUrl: string;
|
|
114
120
|
concurrency?: number | string | null;
|
|
121
|
+
logLevel?: LogLevel;
|
|
115
122
|
};
|
|
116
123
|
type RenderMediaResult = {
|
|
117
124
|
buffer: Buffer | null;
|
|
118
125
|
slowestFrames: SlowFrame[];
|
|
119
126
|
};
|
|
120
|
-
export declare const internalRenderMedia: ({ proResProfile, crf, composition, inputProps, pixelFormat, codec, envVariables, frameRange, puppeteerInstance, outputLocation, onProgress, overwrite, onDownload,
|
|
127
|
+
export declare const internalRenderMedia: ({ proResProfile, crf, composition, inputProps, pixelFormat, codec, envVariables, frameRange, puppeteerInstance, outputLocation, onProgress, overwrite, onDownload, 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, logLevel, }: InternalRenderMediaOptions) => Promise<RenderMediaResult>;
|
|
121
128
|
/**
|
|
122
129
|
*
|
|
123
130
|
* @description Render a video from a composition
|
|
124
131
|
* @see [Documentation](https://www.remotion.dev/docs/renderer/render-media)
|
|
125
132
|
*/
|
|
126
|
-
export declare const renderMedia: ({ proResProfile, crf, composition, inputProps, pixelFormat, codec, envVariables, frameRange, puppeteerInstance, outputLocation, onProgress, overwrite, onDownload,
|
|
133
|
+
export declare const renderMedia: ({ proResProfile, crf, composition, inputProps, pixelFormat, codec, envVariables, frameRange, puppeteerInstance, outputLocation, onProgress, overwrite, onDownload, onBrowserLog, onStart, timeoutInMilliseconds, chromiumOptions, scale, browserExecutable, port, cancelSignal, muted, enforceAudioTrack, ffmpegOverride, audioBitrate, videoBitrate, audioCodec, jpegQuality, concurrency, serveUrl, disallowParallelEncoding, everyNthFrame, imageFormat, numberOfGifLoops, dumpBrowserLogs, preferLossless, verbose, quality, logLevel, }: RenderMediaOptions) => Promise<RenderMediaResult>;
|
|
127
134
|
export {};
|
package/dist/render-media.js
CHANGED
|
@@ -43,7 +43,7 @@ const validate_output_filename_1 = require("./validate-output-filename");
|
|
|
43
43
|
const validate_scale_1 = require("./validate-scale");
|
|
44
44
|
const validate_videobitrate_1 = require("./validate-videobitrate");
|
|
45
45
|
const SLOWEST_FRAME_COUNT = 10;
|
|
46
|
-
const internalRenderMedia = ({ proResProfile, crf, composition, inputProps, pixelFormat, codec, envVariables, frameRange, puppeteerInstance, outputLocation, onProgress, overwrite, onDownload,
|
|
46
|
+
const internalRenderMedia = ({ proResProfile, crf, composition, inputProps, pixelFormat, codec, envVariables, frameRange, puppeteerInstance, outputLocation, onProgress, overwrite, onDownload, 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, logLevel, }) => {
|
|
47
47
|
(0, jpeg_quality_1.validateJpegQuality)(jpegQuality);
|
|
48
48
|
(0, crf_1.validateQualitySettings)({ crf, codec, videoBitrate });
|
|
49
49
|
(0, validate_videobitrate_1.validateBitrate)(audioBitrate, 'audioBitrate');
|
|
@@ -86,30 +86,30 @@ const internalRenderMedia = ({ proResProfile, crf, composition, inputProps, pixe
|
|
|
86
86
|
(0, can_use_parallel_encoding_1.canUseParallelEncoding)(codec);
|
|
87
87
|
logger_1.Log.verboseAdvanced({
|
|
88
88
|
indent,
|
|
89
|
-
logLevel
|
|
89
|
+
logLevel,
|
|
90
90
|
tag: 'renderMedia()',
|
|
91
91
|
}, 'Free memory:', freeMemory, 'Estimated usage parallel encoding', estimatedUsage);
|
|
92
92
|
logger_1.Log.verboseAdvanced({
|
|
93
93
|
indent,
|
|
94
|
-
logLevel
|
|
94
|
+
logLevel,
|
|
95
95
|
tag: 'renderMedia()',
|
|
96
96
|
}, 'Codec supports parallel rendering:', (0, can_use_parallel_encoding_1.canUseParallelEncoding)(codec));
|
|
97
97
|
logger_1.Log.verboseAdvanced({
|
|
98
98
|
indent,
|
|
99
|
-
logLevel
|
|
99
|
+
logLevel,
|
|
100
100
|
tag: 'renderMedia()',
|
|
101
101
|
}, 'User disallowed parallel encoding:', Boolean(disallowParallelEncoding));
|
|
102
102
|
if (parallelEncoding) {
|
|
103
103
|
logger_1.Log.verboseAdvanced({
|
|
104
104
|
indent,
|
|
105
|
-
logLevel
|
|
105
|
+
logLevel,
|
|
106
106
|
tag: 'renderMedia()',
|
|
107
107
|
}, 'Parallel encoding is enabled.');
|
|
108
108
|
}
|
|
109
109
|
else {
|
|
110
110
|
logger_1.Log.verboseAdvanced({
|
|
111
111
|
indent,
|
|
112
|
-
logLevel
|
|
112
|
+
logLevel,
|
|
113
113
|
tag: 'renderMedia()',
|
|
114
114
|
}, 'Parallel encoding is disabled.');
|
|
115
115
|
}
|
|
@@ -167,7 +167,7 @@ const internalRenderMedia = ({ proResProfile, crf, composition, inputProps, pixe
|
|
|
167
167
|
encodedFrames = frame;
|
|
168
168
|
callUpdate();
|
|
169
169
|
},
|
|
170
|
-
|
|
170
|
+
logLevel,
|
|
171
171
|
imageFormat,
|
|
172
172
|
signal: cancelPrestitcher.cancelSignal,
|
|
173
173
|
ffmpegOverride: ffmpegOverride !== null && ffmpegOverride !== void 0 ? ffmpegOverride : (({ args }) => args),
|
|
@@ -225,7 +225,7 @@ const internalRenderMedia = ({ proResProfile, crf, composition, inputProps, pixe
|
|
|
225
225
|
indent,
|
|
226
226
|
port,
|
|
227
227
|
remotionRoot: (0, find_closest_package_json_1.findRemotionRoot)(),
|
|
228
|
-
|
|
228
|
+
logLevel,
|
|
229
229
|
webpackConfigOrServeUrl: serveUrl,
|
|
230
230
|
}, {
|
|
231
231
|
onDownload,
|
|
@@ -276,7 +276,6 @@ const internalRenderMedia = ({ proResProfile, crf, composition, inputProps, pixe
|
|
|
276
276
|
}
|
|
277
277
|
: null,
|
|
278
278
|
webpackBundleOrServeUrl: serveUrl,
|
|
279
|
-
dumpBrowserLogs,
|
|
280
279
|
onBrowserLog,
|
|
281
280
|
onDownload,
|
|
282
281
|
timeoutInMilliseconds,
|
|
@@ -286,7 +285,7 @@ const internalRenderMedia = ({ proResProfile, crf, composition, inputProps, pixe
|
|
|
286
285
|
port,
|
|
287
286
|
cancelSignal: cancelRenderFrames.cancelSignal,
|
|
288
287
|
muted: disableAudio,
|
|
289
|
-
|
|
288
|
+
logLevel,
|
|
290
289
|
indent,
|
|
291
290
|
server,
|
|
292
291
|
});
|
|
@@ -327,7 +326,7 @@ const internalRenderMedia = ({ proResProfile, crf, composition, inputProps, pixe
|
|
|
327
326
|
},
|
|
328
327
|
onDownload,
|
|
329
328
|
numberOfGifLoops,
|
|
330
|
-
|
|
329
|
+
logLevel,
|
|
331
330
|
dir: workingDir,
|
|
332
331
|
cancelSignal: cancelStitcher.cancelSignal,
|
|
333
332
|
muted: disableAudio,
|
|
@@ -401,7 +400,7 @@ exports.internalRenderMedia = internalRenderMedia;
|
|
|
401
400
|
* @description Render a video from a composition
|
|
402
401
|
* @see [Documentation](https://www.remotion.dev/docs/renderer/render-media)
|
|
403
402
|
*/
|
|
404
|
-
const renderMedia = ({ proResProfile, crf, composition, inputProps, pixelFormat, codec, envVariables, frameRange, puppeteerInstance, outputLocation, onProgress, overwrite, onDownload,
|
|
403
|
+
const renderMedia = ({ proResProfile, crf, composition, inputProps, pixelFormat, codec, envVariables, frameRange, puppeteerInstance, outputLocation, onProgress, overwrite, onDownload, onBrowserLog, onStart, timeoutInMilliseconds, chromiumOptions, scale, browserExecutable, port, cancelSignal, muted, enforceAudioTrack, ffmpegOverride, audioBitrate, videoBitrate, audioCodec, jpegQuality, concurrency, serveUrl, disallowParallelEncoding, everyNthFrame, imageFormat, numberOfGifLoops, dumpBrowserLogs, preferLossless, verbose, quality, logLevel, }) => {
|
|
405
404
|
var _a;
|
|
406
405
|
if (quality !== undefined) {
|
|
407
406
|
console.warn(`The "quality" option has been renamed. Please use "jpegQuality" instead.`);
|
|
@@ -419,7 +418,6 @@ const renderMedia = ({ proResProfile, crf, composition, inputProps, pixelFormat,
|
|
|
419
418
|
concurrency: concurrency !== null && concurrency !== void 0 ? concurrency : null,
|
|
420
419
|
crf: crf !== null && crf !== void 0 ? crf : null,
|
|
421
420
|
disallowParallelEncoding: disallowParallelEncoding !== null && disallowParallelEncoding !== void 0 ? disallowParallelEncoding : false,
|
|
422
|
-
dumpBrowserLogs: dumpBrowserLogs !== null && dumpBrowserLogs !== void 0 ? dumpBrowserLogs : false,
|
|
423
421
|
enforceAudioTrack: enforceAudioTrack !== null && enforceAudioTrack !== void 0 ? enforceAudioTrack : false,
|
|
424
422
|
envVariables: envVariables !== null && envVariables !== void 0 ? envVariables : {},
|
|
425
423
|
everyNthFrame: everyNthFrame !== null && everyNthFrame !== void 0 ? everyNthFrame : 1,
|
|
@@ -442,7 +440,7 @@ const renderMedia = ({ proResProfile, crf, composition, inputProps, pixelFormat,
|
|
|
442
440
|
scale: scale !== null && scale !== void 0 ? scale : 1,
|
|
443
441
|
timeoutInMilliseconds: timeoutInMilliseconds !== null && timeoutInMilliseconds !== void 0 ? timeoutInMilliseconds : TimeoutSettings_1.DEFAULT_TIMEOUT,
|
|
444
442
|
videoBitrate: videoBitrate !== null && videoBitrate !== void 0 ? videoBitrate : null,
|
|
445
|
-
|
|
443
|
+
logLevel: verbose || dumpBrowserLogs ? 'verbose' : logLevel !== null && logLevel !== void 0 ? logLevel : (0, logger_1.getLogLevel)(),
|
|
446
444
|
preferLossless: preferLossless !== null && preferLossless !== void 0 ? preferLossless : false,
|
|
447
445
|
indent: false,
|
|
448
446
|
onCtrlCExit: () => undefined,
|
package/dist/render-still.d.ts
CHANGED
|
@@ -8,6 +8,7 @@ import type { StillImageFormat } from './image-format';
|
|
|
8
8
|
import type { CancelSignal } from './make-cancel-signal';
|
|
9
9
|
import type { ChromiumOptions } from './open-browser';
|
|
10
10
|
import type { RemotionServer } from './prepare-server';
|
|
11
|
+
import type { LogLevel } from './log-level';
|
|
11
12
|
type InternalRenderStillOptions = {
|
|
12
13
|
composition: AnySmallCompMetadata;
|
|
13
14
|
output: string | null;
|
|
@@ -16,7 +17,6 @@ type InternalRenderStillOptions = {
|
|
|
16
17
|
imageFormat: StillImageFormat;
|
|
17
18
|
jpegQuality: number;
|
|
18
19
|
puppeteerInstance: HeadlessBrowser | null;
|
|
19
|
-
dumpBrowserLogs: boolean;
|
|
20
20
|
envVariables: Record<string, string>;
|
|
21
21
|
overwrite: boolean;
|
|
22
22
|
browserExecutable: BrowserExecutable;
|
|
@@ -28,7 +28,7 @@ type InternalRenderStillOptions = {
|
|
|
28
28
|
cancelSignal: CancelSignal | null;
|
|
29
29
|
indent: boolean;
|
|
30
30
|
server: RemotionServer | undefined;
|
|
31
|
-
|
|
31
|
+
logLevel: LogLevel;
|
|
32
32
|
serveUrl: string;
|
|
33
33
|
port: number | null;
|
|
34
34
|
};
|
|
@@ -41,6 +41,9 @@ export type RenderStillOptions = {
|
|
|
41
41
|
imageFormat?: StillImageFormat;
|
|
42
42
|
jpegQuality?: number;
|
|
43
43
|
puppeteerInstance?: HeadlessBrowser;
|
|
44
|
+
/**
|
|
45
|
+
* @deprecated Use "logLevel": "verbose" instead
|
|
46
|
+
*/
|
|
44
47
|
dumpBrowserLogs?: boolean;
|
|
45
48
|
envVariables?: Record<string, string>;
|
|
46
49
|
overwrite?: boolean;
|
|
@@ -51,6 +54,9 @@ export type RenderStillOptions = {
|
|
|
51
54
|
scale?: number;
|
|
52
55
|
onDownload?: RenderMediaOnDownload;
|
|
53
56
|
cancelSignal?: CancelSignal;
|
|
57
|
+
/**
|
|
58
|
+
* @deprecated Use "logLevel" instead
|
|
59
|
+
*/
|
|
54
60
|
verbose?: boolean;
|
|
55
61
|
serveUrl: string;
|
|
56
62
|
/**
|
package/dist/render-still.js
CHANGED
|
@@ -48,7 +48,8 @@ const set_props_and_env_1 = require("./set-props-and-env");
|
|
|
48
48
|
const take_frame_and_compose_1 = require("./take-frame-and-compose");
|
|
49
49
|
const validate_puppeteer_timeout_1 = require("./validate-puppeteer-timeout");
|
|
50
50
|
const validate_scale_1 = require("./validate-scale");
|
|
51
|
-
const
|
|
51
|
+
const logger_1 = require("./logger");
|
|
52
|
+
const innerRenderStill = async ({ composition, imageFormat = image_format_1.DEFAULT_STILL_IMAGE_FORMAT, serveUrl, puppeteerInstance, onError, inputProps, envVariables, output, frame = 0, overwrite, browserExecutable, timeoutInMilliseconds, chromiumOptions, scale, proxyPort, cancelSignal, jpegQuality, onBrowserLog, compositor, sourceMapContext, downloadMap, logLevel, indent, }) => {
|
|
52
53
|
remotion_1.Internals.validateDimension(composition.height, 'height', 'in the `config` object passed to `renderStill()`');
|
|
53
54
|
remotion_1.Internals.validateDimension(composition.width, 'width', 'in the `config` object passed to `renderStill()`');
|
|
54
55
|
remotion_1.Internals.validateFps(composition.fps, 'in the `config` object of `renderStill()`', false);
|
|
@@ -87,13 +88,13 @@ const innerRenderStill = async ({ composition, imageFormat = image_format_1.DEFA
|
|
|
87
88
|
const browserInstance = puppeteerInstance !== null && puppeteerInstance !== void 0 ? puppeteerInstance : (await (0, open_browser_1.internalOpenBrowser)({
|
|
88
89
|
browser: browser_1.DEFAULT_BROWSER,
|
|
89
90
|
browserExecutable,
|
|
90
|
-
shouldDumpIo: dumpBrowserLogs,
|
|
91
91
|
chromiumOptions,
|
|
92
92
|
forceDeviceScaleFactor: scale,
|
|
93
|
-
indent
|
|
93
|
+
indent,
|
|
94
94
|
viewport: null,
|
|
95
|
+
logLevel,
|
|
95
96
|
}));
|
|
96
|
-
const page = await browserInstance.newPage(sourceMapContext);
|
|
97
|
+
const page = await browserInstance.newPage(sourceMapContext, logLevel, indent);
|
|
97
98
|
await page.setViewport({
|
|
98
99
|
width: composition.width,
|
|
99
100
|
height: composition.height,
|
|
@@ -122,7 +123,7 @@ const innerRenderStill = async ({ composition, imageFormat = image_format_1.DEFA
|
|
|
122
123
|
await page.close();
|
|
123
124
|
}
|
|
124
125
|
else {
|
|
125
|
-
browserInstance.close(true).catch((err) => {
|
|
126
|
+
browserInstance.close(true, logLevel, indent).catch((err) => {
|
|
126
127
|
console.log('Unable to close browser', err);
|
|
127
128
|
});
|
|
128
129
|
}
|
|
@@ -195,7 +196,7 @@ const internalRenderStill = (options) => {
|
|
|
195
196
|
port: options.port,
|
|
196
197
|
remotionRoot: (0, find_closest_package_json_1.findRemotionRoot)(),
|
|
197
198
|
concurrency: 1,
|
|
198
|
-
|
|
199
|
+
logLevel: options.logLevel,
|
|
199
200
|
indent: options.indent,
|
|
200
201
|
}, {
|
|
201
202
|
onDownload: options.onDownload,
|
|
@@ -252,7 +253,6 @@ const renderStill = (options) => {
|
|
|
252
253
|
browserExecutable: browserExecutable !== null && browserExecutable !== void 0 ? browserExecutable : null,
|
|
253
254
|
cancelSignal: cancelSignal !== null && cancelSignal !== void 0 ? cancelSignal : null,
|
|
254
255
|
chromiumOptions: chromiumOptions !== null && chromiumOptions !== void 0 ? chromiumOptions : {},
|
|
255
|
-
dumpBrowserLogs: dumpBrowserLogs !== null && dumpBrowserLogs !== void 0 ? dumpBrowserLogs : false,
|
|
256
256
|
envVariables: envVariables !== null && envVariables !== void 0 ? envVariables : {},
|
|
257
257
|
frame: frame !== null && frame !== void 0 ? frame : 0,
|
|
258
258
|
imageFormat: imageFormat !== null && imageFormat !== void 0 ? imageFormat : image_format_1.DEFAULT_STILL_IMAGE_FORMAT,
|
|
@@ -269,7 +269,7 @@ const renderStill = (options) => {
|
|
|
269
269
|
server: undefined,
|
|
270
270
|
serveUrl,
|
|
271
271
|
timeoutInMilliseconds: timeoutInMilliseconds !== null && timeoutInMilliseconds !== void 0 ? timeoutInMilliseconds : TimeoutSettings_1.DEFAULT_TIMEOUT,
|
|
272
|
-
|
|
272
|
+
logLevel: verbose || dumpBrowserLogs ? 'verbose' : (0, logger_1.getLogLevel)(),
|
|
273
273
|
});
|
|
274
274
|
};
|
|
275
275
|
exports.renderStill = renderStill;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { HeadlessBrowser } from './browser/Browser';
|
|
2
|
+
import type { LogLevel } from './log-level';
|
|
2
3
|
export type BrowserReplacer = {
|
|
3
4
|
getBrowser: () => HeadlessBrowser;
|
|
4
5
|
replaceBrowser: (make: () => Promise<HeadlessBrowser>, makeNewPages: () => Promise<void>) => Promise<HeadlessBrowser>;
|
|
5
6
|
};
|
|
6
|
-
export declare const handleBrowserCrash: (instance: HeadlessBrowser) => BrowserReplacer;
|
|
7
|
+
export declare const handleBrowserCrash: (instance: HeadlessBrowser, logLevel: LogLevel, indent: boolean) => BrowserReplacer;
|
package/dist/replace-browser.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.handleBrowserCrash = void 0;
|
|
4
|
-
const handleBrowserCrash = (instance) => {
|
|
4
|
+
const handleBrowserCrash = (instance, logLevel, indent) => {
|
|
5
5
|
let _instance = instance;
|
|
6
6
|
const waiters = [];
|
|
7
7
|
let replacing = false;
|
|
@@ -20,7 +20,7 @@ const handleBrowserCrash = (instance) => {
|
|
|
20
20
|
try {
|
|
21
21
|
replacing = true;
|
|
22
22
|
await _instance
|
|
23
|
-
.close(true)
|
|
23
|
+
.close(true, logLevel, indent)
|
|
24
24
|
.then(() => {
|
|
25
25
|
console.log('Killed previous browser and making new one');
|
|
26
26
|
})
|
|
@@ -4,6 +4,7 @@ import type { BrowserLog } from './browser-log';
|
|
|
4
4
|
import type { HeadlessBrowser } from './browser/Browser';
|
|
5
5
|
import type { ChromiumOptions } from './open-browser';
|
|
6
6
|
import type { RemotionServer } from './prepare-server';
|
|
7
|
+
import { type LogLevel } from './log-level';
|
|
7
8
|
type InternalSelectCompositionsConfig = {
|
|
8
9
|
inputProps: Record<string, unknown>;
|
|
9
10
|
envVariables: Record<string, string>;
|
|
@@ -15,7 +16,7 @@ type InternalSelectCompositionsConfig = {
|
|
|
15
16
|
port: number | null;
|
|
16
17
|
indent: boolean;
|
|
17
18
|
server: RemotionServer | undefined;
|
|
18
|
-
|
|
19
|
+
logLevel: LogLevel;
|
|
19
20
|
serveUrl: string;
|
|
20
21
|
id: string;
|
|
21
22
|
};
|
|
@@ -11,7 +11,7 @@ const puppeteer_evaluate_1 = require("./puppeteer-evaluate");
|
|
|
11
11
|
const seek_to_frame_1 = require("./seek-to-frame");
|
|
12
12
|
const set_props_and_env_1 = require("./set-props-and-env");
|
|
13
13
|
const validate_puppeteer_timeout_1 = require("./validate-puppeteer-timeout");
|
|
14
|
-
const innerSelectComposition = async ({ page, onBrowserLog, inputProps, envVariables, serveUrl, timeoutInMilliseconds, port, id, indent,
|
|
14
|
+
const innerSelectComposition = async ({ page, onBrowserLog, inputProps, envVariables, serveUrl, timeoutInMilliseconds, port, id, indent, logLevel, }) => {
|
|
15
15
|
if (onBrowserLog) {
|
|
16
16
|
page.on('console', (log) => {
|
|
17
17
|
onBrowserLog({
|
|
@@ -48,7 +48,7 @@ const innerSelectComposition = async ({ page, onBrowserLog, inputProps, envVaria
|
|
|
48
48
|
logger_1.Log.verboseAdvanced({
|
|
49
49
|
indent,
|
|
50
50
|
tag: 'selectComposition()',
|
|
51
|
-
logLevel
|
|
51
|
+
logLevel,
|
|
52
52
|
}, 'Running calculateMetadata()...');
|
|
53
53
|
const time = Date.now();
|
|
54
54
|
const result = await (0, puppeteer_evaluate_1.puppeteerEvaluateWithCatch)({
|
|
@@ -62,13 +62,13 @@ const innerSelectComposition = async ({ page, onBrowserLog, inputProps, envVaria
|
|
|
62
62
|
logger_1.Log.verboseAdvanced({
|
|
63
63
|
indent,
|
|
64
64
|
tag: 'selectComposition()',
|
|
65
|
-
logLevel
|
|
65
|
+
logLevel,
|
|
66
66
|
}, `calculateMetadata() took ${Date.now() - time}ms`);
|
|
67
67
|
return result;
|
|
68
68
|
};
|
|
69
69
|
const internalSelectComposition = async (options) => {
|
|
70
70
|
const cleanup = [];
|
|
71
|
-
const { puppeteerInstance, browserExecutable, chromiumOptions, serveUrl: serveUrlOrWebpackUrl,
|
|
71
|
+
const { puppeteerInstance, browserExecutable, chromiumOptions, serveUrl: serveUrlOrWebpackUrl, logLevel, indent, port, envVariables, id, inputProps, onBrowserLog, server, timeoutInMilliseconds, } = options;
|
|
72
72
|
const { page, cleanup: cleanupPage } = await (0, get_browser_instance_1.getPageAndCleanupFn)({
|
|
73
73
|
passedInInstance: puppeteerInstance,
|
|
74
74
|
browserExecutable,
|
|
@@ -76,7 +76,7 @@ const internalSelectComposition = async (options) => {
|
|
|
76
76
|
context: null,
|
|
77
77
|
forceDeviceScaleFactor: undefined,
|
|
78
78
|
indent,
|
|
79
|
-
|
|
79
|
+
logLevel,
|
|
80
80
|
});
|
|
81
81
|
cleanup.push(() => cleanupPage());
|
|
82
82
|
return new Promise((resolve, reject) => {
|
|
@@ -91,7 +91,7 @@ const internalSelectComposition = async (options) => {
|
|
|
91
91
|
port,
|
|
92
92
|
remotionRoot: (0, find_closest_package_json_1.findRemotionRoot)(),
|
|
93
93
|
concurrency: 1,
|
|
94
|
-
|
|
94
|
+
logLevel,
|
|
95
95
|
indent,
|
|
96
96
|
}, {
|
|
97
97
|
onDownload: () => undefined,
|
|
@@ -111,7 +111,7 @@ const internalSelectComposition = async (options) => {
|
|
|
111
111
|
inputProps,
|
|
112
112
|
onBrowserLog,
|
|
113
113
|
timeoutInMilliseconds,
|
|
114
|
-
|
|
114
|
+
logLevel,
|
|
115
115
|
indent,
|
|
116
116
|
puppeteerInstance,
|
|
117
117
|
server,
|
|
@@ -148,7 +148,7 @@ const selectComposition = (options) => {
|
|
|
148
148
|
port: port !== null && port !== void 0 ? port : null,
|
|
149
149
|
puppeteerInstance,
|
|
150
150
|
timeoutInMilliseconds: timeoutInMilliseconds !== null && timeoutInMilliseconds !== void 0 ? timeoutInMilliseconds : TimeoutSettings_1.DEFAULT_TIMEOUT,
|
|
151
|
-
|
|
151
|
+
logLevel: verbose ? 'verbose' : 'info',
|
|
152
152
|
indent: false,
|
|
153
153
|
server: undefined,
|
|
154
154
|
});
|
package/dist/serve-static.d.ts
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import type { DownloadMap } from './assets/download-map';
|
|
2
2
|
import type { Compositor } from './compositor/compositor';
|
|
3
3
|
import type { OffthreadVideoServerEmitter } from './offthread-video-server';
|
|
4
|
+
import type { LogLevel } from './log-level';
|
|
4
5
|
export declare const serveStatic: (path: string | null, options: {
|
|
5
6
|
port: number | null;
|
|
6
7
|
downloadMap: DownloadMap;
|
|
7
8
|
remotionRoot: string;
|
|
8
9
|
concurrency: number;
|
|
9
|
-
|
|
10
|
+
logLevel: LogLevel;
|
|
10
11
|
indent: boolean;
|
|
11
12
|
}) => Promise<{
|
|
12
13
|
port: number;
|
package/dist/serve-static.js
CHANGED
|
@@ -12,7 +12,7 @@ const serveStatic = async (path, options) => {
|
|
|
12
12
|
const { listener: offthreadRequest, close: closeCompositor, compositor, events, } = (0, offthread_video_server_1.startOffthreadVideoServer)({
|
|
13
13
|
downloadMap: options.downloadMap,
|
|
14
14
|
concurrency: options.concurrency,
|
|
15
|
-
|
|
15
|
+
logLevel: options.logLevel,
|
|
16
16
|
indent: options.indent,
|
|
17
17
|
});
|
|
18
18
|
const connections = {};
|
|
@@ -7,6 +7,7 @@ import type { FfmpegOverrideFn } from './ffmpeg-override';
|
|
|
7
7
|
import type { CancelSignal } from './make-cancel-signal';
|
|
8
8
|
import type { PixelFormat } from './pixel-format';
|
|
9
9
|
import type { ProResProfile } from './prores-profile';
|
|
10
|
+
import type { LogLevel } from './log-level';
|
|
10
11
|
type InternalStitchFramesToVideoOptions = {
|
|
11
12
|
audioBitrate: string | null;
|
|
12
13
|
videoBitrate: string | null;
|
|
@@ -24,7 +25,7 @@ type InternalStitchFramesToVideoOptions = {
|
|
|
24
25
|
onProgress?: null | ((progress: number) => void);
|
|
25
26
|
onDownload: undefined | RenderMediaOnDownload;
|
|
26
27
|
proResProfile: undefined | ProResProfile;
|
|
27
|
-
|
|
28
|
+
logLevel: LogLevel;
|
|
28
29
|
dir: string;
|
|
29
30
|
cancelSignal: CancelSignal | null;
|
|
30
31
|
preEncodedFileLocation: string | null;
|