@remotion/lambda 4.0.0-alpha4 → 4.0.0-alpha6
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/admin/bundle-lambda.js +24 -30
- package/dist/admin/generate-etag-list.js +4 -4
- package/dist/admin/make-layer-public.js +59 -87
- package/dist/api/clean-items.js +1 -1
- package/dist/api/create-function.d.ts +1 -3
- package/dist/api/create-function.js +8 -8
- package/dist/api/deploy-function.d.ts +0 -3
- package/dist/api/deploy-function.js +1 -7
- package/dist/api/deploy-site.js +4 -9
- package/dist/api/download-media.d.ts +0 -4
- package/dist/api/download-media.js +3 -7
- package/dist/api/estimate-price.d.ts +1 -3
- package/dist/api/estimate-price.js +3 -9
- package/dist/api/get-compositions-on-lambda.d.ts +2 -2
- package/dist/api/get-or-create-bucket.d.ts +0 -1
- package/dist/api/get-or-create-bucket.js +0 -3
- package/dist/api/get-sites.d.ts +0 -1
- package/dist/api/iam-validation/simulate.js +4 -2
- package/dist/api/make-lambda-payload.d.ts +41 -0
- package/dist/api/make-lambda-payload.js +65 -0
- package/dist/api/render-media-on-lambda.d.ts +10 -6
- package/dist/api/render-media-on-lambda.js +5 -58
- package/dist/api/render-still-on-lambda.d.ts +7 -3
- package/dist/api/render-still-on-lambda.js +6 -3
- package/dist/api/upload-dir.js +7 -7
- package/dist/cli/args.d.ts +0 -2
- package/dist/cli/commands/functions/deploy.js +7 -9
- package/dist/cli/commands/functions/ls.js +4 -1
- package/dist/cli/commands/functions/rm.js +8 -2
- package/dist/cli/commands/functions/rmall.js +8 -2
- package/dist/cli/commands/quotas/increase.js +2 -2
- package/dist/cli/commands/render/render.js +22 -12
- package/dist/cli/commands/sites/create.js +7 -8
- package/dist/cli/commands/still.js +7 -5
- package/dist/cli/help.js +4 -0
- package/dist/cli/helpers/progress-bar.d.ts +1 -2
- package/dist/cli/helpers/progress-bar.js +3 -7
- package/dist/cli/index.js +3 -3
- package/dist/cli/log.d.ts +12 -0
- package/dist/functions/chunk-optimization/plan-frame-ranges.d.ts +4 -1
- package/dist/functions/compositions.d.ts +1 -1
- package/dist/functions/compositions.js +0 -2
- package/dist/functions/helpers/calculate-price-from-bucket.d.ts +1 -3
- package/dist/functions/helpers/calculate-price-from-bucket.js +1 -2
- package/dist/functions/helpers/clean-tmpdir.js +7 -7
- package/dist/functions/helpers/concat-videos.d.ts +2 -4
- package/dist/functions/helpers/concat-videos.js +8 -11
- package/dist/functions/helpers/create-post-render-data.js +0 -2
- package/dist/functions/helpers/get-chromium-executable-path.js +6 -1
- package/dist/functions/helpers/get-current-region.d.ts +1 -1
- package/dist/functions/helpers/get-files-in-folder.js +5 -5
- package/dist/functions/helpers/get-progress.js +0 -2
- package/dist/functions/helpers/io.d.ts +1 -1
- package/dist/functions/helpers/is-enosp-err.js +1 -1
- package/dist/functions/helpers/validate-composition.d.ts +3 -5
- package/dist/functions/helpers/validate-composition.js +1 -3
- package/dist/functions/index.d.ts +15 -4
- package/dist/functions/index.js +1 -1
- package/dist/functions/launch.js +10 -14
- package/dist/functions/renderer.js +15 -15
- package/dist/functions/start.js +1 -1
- package/dist/functions/still.js +7 -11
- package/dist/index.d.ts +5 -6
- package/dist/index.js +1 -2
- package/dist/internals.d.ts +40 -0
- package/dist/internals.js +2 -0
- package/dist/shared/aws-clients.js +2 -2
- package/dist/shared/call-lambda.js +11 -0
- package/dist/shared/constants.d.ts +20 -17
- package/dist/shared/constants.js +1 -2
- package/dist/shared/function-zip-path.d.ts +0 -1
- package/dist/shared/function-zip-path.js +3 -4
- package/dist/shared/get-etag.js +4 -4
- package/dist/shared/hosted-layers.d.ts +2 -91
- package/dist/shared/hosted-layers.js +64 -363
- package/dist/shared/invoke-webhook.d.ts +1 -3
- package/dist/shared/invoke-webhook.js +4 -4
- package/dist/shared/make-s3-key.js +2 -2
- package/dist/shared/make-s3-url.js +2 -2
- package/dist/shared/read-dir.js +2 -2
- package/dist/shared/serialize-input-props.js +1 -1
- package/dist/shared/validate-privacy.js +1 -1
- package/package.json +9 -10
- package/remotionlambda-arm64.zip +0 -0
- package/remotionlambda-x64.zip +0 -0
- package/remotionlambda.zip +0 -0
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import type { RenderMediaOnLambdaInput } from './render-media-on-lambda';
|
|
2
|
+
export declare const makeLambdaPayload: ({ rendererFunctionName, frameRange, framesPerLambda, forceBucketName: bucketName, codec, composition, serveUrl, imageFormat, inputProps, region, crf, envVariables, pixelFormat, proResProfile, maxRetries, privacy, logLevel, outName, timeoutInMilliseconds, chromiumOptions, scale, everyNthFrame, numberOfGifLoops, audioBitrate, concurrencyPerLambda, audioCodec, forceHeight, forceWidth, webhook, videoBitrate, downloadBehavior, muted, overwrite, dumpBrowserLogs, jpegQuality, quality, }: RenderMediaOnLambdaInput) => Promise<{
|
|
3
|
+
rendererFunctionName: string | null;
|
|
4
|
+
framesPerLambda: number | null;
|
|
5
|
+
composition: string;
|
|
6
|
+
serveUrl: string;
|
|
7
|
+
inputProps: import("../defaults").SerializedInputProps;
|
|
8
|
+
codec: "h264" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "gif" | "prores";
|
|
9
|
+
imageFormat: "png" | "jpeg" | "none";
|
|
10
|
+
crf: number | undefined;
|
|
11
|
+
envVariables: Record<string, string> | undefined;
|
|
12
|
+
pixelFormat: "yuv420p" | "yuva420p" | "yuv422p" | "yuv444p" | "yuv420p10le" | "yuv422p10le" | "yuv444p10le" | "yuva444p10le" | undefined;
|
|
13
|
+
proResProfile: "4444-xq" | "4444" | "hq" | "standard" | "light" | "proxy" | undefined;
|
|
14
|
+
jpegQuality: number | undefined;
|
|
15
|
+
maxRetries: number;
|
|
16
|
+
privacy: import("../defaults").Privacy;
|
|
17
|
+
logLevel: "verbose" | "info" | "warn" | "error";
|
|
18
|
+
frameRange: import("@remotion/renderer").FrameRange | null;
|
|
19
|
+
outName: import("../defaults").OutNameInput | null;
|
|
20
|
+
timeoutInMilliseconds: number;
|
|
21
|
+
chromiumOptions: import("@remotion/renderer").ChromiumOptions;
|
|
22
|
+
scale: number;
|
|
23
|
+
everyNthFrame: number;
|
|
24
|
+
numberOfGifLoops: number;
|
|
25
|
+
concurrencyPerLambda: number;
|
|
26
|
+
downloadBehavior: import("../shared/content-disposition-header").DownloadBehavior;
|
|
27
|
+
muted: boolean;
|
|
28
|
+
version: string;
|
|
29
|
+
overwrite: boolean;
|
|
30
|
+
audioBitrate: string | null;
|
|
31
|
+
videoBitrate: string | null;
|
|
32
|
+
webhook: {
|
|
33
|
+
url: string;
|
|
34
|
+
secret: string | null;
|
|
35
|
+
} | null;
|
|
36
|
+
forceHeight: number | null;
|
|
37
|
+
forceWidth: number | null;
|
|
38
|
+
bucketName: string | null;
|
|
39
|
+
audioCodec: "mp3" | "aac" | "pcm-16" | "opus" | null;
|
|
40
|
+
dumpBrowserLogs: boolean;
|
|
41
|
+
}>;
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.makeLambdaPayload = void 0;
|
|
4
|
+
const version_1 = require("remotion/version");
|
|
5
|
+
const serialize_input_props_1 = require("../shared/serialize-input-props");
|
|
6
|
+
const validate_download_behavior_1 = require("../shared/validate-download-behavior");
|
|
7
|
+
const validate_frames_per_lambda_1 = require("../shared/validate-frames-per-lambda");
|
|
8
|
+
const validate_lambda_codec_1 = require("../shared/validate-lambda-codec");
|
|
9
|
+
const validate_serveurl_1 = require("../shared/validate-serveurl");
|
|
10
|
+
const makeLambdaPayload = async ({ rendererFunctionName, frameRange, framesPerLambda, forceBucketName: bucketName, codec, composition, serveUrl, imageFormat, inputProps, region, crf, envVariables, pixelFormat, proResProfile, maxRetries, privacy, logLevel, outName, timeoutInMilliseconds, chromiumOptions, scale, everyNthFrame, numberOfGifLoops, audioBitrate, concurrencyPerLambda, audioCodec, forceHeight, forceWidth, webhook, videoBitrate, downloadBehavior, muted, overwrite, dumpBrowserLogs, jpegQuality, quality, }) => {
|
|
11
|
+
if (quality) {
|
|
12
|
+
throw new Error('quality has been renamed to jpegQuality. Please rename the option.');
|
|
13
|
+
}
|
|
14
|
+
const actualCodec = (0, validate_lambda_codec_1.validateLambdaCodec)(codec);
|
|
15
|
+
(0, validate_serveurl_1.validateServeUrl)(serveUrl);
|
|
16
|
+
(0, validate_frames_per_lambda_1.validateFramesPerLambda)({
|
|
17
|
+
framesPerLambda: framesPerLambda !== null && framesPerLambda !== void 0 ? framesPerLambda : null,
|
|
18
|
+
durationInFrames: 1,
|
|
19
|
+
});
|
|
20
|
+
(0, validate_download_behavior_1.validateDownloadBehavior)(downloadBehavior);
|
|
21
|
+
const serializedInputProps = await (0, serialize_input_props_1.serializeInputProps)({
|
|
22
|
+
inputProps,
|
|
23
|
+
region,
|
|
24
|
+
type: 'video-or-audio',
|
|
25
|
+
userSpecifiedBucketName: bucketName !== null && bucketName !== void 0 ? bucketName : null,
|
|
26
|
+
});
|
|
27
|
+
return {
|
|
28
|
+
rendererFunctionName: rendererFunctionName !== null && rendererFunctionName !== void 0 ? rendererFunctionName : null,
|
|
29
|
+
framesPerLambda: framesPerLambda !== null && framesPerLambda !== void 0 ? framesPerLambda : null,
|
|
30
|
+
composition,
|
|
31
|
+
serveUrl,
|
|
32
|
+
inputProps: serializedInputProps,
|
|
33
|
+
codec: actualCodec,
|
|
34
|
+
imageFormat: imageFormat !== null && imageFormat !== void 0 ? imageFormat : 'jpeg',
|
|
35
|
+
crf,
|
|
36
|
+
envVariables,
|
|
37
|
+
pixelFormat,
|
|
38
|
+
proResProfile,
|
|
39
|
+
jpegQuality,
|
|
40
|
+
maxRetries: maxRetries !== null && maxRetries !== void 0 ? maxRetries : 1,
|
|
41
|
+
privacy: privacy !== null && privacy !== void 0 ? privacy : 'public',
|
|
42
|
+
logLevel: logLevel !== null && logLevel !== void 0 ? logLevel : 'info',
|
|
43
|
+
frameRange: frameRange !== null && frameRange !== void 0 ? frameRange : null,
|
|
44
|
+
outName: outName !== null && outName !== void 0 ? outName : null,
|
|
45
|
+
timeoutInMilliseconds: timeoutInMilliseconds !== null && timeoutInMilliseconds !== void 0 ? timeoutInMilliseconds : 30000,
|
|
46
|
+
chromiumOptions: chromiumOptions !== null && chromiumOptions !== void 0 ? chromiumOptions : {},
|
|
47
|
+
scale: scale !== null && scale !== void 0 ? scale : 1,
|
|
48
|
+
everyNthFrame: everyNthFrame !== null && everyNthFrame !== void 0 ? everyNthFrame : 1,
|
|
49
|
+
numberOfGifLoops: numberOfGifLoops !== null && numberOfGifLoops !== void 0 ? numberOfGifLoops : 0,
|
|
50
|
+
concurrencyPerLambda: concurrencyPerLambda !== null && concurrencyPerLambda !== void 0 ? concurrencyPerLambda : 1,
|
|
51
|
+
downloadBehavior: downloadBehavior !== null && downloadBehavior !== void 0 ? downloadBehavior : { type: 'play-in-browser' },
|
|
52
|
+
muted: muted !== null && muted !== void 0 ? muted : false,
|
|
53
|
+
version: version_1.VERSION,
|
|
54
|
+
overwrite: overwrite !== null && overwrite !== void 0 ? overwrite : false,
|
|
55
|
+
audioBitrate: audioBitrate !== null && audioBitrate !== void 0 ? audioBitrate : null,
|
|
56
|
+
videoBitrate: videoBitrate !== null && videoBitrate !== void 0 ? videoBitrate : null,
|
|
57
|
+
webhook: webhook !== null && webhook !== void 0 ? webhook : null,
|
|
58
|
+
forceHeight: forceHeight !== null && forceHeight !== void 0 ? forceHeight : null,
|
|
59
|
+
forceWidth: forceWidth !== null && forceWidth !== void 0 ? forceWidth : null,
|
|
60
|
+
bucketName: bucketName !== null && bucketName !== void 0 ? bucketName : null,
|
|
61
|
+
audioCodec: audioCodec !== null && audioCodec !== void 0 ? audioCodec : null,
|
|
62
|
+
dumpBrowserLogs: dumpBrowserLogs !== null && dumpBrowserLogs !== void 0 ? dumpBrowserLogs : false,
|
|
63
|
+
};
|
|
64
|
+
};
|
|
65
|
+
exports.makeLambdaPayload = makeLambdaPayload;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { AudioCodec, ChromiumOptions, FrameRange,
|
|
1
|
+
import type { AudioCodec, ChromiumOptions, FrameRange, LogLevel, PixelFormat, ProResProfile, VideoImageFormat } from '@remotion/renderer';
|
|
2
2
|
import type { AwsRegion } from '../pricing/aws-regions';
|
|
3
3
|
import type { OutNameInput, Privacy } from '../shared/constants';
|
|
4
4
|
import type { DownloadBehavior } from '../shared/content-disposition-header';
|
|
@@ -10,13 +10,17 @@ export declare type RenderMediaOnLambdaInput = {
|
|
|
10
10
|
composition: string;
|
|
11
11
|
inputProps?: unknown;
|
|
12
12
|
codec: LambdaCodec;
|
|
13
|
-
imageFormat?:
|
|
13
|
+
imageFormat?: VideoImageFormat;
|
|
14
14
|
crf?: number | undefined;
|
|
15
15
|
envVariables?: Record<string, string>;
|
|
16
16
|
pixelFormat?: PixelFormat;
|
|
17
17
|
proResProfile?: ProResProfile;
|
|
18
18
|
privacy?: Privacy;
|
|
19
|
-
|
|
19
|
+
/**
|
|
20
|
+
* @deprecated Renamed to `jpegQuality`
|
|
21
|
+
*/
|
|
22
|
+
quality?: never;
|
|
23
|
+
jpegQuality?: number;
|
|
20
24
|
maxRetries?: number;
|
|
21
25
|
framesPerLambda?: number;
|
|
22
26
|
logLevel?: LogLevel;
|
|
@@ -62,7 +66,7 @@ export declare type RenderMediaOnLambdaOutput = {
|
|
|
62
66
|
* @param params.crf The constant rate factor to be used during encoding.
|
|
63
67
|
* @param params.envVariables Object containing environment variables to be inserted into the video environment
|
|
64
68
|
* @param params.proResProfile The ProRes profile if rendering a ProRes video
|
|
65
|
-
* @param params.
|
|
69
|
+
* @param params.jpegQuality JPEG quality if JPEG was selected as the image format.
|
|
66
70
|
* @param params.region The AWS region in which the media should be rendered.
|
|
67
71
|
* @param params.maxRetries How often rendering a chunk may fail before the media render gets aborted. Default "1"
|
|
68
72
|
* @param params.logLevel Level of logging that Lambda function should perform. Default "info".
|
|
@@ -70,8 +74,8 @@ export declare type RenderMediaOnLambdaOutput = {
|
|
|
70
74
|
* @param params.dumpBrowserLogs Whether to print browser logs to CloudWatch
|
|
71
75
|
* @returns {Promise<RenderMediaOnLambdaOutput>} See documentation for detailed structure
|
|
72
76
|
*/
|
|
73
|
-
export declare const renderMediaOnLambda: (
|
|
77
|
+
export declare const renderMediaOnLambda: (input: RenderMediaOnLambdaInput) => Promise<RenderMediaOnLambdaOutput>;
|
|
74
78
|
/**
|
|
75
79
|
* @deprecated Renamed to renderMediaOnLambda()
|
|
76
80
|
*/
|
|
77
|
-
export declare const renderVideoOnLambda: (
|
|
81
|
+
export declare const renderVideoOnLambda: (input: RenderMediaOnLambdaInput) => Promise<RenderMediaOnLambdaOutput>;
|
|
@@ -1,15 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.renderVideoOnLambda = exports.renderMediaOnLambda = void 0;
|
|
4
|
-
const version_1 = require("remotion/version");
|
|
5
4
|
const call_lambda_1 = require("../shared/call-lambda");
|
|
6
5
|
const constants_1 = require("../shared/constants");
|
|
7
6
|
const get_aws_urls_1 = require("../shared/get-aws-urls");
|
|
8
|
-
const
|
|
9
|
-
const validate_download_behavior_1 = require("../shared/validate-download-behavior");
|
|
10
|
-
const validate_frames_per_lambda_1 = require("../shared/validate-frames-per-lambda");
|
|
11
|
-
const validate_lambda_codec_1 = require("../shared/validate-lambda-codec");
|
|
12
|
-
const validate_serveurl_1 = require("../shared/validate-serveurl");
|
|
7
|
+
const make_lambda_payload_1 = require("./make-lambda-payload");
|
|
13
8
|
/**
|
|
14
9
|
* @description Triggers a render on a lambda given a composition and a lambda function.
|
|
15
10
|
* @see [Documentation](https://remotion.dev/docs/lambda/rendermediaonlambda)
|
|
@@ -22,7 +17,7 @@ const validate_serveurl_1 = require("../shared/validate-serveurl");
|
|
|
22
17
|
* @param params.crf The constant rate factor to be used during encoding.
|
|
23
18
|
* @param params.envVariables Object containing environment variables to be inserted into the video environment
|
|
24
19
|
* @param params.proResProfile The ProRes profile if rendering a ProRes video
|
|
25
|
-
* @param params.
|
|
20
|
+
* @param params.jpegQuality JPEG quality if JPEG was selected as the image format.
|
|
26
21
|
* @param params.region The AWS region in which the media should be rendered.
|
|
27
22
|
* @param params.maxRetries How often rendering a chunk may fail before the media render gets aborted. Default "1"
|
|
28
23
|
* @param params.logLevel Level of logging that Lambda function should perform. Default "info".
|
|
@@ -30,62 +25,14 @@ const validate_serveurl_1 = require("../shared/validate-serveurl");
|
|
|
30
25
|
* @param params.dumpBrowserLogs Whether to print browser logs to CloudWatch
|
|
31
26
|
* @returns {Promise<RenderMediaOnLambdaOutput>} See documentation for detailed structure
|
|
32
27
|
*/
|
|
33
|
-
const renderMediaOnLambda = async (
|
|
28
|
+
const renderMediaOnLambda = async (input) => {
|
|
34
29
|
var _a;
|
|
35
|
-
const
|
|
36
|
-
(0, validate_serveurl_1.validateServeUrl)(serveUrl);
|
|
37
|
-
(0, validate_frames_per_lambda_1.validateFramesPerLambda)({
|
|
38
|
-
framesPerLambda: framesPerLambda !== null && framesPerLambda !== void 0 ? framesPerLambda : null,
|
|
39
|
-
durationInFrames: 1,
|
|
40
|
-
});
|
|
41
|
-
(0, validate_download_behavior_1.validateDownloadBehavior)(downloadBehavior);
|
|
42
|
-
const serializedInputProps = await (0, serialize_input_props_1.serializeInputProps)({
|
|
43
|
-
inputProps,
|
|
44
|
-
region,
|
|
45
|
-
type: 'video-or-audio',
|
|
46
|
-
userSpecifiedBucketName: bucketName !== null && bucketName !== void 0 ? bucketName : null,
|
|
47
|
-
});
|
|
30
|
+
const { functionName, region, rendererFunctionName } = input;
|
|
48
31
|
try {
|
|
49
32
|
const res = await (0, call_lambda_1.callLambda)({
|
|
50
33
|
functionName,
|
|
51
34
|
type: constants_1.LambdaRoutines.start,
|
|
52
|
-
payload:
|
|
53
|
-
rendererFunctionName: rendererFunctionName !== null && rendererFunctionName !== void 0 ? rendererFunctionName : null,
|
|
54
|
-
framesPerLambda: framesPerLambda !== null && framesPerLambda !== void 0 ? framesPerLambda : null,
|
|
55
|
-
composition,
|
|
56
|
-
serveUrl,
|
|
57
|
-
inputProps: serializedInputProps,
|
|
58
|
-
codec: actualCodec,
|
|
59
|
-
imageFormat: imageFormat !== null && imageFormat !== void 0 ? imageFormat : 'jpeg',
|
|
60
|
-
crf,
|
|
61
|
-
envVariables,
|
|
62
|
-
pixelFormat,
|
|
63
|
-
proResProfile,
|
|
64
|
-
quality,
|
|
65
|
-
maxRetries: maxRetries !== null && maxRetries !== void 0 ? maxRetries : 1,
|
|
66
|
-
privacy: privacy !== null && privacy !== void 0 ? privacy : 'public',
|
|
67
|
-
logLevel: logLevel !== null && logLevel !== void 0 ? logLevel : 'info',
|
|
68
|
-
frameRange: frameRange !== null && frameRange !== void 0 ? frameRange : null,
|
|
69
|
-
outName: outName !== null && outName !== void 0 ? outName : null,
|
|
70
|
-
timeoutInMilliseconds: timeoutInMilliseconds !== null && timeoutInMilliseconds !== void 0 ? timeoutInMilliseconds : 30000,
|
|
71
|
-
chromiumOptions: chromiumOptions !== null && chromiumOptions !== void 0 ? chromiumOptions : {},
|
|
72
|
-
scale: scale !== null && scale !== void 0 ? scale : 1,
|
|
73
|
-
everyNthFrame: everyNthFrame !== null && everyNthFrame !== void 0 ? everyNthFrame : 1,
|
|
74
|
-
numberOfGifLoops: numberOfGifLoops !== null && numberOfGifLoops !== void 0 ? numberOfGifLoops : 0,
|
|
75
|
-
concurrencyPerLambda: concurrencyPerLambda !== null && concurrencyPerLambda !== void 0 ? concurrencyPerLambda : 1,
|
|
76
|
-
downloadBehavior: downloadBehavior !== null && downloadBehavior !== void 0 ? downloadBehavior : { type: 'play-in-browser' },
|
|
77
|
-
muted: muted !== null && muted !== void 0 ? muted : false,
|
|
78
|
-
version: version_1.VERSION,
|
|
79
|
-
overwrite: overwrite !== null && overwrite !== void 0 ? overwrite : false,
|
|
80
|
-
audioBitrate: audioBitrate !== null && audioBitrate !== void 0 ? audioBitrate : null,
|
|
81
|
-
videoBitrate: videoBitrate !== null && videoBitrate !== void 0 ? videoBitrate : null,
|
|
82
|
-
webhook: webhook !== null && webhook !== void 0 ? webhook : null,
|
|
83
|
-
forceHeight: forceHeight !== null && forceHeight !== void 0 ? forceHeight : null,
|
|
84
|
-
forceWidth: forceWidth !== null && forceWidth !== void 0 ? forceWidth : null,
|
|
85
|
-
bucketName: bucketName !== null && bucketName !== void 0 ? bucketName : null,
|
|
86
|
-
audioCodec: audioCodec !== null && audioCodec !== void 0 ? audioCodec : null,
|
|
87
|
-
dumpBrowserLogs: dumpBrowserLogs !== null && dumpBrowserLogs !== void 0 ? dumpBrowserLogs : false,
|
|
88
|
-
},
|
|
35
|
+
payload: await (0, make_lambda_payload_1.makeLambdaPayload)(input),
|
|
89
36
|
region,
|
|
90
37
|
});
|
|
91
38
|
return {
|
|
@@ -12,7 +12,11 @@ export declare type RenderStillOnLambdaInput = {
|
|
|
12
12
|
privacy: Privacy;
|
|
13
13
|
maxRetries?: number;
|
|
14
14
|
envVariables?: Record<string, string>;
|
|
15
|
-
|
|
15
|
+
/**
|
|
16
|
+
* @deprecated Renamed to `jpegQuality`
|
|
17
|
+
*/
|
|
18
|
+
quality?: never;
|
|
19
|
+
jpegQuality?: number;
|
|
16
20
|
frame?: number;
|
|
17
21
|
logLevel?: LogLevel;
|
|
18
22
|
outName?: OutNameInput;
|
|
@@ -42,7 +46,7 @@ export declare type RenderStillOnLambdaOutput = {
|
|
|
42
46
|
* @param params.inputProps The input props that should be passed to the composition.
|
|
43
47
|
* @param params.imageFormat In which image format the frames should be rendered.
|
|
44
48
|
* @param params.envVariables Object containing environment variables to be inserted into the video environment
|
|
45
|
-
* @param params.
|
|
49
|
+
* @param params.jpegQuality JPEG quality if JPEG was selected as the image format.
|
|
46
50
|
* @param params.region The AWS region in which the video should be rendered.
|
|
47
51
|
* @param params.maxRetries How often rendering a chunk may fail before the video render gets aborted.
|
|
48
52
|
* @param params.frame Which frame should be used for the still image. Default 0.
|
|
@@ -50,4 +54,4 @@ export declare type RenderStillOnLambdaOutput = {
|
|
|
50
54
|
* @param params.dumpBrowserLogs Whether to print browser logs to CloudWatch.
|
|
51
55
|
* @returns {Promise<RenderStillOnLambdaOutput>} See documentation for exact response structure.
|
|
52
56
|
*/
|
|
53
|
-
export declare const renderStillOnLambda: ({ functionName, serveUrl, inputProps, imageFormat, envVariables, quality, region, maxRetries, composition, privacy, frame, logLevel, outName, timeoutInMilliseconds, chromiumOptions, scale, downloadBehavior, forceHeight, forceWidth, forceBucketName, dumpBrowserLogs, }: RenderStillOnLambdaInput) => Promise<RenderStillOnLambdaOutput>;
|
|
57
|
+
export declare const renderStillOnLambda: ({ functionName, serveUrl, inputProps, imageFormat, envVariables, quality, jpegQuality, region, maxRetries, composition, privacy, frame, logLevel, outName, timeoutInMilliseconds, chromiumOptions, scale, downloadBehavior, forceHeight, forceWidth, forceBucketName, dumpBrowserLogs, }: RenderStillOnLambdaInput) => Promise<RenderStillOnLambdaOutput>;
|
|
@@ -15,7 +15,7 @@ const serialize_input_props_1 = require("../shared/serialize-input-props");
|
|
|
15
15
|
* @param params.inputProps The input props that should be passed to the composition.
|
|
16
16
|
* @param params.imageFormat In which image format the frames should be rendered.
|
|
17
17
|
* @param params.envVariables Object containing environment variables to be inserted into the video environment
|
|
18
|
-
* @param params.
|
|
18
|
+
* @param params.jpegQuality JPEG quality if JPEG was selected as the image format.
|
|
19
19
|
* @param params.region The AWS region in which the video should be rendered.
|
|
20
20
|
* @param params.maxRetries How often rendering a chunk may fail before the video render gets aborted.
|
|
21
21
|
* @param params.frame Which frame should be used for the still image. Default 0.
|
|
@@ -23,8 +23,11 @@ const serialize_input_props_1 = require("../shared/serialize-input-props");
|
|
|
23
23
|
* @param params.dumpBrowserLogs Whether to print browser logs to CloudWatch.
|
|
24
24
|
* @returns {Promise<RenderStillOnLambdaOutput>} See documentation for exact response structure.
|
|
25
25
|
*/
|
|
26
|
-
const renderStillOnLambda = async ({ functionName, serveUrl, inputProps, imageFormat, envVariables, quality, region, maxRetries, composition, privacy, frame, logLevel, outName, timeoutInMilliseconds, chromiumOptions, scale, downloadBehavior, forceHeight, forceWidth, forceBucketName, dumpBrowserLogs, }) => {
|
|
26
|
+
const renderStillOnLambda = async ({ functionName, serveUrl, inputProps, imageFormat, envVariables, quality, jpegQuality, region, maxRetries, composition, privacy, frame, logLevel, outName, timeoutInMilliseconds, chromiumOptions, scale, downloadBehavior, forceHeight, forceWidth, forceBucketName, dumpBrowserLogs, }) => {
|
|
27
27
|
var _a;
|
|
28
|
+
if (quality) {
|
|
29
|
+
throw new Error('The `quality` option is deprecated. Use `jpegQuality` instead.');
|
|
30
|
+
}
|
|
28
31
|
const serializedInputProps = await (0, serialize_input_props_1.serializeInputProps)({
|
|
29
32
|
inputProps,
|
|
30
33
|
region,
|
|
@@ -41,7 +44,7 @@ const renderStillOnLambda = async ({ functionName, serveUrl, inputProps, imageFo
|
|
|
41
44
|
inputProps: serializedInputProps,
|
|
42
45
|
imageFormat,
|
|
43
46
|
envVariables,
|
|
44
|
-
|
|
47
|
+
jpegQuality,
|
|
45
48
|
maxRetries: maxRetries !== null && maxRetries !== void 0 ? maxRetries : constants_1.DEFAULT_MAX_RETRIES,
|
|
46
49
|
frame: frame !== null && frame !== void 0 ? frame : 0,
|
|
47
50
|
privacy,
|
package/dist/api/upload-dir.js
CHANGED
|
@@ -5,9 +5,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.uploadDir = exports.getDirFiles = void 0;
|
|
7
7
|
const lib_storage_1 = require("@aws-sdk/lib-storage");
|
|
8
|
-
const fs_1 = require("fs");
|
|
9
8
|
const mime_types_1 = __importDefault(require("mime-types"));
|
|
10
|
-
const
|
|
9
|
+
const node_fs_1 = require("node:fs");
|
|
10
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
11
11
|
const aws_clients_1 = require("../shared/aws-clients");
|
|
12
12
|
const make_s3_key_1 = require("../shared/make-s3-key");
|
|
13
13
|
const getDirFiles = (entry) => {
|
|
@@ -15,14 +15,14 @@ const getDirFiles = (entry) => {
|
|
|
15
15
|
};
|
|
16
16
|
exports.getDirFiles = getDirFiles;
|
|
17
17
|
async function getFiles(directory, originalDirectory, toUpload) {
|
|
18
|
-
const dirents = await
|
|
18
|
+
const dirents = await node_fs_1.promises.readdir(directory, { withFileTypes: true });
|
|
19
19
|
const _files = await Promise.all(dirents
|
|
20
20
|
.map((dirent) => {
|
|
21
|
-
const res =
|
|
21
|
+
const res = node_path_1.default.resolve(directory, dirent.name);
|
|
22
22
|
return [dirent, res];
|
|
23
23
|
})
|
|
24
24
|
.filter(([dirent, res]) => {
|
|
25
|
-
const relative =
|
|
25
|
+
const relative = node_path_1.default.relative(originalDirectory, res);
|
|
26
26
|
if (dirent.isDirectory()) {
|
|
27
27
|
return true;
|
|
28
28
|
}
|
|
@@ -32,7 +32,7 @@ async function getFiles(directory, originalDirectory, toUpload) {
|
|
|
32
32
|
return true;
|
|
33
33
|
})
|
|
34
34
|
.map(async ([dirent, res]) => {
|
|
35
|
-
const { size } = await
|
|
35
|
+
const { size } = await node_fs_1.promises.stat(res);
|
|
36
36
|
return dirent.isDirectory()
|
|
37
37
|
? getFiles(res, originalDirectory, toUpload)
|
|
38
38
|
: [
|
|
@@ -53,7 +53,7 @@ const uploadDir = async ({ bucket, region, localDir, onProgress, keyPrefix, priv
|
|
|
53
53
|
const client = (0, aws_clients_1.getS3Client)(region, null);
|
|
54
54
|
const uploads = files.map((filePath) => {
|
|
55
55
|
const Key = (0, make_s3_key_1.makeS3Key)(keyPrefix, localDir, filePath.name);
|
|
56
|
-
const Body = (0,
|
|
56
|
+
const Body = (0, node_fs_1.createReadStream)(filePath.name);
|
|
57
57
|
const ContentType = mime_types_1.default.lookup(Key) || 'application/octet-stream';
|
|
58
58
|
const ACL = privacy === 'no-acl'
|
|
59
59
|
? undefined
|
package/dist/cli/args.d.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/// <reference types="minimist" />
|
|
2
2
|
import type { AwsRegion } from '../pricing/aws-regions';
|
|
3
3
|
import type { Privacy } from '../shared/constants';
|
|
4
|
-
import type { LambdaArchitecture } from '../shared/validate-architecture';
|
|
5
4
|
declare type LambdaCommandLineOptions = {
|
|
6
5
|
help: boolean;
|
|
7
6
|
region: AwsRegion;
|
|
@@ -22,7 +21,6 @@ declare type LambdaCommandLineOptions = {
|
|
|
22
21
|
['frames-per-lambda']: number;
|
|
23
22
|
['concurrency-per-lambda']: number;
|
|
24
23
|
['out-name']: string | undefined;
|
|
25
|
-
['architecture']: LambdaArchitecture;
|
|
26
24
|
['custom-role-arn']: string | undefined;
|
|
27
25
|
privacy: Privacy;
|
|
28
26
|
webhook: string | undefined;
|
|
@@ -5,7 +5,6 @@ const cli_1 = require("@remotion/cli");
|
|
|
5
5
|
const version_1 = require("remotion/version");
|
|
6
6
|
const deploy_function_1 = require("../../../api/deploy-function");
|
|
7
7
|
const constants_1 = require("../../../shared/constants");
|
|
8
|
-
const validate_architecture_1 = require("../../../shared/validate-architecture");
|
|
9
8
|
const validate_custom_role_arn_1 = require("../../../shared/validate-custom-role-arn");
|
|
10
9
|
const validate_disk_size_in_mb_1 = require("../../../shared/validate-disk-size-in-mb");
|
|
11
10
|
const validate_memory_size_1 = require("../../../shared/validate-memory-size");
|
|
@@ -14,18 +13,16 @@ const args_1 = require("../../args");
|
|
|
14
13
|
const get_aws_region_1 = require("../../get-aws-region");
|
|
15
14
|
exports.FUNCTIONS_DEPLOY_SUBCOMMAND = 'deploy';
|
|
16
15
|
const functionsDeploySubcommand = async () => {
|
|
17
|
-
var _a, _b, _c, _d, _e
|
|
16
|
+
var _a, _b, _c, _d, _e;
|
|
18
17
|
const region = (0, get_aws_region_1.getAwsRegion)();
|
|
19
18
|
const timeoutInSeconds = (_a = args_1.parsedLambdaCli.timeout) !== null && _a !== void 0 ? _a : constants_1.DEFAULT_TIMEOUT;
|
|
20
19
|
const memorySizeInMb = (_b = args_1.parsedLambdaCli.memory) !== null && _b !== void 0 ? _b : constants_1.DEFAULT_MEMORY_SIZE;
|
|
21
20
|
const diskSizeInMb = (_c = args_1.parsedLambdaCli.disk) !== null && _c !== void 0 ? _c : constants_1.DEFAULT_EPHEMERAL_STORAGE_IN_MB;
|
|
22
|
-
const
|
|
23
|
-
const customRoleArn = (_e = args_1.parsedLambdaCli['custom-role-arn']) !== null && _e !== void 0 ? _e : undefined;
|
|
21
|
+
const customRoleArn = (_d = args_1.parsedLambdaCli['custom-role-arn']) !== null && _d !== void 0 ? _d : undefined;
|
|
24
22
|
const createCloudWatchLogGroup = !args_1.parsedLambdaCli['disable-cloudwatch'];
|
|
25
|
-
const cloudWatchLogRetentionPeriodInDays = (
|
|
23
|
+
const cloudWatchLogRetentionPeriodInDays = (_e = args_1.parsedLambdaCli['retention-period']) !== null && _e !== void 0 ? _e : constants_1.DEFAULT_CLOUDWATCH_RETENTION_PERIOD;
|
|
26
24
|
(0, validate_memory_size_1.validateMemorySize)(memorySizeInMb);
|
|
27
25
|
(0, validate_timeout_1.validateTimeout)(timeoutInSeconds);
|
|
28
|
-
(0, validate_architecture_1.validateArchitecture)(architecture);
|
|
29
26
|
(0, validate_disk_size_in_mb_1.validateDiskSizeInMb)(diskSizeInMb);
|
|
30
27
|
(0, validate_custom_role_arn_1.validateCustomRoleArn)(customRoleArn);
|
|
31
28
|
if (!cli_1.CliInternals.quietFlagProvided()) {
|
|
@@ -35,12 +32,14 @@ Memory = ${memorySizeInMb}MB
|
|
|
35
32
|
Disk size = ${diskSizeInMb}MB
|
|
36
33
|
Timeout = ${timeoutInSeconds}sec
|
|
37
34
|
Version = ${version_1.VERSION}
|
|
38
|
-
Architecture = ${architecture}
|
|
39
35
|
CloudWatch Logging Enabled = ${createCloudWatchLogGroup}
|
|
40
36
|
CloudWatch Retention Period = ${cloudWatchLogRetentionPeriodInDays} days
|
|
41
37
|
`.trim()));
|
|
42
38
|
}
|
|
43
|
-
const output = cli_1.CliInternals.createOverwriteableCliOutput(
|
|
39
|
+
const output = cli_1.CliInternals.createOverwriteableCliOutput({
|
|
40
|
+
quiet: cli_1.CliInternals.quietFlagProvided(),
|
|
41
|
+
cancelSignal: null,
|
|
42
|
+
});
|
|
44
43
|
output.update('Deploying Lambda...');
|
|
45
44
|
const { functionName, alreadyExisted } = await (0, deploy_function_1.deployFunction)({
|
|
46
45
|
createCloudWatchLogGroup,
|
|
@@ -48,7 +47,6 @@ CloudWatch Retention Period = ${cloudWatchLogRetentionPeriodInDays} days
|
|
|
48
47
|
timeoutInSeconds,
|
|
49
48
|
memorySizeInMb,
|
|
50
49
|
cloudWatchLogRetentionPeriodInDays,
|
|
51
|
-
architecture,
|
|
52
50
|
diskSizeInMb,
|
|
53
51
|
customRoleArn,
|
|
54
52
|
});
|
|
@@ -12,7 +12,10 @@ const VERSION_COLS = 15;
|
|
|
12
12
|
exports.FUNCTIONS_LS_SUBCOMMAND = 'ls';
|
|
13
13
|
const functionsLsCommand = async () => {
|
|
14
14
|
const region = (0, get_aws_region_1.getAwsRegion)();
|
|
15
|
-
const fetchingOutput = cli_1.CliInternals.createOverwriteableCliOutput(
|
|
15
|
+
const fetchingOutput = cli_1.CliInternals.createOverwriteableCliOutput({
|
|
16
|
+
quiet: cli_1.CliInternals.quietFlagProvided(),
|
|
17
|
+
cancelSignal: null,
|
|
18
|
+
});
|
|
16
19
|
fetchingOutput.update('Getting functions...');
|
|
17
20
|
const functions = await (0, get_functions_1.getFunctions)({
|
|
18
21
|
region,
|
|
@@ -26,7 +26,10 @@ const functionsRmCommand = async (args) => {
|
|
|
26
26
|
}
|
|
27
27
|
const region = (0, get_aws_region_1.getAwsRegion)();
|
|
28
28
|
for (const functionName of args) {
|
|
29
|
-
const infoOutput = cli_1.CliInternals.createOverwriteableCliOutput(
|
|
29
|
+
const infoOutput = cli_1.CliInternals.createOverwriteableCliOutput({
|
|
30
|
+
quiet: cli_1.CliInternals.quietFlagProvided(),
|
|
31
|
+
cancelSignal: null,
|
|
32
|
+
});
|
|
30
33
|
infoOutput.update('Getting function info...');
|
|
31
34
|
const info = await (0, get_function_info_1.getFunctionInfo)({
|
|
32
35
|
region,
|
|
@@ -40,7 +43,10 @@ const functionsRmCommand = async (args) => {
|
|
|
40
43
|
].join('\n'));
|
|
41
44
|
log_1.Log.info();
|
|
42
45
|
await (0, confirm_1.confirmCli)({ delMessage: 'Delete? (Y/n)', allowForceFlag: true });
|
|
43
|
-
const output = cli_1.CliInternals.createOverwriteableCliOutput(
|
|
46
|
+
const output = cli_1.CliInternals.createOverwriteableCliOutput({
|
|
47
|
+
quiet: cli_1.CliInternals.quietFlagProvided(),
|
|
48
|
+
cancelSignal: null,
|
|
49
|
+
});
|
|
44
50
|
output.update('Deleting...');
|
|
45
51
|
await (0, delete_function_1.deleteFunction)({ region, functionName });
|
|
46
52
|
output.update('Deleted!\n');
|
|
@@ -17,7 +17,10 @@ const functionsRmallCommand = async () => {
|
|
|
17
17
|
compatibleOnly: false,
|
|
18
18
|
});
|
|
19
19
|
for (const fun of functions) {
|
|
20
|
-
const infoOutput = cli_1.CliInternals.createOverwriteableCliOutput(
|
|
20
|
+
const infoOutput = cli_1.CliInternals.createOverwriteableCliOutput({
|
|
21
|
+
quiet: cli_1.CliInternals.quietFlagProvided(),
|
|
22
|
+
cancelSignal: null,
|
|
23
|
+
});
|
|
21
24
|
infoOutput.update('Getting function info...');
|
|
22
25
|
const info = await (0, get_function_info_1.getFunctionInfo)({
|
|
23
26
|
region,
|
|
@@ -31,7 +34,10 @@ const functionsRmallCommand = async () => {
|
|
|
31
34
|
].join('\n'));
|
|
32
35
|
log_1.Log.info();
|
|
33
36
|
await (0, confirm_1.confirmCli)({ delMessage: 'Delete? (Y/n)', allowForceFlag: true });
|
|
34
|
-
const output = cli_1.CliInternals.createOverwriteableCliOutput(
|
|
37
|
+
const output = cli_1.CliInternals.createOverwriteableCliOutput({
|
|
38
|
+
quiet: cli_1.CliInternals.quietFlagProvided(),
|
|
39
|
+
cancelSignal: null,
|
|
40
|
+
});
|
|
35
41
|
output.update('Deleting...');
|
|
36
42
|
await (0, delete_function_1.deleteFunction)({ region, functionName: fun.functionName });
|
|
37
43
|
output.update('Deleted!\n');
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.quotasIncreaseCommand = exports.INCREASE_SUBCOMMAND = void 0;
|
|
4
4
|
const client_service_quotas_1 = require("@aws-sdk/client-service-quotas");
|
|
5
|
-
const
|
|
5
|
+
const node_process_1 = require("node:process");
|
|
6
6
|
const _1 = require(".");
|
|
7
7
|
const defaults_1 = require("../../../defaults");
|
|
8
8
|
const aws_clients_1 = require("../../../shared/aws-clients");
|
|
@@ -36,7 +36,7 @@ const quotasIncreaseCommand = async () => {
|
|
|
36
36
|
if (openCase) {
|
|
37
37
|
log_1.Log.warn(`A request to increase it to ${openCase.DesiredValue} is already pending:`);
|
|
38
38
|
log_1.Log.warn(`https://${region}.console.aws.amazon.com/support/home#/case/?displayId=${openCase.CaseId}`);
|
|
39
|
-
(0,
|
|
39
|
+
(0, node_process_1.exit)(1);
|
|
40
40
|
}
|
|
41
41
|
const concurrencyCurrent = (_b = concurrencyLimit.Quota) === null || _b === void 0 ? void 0 : _b.Value;
|
|
42
42
|
const defaultConcurrency = (_c = defaultConcurrencyLimit.Quota) === null || _c === void 0 ? void 0 : _c.Value;
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.renderCommand = exports.RENDER_COMMAND = void 0;
|
|
4
4
|
const cli_1 = require("@remotion/cli");
|
|
5
|
+
const config_1 = require("@remotion/cli/config");
|
|
5
6
|
const renderer_1 = require("@remotion/renderer");
|
|
6
7
|
const download_media_1 = require("../../../api/download-media");
|
|
7
8
|
const get_render_progress_1 = require("../../../api/get-render-progress");
|
|
@@ -20,7 +21,7 @@ const log_1 = require("../../log");
|
|
|
20
21
|
const progress_1 = require("./progress");
|
|
21
22
|
exports.RENDER_COMMAND = 'render';
|
|
22
23
|
const renderCommand = async (args, remotionRoot) => {
|
|
23
|
-
var _a, _b, _c, _d, _e, _f;
|
|
24
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
24
25
|
const serveUrl = args[0];
|
|
25
26
|
if (!serveUrl) {
|
|
26
27
|
log_1.Log.error('No serve URL passed.');
|
|
@@ -40,22 +41,28 @@ const renderCommand = async (args, remotionRoot) => {
|
|
|
40
41
|
}
|
|
41
42
|
const outName = args_1.parsedLambdaCli['out-name'];
|
|
42
43
|
const downloadName = (_a = args[2]) !== null && _a !== void 0 ? _a : null;
|
|
43
|
-
const { codec, reason } = cli_1.CliInternals.
|
|
44
|
+
const { codec, reason } = cli_1.CliInternals.getFinalOutputCodec({
|
|
45
|
+
cliFlag: cli_1.CliInternals.parsedCli.codec,
|
|
44
46
|
downloadName,
|
|
45
47
|
outName: outName !== null && outName !== void 0 ? outName : null,
|
|
48
|
+
configFile: (_b = config_1.ConfigInternals.getOutputCodecOrUndefined()) !== null && _b !== void 0 ? _b : null,
|
|
49
|
+
uiCodec: null,
|
|
46
50
|
});
|
|
47
|
-
const { chromiumOptions, crf, envVariables, frameRange, inputProps, logLevel, pixelFormat, proResProfile, puppeteerTimeout,
|
|
51
|
+
const { chromiumOptions, crf, envVariables, frameRange, inputProps, logLevel, pixelFormat, proResProfile, puppeteerTimeout, jpegQuality, scale, everyNthFrame, numberOfGifLoops, muted, overwrite, audioBitrate, videoBitrate, height, width, } = await cli_1.CliInternals.getCliOptions({
|
|
48
52
|
type: 'series',
|
|
49
53
|
isLambda: true,
|
|
50
54
|
remotionRoot,
|
|
51
55
|
});
|
|
52
|
-
const imageFormat = cli_1.CliInternals.
|
|
56
|
+
const imageFormat = cli_1.CliInternals.getVideoImageFormat({
|
|
57
|
+
codec,
|
|
58
|
+
uiImageFormat: null,
|
|
59
|
+
});
|
|
53
60
|
const functionName = await (0, find_function_name_1.findFunctionName)();
|
|
54
|
-
const maxRetries = (
|
|
61
|
+
const maxRetries = (_c = args_1.parsedLambdaCli['max-retries']) !== null && _c !== void 0 ? _c : constants_1.DEFAULT_MAX_RETRIES;
|
|
55
62
|
(0, validate_retries_1.validateMaxRetries)(maxRetries);
|
|
56
|
-
const privacy = (
|
|
63
|
+
const privacy = (_d = args_1.parsedLambdaCli.privacy) !== null && _d !== void 0 ? _d : constants_1.DEFAULT_OUTPUT_PRIVACY;
|
|
57
64
|
(0, validate_privacy_1.validatePrivacy)(privacy);
|
|
58
|
-
const framesPerLambda = (
|
|
65
|
+
const framesPerLambda = (_e = args_1.parsedLambdaCli['frames-per-lambda']) !== null && _e !== void 0 ? _e : undefined;
|
|
59
66
|
(0, validate_frames_per_lambda_1.validateFramesPerLambda)({ framesPerLambda, durationInFrames: 1 });
|
|
60
67
|
const res = await (0, render_media_on_lambda_1.renderMediaOnLambda)({
|
|
61
68
|
functionName,
|
|
@@ -67,7 +74,7 @@ const renderCommand = async (args, remotionRoot) => {
|
|
|
67
74
|
envVariables,
|
|
68
75
|
pixelFormat,
|
|
69
76
|
proResProfile,
|
|
70
|
-
|
|
77
|
+
jpegQuality,
|
|
71
78
|
region,
|
|
72
79
|
maxRetries,
|
|
73
80
|
composition,
|
|
@@ -91,18 +98,21 @@ const renderCommand = async (args, remotionRoot) => {
|
|
|
91
98
|
webhook: args_1.parsedLambdaCli.webhook
|
|
92
99
|
? {
|
|
93
100
|
url: args_1.parsedLambdaCli.webhook,
|
|
94
|
-
secret: (
|
|
101
|
+
secret: (_f = args_1.parsedLambdaCli['webhook-secret']) !== null && _f !== void 0 ? _f : null,
|
|
95
102
|
}
|
|
96
103
|
: undefined,
|
|
97
|
-
rendererFunctionName: (
|
|
104
|
+
rendererFunctionName: (_g = args_1.parsedLambdaCli['renderer-function-name']) !== null && _g !== void 0 ? _g : null,
|
|
98
105
|
forceBucketName: args_1.parsedLambdaCli['force-bucket-name'],
|
|
99
106
|
audioCodec: cli_1.CliInternals.parsedCli['audio-codec'],
|
|
100
107
|
});
|
|
101
108
|
const totalSteps = downloadName ? 6 : 5;
|
|
102
|
-
const progressBar = cli_1.CliInternals.createOverwriteableCliOutput(
|
|
109
|
+
const progressBar = cli_1.CliInternals.createOverwriteableCliOutput({
|
|
110
|
+
quiet: cli_1.CliInternals.quietFlagProvided(),
|
|
111
|
+
cancelSignal: null,
|
|
112
|
+
});
|
|
103
113
|
log_1.Log.info(cli_1.CliInternals.chalk.gray(`bucket = ${res.bucketName}, function = ${functionName}`));
|
|
104
114
|
log_1.Log.info(cli_1.CliInternals.chalk.gray(`renderId = ${res.renderId}, codec = ${codec} (${reason})`));
|
|
105
|
-
const verbose = renderer_1.RenderInternals.isEqualOrBelowLogLevel(
|
|
115
|
+
const verbose = renderer_1.RenderInternals.isEqualOrBelowLogLevel(config_1.ConfigInternals.Logging.getLogLevel(), 'verbose');
|
|
106
116
|
log_1.Log.verbose(`CloudWatch logs (if enabled): ${res.cloudWatchLogs}`);
|
|
107
117
|
log_1.Log.verbose(`Render folder: ${res.folderInS3Console}`);
|
|
108
118
|
const status = await (0, get_render_progress_1.getRenderProgress)({
|