@remotion/lambda 4.0.0-webhook.26 → 4.1.0-alpha2
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 +1 -1
- package/dist/api/get-buckets.js +26 -9
- package/dist/api/get-compositions-on-lambda.d.ts +31 -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 +4 -5
- package/dist/api/get-sites.js +1 -2
- 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 +77 -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 +25 -11
- package/dist/api/render-media-on-lambda.js +16 -49
- package/dist/api/render-still-on-lambda.d.ts +15 -6
- package/dist/api/render-still-on-lambda.js +23 -9
- 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 +36 -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 +6 -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 +15 -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 +1 -2
- package/dist/functions/helpers/get-browser-instance.js +7 -3
- 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 +31 -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 +0 -0
- 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 +16 -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 +43 -10
- 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 +152 -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 +73 -42
- package/dist/functions/start.d.ts +1 -1
- package/dist/functions/start.js +22 -8
- package/dist/functions/still.d.ts +1 -1
- package/dist/functions/still.js +80 -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 +140 -89
- package/dist/shared/constants.js +7 -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/deserialize-input-props.d.ts +8 -0
- package/dist/shared/deserialize-input-props.js +26 -0
- 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-input-props.d.ts +8 -0
- package/dist/shared/serialize-input-props.js +42 -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/.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,17 +1,15 @@
|
|
|
1
|
-
import type { ChromiumOptions, Codec, FrameRange,
|
|
2
|
-
import type {
|
|
1
|
+
import type { AudioCodec, ChromiumOptions, Codec, FrameRange, LogLevel, PixelFormat, ProResProfile, StillImageFormat, VideoImageFormat } from '@remotion/renderer';
|
|
2
|
+
import type { AnyCompMetadata } from 'remotion';
|
|
3
3
|
import type { ChunkRetry } from '../functions/helpers/get-retry-stats';
|
|
4
4
|
import type { EnhancedErrorInfo } from '../functions/helpers/write-lambda-error';
|
|
5
5
|
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,27 @@ 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 inputPropsKey: (hash: string) => string;
|
|
84
83
|
export declare const RENDERER_PATH_TOKEN = "remotion-bucket";
|
|
85
84
|
export declare const CONCAT_FOLDER_TOKEN = "remotion-concat";
|
|
86
85
|
export declare const REMOTION_CONCATED_TOKEN = "remotion-concated-token";
|
|
@@ -91,60 +90,87 @@ export declare enum LambdaRoutines {
|
|
|
91
90
|
launch = "launch",
|
|
92
91
|
status = "status",
|
|
93
92
|
renderer = "renderer",
|
|
94
|
-
still = "still"
|
|
93
|
+
still = "still",
|
|
94
|
+
compositions = "compositions"
|
|
95
95
|
}
|
|
96
|
-
|
|
96
|
+
type WebhookOption = null | {
|
|
97
|
+
url: string;
|
|
98
|
+
secret: string | null;
|
|
99
|
+
};
|
|
100
|
+
export type SerializedInputProps = {
|
|
101
|
+
type: 'bucket-url';
|
|
102
|
+
hash: string;
|
|
103
|
+
} | {
|
|
104
|
+
type: 'payload';
|
|
105
|
+
payload: unknown;
|
|
106
|
+
};
|
|
107
|
+
export type LambdaStartPayload = {
|
|
108
|
+
rendererFunctionName: string | null;
|
|
109
|
+
type: LambdaRoutines.start;
|
|
110
|
+
serveUrl: string;
|
|
111
|
+
composition: string;
|
|
112
|
+
framesPerLambda: number | null;
|
|
113
|
+
inputProps: SerializedInputProps;
|
|
114
|
+
codec: LambdaCodec;
|
|
115
|
+
audioCodec: AudioCodec | null;
|
|
116
|
+
imageFormat: VideoImageFormat;
|
|
117
|
+
crf: number | undefined;
|
|
118
|
+
envVariables: Record<string, string> | undefined;
|
|
119
|
+
pixelFormat: PixelFormat | undefined;
|
|
120
|
+
proResProfile: ProResProfile | undefined;
|
|
121
|
+
jpegQuality: number | undefined;
|
|
122
|
+
maxRetries: number;
|
|
123
|
+
privacy: Privacy;
|
|
124
|
+
logLevel: LogLevel;
|
|
125
|
+
frameRange: FrameRange | null;
|
|
126
|
+
outName: OutNameInput | null;
|
|
127
|
+
timeoutInMilliseconds: number;
|
|
128
|
+
chromiumOptions: ChromiumOptions;
|
|
129
|
+
scale: number;
|
|
130
|
+
everyNthFrame: number;
|
|
131
|
+
numberOfGifLoops: number | null;
|
|
132
|
+
concurrencyPerLambda: number;
|
|
133
|
+
downloadBehavior: DownloadBehavior;
|
|
134
|
+
muted: boolean;
|
|
135
|
+
version: string;
|
|
136
|
+
overwrite: boolean;
|
|
137
|
+
audioBitrate: string | null;
|
|
138
|
+
videoBitrate: string | null;
|
|
139
|
+
webhook: WebhookOption;
|
|
140
|
+
forceHeight: number | null;
|
|
141
|
+
forceWidth: number | null;
|
|
142
|
+
bucketName: string | null;
|
|
143
|
+
dumpBrowserLogs: boolean;
|
|
144
|
+
};
|
|
145
|
+
export type LambdaStatusPayload = {
|
|
146
|
+
type: LambdaRoutines.status;
|
|
147
|
+
bucketName: string;
|
|
148
|
+
renderId: string;
|
|
149
|
+
version: string;
|
|
150
|
+
s3OutputProvider?: CustomCredentials;
|
|
151
|
+
};
|
|
152
|
+
export type LambdaPayloads = {
|
|
97
153
|
info: {
|
|
98
154
|
type: LambdaRoutines.info;
|
|
99
155
|
};
|
|
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
|
-
};
|
|
156
|
+
start: LambdaStartPayload;
|
|
133
157
|
launch: {
|
|
158
|
+
rendererFunctionName: string | null;
|
|
134
159
|
type: LambdaRoutines.launch;
|
|
135
160
|
serveUrl: string;
|
|
136
161
|
composition: string;
|
|
137
162
|
framesPerLambda: number | null;
|
|
138
163
|
bucketName: string;
|
|
139
|
-
inputProps:
|
|
164
|
+
inputProps: SerializedInputProps;
|
|
140
165
|
renderId: string;
|
|
141
|
-
imageFormat:
|
|
166
|
+
imageFormat: VideoImageFormat;
|
|
142
167
|
codec: LambdaCodec;
|
|
168
|
+
audioCodec: AudioCodec | null;
|
|
143
169
|
crf: number | undefined;
|
|
144
170
|
envVariables: Record<string, string> | undefined;
|
|
145
171
|
pixelFormat: PixelFormat | undefined;
|
|
146
172
|
proResProfile: ProResProfile | undefined;
|
|
147
|
-
|
|
173
|
+
jpegQuality: number | undefined;
|
|
148
174
|
maxRetries: number;
|
|
149
175
|
privacy: Privacy;
|
|
150
176
|
logLevel: LogLevel;
|
|
@@ -159,18 +185,14 @@ export declare type LambdaPayloads = {
|
|
|
159
185
|
downloadBehavior: DownloadBehavior;
|
|
160
186
|
muted: boolean;
|
|
161
187
|
overwrite: boolean;
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
type: LambdaRoutines.status;
|
|
169
|
-
bucketName: string;
|
|
170
|
-
renderId: string;
|
|
171
|
-
version: string;
|
|
172
|
-
s3OutputProvider?: CustomCredentials;
|
|
188
|
+
audioBitrate: string | null;
|
|
189
|
+
videoBitrate: string | null;
|
|
190
|
+
webhook: WebhookOption;
|
|
191
|
+
forceHeight: number | null;
|
|
192
|
+
forceWidth: number | null;
|
|
193
|
+
dumpBrowserLogs: boolean;
|
|
173
194
|
};
|
|
195
|
+
status: LambdaStatusPayload;
|
|
174
196
|
renderer: {
|
|
175
197
|
concurrencyPerLambda: number;
|
|
176
198
|
type: LambdaRoutines.renderer;
|
|
@@ -184,14 +206,14 @@ 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;
|
|
@@ -201,16 +223,22 @@ export declare type LambdaPayloads = {
|
|
|
201
223
|
scale: number;
|
|
202
224
|
everyNthFrame: number;
|
|
203
225
|
muted: boolean;
|
|
226
|
+
audioBitrate: string | null;
|
|
227
|
+
videoBitrate: string | null;
|
|
228
|
+
launchFunctionConfig: {
|
|
229
|
+
version: string;
|
|
230
|
+
};
|
|
231
|
+
dumpBrowserLogs: boolean;
|
|
204
232
|
};
|
|
205
233
|
still: {
|
|
206
234
|
type: LambdaRoutines.still;
|
|
207
235
|
serveUrl: string;
|
|
208
236
|
composition: string;
|
|
209
|
-
inputProps:
|
|
210
|
-
imageFormat:
|
|
237
|
+
inputProps: SerializedInputProps;
|
|
238
|
+
imageFormat: StillImageFormat;
|
|
211
239
|
envVariables: Record<string, string> | undefined;
|
|
212
240
|
attempt: number;
|
|
213
|
-
|
|
241
|
+
jpegQuality: number | undefined;
|
|
214
242
|
maxRetries: number;
|
|
215
243
|
frame: number;
|
|
216
244
|
privacy: Privacy;
|
|
@@ -221,28 +249,46 @@ export declare type LambdaPayloads = {
|
|
|
221
249
|
scale: number;
|
|
222
250
|
downloadBehavior: DownloadBehavior | null;
|
|
223
251
|
version: string;
|
|
252
|
+
forceHeight: number | null;
|
|
253
|
+
forceWidth: number | null;
|
|
254
|
+
bucketName: string | null;
|
|
255
|
+
dumpBrowserLogs: boolean;
|
|
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;
|
|
267
|
+
dumpBrowserLogs: boolean;
|
|
224
268
|
};
|
|
225
269
|
};
|
|
226
|
-
export
|
|
227
|
-
export
|
|
270
|
+
export type LambdaPayload = LambdaPayloads[LambdaRoutines];
|
|
271
|
+
export type EncodingProgress = {
|
|
228
272
|
framesEncoded: number;
|
|
229
|
-
totalFrames: number | null;
|
|
230
|
-
doneIn: number | null;
|
|
231
|
-
timeToInvoke: number | null;
|
|
232
273
|
};
|
|
233
|
-
|
|
274
|
+
type Discriminated = {
|
|
275
|
+
type: 'still';
|
|
276
|
+
imageFormat: StillImageFormat;
|
|
277
|
+
} | {
|
|
278
|
+
type: 'video';
|
|
279
|
+
imageFormat: VideoImageFormat;
|
|
280
|
+
};
|
|
281
|
+
export type RenderMetadata = Discriminated & {
|
|
234
282
|
siteId: string;
|
|
235
|
-
videoConfig:
|
|
283
|
+
videoConfig: AnyCompMetadata;
|
|
236
284
|
startedDate: number;
|
|
237
285
|
totalChunks: number;
|
|
238
286
|
estimatedTotalLambdaInvokations: number;
|
|
239
287
|
estimatedRenderLambdaInvokations: number;
|
|
240
288
|
compositionId: string;
|
|
241
289
|
codec: Codec | null;
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
imageFormat: ImageFormat;
|
|
245
|
-
inputProps: unknown;
|
|
290
|
+
audioCodec: AudioCodec | null;
|
|
291
|
+
inputProps: SerializedInputProps;
|
|
246
292
|
framesPerLambda: number;
|
|
247
293
|
memorySizeInMb: number;
|
|
248
294
|
lambdaVersion: string;
|
|
@@ -250,14 +296,17 @@ export declare type RenderMetadata = {
|
|
|
250
296
|
renderId: string;
|
|
251
297
|
outName: OutNameInputWithoutCredentials | undefined;
|
|
252
298
|
privacy: Privacy;
|
|
299
|
+
frameRange: [number, number];
|
|
300
|
+
everyNthFrame: number;
|
|
253
301
|
};
|
|
254
|
-
export
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
302
|
+
export type AfterRenderCost = {
|
|
303
|
+
estimatedCost: number;
|
|
304
|
+
estimatedDisplayCost: string;
|
|
305
|
+
currency: string;
|
|
306
|
+
disclaimer: string;
|
|
307
|
+
};
|
|
308
|
+
export type PostRenderData = {
|
|
309
|
+
cost: AfterRenderCost;
|
|
261
310
|
outputFile: string;
|
|
262
311
|
outputSize: number;
|
|
263
312
|
renderSize: number;
|
|
@@ -270,22 +319,21 @@ export declare type PostRenderData = {
|
|
|
270
319
|
timeToEncode: number;
|
|
271
320
|
timeToCleanUp: number;
|
|
272
321
|
timeToRenderChunks: number;
|
|
273
|
-
timeToInvokeLambdas: number;
|
|
274
322
|
retriesInfo: ChunkRetry[];
|
|
275
323
|
mostExpensiveFrameRanges: ExpensiveChunk[] | undefined;
|
|
276
324
|
};
|
|
277
|
-
export
|
|
325
|
+
export type CostsInfo = {
|
|
278
326
|
accruedSoFar: number;
|
|
279
327
|
displayCost: string;
|
|
280
328
|
currency: string;
|
|
281
329
|
disclaimer: string;
|
|
282
330
|
};
|
|
283
|
-
export
|
|
331
|
+
export type CleanupInfo = {
|
|
284
332
|
doneIn: number | null;
|
|
285
333
|
minFilesToDelete: number;
|
|
286
334
|
filesDeleted: number;
|
|
287
335
|
};
|
|
288
|
-
export
|
|
336
|
+
export type RenderProgress = {
|
|
289
337
|
chunks: number;
|
|
290
338
|
done: boolean;
|
|
291
339
|
encodingStatus: EncodingProgress | null;
|
|
@@ -304,11 +352,14 @@ export declare type RenderProgress = {
|
|
|
304
352
|
lambdasInvoked: number;
|
|
305
353
|
cleanup: CleanupInfo | null;
|
|
306
354
|
timeToFinishChunks: number | null;
|
|
307
|
-
|
|
355
|
+
timeToEncode: number | null;
|
|
308
356
|
overallProgress: number;
|
|
309
357
|
retriesInfo: ChunkRetry[];
|
|
310
358
|
mostExpensiveFrameRanges: ExpensiveChunk[] | null;
|
|
359
|
+
framesRendered: number;
|
|
360
|
+
outputSizeInBytes: number | null;
|
|
311
361
|
};
|
|
312
|
-
export
|
|
362
|
+
export type Privacy = 'public' | 'private' | 'no-acl';
|
|
313
363
|
export declare const LAMBDA_CONCURRENCY_LIMIT_QUOTA = "L-B99A9384";
|
|
314
364
|
export declare const LAMBDA_BURST_LIMIT_QUOTA = "L-548AE339";
|
|
365
|
+
export {};
|
package/dist/shared/constants.js
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.LAMBDA_BURST_LIMIT_QUOTA = exports.LAMBDA_CONCURRENCY_LIMIT_QUOTA = exports.LambdaRoutines = exports.REMOTION_FILELIST_TOKEN = exports.REMOTION_CONCATED_TOKEN = exports.CONCAT_FOLDER_TOKEN = exports.RENDERER_PATH_TOKEN = exports.postRenderDataKey = exports.customOutName = exports.outStillName = exports.outName = exports.getSitesKey = exports.
|
|
3
|
+
exports.LAMBDA_BURST_LIMIT_QUOTA = exports.LAMBDA_CONCURRENCY_LIMIT_QUOTA = exports.LambdaRoutines = exports.REMOTION_FILELIST_TOKEN = exports.REMOTION_CONCATED_TOKEN = exports.CONCAT_FOLDER_TOKEN = exports.RENDERER_PATH_TOKEN = exports.inputPropsKey = 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
4
|
exports.MIN_MEMORY = 512;
|
|
5
5
|
exports.MAX_MEMORY = 10240;
|
|
6
6
|
exports.DEFAULT_MEMORY_SIZE = 2048;
|
|
7
|
-
exports.DEFAULT_ARCHITECTURE = 'arm64';
|
|
8
7
|
exports.DEFAULT_TIMEOUT = 120;
|
|
9
8
|
exports.MIN_TIMEOUT = 15;
|
|
10
9
|
exports.MAX_TIMEOUT = 900;
|
|
@@ -20,6 +19,7 @@ exports.MIN_EPHEMERAL_STORAGE_IN_MB = 512;
|
|
|
20
19
|
exports.MAX_EPHEMERAL_STORAGE_IN_MB = 10240;
|
|
21
20
|
exports.DEFAULT_OUTPUT_PRIVACY = 'public';
|
|
22
21
|
exports.DEFAULT_CLOUDWATCH_RETENTION_PERIOD = 14;
|
|
22
|
+
exports.ENCODING_PROGRESS_STEP_SIZE = 100;
|
|
23
23
|
exports.REMOTION_BUCKET_PREFIX = 'remotionlambda-';
|
|
24
24
|
exports.RENDER_FN_PREFIX = 'remotion-render-';
|
|
25
25
|
exports.LOG_GROUP_PREFIX = '/aws/lambda/';
|
|
@@ -51,8 +51,6 @@ const getErrorKeyPrefix = (renderId) => `${(0, exports.rendersPrefix)(renderId)}
|
|
|
51
51
|
exports.getErrorKeyPrefix = getErrorKeyPrefix;
|
|
52
52
|
const getErrorFileName = ({ renderId, chunk, attempt, }) => (0, exports.getErrorKeyPrefix)(renderId) + ':chunk-' + chunk + ':attempt-' + attempt;
|
|
53
53
|
exports.getErrorFileName = getErrorFileName;
|
|
54
|
-
const optimizationProfile = (siteId, compositionId) => `optimization-profiles/${siteId}/${compositionId}/optimization-profile`;
|
|
55
|
-
exports.optimizationProfile = optimizationProfile;
|
|
56
54
|
const getSitesKey = (siteId) => `sites/${siteId}`;
|
|
57
55
|
exports.getSitesKey = getSitesKey;
|
|
58
56
|
const outName = (renderId, extension) => `${(0, exports.rendersPrefix)(renderId)}/out.${extension}`;
|
|
@@ -79,6 +77,10 @@ const postRenderDataKey = (renderId) => {
|
|
|
79
77
|
return `${(0, exports.rendersPrefix)(renderId)}/post-render-metadata.json`;
|
|
80
78
|
};
|
|
81
79
|
exports.postRenderDataKey = postRenderDataKey;
|
|
80
|
+
const inputPropsKey = (hash) => {
|
|
81
|
+
return `input-props/${hash}.json`;
|
|
82
|
+
};
|
|
83
|
+
exports.inputPropsKey = inputPropsKey;
|
|
82
84
|
exports.RENDERER_PATH_TOKEN = 'remotion-bucket';
|
|
83
85
|
exports.CONCAT_FOLDER_TOKEN = 'remotion-concat';
|
|
84
86
|
exports.REMOTION_CONCATED_TOKEN = 'remotion-concated-token';
|
|
@@ -91,6 +93,7 @@ var LambdaRoutines;
|
|
|
91
93
|
LambdaRoutines["status"] = "status";
|
|
92
94
|
LambdaRoutines["renderer"] = "renderer";
|
|
93
95
|
LambdaRoutines["still"] = "still";
|
|
96
|
+
LambdaRoutines["compositions"] = "compositions";
|
|
94
97
|
})(LambdaRoutines = exports.LambdaRoutines || (exports.LambdaRoutines = {}));
|
|
95
98
|
exports.LAMBDA_CONCURRENCY_LIMIT_QUOTA = 'L-B99A9384';
|
|
96
99
|
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;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { AwsRegion } from '../client';
|
|
2
|
+
import type { SerializedInputProps } from './constants';
|
|
3
|
+
export declare const deserializeInputProps: ({ serialized, region, bucketName, expectedBucketOwner, }: {
|
|
4
|
+
serialized: SerializedInputProps;
|
|
5
|
+
region: AwsRegion;
|
|
6
|
+
bucketName: string;
|
|
7
|
+
expectedBucketOwner: string;
|
|
8
|
+
}) => Promise<Record<string, unknown>>;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.deserializeInputProps = void 0;
|
|
4
|
+
const io_1 = require("../functions/helpers/io");
|
|
5
|
+
const constants_1 = require("./constants");
|
|
6
|
+
const stream_to_string_1 = require("./stream-to-string");
|
|
7
|
+
const deserializeInputProps = async ({ serialized, region, bucketName, expectedBucketOwner, }) => {
|
|
8
|
+
if (serialized.type === 'payload') {
|
|
9
|
+
return JSON.parse(serialized.payload);
|
|
10
|
+
}
|
|
11
|
+
try {
|
|
12
|
+
const response = await (0, io_1.lambdaReadFile)({
|
|
13
|
+
bucketName,
|
|
14
|
+
expectedBucketOwner,
|
|
15
|
+
key: (0, constants_1.inputPropsKey)(serialized.hash),
|
|
16
|
+
region,
|
|
17
|
+
});
|
|
18
|
+
const body = await (0, stream_to_string_1.streamToString)(response);
|
|
19
|
+
const payload = JSON.parse(body);
|
|
20
|
+
return payload;
|
|
21
|
+
}
|
|
22
|
+
catch (err) {
|
|
23
|
+
throw new Error(`Failed to parse input props that were serialized: ${err.stack}`);
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
exports.deserializeInputProps = deserializeInputProps;
|
|
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[];
|