@remotion/lambda 4.0.0-webhook.26 → 4.0.0
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/LICENSE.md +8 -8
- package/dist/admin/bundle-lambda.d.ts +0 -0
- package/dist/admin/bundle-lambda.js +24 -13
- package/dist/admin/generate-etag-list.d.ts +1 -0
- package/dist/admin/generate-etag-list.js +14 -0
- package/dist/admin/make-layer-public.d.ts +0 -0
- package/dist/admin/make-layer-public.js +59 -65
- package/dist/api/bucket-exists.d.ts +0 -0
- package/dist/api/bucket-exists.js +0 -0
- package/dist/api/clean-items.d.ts +0 -0
- package/dist/api/clean-items.js +1 -1
- package/dist/api/create-bucket.d.ts +0 -0
- package/dist/api/create-bucket.js +34 -1
- package/dist/api/create-function.d.ts +1 -3
- package/dist/api/create-function.js +27 -6
- package/dist/api/delete-function.d.ts +4 -4
- package/dist/api/delete-function.js +3 -3
- package/dist/api/delete-render.d.ts +2 -2
- package/dist/api/delete-render.js +1 -1
- package/dist/api/delete-site.d.ts +7 -7
- package/dist/api/delete-site.js +9 -7
- package/dist/api/deploy-function.d.ts +11 -13
- package/dist/api/deploy-function.js +28 -31
- package/dist/api/deploy-site.d.ts +13 -5
- package/dist/api/deploy-site.js +61 -25
- package/dist/api/download-media.d.ts +4 -8
- package/dist/api/download-media.js +5 -9
- package/dist/api/estimate-price.d.ts +3 -5
- package/dist/api/estimate-price.js +4 -10
- package/dist/api/get-aws-client.d.ts +6 -4
- package/dist/api/get-aws-client.js +3 -1
- package/dist/api/get-buckets.d.ts +2 -2
- package/dist/api/get-buckets.js +35 -12
- package/dist/api/get-compositions-on-lambda.d.ts +33 -0
- package/dist/api/get-compositions-on-lambda.js +56 -0
- package/dist/api/get-function-info.d.ts +3 -3
- package/dist/api/get-function-info.js +1 -1
- package/dist/api/get-functions.d.ts +5 -7
- package/dist/api/get-functions.js +8 -10
- package/dist/api/get-or-create-bucket.d.ts +6 -6
- package/dist/api/get-or-create-bucket.js +10 -18
- package/dist/api/get-regions.d.ts +6 -2
- package/dist/api/get-regions.js +6 -3
- package/dist/api/get-render-progress.d.ts +3 -3
- package/dist/api/get-render-progress.js +6 -11
- package/dist/api/get-sites.d.ts +6 -6
- package/dist/api/get-sites.js +5 -4
- package/dist/api/iam-validation/role-permissions.d.ts +0 -0
- package/dist/api/iam-validation/role-permissions.js +0 -0
- package/dist/api/iam-validation/simulate-rule.d.ts +2 -2
- package/dist/api/iam-validation/simulate-rule.js +0 -22
- package/dist/api/iam-validation/simulate.d.ts +3 -3
- package/dist/api/iam-validation/simulate.js +27 -6
- package/dist/api/iam-validation/suggested-policy.d.ts +0 -0
- package/dist/api/iam-validation/suggested-policy.js +0 -0
- package/dist/api/iam-validation/user-permissions.d.ts +1 -1
- package/dist/api/iam-validation/user-permissions.js +3 -8
- package/dist/api/make-lambda-payload.d.ts +5 -0
- package/dist/api/make-lambda-payload.js +78 -0
- package/dist/api/mock-functions.d.ts +0 -0
- package/dist/api/mock-functions.js +0 -0
- package/dist/api/presign-url.d.ts +4 -5
- package/dist/api/presign-url.js +3 -3
- package/dist/api/render-media-on-lambda.d.ts +27 -11
- package/dist/api/render-media-on-lambda.js +15 -49
- package/dist/api/render-still-on-lambda.d.ts +17 -6
- package/dist/api/render-still-on-lambda.js +24 -10
- package/dist/api/speculate-function-name.d.ts +14 -0
- package/dist/api/speculate-function-name.js +22 -0
- package/dist/api/upload-dir.d.ts +6 -5
- package/dist/api/upload-dir.js +54 -51
- package/dist/api/validate-webhook-signature.d.ts +2 -2
- package/dist/api/validate-webhook-signature.js +1 -1
- package/dist/cli/args.d.ts +7 -5
- package/dist/cli/args.js +1 -5
- package/dist/cli/commands/compositions/index.d.ts +2 -0
- package/dist/cli/commands/compositions/index.js +44 -0
- package/dist/cli/commands/functions/deploy.d.ts +0 -0
- package/dist/cli/commands/functions/deploy.js +15 -15
- package/dist/cli/commands/functions/index.d.ts +0 -0
- package/dist/cli/commands/functions/index.js +16 -17
- package/dist/cli/commands/functions/ls.d.ts +0 -0
- package/dist/cli/commands/functions/ls.js +17 -10
- package/dist/cli/commands/functions/rm.d.ts +0 -0
- package/dist/cli/commands/functions/rm.js +20 -7
- package/dist/cli/commands/functions/rmall.d.ts +0 -0
- package/dist/cli/commands/functions/rmall.js +20 -8
- package/dist/cli/commands/policies/policies.d.ts +0 -0
- package/dist/cli/commands/policies/policies.js +0 -0
- package/dist/cli/commands/policies/role.d.ts +0 -0
- package/dist/cli/commands/policies/role.js +0 -0
- package/dist/cli/commands/policies/user.d.ts +0 -0
- package/dist/cli/commands/policies/user.js +0 -0
- package/dist/cli/commands/policies/validate.d.ts +0 -0
- package/dist/cli/commands/policies/validate.js +0 -0
- package/dist/cli/commands/quotas/increase.d.ts +0 -0
- package/dist/cli/commands/quotas/increase.js +30 -10
- package/dist/cli/commands/quotas/index.d.ts +0 -0
- package/dist/cli/commands/quotas/index.js +8 -9
- package/dist/cli/commands/quotas/list.d.ts +0 -0
- package/dist/cli/commands/quotas/list.js +0 -0
- package/dist/cli/commands/regions.d.ts +0 -0
- package/dist/cli/commands/regions.js +6 -2
- package/dist/cli/commands/render/progress.d.ts +11 -7
- package/dist/cli/commands/render/progress.js +55 -45
- package/dist/cli/commands/render/render.d.ts +1 -1
- package/dist/cli/commands/render/render.js +99 -27
- package/dist/cli/commands/sites/create.d.ts +1 -1
- package/dist/cli/commands/sites/create.js +37 -33
- package/dist/cli/commands/sites/index.d.ts +1 -1
- package/dist/cli/commands/sites/index.js +18 -16
- package/dist/cli/commands/sites/ls.d.ts +0 -0
- package/dist/cli/commands/sites/ls.js +9 -10
- package/dist/cli/commands/sites/rm.d.ts +0 -0
- package/dist/cli/commands/sites/rm.js +7 -16
- package/dist/cli/commands/sites/rmall.d.ts +0 -0
- package/dist/cli/commands/sites/rmall.js +5 -16
- package/dist/cli/commands/still.d.ts +1 -1
- package/dist/cli/commands/still.js +49 -20
- package/dist/cli/get-aws-region.d.ts +0 -0
- package/dist/cli/get-aws-region.js +0 -0
- package/dist/cli/help.d.ts +0 -0
- package/dist/cli/help.js +4 -0
- package/dist/cli/helpers/confirm.d.ts +0 -0
- package/dist/cli/helpers/confirm.js +0 -0
- package/dist/cli/helpers/date-string.d.ts +0 -0
- package/dist/cli/helpers/date-string.js +0 -0
- package/dist/cli/helpers/find-function-name.d.ts +0 -0
- package/dist/cli/helpers/find-function-name.js +35 -6
- package/dist/cli/helpers/progress-bar.d.ts +12 -7
- package/dist/cli/helpers/progress-bar.js +20 -11
- package/dist/cli/helpers/quit.d.ts +0 -0
- package/dist/cli/helpers/quit.js +0 -0
- package/dist/cli/helpers/yes-or-no.d.ts +0 -0
- package/dist/cli/helpers/yes-or-no.js +0 -0
- package/dist/cli/index.d.ts +1 -1
- package/dist/cli/index.js +23 -12
- package/dist/cli/is-cli.d.ts +0 -0
- package/dist/cli/is-cli.js +0 -0
- package/dist/cli/log.d.ts +14 -0
- package/dist/cli/log.js +0 -0
- package/dist/client.d.ts +8 -2
- package/dist/client.js +9 -1
- package/dist/defaults.d.ts +0 -0
- package/dist/defaults.js +0 -0
- package/dist/functions/chunk-optimization/plan-frame-ranges.d.ts +1 -5
- package/dist/functions/chunk-optimization/plan-frame-ranges.js +2 -15
- package/dist/functions/chunk-optimization/types.d.ts +2 -13
- package/dist/functions/chunk-optimization/types.js +0 -0
- package/dist/functions/compositions.d.ts +8 -0
- package/dist/functions/compositions.js +60 -0
- package/dist/functions/helpers/best-frames-per-lambda-param.d.ts +0 -0
- package/dist/functions/helpers/best-frames-per-lambda-param.js +0 -0
- package/dist/functions/helpers/calculate-chunk-times.d.ts +0 -0
- package/dist/functions/helpers/calculate-chunk-times.js +0 -0
- 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/check-if-render-exists.d.ts +0 -0
- package/dist/functions/helpers/check-if-render-exists.js +0 -0
- package/dist/functions/helpers/clean-tmpdir.d.ts +0 -0
- package/dist/functions/helpers/clean-tmpdir.js +8 -8
- package/dist/functions/helpers/concat-videos.d.ts +13 -5
- package/dist/functions/helpers/concat-videos.js +38 -39
- package/dist/functions/helpers/create-post-render-data.d.ts +0 -0
- package/dist/functions/helpers/create-post-render-data.js +1 -15
- package/dist/functions/helpers/delete-chunks.d.ts +0 -0
- package/dist/functions/helpers/delete-chunks.js +0 -0
- package/dist/functions/helpers/expected-out-name.d.ts +0 -0
- package/dist/functions/helpers/expected-out-name.js +2 -2
- package/dist/functions/helpers/find-output-file-in-bucket.d.ts +1 -1
- package/dist/functions/helpers/find-output-file-in-bucket.js +0 -0
- package/dist/functions/helpers/format-costs-info.d.ts +0 -0
- package/dist/functions/helpers/format-costs-info.js +0 -0
- package/dist/functions/helpers/get-browser-instance.d.ts +2 -3
- package/dist/functions/helpers/get-browser-instance.js +9 -5
- package/dist/functions/helpers/get-chromium-executable-path.d.ts +1 -1
- package/dist/functions/helpers/get-chromium-executable-path.js +8 -6
- package/dist/functions/helpers/get-cleanup-progress.d.ts +0 -0
- package/dist/functions/helpers/get-cleanup-progress.js +0 -0
- package/dist/functions/helpers/get-current-region.d.ts +1 -1
- package/dist/functions/helpers/get-current-region.js +0 -0
- package/dist/functions/helpers/get-custom-out-name.d.ts +0 -0
- package/dist/functions/helpers/get-custom-out-name.js +1 -1
- package/dist/functions/helpers/get-encoding-metadata.d.ts +5 -8
- package/dist/functions/helpers/get-encoding-metadata.js +7 -17
- package/dist/functions/helpers/get-files-in-folder.d.ts +1 -1
- package/dist/functions/helpers/get-files-in-folder.js +5 -5
- package/dist/functions/helpers/get-files-to-delete.d.ts +1 -1
- package/dist/functions/helpers/get-files-to-delete.js +0 -0
- package/dist/functions/helpers/get-final-encoding-status.d.ts +2 -4
- package/dist/functions/helpers/get-final-encoding-status.js +1 -4
- package/dist/functions/helpers/get-folder-size.d.ts +0 -0
- package/dist/functions/helpers/get-folder-size.js +0 -0
- package/dist/functions/helpers/get-lambdas-invoked-stats.d.ts +2 -6
- package/dist/functions/helpers/get-lambdas-invoked-stats.js +1 -9
- package/dist/functions/helpers/get-output-url-from-metadata.d.ts +0 -0
- package/dist/functions/helpers/get-output-url-from-metadata.js +0 -0
- package/dist/functions/helpers/get-overall-progress.d.ts +2 -1
- package/dist/functions/helpers/get-overall-progress.js +7 -5
- package/dist/functions/helpers/get-post-render-data.d.ts +0 -0
- package/dist/functions/helpers/get-post-render-data.js +0 -0
- package/dist/functions/helpers/get-progress.d.ts +0 -0
- package/dist/functions/helpers/get-progress.js +43 -42
- package/dist/functions/helpers/get-render-metadata.d.ts +0 -0
- package/dist/functions/helpers/get-render-metadata.js +0 -0
- package/dist/functions/helpers/get-rendered-frames-progress.d.ts +8 -0
- package/dist/functions/helpers/get-rendered-frames-progress.js +37 -0
- package/dist/functions/helpers/get-retry-stats.d.ts +1 -1
- package/dist/functions/helpers/get-retry-stats.js +0 -0
- package/dist/functions/helpers/get-time-to-finish.d.ts +0 -0
- package/dist/functions/helpers/get-time-to-finish.js +0 -0
- package/dist/functions/helpers/inspect-errors.d.ts +0 -0
- package/dist/functions/helpers/inspect-errors.js +0 -0
- package/dist/functions/helpers/io.d.ts +10 -4
- package/dist/functions/helpers/io.js +25 -3
- package/dist/functions/helpers/is-enosp-err.d.ts +0 -0
- package/dist/functions/helpers/is-enosp-err.js +1 -1
- package/dist/functions/helpers/is-warm.d.ts +0 -0
- package/dist/functions/helpers/is-warm.js +0 -0
- package/dist/functions/helpers/make-timeout-error.d.ts +8 -0
- package/dist/functions/helpers/make-timeout-error.js +35 -0
- package/dist/functions/helpers/make-timeout-message.d.ts +6 -0
- package/dist/functions/helpers/make-timeout-message.js +33 -0
- package/dist/functions/helpers/min-max.d.ts +0 -0
- package/dist/functions/helpers/min-max.js +0 -0
- package/dist/functions/helpers/print-cloudwatch-helper.d.ts +0 -0
- package/dist/functions/helpers/print-cloudwatch-helper.js +2 -1
- package/dist/functions/helpers/print-concurrency-curve.d.ts +0 -0
- package/dist/functions/helpers/print-concurrency-curve.js +0 -0
- package/dist/functions/helpers/read-with-progress.d.ts +1 -1
- package/dist/functions/helpers/read-with-progress.js +1 -1
- package/dist/functions/helpers/streamify-response.d.ts +16 -0
- package/dist/functions/helpers/streamify-response.js +67 -0
- package/dist/functions/helpers/timer.d.ts +0 -0
- package/dist/functions/helpers/timer.js +0 -0
- package/dist/functions/helpers/validate-composition.d.ts +10 -9
- package/dist/functions/helpers/validate-composition.js +18 -13
- package/dist/functions/helpers/write-lambda-error.d.ts +2 -2
- package/dist/functions/helpers/write-lambda-error.js +0 -0
- package/dist/functions/helpers/write-post-render-data.d.ts +0 -0
- package/dist/functions/helpers/write-post-render-data.js +0 -0
- package/dist/functions/index.d.ts +1 -7
- package/dist/functions/index.js +44 -11
- package/dist/functions/info.d.ts +0 -0
- package/dist/functions/info.js +0 -0
- package/dist/functions/launch.d.ts +2 -1
- package/dist/functions/launch.js +172 -134
- package/dist/functions/progress.d.ts +1 -1
- package/dist/functions/progress.js +2 -2
- package/dist/functions/renderer.d.ts +1 -1
- package/dist/functions/renderer.js +92 -44
- package/dist/functions/start.d.ts +1 -1
- package/dist/functions/start.js +21 -8
- package/dist/functions/still.d.ts +1 -1
- package/dist/functions/still.js +79 -37
- package/dist/index.d.ts +24 -8
- package/dist/index.js +23 -6
- package/dist/internals.d.ts +3 -1
- package/dist/internals.js +3 -0
- package/dist/pricing/aws-regions.d.ts +3 -2
- package/dist/pricing/aws-regions.js +31 -1
- package/dist/pricing/price-per-1-s.d.ts +0 -0
- package/dist/pricing/price-per-1-s.js +413 -39
- package/dist/regions.d.ts +0 -0
- package/dist/regions.js +0 -0
- package/dist/shared/await.d.ts +1 -1
- package/dist/shared/await.js +0 -0
- package/dist/shared/aws-clients.d.ts +6 -3
- package/dist/shared/aws-clients.js +75 -13
- package/dist/shared/bundle-site.d.ts +0 -0
- package/dist/shared/bundle-site.js +0 -0
- package/dist/shared/call-lambda.d.ts +0 -0
- package/dist/shared/call-lambda.js +27 -2
- package/dist/shared/check-credentials.d.ts +0 -0
- package/dist/shared/check-credentials.js +3 -0
- package/dist/shared/chunk-progress.d.ts +9 -0
- package/dist/shared/chunk-progress.js +2034 -0
- package/dist/shared/cleanup-serialized-input-props.d.ts +7 -0
- package/dist/shared/cleanup-serialized-input-props.js +19 -0
- package/dist/shared/constants.d.ts +137 -87
- package/dist/shared/constants.js +16 -4
- package/dist/shared/content-disposition-header.d.ts +1 -1
- package/dist/shared/content-disposition-header.js +0 -0
- package/dist/shared/convert-to-serve-url.d.ts +5 -1
- package/dist/shared/convert-to-serve-url.js +1 -5
- package/dist/shared/docs-url.d.ts +0 -0
- package/dist/shared/docs-url.js +0 -0
- package/dist/shared/function-zip-path.d.ts +1 -1
- package/dist/shared/function-zip-path.js +3 -3
- package/dist/shared/get-account-id.d.ts +0 -0
- package/dist/shared/get-account-id.js +4 -6
- package/dist/shared/{get-cloudwatch-stream-url.d.ts → get-aws-urls.d.ts} +7 -1
- package/dist/shared/get-aws-urls.js +12 -0
- package/dist/shared/get-etag.d.ts +1 -0
- package/dist/shared/get-etag.js +24 -0
- package/dist/shared/get-function-version.d.ts +0 -0
- package/dist/shared/get-function-version.js +0 -0
- package/dist/shared/get-most-expensive-chunks.d.ts +2 -2
- package/dist/shared/get-most-expensive-chunks.js +3 -2
- package/dist/shared/get-s3-operations.d.ts +10 -0
- package/dist/shared/get-s3-operations.js +36 -0
- package/dist/shared/hosted-layers.d.ts +5 -8
- package/dist/shared/hosted-layers.js +210 -284
- package/dist/shared/invoke-webhook.d.ts +5 -18
- package/dist/shared/invoke-webhook.js +5 -19
- package/dist/shared/is-in-lambda.d.ts +0 -0
- package/dist/shared/is-in-lambda.js +0 -0
- package/dist/shared/lambda-version-string.d.ts +0 -0
- package/dist/shared/lambda-version-string.js +0 -0
- package/dist/shared/make-s3-key.d.ts +0 -0
- package/dist/shared/make-s3-key.js +2 -2
- package/dist/shared/make-s3-url.d.ts +0 -0
- package/dist/shared/make-s3-url.js +2 -2
- package/dist/shared/p-limit.d.ts +0 -0
- package/dist/shared/p-limit.js +0 -0
- package/dist/shared/parse-chunk-key.d.ts +4 -0
- package/dist/shared/parse-chunk-key.js +14 -0
- package/dist/shared/parse-lambda-initialized-key.d.ts +0 -0
- package/dist/shared/parse-lambda-initialized-key.js +0 -0
- package/dist/shared/parse-lambda-timings-key.d.ts +1 -1
- package/dist/shared/parse-lambda-timings-key.js +0 -0
- package/dist/shared/random-hash.d.ts +0 -0
- package/dist/shared/random-hash.js +0 -0
- package/dist/shared/read-dir.d.ts +9 -0
- package/dist/shared/read-dir.js +57 -0
- package/dist/shared/return-values.d.ts +7 -0
- package/dist/shared/return-values.js +0 -0
- package/dist/shared/serialize-props.d.ts +20 -0
- package/dist/shared/serialize-props.js +83 -0
- package/dist/shared/sleep.d.ts +0 -0
- package/dist/shared/sleep.js +0 -0
- package/dist/shared/stream-to-string.d.ts +0 -0
- package/dist/shared/stream-to-string.js +0 -0
- package/dist/shared/truthy.d.ts +1 -1
- package/dist/shared/truthy.js +0 -0
- package/dist/shared/validate-aws-region.d.ts +0 -0
- package/dist/shared/validate-aws-region.js +0 -0
- package/dist/shared/validate-bucketname.d.ts +5 -0
- package/dist/shared/validate-bucketname.js +19 -1
- package/dist/shared/validate-custom-role-arn.d.ts +0 -0
- package/dist/shared/validate-custom-role-arn.js +0 -0
- package/dist/shared/validate-disk-size-in-mb.d.ts +0 -0
- package/dist/shared/validate-disk-size-in-mb.js +0 -0
- package/dist/shared/validate-download-behavior.d.ts +0 -0
- package/dist/shared/validate-download-behavior.js +0 -0
- package/dist/shared/validate-frames-per-lambda.d.ts +0 -0
- package/dist/shared/validate-frames-per-lambda.js +0 -0
- package/dist/shared/validate-lambda-codec.d.ts +2 -2
- package/dist/shared/validate-lambda-codec.js +1 -1
- package/dist/shared/validate-memory-size.d.ts +0 -0
- package/dist/shared/validate-memory-size.js +0 -0
- package/dist/shared/validate-outname.d.ts +2 -2
- package/dist/shared/validate-outname.js +16 -10
- package/dist/shared/validate-presign-expiration.d.ts +0 -0
- package/dist/shared/validate-presign-expiration.js +0 -0
- package/dist/shared/validate-privacy.d.ts +1 -1
- package/dist/shared/validate-privacy.js +5 -2
- package/dist/shared/validate-retention-period.d.ts +0 -0
- package/dist/shared/validate-retention-period.js +0 -0
- package/dist/shared/validate-retries.d.ts +0 -0
- package/dist/shared/validate-retries.js +0 -0
- package/dist/shared/validate-serveurl.d.ts +0 -0
- package/dist/shared/validate-serveurl.js +0 -0
- package/dist/shared/validate-site-name.d.ts +0 -0
- package/dist/shared/validate-site-name.js +0 -0
- package/dist/shared/validate-timeout.d.ts +0 -0
- package/dist/shared/validate-timeout.js +0 -0
- package/package.json +89 -65
- package/remotionlambda-arm64.zip +0 -0
- package/remotionlambda-x64.zip +0 -0
- package/.prettierrc.js +0 -14
- package/client.d.ts +0 -1
- package/client.js +0 -1
- package/dist/api/enable-s3-website.d.ts +0 -5
- package/dist/api/enable-s3-website.js +0 -16
- package/dist/cli/helpers/determine-image-format.d.ts +0 -10
- package/dist/cli/helpers/determine-image-format.js +0 -47
- package/dist/cli/helpers/get-cloudwatch-stream-url.d.ts +0 -8
- package/dist/cli/helpers/get-cloudwatch-stream-url.js +0 -7
- package/dist/cli/helpers/webhook-types.d.ts +0 -6
- package/dist/cli/helpers/webhook-types.js +0 -2
- package/dist/functions/chunk-optimization/can-use-optimization.d.ts +0 -6
- package/dist/functions/chunk-optimization/can-use-optimization.js +0 -23
- package/dist/functions/chunk-optimization/collect-data.d.ts +0 -9
- package/dist/functions/chunk-optimization/collect-data.js +0 -27
- package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.d.ts +0 -3
- package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.js +0 -11
- package/dist/functions/chunk-optimization/get-profile-duration.d.ts +0 -3
- package/dist/functions/chunk-optimization/get-profile-duration.js +0 -18
- package/dist/functions/chunk-optimization/is-valid-profile.d.ts +0 -2
- package/dist/functions/chunk-optimization/is-valid-profile.js +0 -12
- package/dist/functions/chunk-optimization/optimize-invocation-order.d.ts +0 -2
- package/dist/functions/chunk-optimization/optimize-invocation-order.js +0 -19
- package/dist/functions/chunk-optimization/optimize-profile.d.ts +0 -9
- package/dist/functions/chunk-optimization/optimize-profile.js +0 -74
- package/dist/functions/chunk-optimization/s3-optimization-file.d.ts +0 -17
- package/dist/functions/chunk-optimization/s3-optimization-file.js +0 -47
- package/dist/functions/chunk-optimization/simulate-frame-ranges.d.ts +0 -7
- package/dist/functions/chunk-optimization/simulate-frame-ranges.js +0 -47
- package/dist/functions/chunk-optimization/sort-by-duration.d.ts +0 -2
- package/dist/functions/chunk-optimization/sort-by-duration.js +0 -25
- package/dist/functions/helpers/get-current-architecture.d.ts +0 -2
- package/dist/functions/helpers/get-current-architecture.js +0 -11
- package/dist/shared/get-cloudwatch-stream-url.js +0 -7
- package/dist/shared/validate-architecture.d.ts +0 -4
- package/dist/shared/validate-architecture.js +0 -14
- package/remotionlambda.zip +0 -0
- package/tsconfig.json +0 -16
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { AwsRegion } from '../client';
|
|
2
|
+
import type { SerializedInputProps } from './constants';
|
|
3
|
+
export declare const cleanupSerializedInputProps: ({ serialized, region, bucketName, }: {
|
|
4
|
+
serialized: SerializedInputProps;
|
|
5
|
+
region: AwsRegion;
|
|
6
|
+
bucketName: string;
|
|
7
|
+
}) => Promise<number>;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.cleanupSerializedInputProps = void 0;
|
|
4
|
+
const io_1 = require("../functions/helpers/io");
|
|
5
|
+
const constants_1 = require("./constants");
|
|
6
|
+
const cleanupSerializedInputProps = async ({ serialized, region, bucketName, }) => {
|
|
7
|
+
if (serialized.type === 'payload') {
|
|
8
|
+
return 0;
|
|
9
|
+
}
|
|
10
|
+
const time = Date.now();
|
|
11
|
+
await (0, io_1.lambdaDeleteFile)({
|
|
12
|
+
bucketName,
|
|
13
|
+
key: (0, constants_1.inputPropsKey)(serialized.hash),
|
|
14
|
+
region,
|
|
15
|
+
customCredentials: null,
|
|
16
|
+
});
|
|
17
|
+
return Date.now() - time;
|
|
18
|
+
};
|
|
19
|
+
exports.cleanupSerializedInputProps = cleanupSerializedInputProps;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ChromiumOptions, Codec, FrameRange,
|
|
1
|
+
import type { AudioCodec, ChromiumOptions, Codec, FrameRange, LogLevel, PixelFormat, ProResProfile, StillImageFormat, VideoImageFormat } from '@remotion/renderer';
|
|
2
2
|
import type { VideoConfig } from 'remotion';
|
|
3
3
|
import type { ChunkRetry } from '../functions/helpers/get-retry-stats';
|
|
4
4
|
import type { EnhancedErrorInfo } from '../functions/helpers/write-lambda-error';
|
|
@@ -6,12 +6,10 @@ import type { AwsRegion } from '../pricing/aws-regions';
|
|
|
6
6
|
import type { CustomCredentials, CustomCredentialsWithoutSensitiveData } from './aws-clients';
|
|
7
7
|
import type { DownloadBehavior } from './content-disposition-header';
|
|
8
8
|
import type { ExpensiveChunk } from './get-most-expensive-chunks';
|
|
9
|
-
import type { LambdaArchitecture } from './validate-architecture';
|
|
10
9
|
import type { LambdaCodec } from './validate-lambda-codec';
|
|
11
10
|
export declare const MIN_MEMORY = 512;
|
|
12
11
|
export declare const MAX_MEMORY = 10240;
|
|
13
12
|
export declare const DEFAULT_MEMORY_SIZE = 2048;
|
|
14
|
-
export declare const DEFAULT_ARCHITECTURE: LambdaArchitecture;
|
|
15
13
|
export declare const DEFAULT_TIMEOUT = 120;
|
|
16
14
|
export declare const MIN_TIMEOUT = 15;
|
|
17
15
|
export declare const MAX_TIMEOUT = 900;
|
|
@@ -27,6 +25,7 @@ export declare const MIN_EPHEMERAL_STORAGE_IN_MB = 512;
|
|
|
27
25
|
export declare const MAX_EPHEMERAL_STORAGE_IN_MB = 10240;
|
|
28
26
|
export declare const DEFAULT_OUTPUT_PRIVACY: Privacy;
|
|
29
27
|
export declare const DEFAULT_CLOUDWATCH_RETENTION_PERIOD = 14;
|
|
28
|
+
export declare const ENCODING_PROGRESS_STEP_SIZE = 100;
|
|
30
29
|
export declare const REMOTION_BUCKET_PREFIX = "remotionlambda-";
|
|
31
30
|
export declare const RENDER_FN_PREFIX = "remotion-render-";
|
|
32
31
|
export declare const LOG_GROUP_PREFIX = "/aws/lambda/";
|
|
@@ -60,27 +59,29 @@ export declare const getErrorFileName: ({ renderId, chunk, attempt, }: {
|
|
|
60
59
|
chunk: number | null;
|
|
61
60
|
attempt: number;
|
|
62
61
|
}) => string;
|
|
63
|
-
export
|
|
62
|
+
export type OutNameInput = string | {
|
|
64
63
|
bucketName: string;
|
|
65
64
|
key: string;
|
|
66
65
|
s3OutputProvider?: CustomCredentials;
|
|
67
66
|
};
|
|
68
|
-
export
|
|
67
|
+
export type OutNameInputWithoutCredentials = string | {
|
|
69
68
|
bucketName: string;
|
|
70
69
|
key: string;
|
|
71
70
|
s3OutputProvider?: CustomCredentialsWithoutSensitiveData;
|
|
72
71
|
};
|
|
73
|
-
export
|
|
72
|
+
export type OutNameOutput = {
|
|
74
73
|
renderBucketName: string;
|
|
75
74
|
key: string;
|
|
76
75
|
customCredentials: CustomCredentials | null;
|
|
77
76
|
};
|
|
78
|
-
export declare const optimizationProfile: (siteId: string, compositionId: string) => string;
|
|
79
77
|
export declare const getSitesKey: (siteId: string) => string;
|
|
80
78
|
export declare const outName: (renderId: string, extension: string) => string;
|
|
81
|
-
export declare const outStillName: (renderId: string, imageFormat:
|
|
79
|
+
export declare const outStillName: (renderId: string, imageFormat: StillImageFormat) => string;
|
|
82
80
|
export declare const customOutName: (renderId: string, bucketName: string, name: OutNameInput) => OutNameOutput;
|
|
83
81
|
export declare const postRenderDataKey: (renderId: string) => string;
|
|
82
|
+
export declare const defaultPropsKey: (hash: string) => string;
|
|
83
|
+
export declare const inputPropsKey: (hash: string) => string;
|
|
84
|
+
export declare const resolvedPropsKey: (hash: string) => string;
|
|
84
85
|
export declare const RENDERER_PATH_TOKEN = "remotion-bucket";
|
|
85
86
|
export declare const CONCAT_FOLDER_TOKEN = "remotion-concat";
|
|
86
87
|
export declare const REMOTION_CONCATED_TOKEN = "remotion-concated-token";
|
|
@@ -91,60 +92,86 @@ export declare enum LambdaRoutines {
|
|
|
91
92
|
launch = "launch",
|
|
92
93
|
status = "status",
|
|
93
94
|
renderer = "renderer",
|
|
94
|
-
still = "still"
|
|
95
|
+
still = "still",
|
|
96
|
+
compositions = "compositions"
|
|
95
97
|
}
|
|
96
|
-
|
|
98
|
+
type WebhookOption = null | {
|
|
99
|
+
url: string;
|
|
100
|
+
secret: string | null;
|
|
101
|
+
};
|
|
102
|
+
export type SerializedInputProps = {
|
|
103
|
+
type: 'bucket-url';
|
|
104
|
+
hash: string;
|
|
105
|
+
} | {
|
|
106
|
+
type: 'payload';
|
|
107
|
+
payload: string;
|
|
108
|
+
};
|
|
109
|
+
export type LambdaStartPayload = {
|
|
110
|
+
rendererFunctionName: string | null;
|
|
111
|
+
type: LambdaRoutines.start;
|
|
112
|
+
serveUrl: string;
|
|
113
|
+
composition: string;
|
|
114
|
+
framesPerLambda: number | null;
|
|
115
|
+
inputProps: SerializedInputProps;
|
|
116
|
+
codec: LambdaCodec;
|
|
117
|
+
audioCodec: AudioCodec | null;
|
|
118
|
+
imageFormat: VideoImageFormat;
|
|
119
|
+
crf: number | undefined;
|
|
120
|
+
envVariables: Record<string, string> | undefined;
|
|
121
|
+
pixelFormat: PixelFormat | undefined;
|
|
122
|
+
proResProfile: ProResProfile | undefined;
|
|
123
|
+
jpegQuality: number | undefined;
|
|
124
|
+
maxRetries: number;
|
|
125
|
+
privacy: Privacy;
|
|
126
|
+
logLevel: LogLevel;
|
|
127
|
+
frameRange: FrameRange | null;
|
|
128
|
+
outName: OutNameInput | null;
|
|
129
|
+
timeoutInMilliseconds: number;
|
|
130
|
+
chromiumOptions: ChromiumOptions;
|
|
131
|
+
scale: number;
|
|
132
|
+
everyNthFrame: number;
|
|
133
|
+
numberOfGifLoops: number | null;
|
|
134
|
+
concurrencyPerLambda: number;
|
|
135
|
+
downloadBehavior: DownloadBehavior;
|
|
136
|
+
muted: boolean;
|
|
137
|
+
version: string;
|
|
138
|
+
overwrite: boolean;
|
|
139
|
+
audioBitrate: string | null;
|
|
140
|
+
videoBitrate: string | null;
|
|
141
|
+
webhook: WebhookOption;
|
|
142
|
+
forceHeight: number | null;
|
|
143
|
+
forceWidth: number | null;
|
|
144
|
+
bucketName: string | null;
|
|
145
|
+
};
|
|
146
|
+
export type LambdaStatusPayload = {
|
|
147
|
+
type: LambdaRoutines.status;
|
|
148
|
+
bucketName: string;
|
|
149
|
+
renderId: string;
|
|
150
|
+
version: string;
|
|
151
|
+
s3OutputProvider?: CustomCredentials;
|
|
152
|
+
};
|
|
153
|
+
export type LambdaPayloads = {
|
|
97
154
|
info: {
|
|
98
155
|
type: LambdaRoutines.info;
|
|
99
156
|
};
|
|
100
|
-
start:
|
|
101
|
-
type: LambdaRoutines.start;
|
|
102
|
-
serveUrl: string;
|
|
103
|
-
composition: string;
|
|
104
|
-
framesPerLambda: number | null;
|
|
105
|
-
inputProps: unknown;
|
|
106
|
-
codec: LambdaCodec;
|
|
107
|
-
imageFormat: ImageFormat;
|
|
108
|
-
crf: number | undefined;
|
|
109
|
-
envVariables: Record<string, string> | undefined;
|
|
110
|
-
pixelFormat: PixelFormat | undefined;
|
|
111
|
-
proResProfile: ProResProfile | undefined;
|
|
112
|
-
quality: number | undefined;
|
|
113
|
-
maxRetries: number;
|
|
114
|
-
privacy: Privacy;
|
|
115
|
-
logLevel: LogLevel;
|
|
116
|
-
frameRange: FrameRange | null;
|
|
117
|
-
outName: OutNameInput | null;
|
|
118
|
-
timeoutInMilliseconds: number;
|
|
119
|
-
chromiumOptions: ChromiumOptions;
|
|
120
|
-
scale: number;
|
|
121
|
-
everyNthFrame: number;
|
|
122
|
-
numberOfGifLoops: number | null;
|
|
123
|
-
concurrencyPerLambda: number;
|
|
124
|
-
downloadBehavior: DownloadBehavior;
|
|
125
|
-
muted: boolean;
|
|
126
|
-
version: string;
|
|
127
|
-
overwrite: boolean;
|
|
128
|
-
webhook: null | {
|
|
129
|
-
url: string;
|
|
130
|
-
secret: string | null;
|
|
131
|
-
};
|
|
132
|
-
};
|
|
157
|
+
start: LambdaStartPayload;
|
|
133
158
|
launch: {
|
|
159
|
+
rendererFunctionName: string | null;
|
|
134
160
|
type: LambdaRoutines.launch;
|
|
135
161
|
serveUrl: string;
|
|
136
162
|
composition: string;
|
|
137
163
|
framesPerLambda: number | null;
|
|
138
164
|
bucketName: string;
|
|
139
|
-
inputProps:
|
|
165
|
+
inputProps: SerializedInputProps;
|
|
140
166
|
renderId: string;
|
|
141
|
-
imageFormat:
|
|
167
|
+
imageFormat: VideoImageFormat;
|
|
142
168
|
codec: LambdaCodec;
|
|
169
|
+
audioCodec: AudioCodec | null;
|
|
143
170
|
crf: number | undefined;
|
|
144
171
|
envVariables: Record<string, string> | undefined;
|
|
145
172
|
pixelFormat: PixelFormat | undefined;
|
|
146
173
|
proResProfile: ProResProfile | undefined;
|
|
147
|
-
|
|
174
|
+
jpegQuality: number | undefined;
|
|
148
175
|
maxRetries: number;
|
|
149
176
|
privacy: Privacy;
|
|
150
177
|
logLevel: LogLevel;
|
|
@@ -159,18 +186,13 @@ export declare type LambdaPayloads = {
|
|
|
159
186
|
downloadBehavior: DownloadBehavior;
|
|
160
187
|
muted: boolean;
|
|
161
188
|
overwrite: boolean;
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
status: {
|
|
168
|
-
type: LambdaRoutines.status;
|
|
169
|
-
bucketName: string;
|
|
170
|
-
renderId: string;
|
|
171
|
-
version: string;
|
|
172
|
-
s3OutputProvider?: CustomCredentials;
|
|
189
|
+
audioBitrate: string | null;
|
|
190
|
+
videoBitrate: string | null;
|
|
191
|
+
webhook: WebhookOption;
|
|
192
|
+
forceHeight: number | null;
|
|
193
|
+
forceWidth: number | null;
|
|
173
194
|
};
|
|
195
|
+
status: LambdaStatusPayload;
|
|
174
196
|
renderer: {
|
|
175
197
|
concurrencyPerLambda: number;
|
|
176
198
|
type: LambdaRoutines.renderer;
|
|
@@ -184,33 +206,40 @@ export declare type LambdaPayloads = {
|
|
|
184
206
|
width: number;
|
|
185
207
|
durationInFrames: number;
|
|
186
208
|
retriesLeft: number;
|
|
187
|
-
inputProps:
|
|
209
|
+
inputProps: SerializedInputProps;
|
|
188
210
|
renderId: string;
|
|
189
|
-
imageFormat:
|
|
190
|
-
codec:
|
|
211
|
+
imageFormat: VideoImageFormat;
|
|
212
|
+
codec: LambdaCodec;
|
|
191
213
|
crf: number | undefined;
|
|
192
214
|
proResProfile: ProResProfile | undefined;
|
|
193
215
|
pixelFormat: PixelFormat | undefined;
|
|
194
|
-
|
|
216
|
+
jpegQuality: number | undefined;
|
|
195
217
|
envVariables: Record<string, string> | undefined;
|
|
196
218
|
privacy: Privacy;
|
|
197
219
|
attempt: number;
|
|
198
220
|
logLevel: LogLevel;
|
|
199
221
|
timeoutInMilliseconds: number;
|
|
200
222
|
chromiumOptions: ChromiumOptions;
|
|
223
|
+
resolvedProps: SerializedInputProps;
|
|
224
|
+
defaultProps: SerializedInputProps;
|
|
201
225
|
scale: number;
|
|
202
226
|
everyNthFrame: number;
|
|
203
227
|
muted: boolean;
|
|
228
|
+
audioBitrate: string | null;
|
|
229
|
+
videoBitrate: string | null;
|
|
230
|
+
launchFunctionConfig: {
|
|
231
|
+
version: string;
|
|
232
|
+
};
|
|
204
233
|
};
|
|
205
234
|
still: {
|
|
206
235
|
type: LambdaRoutines.still;
|
|
207
236
|
serveUrl: string;
|
|
208
237
|
composition: string;
|
|
209
|
-
inputProps:
|
|
210
|
-
imageFormat:
|
|
238
|
+
inputProps: SerializedInputProps;
|
|
239
|
+
imageFormat: StillImageFormat;
|
|
211
240
|
envVariables: Record<string, string> | undefined;
|
|
212
241
|
attempt: number;
|
|
213
|
-
|
|
242
|
+
jpegQuality: number | undefined;
|
|
214
243
|
maxRetries: number;
|
|
215
244
|
frame: number;
|
|
216
245
|
privacy: Privacy;
|
|
@@ -221,16 +250,34 @@ export declare type LambdaPayloads = {
|
|
|
221
250
|
scale: number;
|
|
222
251
|
downloadBehavior: DownloadBehavior | null;
|
|
223
252
|
version: string;
|
|
253
|
+
forceHeight: number | null;
|
|
254
|
+
forceWidth: number | null;
|
|
255
|
+
bucketName: string | null;
|
|
256
|
+
};
|
|
257
|
+
compositions: {
|
|
258
|
+
type: LambdaRoutines.compositions;
|
|
259
|
+
version: string;
|
|
260
|
+
chromiumOptions: ChromiumOptions;
|
|
261
|
+
logLevel: LogLevel;
|
|
262
|
+
inputProps: SerializedInputProps;
|
|
263
|
+
envVariables: Record<string, string> | undefined;
|
|
264
|
+
timeoutInMilliseconds: number;
|
|
265
|
+
serveUrl: string;
|
|
266
|
+
bucketName: string | null;
|
|
224
267
|
};
|
|
225
268
|
};
|
|
226
|
-
export
|
|
227
|
-
export
|
|
269
|
+
export type LambdaPayload = LambdaPayloads[LambdaRoutines];
|
|
270
|
+
export type EncodingProgress = {
|
|
228
271
|
framesEncoded: number;
|
|
229
|
-
totalFrames: number | null;
|
|
230
|
-
doneIn: number | null;
|
|
231
|
-
timeToInvoke: number | null;
|
|
232
272
|
};
|
|
233
|
-
|
|
273
|
+
type Discriminated = {
|
|
274
|
+
type: 'still';
|
|
275
|
+
imageFormat: StillImageFormat;
|
|
276
|
+
} | {
|
|
277
|
+
type: 'video';
|
|
278
|
+
imageFormat: VideoImageFormat;
|
|
279
|
+
};
|
|
280
|
+
export type RenderMetadata = Discriminated & {
|
|
234
281
|
siteId: string;
|
|
235
282
|
videoConfig: VideoConfig;
|
|
236
283
|
startedDate: number;
|
|
@@ -239,10 +286,8 @@ export declare type RenderMetadata = {
|
|
|
239
286
|
estimatedRenderLambdaInvokations: number;
|
|
240
287
|
compositionId: string;
|
|
241
288
|
codec: Codec | null;
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
imageFormat: ImageFormat;
|
|
245
|
-
inputProps: unknown;
|
|
289
|
+
audioCodec: AudioCodec | null;
|
|
290
|
+
inputProps: SerializedInputProps;
|
|
246
291
|
framesPerLambda: number;
|
|
247
292
|
memorySizeInMb: number;
|
|
248
293
|
lambdaVersion: string;
|
|
@@ -250,14 +295,17 @@ export declare type RenderMetadata = {
|
|
|
250
295
|
renderId: string;
|
|
251
296
|
outName: OutNameInputWithoutCredentials | undefined;
|
|
252
297
|
privacy: Privacy;
|
|
298
|
+
frameRange: [number, number];
|
|
299
|
+
everyNthFrame: number;
|
|
253
300
|
};
|
|
254
|
-
export
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
301
|
+
export type AfterRenderCost = {
|
|
302
|
+
estimatedCost: number;
|
|
303
|
+
estimatedDisplayCost: string;
|
|
304
|
+
currency: string;
|
|
305
|
+
disclaimer: string;
|
|
306
|
+
};
|
|
307
|
+
export type PostRenderData = {
|
|
308
|
+
cost: AfterRenderCost;
|
|
261
309
|
outputFile: string;
|
|
262
310
|
outputSize: number;
|
|
263
311
|
renderSize: number;
|
|
@@ -270,22 +318,21 @@ export declare type PostRenderData = {
|
|
|
270
318
|
timeToEncode: number;
|
|
271
319
|
timeToCleanUp: number;
|
|
272
320
|
timeToRenderChunks: number;
|
|
273
|
-
timeToInvokeLambdas: number;
|
|
274
321
|
retriesInfo: ChunkRetry[];
|
|
275
322
|
mostExpensiveFrameRanges: ExpensiveChunk[] | undefined;
|
|
276
323
|
};
|
|
277
|
-
export
|
|
324
|
+
export type CostsInfo = {
|
|
278
325
|
accruedSoFar: number;
|
|
279
326
|
displayCost: string;
|
|
280
327
|
currency: string;
|
|
281
328
|
disclaimer: string;
|
|
282
329
|
};
|
|
283
|
-
export
|
|
330
|
+
export type CleanupInfo = {
|
|
284
331
|
doneIn: number | null;
|
|
285
332
|
minFilesToDelete: number;
|
|
286
333
|
filesDeleted: number;
|
|
287
334
|
};
|
|
288
|
-
export
|
|
335
|
+
export type RenderProgress = {
|
|
289
336
|
chunks: number;
|
|
290
337
|
done: boolean;
|
|
291
338
|
encodingStatus: EncodingProgress | null;
|
|
@@ -304,11 +351,14 @@ export declare type RenderProgress = {
|
|
|
304
351
|
lambdasInvoked: number;
|
|
305
352
|
cleanup: CleanupInfo | null;
|
|
306
353
|
timeToFinishChunks: number | null;
|
|
307
|
-
|
|
354
|
+
timeToEncode: number | null;
|
|
308
355
|
overallProgress: number;
|
|
309
356
|
retriesInfo: ChunkRetry[];
|
|
310
357
|
mostExpensiveFrameRanges: ExpensiveChunk[] | null;
|
|
358
|
+
framesRendered: number;
|
|
359
|
+
outputSizeInBytes: number | null;
|
|
311
360
|
};
|
|
312
|
-
export
|
|
361
|
+
export type Privacy = 'public' | 'private' | 'no-acl';
|
|
313
362
|
export declare const LAMBDA_CONCURRENCY_LIMIT_QUOTA = "L-B99A9384";
|
|
314
363
|
export declare const LAMBDA_BURST_LIMIT_QUOTA = "L-548AE339";
|
|
364
|
+
export {};
|
package/dist/shared/constants.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.LAMBDA_CONCURRENCY_LIMIT_QUOTA = exports.LambdaRoutines = exports.REMOTION_FILELIST_TOKEN = exports.REMOTION_CONCATED_TOKEN = exports.CONCAT_FOLDER_TOKEN = exports.RENDERER_PATH_TOKEN = exports.resolvedPropsKey = exports.inputPropsKey = exports.defaultPropsKey = exports.postRenderDataKey = exports.customOutName = exports.outStillName = exports.outName = exports.getSitesKey = exports.getErrorFileName = exports.getErrorKeyPrefix = exports.chunkKeyForIndex = exports.chunkKey = exports.lambdaTimingsKey = exports.lambdaLogsPrefix = exports.lambdaTimingsPrefixForChunk = exports.lambdaTimingsPrefix = exports.lambdaChunkInitializedKey = exports.lambdaChunkInitializedPrefix = exports.initalizedMetadataKey = exports.renderMetadataKey = exports.encodingProgressKey = exports.rendersPrefix = exports.LOG_GROUP_PREFIX = exports.RENDER_FN_PREFIX = exports.REMOTION_BUCKET_PREFIX = exports.ENCODING_PROGRESS_STEP_SIZE = exports.DEFAULT_CLOUDWATCH_RETENTION_PERIOD = exports.DEFAULT_OUTPUT_PRIVACY = exports.MAX_EPHEMERAL_STORAGE_IN_MB = exports.MIN_EPHEMERAL_STORAGE_IN_MB = exports.DEFAULT_EPHEMERAL_STORAGE_IN_MB = exports.MAX_FUNCTIONS_PER_RENDER = exports.DEFAULT_MAX_RETRIES = exports.DEFAULT_REGION = exports.COMMAND_NOT_FOUND = exports.BINARY_NAME = exports.DEFAULT_FRAMES_PER_LAMBDA = exports.MINIMUM_FRAMES_PER_LAMBDA = exports.MAX_TIMEOUT = exports.MIN_TIMEOUT = exports.DEFAULT_TIMEOUT = exports.DEFAULT_MEMORY_SIZE = exports.MAX_MEMORY = exports.MIN_MEMORY = void 0;
|
|
4
|
+
exports.LAMBDA_BURST_LIMIT_QUOTA = void 0;
|
|
4
5
|
exports.MIN_MEMORY = 512;
|
|
5
6
|
exports.MAX_MEMORY = 10240;
|
|
6
7
|
exports.DEFAULT_MEMORY_SIZE = 2048;
|
|
7
|
-
exports.DEFAULT_ARCHITECTURE = 'arm64';
|
|
8
8
|
exports.DEFAULT_TIMEOUT = 120;
|
|
9
9
|
exports.MIN_TIMEOUT = 15;
|
|
10
10
|
exports.MAX_TIMEOUT = 900;
|
|
@@ -20,6 +20,7 @@ exports.MIN_EPHEMERAL_STORAGE_IN_MB = 512;
|
|
|
20
20
|
exports.MAX_EPHEMERAL_STORAGE_IN_MB = 10240;
|
|
21
21
|
exports.DEFAULT_OUTPUT_PRIVACY = 'public';
|
|
22
22
|
exports.DEFAULT_CLOUDWATCH_RETENTION_PERIOD = 14;
|
|
23
|
+
exports.ENCODING_PROGRESS_STEP_SIZE = 100;
|
|
23
24
|
exports.REMOTION_BUCKET_PREFIX = 'remotionlambda-';
|
|
24
25
|
exports.RENDER_FN_PREFIX = 'remotion-render-';
|
|
25
26
|
exports.LOG_GROUP_PREFIX = '/aws/lambda/';
|
|
@@ -51,8 +52,6 @@ const getErrorKeyPrefix = (renderId) => `${(0, exports.rendersPrefix)(renderId)}
|
|
|
51
52
|
exports.getErrorKeyPrefix = getErrorKeyPrefix;
|
|
52
53
|
const getErrorFileName = ({ renderId, chunk, attempt, }) => (0, exports.getErrorKeyPrefix)(renderId) + ':chunk-' + chunk + ':attempt-' + attempt;
|
|
53
54
|
exports.getErrorFileName = getErrorFileName;
|
|
54
|
-
const optimizationProfile = (siteId, compositionId) => `optimization-profiles/${siteId}/${compositionId}/optimization-profile`;
|
|
55
|
-
exports.optimizationProfile = optimizationProfile;
|
|
56
55
|
const getSitesKey = (siteId) => `sites/${siteId}`;
|
|
57
56
|
exports.getSitesKey = getSitesKey;
|
|
58
57
|
const outName = (renderId, extension) => `${(0, exports.rendersPrefix)(renderId)}/out.${extension}`;
|
|
@@ -79,6 +78,18 @@ const postRenderDataKey = (renderId) => {
|
|
|
79
78
|
return `${(0, exports.rendersPrefix)(renderId)}/post-render-metadata.json`;
|
|
80
79
|
};
|
|
81
80
|
exports.postRenderDataKey = postRenderDataKey;
|
|
81
|
+
const defaultPropsKey = (hash) => {
|
|
82
|
+
return `default-props/${hash}.json`;
|
|
83
|
+
};
|
|
84
|
+
exports.defaultPropsKey = defaultPropsKey;
|
|
85
|
+
const inputPropsKey = (hash) => {
|
|
86
|
+
return `input-props/${hash}.json`;
|
|
87
|
+
};
|
|
88
|
+
exports.inputPropsKey = inputPropsKey;
|
|
89
|
+
const resolvedPropsKey = (hash) => {
|
|
90
|
+
return `resolved-props/${hash}.json`;
|
|
91
|
+
};
|
|
92
|
+
exports.resolvedPropsKey = resolvedPropsKey;
|
|
82
93
|
exports.RENDERER_PATH_TOKEN = 'remotion-bucket';
|
|
83
94
|
exports.CONCAT_FOLDER_TOKEN = 'remotion-concat';
|
|
84
95
|
exports.REMOTION_CONCATED_TOKEN = 'remotion-concated-token';
|
|
@@ -91,6 +102,7 @@ var LambdaRoutines;
|
|
|
91
102
|
LambdaRoutines["status"] = "status";
|
|
92
103
|
LambdaRoutines["renderer"] = "renderer";
|
|
93
104
|
LambdaRoutines["still"] = "still";
|
|
105
|
+
LambdaRoutines["compositions"] = "compositions";
|
|
94
106
|
})(LambdaRoutines = exports.LambdaRoutines || (exports.LambdaRoutines = {}));
|
|
95
107
|
exports.LAMBDA_CONCURRENCY_LIMIT_QUOTA = 'L-B99A9384';
|
|
96
108
|
exports.LAMBDA_BURST_LIMIT_QUOTA = 'L-548AE339';
|
|
File without changes
|
|
@@ -1,2 +1,6 @@
|
|
|
1
1
|
import type { AwsRegion } from '../pricing/aws-regions';
|
|
2
|
-
export declare const convertToServeUrl: (urlOrId
|
|
2
|
+
export declare const convertToServeUrl: ({ urlOrId, region, bucketName, }: {
|
|
3
|
+
urlOrId: string;
|
|
4
|
+
region: AwsRegion;
|
|
5
|
+
bucketName: string;
|
|
6
|
+
}) => string;
|
|
@@ -1,18 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.convertToServeUrl = void 0;
|
|
4
|
-
const get_or_create_bucket_1 = require("../api/get-or-create-bucket");
|
|
5
4
|
const docs_url_1 = require("./docs-url");
|
|
6
|
-
const convertToServeUrl =
|
|
5
|
+
const convertToServeUrl = ({ urlOrId, region, bucketName, }) => {
|
|
7
6
|
if (urlOrId.startsWith('src/')) {
|
|
8
7
|
throw new Error(`Remotion Lambda can only render based on a URL in the cloud. It seems like you passed a local file: ${urlOrId}. Read the setup guide for Remotion Lambda ${docs_url_1.DOCS_URL}/docs/lambda/setup`);
|
|
9
8
|
}
|
|
10
9
|
if (urlOrId.startsWith('http://') || urlOrId.startsWith('https://')) {
|
|
11
10
|
return urlOrId;
|
|
12
11
|
}
|
|
13
|
-
const { bucketName } = await (0, get_or_create_bucket_1.getOrCreateBucket)({
|
|
14
|
-
region,
|
|
15
|
-
});
|
|
16
12
|
return `https://${bucketName}.s3.${region}.amazonaws.com/sites/${urlOrId}/index.html`;
|
|
17
13
|
};
|
|
18
14
|
exports.convertToServeUrl = convertToServeUrl;
|
|
File without changes
|
package/dist/shared/docs-url.js
CHANGED
|
File without changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const
|
|
1
|
+
export declare const FUNCTION_ZIP_ARM64: string;
|
|
@@ -3,6 +3,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
7
|
-
const
|
|
8
|
-
exports.
|
|
6
|
+
exports.FUNCTION_ZIP_ARM64 = void 0;
|
|
7
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
8
|
+
exports.FUNCTION_ZIP_ARM64 = node_path_1.default.join(node_path_1.default.resolve(__dirname, '..', '..'), `remotionlambda-arm64.zip`);
|
|
File without changes
|
|
@@ -1,17 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getAccountId = void 0;
|
|
4
|
-
const
|
|
4
|
+
const client_sts_1 = require("@aws-sdk/client-sts");
|
|
5
5
|
const aws_clients_1 = require("./aws-clients");
|
|
6
6
|
const validate_aws_region_1 = require("./validate-aws-region");
|
|
7
7
|
const getAccountId = async (options) => {
|
|
8
|
-
var _a, _b;
|
|
9
8
|
(0, validate_aws_region_1.validateAwsRegion)(options.region);
|
|
10
|
-
const
|
|
11
|
-
|
|
12
|
-
if (!accountId) {
|
|
9
|
+
const callerIdentity = await (0, aws_clients_1.getStsClient)(options.region).send(new client_sts_1.GetCallerIdentityCommand({}));
|
|
10
|
+
if (!callerIdentity.Account) {
|
|
13
11
|
throw new Error('Cannot get account ID');
|
|
14
12
|
}
|
|
15
|
-
return
|
|
13
|
+
return callerIdentity.Account;
|
|
16
14
|
};
|
|
17
15
|
exports.getAccountId = getAccountId;
|
|
@@ -1,8 +1,14 @@
|
|
|
1
1
|
import type { AwsRegion } from '../client';
|
|
2
2
|
import type { LambdaRoutines } from './constants';
|
|
3
|
-
export declare const getCloudwatchStreamUrl: ({ region, functionName, method, renderId, }: {
|
|
3
|
+
export declare const getCloudwatchStreamUrl: ({ region, functionName, method, renderId, rendererFunctionName, }: {
|
|
4
4
|
region: AwsRegion;
|
|
5
5
|
functionName: string;
|
|
6
|
+
rendererFunctionName: string | null;
|
|
6
7
|
method: LambdaRoutines;
|
|
7
8
|
renderId: string;
|
|
8
9
|
}) => string;
|
|
10
|
+
export declare const getS3RenderUrl: ({ renderId, region, bucketName, }: {
|
|
11
|
+
renderId: string;
|
|
12
|
+
region: AwsRegion;
|
|
13
|
+
bucketName: string;
|
|
14
|
+
}) => string;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getS3RenderUrl = exports.getCloudwatchStreamUrl = void 0;
|
|
4
|
+
const getCloudwatchStreamUrl = ({ region, functionName, method, renderId, rendererFunctionName, }) => {
|
|
5
|
+
const functionNameToUse = rendererFunctionName !== null && rendererFunctionName !== void 0 ? rendererFunctionName : functionName;
|
|
6
|
+
return `https://${region}.console.aws.amazon.com/cloudwatch/home?region=${region}#logsV2:log-groups/log-group/$252Faws$252Flambda$252F${functionNameToUse}/log-events$3FfilterPattern$3D$2522method$253D${method}$252CrenderId$253D${renderId}$2522`;
|
|
7
|
+
};
|
|
8
|
+
exports.getCloudwatchStreamUrl = getCloudwatchStreamUrl;
|
|
9
|
+
const getS3RenderUrl = ({ renderId, region, bucketName, }) => {
|
|
10
|
+
return `https://s3.console.aws.amazon.com/s3/buckets/${bucketName}?region=${region}&prefix=renders/${renderId}/`;
|
|
11
|
+
};
|
|
12
|
+
exports.getS3RenderUrl = getS3RenderUrl;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const getEtagOfFile: (filePath: string) => Promise<string>;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.getEtagOfFile = void 0;
|
|
7
|
+
const node_crypto_1 = __importDefault(require("node:crypto"));
|
|
8
|
+
const node_fs_1 = __importDefault(require("node:fs"));
|
|
9
|
+
const chunk = 1024 * 1024 * 5; // 5MB
|
|
10
|
+
const md5 = (data) => node_crypto_1.default.createHash('md5').update(data).digest('hex');
|
|
11
|
+
const getEtagOfFile = async (filePath) => {
|
|
12
|
+
const stream = await node_fs_1.default.promises.readFile(filePath);
|
|
13
|
+
if (stream.length <= chunk) {
|
|
14
|
+
return `"${md5(stream)}"`;
|
|
15
|
+
}
|
|
16
|
+
const md5Chunks = [];
|
|
17
|
+
const chunksNumber = Math.ceil(stream.length / chunk);
|
|
18
|
+
for (let i = 0; i < chunksNumber; i++) {
|
|
19
|
+
const chunkStream = stream.slice(i * chunk, (i + 1) * chunk);
|
|
20
|
+
md5Chunks.push(md5(chunkStream));
|
|
21
|
+
}
|
|
22
|
+
return `"${md5(Buffer.from(md5Chunks.join(''), 'hex'))}-${chunksNumber}"`;
|
|
23
|
+
};
|
|
24
|
+
exports.getEtagOfFile = getEtagOfFile;
|
|
File without changes
|
|
File without changes
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { ParsedTiming } from './parse-lambda-timings-key';
|
|
2
2
|
export declare const OVERHEAD_TIME_PER_LAMBDA = 100;
|
|
3
|
-
export
|
|
3
|
+
export type ExpensiveChunk = {
|
|
4
4
|
chunk: number;
|
|
5
5
|
frameRange: [number, number];
|
|
6
6
|
timeInMilliseconds: number;
|
|
7
7
|
};
|
|
8
|
-
export declare const getMostExpensiveChunks: (parsedTimings: ParsedTiming[], framesPerLambda: number) => ExpensiveChunk[];
|
|
8
|
+
export declare const getMostExpensiveChunks: (parsedTimings: ParsedTiming[], framesPerLambda: number, lastFrame: number) => ExpensiveChunk[];
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getMostExpensiveChunks = exports.OVERHEAD_TIME_PER_LAMBDA = void 0;
|
|
4
4
|
exports.OVERHEAD_TIME_PER_LAMBDA = 100;
|
|
5
|
-
const getMostExpensiveChunks = (parsedTimings, framesPerLambda) => {
|
|
5
|
+
const getMostExpensiveChunks = (parsedTimings, framesPerLambda, lastFrame) => {
|
|
6
6
|
const mostExpensiveChunks = parsedTimings
|
|
7
7
|
.slice(0)
|
|
8
8
|
.sort((a, b) => {
|
|
@@ -12,12 +12,13 @@ const getMostExpensiveChunks = (parsedTimings, framesPerLambda) => {
|
|
|
12
12
|
})
|
|
13
13
|
.slice(0, 5);
|
|
14
14
|
return mostExpensiveChunks.map((c) => {
|
|
15
|
+
const isLastChunk = c.chunk === parsedTimings.length - 1;
|
|
15
16
|
return {
|
|
16
17
|
timeInMilliseconds: c.rendered - c.start,
|
|
17
18
|
chunk: c.chunk,
|
|
18
19
|
frameRange: [
|
|
19
20
|
framesPerLambda * c.chunk,
|
|
20
|
-
framesPerLambda * (c.chunk + 1) - 1,
|
|
21
|
+
isLastChunk ? lastFrame : framesPerLambda * (c.chunk + 1) - 1,
|
|
21
22
|
],
|
|
22
23
|
};
|
|
23
24
|
});
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { _Object } from '@aws-sdk/client-s3';
|
|
2
|
+
export declare const getS3DiffOperations: ({ objects, bundle, prefix, }: {
|
|
3
|
+
objects: _Object[];
|
|
4
|
+
bundle: string;
|
|
5
|
+
prefix: string;
|
|
6
|
+
}) => Promise<{
|
|
7
|
+
toDelete: _Object[];
|
|
8
|
+
toUpload: string[];
|
|
9
|
+
existingCount: number;
|
|
10
|
+
}>;
|