@remotion/lambda 4.0.0-imgloading.2 → 4.0.0-jshmr2.1
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 +21 -4
- 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 +30 -8
- package/dist/api/bucket-exists.d.ts +1 -1
- package/dist/api/bucket-exists.js +1 -1
- package/dist/api/clean-items.d.ts +1 -1
- package/dist/api/clean-items.js +1 -1
- package/dist/api/create-bucket.d.ts +1 -1
- package/dist/api/create-bucket.js +1 -1
- package/dist/api/create-function.d.ts +4 -3
- package/dist/api/create-function.js +27 -4
- package/dist/api/delete-function.d.ts +2 -2
- package/dist/api/delete-function.js +1 -1
- package/dist/api/delete-render.d.ts +19 -0
- package/dist/api/delete-render.js +66 -0
- package/dist/api/delete-site.d.ts +2 -2
- package/dist/api/delete-site.js +1 -6
- package/dist/api/deploy-function.d.ts +4 -3
- package/dist/api/deploy-function.js +11 -4
- package/dist/api/deploy-site.d.ts +13 -4
- package/dist/api/deploy-site.js +50 -22
- package/dist/api/download-media.d.ts +15 -2
- package/dist/api/download-media.js +15 -3
- package/dist/api/estimate-price.d.ts +3 -3
- package/dist/api/estimate-price.js +1 -1
- package/dist/api/get-aws-client.d.ts +8 -4
- package/dist/api/get-aws-client.js +15 -4
- package/dist/api/get-buckets.d.ts +1 -1
- package/dist/api/get-buckets.js +27 -10
- package/dist/api/get-compositions-on-lambda.d.ts +29 -0
- package/dist/api/get-compositions-on-lambda.js +54 -0
- package/dist/api/get-function-info.d.ts +3 -4
- package/dist/api/get-function-info.js +1 -1
- package/dist/api/get-functions.d.ts +3 -5
- package/dist/api/get-functions.js +3 -4
- package/dist/api/get-or-create-bucket.d.ts +2 -2
- package/dist/api/get-or-create-bucket.js +4 -9
- package/dist/api/get-regions.d.ts +7 -3
- package/dist/api/get-regions.js +6 -3
- package/dist/api/get-render-progress.d.ts +7 -4
- package/dist/api/get-render-progress.js +6 -2
- package/dist/api/get-sites.d.ts +4 -4
- package/dist/api/get-sites.js +1 -2
- package/dist/api/iam-validation/role-permissions.d.ts +2 -1
- package/dist/api/iam-validation/role-permissions.js +0 -0
- package/dist/api/iam-validation/simulate-rule.d.ts +1 -1
- 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 +25 -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 +1 -8
- package/dist/api/mock-functions.d.ts +6 -7
- package/dist/api/mock-functions.js +0 -0
- package/dist/api/presign-url.d.ts +5 -5
- package/dist/api/presign-url.js +9 -4
- package/dist/api/render-media-on-lambda.d.ts +38 -17
- package/dist/api/render-media-on-lambda.js +88 -38
- package/dist/api/render-still-on-lambda.d.ts +12 -7
- package/dist/api/render-still-on-lambda.js +58 -31
- package/dist/api/upload-dir.d.ts +6 -5
- package/dist/api/upload-dir.js +58 -50
- package/dist/api/validate-webhook-signature.d.ts +13 -0
- package/dist/api/validate-webhook-signature.js +32 -0
- package/dist/cli/args.d.ts +13 -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 +10 -6
- 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 +5 -6
- package/dist/cli/commands/functions/rm.d.ts +0 -0
- package/dist/cli/commands/functions/rm.js +0 -0
- package/dist/cli/commands/functions/rmall.d.ts +0 -0
- package/dist/cli/commands/functions/rmall.js +0 -0
- 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 +6 -6
- 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 +66 -48
- package/dist/cli/commands/render/render.d.ts +1 -1
- package/dist/cli/commands/render/render.js +80 -25
- package/dist/cli/commands/sites/create.d.ts +1 -1
- package/dist/cli/commands/sites/create.js +25 -26
- package/dist/cli/commands/sites/index.d.ts +1 -1
- package/dist/cli/commands/sites/index.js +15 -16
- package/dist/cli/commands/sites/ls.d.ts +0 -0
- package/dist/cli/commands/sites/ls.js +10 -12
- package/dist/cli/commands/sites/rm.d.ts +0 -0
- package/dist/cli/commands/sites/rm.js +8 -19
- package/dist/cli/commands/sites/rmall.d.ts +0 -0
- package/dist/cli/commands/sites/rmall.js +7 -19
- package/dist/cli/commands/still.d.ts +1 -1
- package/dist/cli/commands/still.js +34 -27
- package/dist/cli/get-aws-region.d.ts +1 -1
- package/dist/cli/get-aws-region.js +2 -1
- package/dist/cli/help.d.ts +0 -0
- package/dist/cli/help.js +0 -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 +37 -7
- package/dist/cli/helpers/progress-bar.d.ts +9 -3
- package/dist/cli/helpers/progress-bar.js +20 -8
- 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 +30 -9
- package/dist/cli/is-cli.d.ts +0 -0
- package/dist/cli/is-cli.js +0 -0
- package/dist/cli/log.d.ts +0 -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 +5 -1
- package/dist/functions/chunk-optimization/plan-frame-ranges.d.ts +3 -10
- package/dist/functions/chunk-optimization/plan-frame-ranges.js +7 -19
- package/dist/functions/chunk-optimization/types.d.ts +0 -11
- package/dist/functions/chunk-optimization/types.js +0 -0
- package/dist/functions/compositions.d.ts +8 -0
- package/dist/functions/compositions.js +58 -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 +1 -1
- package/dist/functions/helpers/calculate-chunk-times.js +0 -0
- package/dist/functions/helpers/calculate-price-from-bucket.d.ts +4 -4
- package/dist/functions/helpers/calculate-price-from-bucket.js +0 -0
- package/dist/functions/helpers/check-if-render-exists.d.ts +3 -0
- package/dist/functions/helpers/check-if-render-exists.js +14 -0
- package/dist/functions/helpers/clean-tmpdir.d.ts +0 -0
- package/dist/functions/helpers/clean-tmpdir.js +1 -1
- package/dist/functions/helpers/concat-videos.d.ts +19 -7
- package/dist/functions/helpers/concat-videos.js +41 -33
- package/dist/functions/helpers/create-post-render-data.d.ts +6 -6
- package/dist/functions/helpers/create-post-render-data.js +5 -12
- package/dist/functions/helpers/delete-chunks.d.ts +3 -3
- package/dist/functions/helpers/delete-chunks.js +0 -0
- package/dist/functions/helpers/expected-out-name.d.ts +4 -2
- package/dist/functions/helpers/expected-out-name.js +27 -6
- package/dist/functions/helpers/find-output-file-in-bucket.d.ts +5 -3
- package/dist/functions/helpers/find-output-file-in-bucket.js +17 -9
- package/dist/functions/helpers/format-costs-info.d.ts +1 -1
- package/dist/functions/helpers/format-costs-info.js +0 -0
- package/dist/functions/helpers/get-browser-instance.d.ts +2 -1
- package/dist/functions/helpers/get-browser-instance.js +2 -2
- package/dist/functions/helpers/get-chromium-executable-path.d.ts +1 -1
- package/dist/functions/helpers/get-chromium-executable-path.js +3 -2
- package/dist/functions/helpers/get-cleanup-progress.d.ts +2 -2
- package/dist/functions/helpers/get-cleanup-progress.js +0 -0
- package/dist/functions/helpers/get-current-architecture.d.ts +1 -1
- package/dist/functions/helpers/get-current-architecture.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 +6 -0
- package/dist/functions/helpers/get-custom-out-name.js +31 -0
- package/dist/functions/helpers/get-encoding-metadata.d.ts +6 -9
- package/dist/functions/helpers/get-encoding-metadata.js +7 -17
- package/dist/functions/helpers/get-files-in-folder.d.ts +0 -0
- package/dist/functions/helpers/get-files-in-folder.js +0 -0
- package/dist/functions/helpers/get-files-to-delete.d.ts +0 -0
- package/dist/functions/helpers/get-files-to-delete.js +3 -3
- package/dist/functions/helpers/get-final-encoding-status.d.ts +3 -5
- 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 +5 -4
- package/dist/functions/helpers/get-lambdas-invoked-stats.js +2 -10
- package/dist/functions/helpers/get-output-url-from-metadata.d.ts +3 -2
- package/dist/functions/helpers/get-output-url-from-metadata.js +2 -2
- 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 +2 -2
- package/dist/functions/helpers/get-post-render-data.js +0 -0
- package/dist/functions/helpers/get-progress.d.ts +6 -4
- package/dist/functions/helpers/get-progress.js +65 -46
- package/dist/functions/helpers/get-render-metadata.d.ts +2 -2
- 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 +1 -1
- package/dist/functions/helpers/get-time-to-finish.d.ts +1 -1
- package/dist/functions/helpers/get-time-to-finish.js +0 -0
- package/dist/functions/helpers/inspect-errors.d.ts +3 -3
- package/dist/functions/helpers/inspect-errors.js +0 -0
- package/dist/functions/helpers/io.d.ts +24 -6
- package/dist/functions/helpers/io.js +31 -8
- package/dist/functions/helpers/is-enosp-err.d.ts +0 -0
- package/dist/functions/helpers/is-enosp-err.js +0 -0
- 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 +48 -0
- package/dist/functions/helpers/min-max.d.ts +1 -1
- package/dist/functions/helpers/min-max.js +1 -1
- package/dist/functions/helpers/print-cloudwatch-helper.d.ts +2 -2
- 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 +6 -3
- package/dist/functions/helpers/read-with-progress.js +16 -4
- 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 +12 -4
- package/dist/functions/helpers/validate-composition.js +14 -2
- package/dist/functions/helpers/write-lambda-error.d.ts +2 -2
- package/dist/functions/helpers/write-lambda-error.js +2 -0
- package/dist/functions/helpers/write-post-render-data.d.ts +2 -2
- package/dist/functions/helpers/write-post-render-data.js +2 -0
- package/dist/functions/index.d.ts +3 -2
- package/dist/functions/index.js +29 -10
- package/dist/functions/info.d.ts +2 -2
- package/dist/functions/info.js +2 -1
- package/dist/functions/launch.d.ts +2 -1
- package/dist/functions/launch.js +360 -123
- package/dist/functions/progress.d.ts +2 -2
- package/dist/functions/progress.js +10 -1
- package/dist/functions/renderer.d.ts +1 -1
- package/dist/functions/renderer.js +144 -79
- package/dist/functions/start.d.ts +6 -2
- package/dist/functions/start.js +44 -6
- package/dist/functions/still.d.ts +1 -1
- package/dist/functions/still.js +78 -21
- package/dist/index.d.ts +57 -21
- package/dist/index.js +27 -5
- package/dist/internals.d.ts +1 -1
- package/dist/internals.js +0 -0
- package/dist/pricing/aws-regions.d.ts +2 -1
- package/dist/pricing/aws-regions.js +31 -1
- package/dist/pricing/price-per-1-s.d.ts +1 -1
- 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 +0 -0
- package/dist/shared/await.js +0 -0
- package/dist/shared/aws-clients.d.ts +17 -3
- package/dist/shared/aws-clients.js +118 -26
- package/dist/shared/bundle-site.d.ts +2 -6
- package/dist/shared/bundle-site.js +0 -0
- package/dist/shared/call-lambda.d.ts +3 -3
- package/dist/shared/call-lambda.js +0 -0
- package/dist/shared/check-credentials.d.ts +0 -0
- package/dist/shared/check-credentials.js +5 -2
- 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 +119 -37
- package/dist/shared/constants.js +21 -10
- package/dist/shared/content-disposition-header.d.ts +7 -0
- package/dist/shared/content-disposition-header.js +19 -0
- package/dist/shared/convert-to-serve-url.d.ts +6 -2
- 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 +2 -1
- package/dist/shared/function-zip-path.js +3 -2
- package/dist/shared/get-account-id.d.ts +1 -1
- package/dist/shared/get-account-id.js +4 -6
- package/dist/shared/get-aws-urls.d.ts +14 -0
- 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 +2 -3
- package/dist/shared/get-function-version.js +0 -0
- package/dist/shared/get-most-expensive-chunks.d.ts +8 -0
- package/dist/shared/get-most-expensive-chunks.js +26 -0
- 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 +89 -3
- package/dist/shared/hosted-layers.js +434 -125
- package/dist/shared/invoke-webhook.d.ts +46 -0
- package/dist/shared/invoke-webhook.js +89 -0
- package/dist/shared/is-in-lambda.d.ts +0 -0
- package/dist/shared/is-in-lambda.js +5 -1
- package/dist/shared/lambda-version-string.d.ts +1 -0
- package/dist/shared/lambda-version-string.js +7 -0
- package/dist/shared/make-s3-key.d.ts +1 -0
- package/dist/shared/make-s3-key.js +11 -0
- package/dist/shared/make-s3-url.d.ts +1 -1
- package/dist/shared/make-s3-url.js +0 -0
- 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 +0 -0
- package/dist/shared/parse-lambda-timings-key.js +0 -0
- package/dist/shared/random-hash.d.ts +2 -2
- package/dist/shared/random-hash.js +1 -1
- package/dist/shared/read-dir.d.ts +9 -0
- package/dist/shared/read-dir.js +57 -0
- package/dist/shared/return-values.d.ts +9 -7
- package/dist/shared/return-values.js +0 -1
- 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 +2 -1
- package/dist/shared/stream-to-string.js +0 -0
- package/dist/shared/truthy.d.ts +3 -0
- package/dist/shared/truthy.js +7 -0
- package/dist/shared/validate-architecture.d.ts +0 -0
- package/dist/shared/validate-architecture.js +0 -0
- package/dist/shared/validate-aws-region.d.ts +1 -1
- 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 +1 -0
- package/dist/shared/validate-custom-role-arn.js +11 -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 +1 -0
- package/dist/shared/validate-download-behavior.js +21 -0
- package/dist/shared/validate-frames-per-lambda.d.ts +4 -1
- package/dist/shared/validate-frames-per-lambda.js +4 -3
- package/dist/shared/validate-lambda-codec.d.ts +4 -0
- package/dist/shared/validate-lambda-codec.js +30 -0
- 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 +3 -2
- package/dist/shared/validate-outname.js +10 -1
- package/dist/shared/validate-presign-expiration.d.ts +0 -2
- package/dist/shared/validate-presign-expiration.js +7 -7
- package/dist/shared/validate-privacy.d.ts +1 -1
- package/dist/shared/validate-privacy.js +2 -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 +55 -32
- package/remotionlambda-arm64.zip +0 -0
- package/remotionlambda-x64.zip +0 -0
- package/remotionlambda.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/format-bytes.d.ts +0 -6
- package/dist/cli/helpers/format-bytes.js +0 -103
- 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/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 -6
- 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 -15
- 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 -45
- package/dist/functions/chunk-optimization/simulate-frame-ranges.d.ts +0 -10
- 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/shared/chunk.d.ts +0 -1
- package/dist/shared/chunk.js +0 -11
- 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,9 +1,13 @@
|
|
|
1
|
-
import { ChromiumOptions } from '@remotion/renderer';
|
|
2
|
-
import {
|
|
3
|
-
import { ChunkRetry } from '../functions/helpers/get-retry-stats';
|
|
4
|
-
import { EnhancedErrorInfo } from '../functions/helpers/write-lambda-error';
|
|
5
|
-
import { AwsRegion } from '../pricing/aws-regions';
|
|
6
|
-
import {
|
|
1
|
+
import type { AudioCodec, ChromiumOptions, Codec, FrameRange, ImageFormat, LogLevel, PixelFormat, ProResProfile } from '@remotion/renderer';
|
|
2
|
+
import type { VideoConfig } from 'remotion';
|
|
3
|
+
import type { ChunkRetry } from '../functions/helpers/get-retry-stats';
|
|
4
|
+
import type { EnhancedErrorInfo } from '../functions/helpers/write-lambda-error';
|
|
5
|
+
import type { AwsRegion } from '../pricing/aws-regions';
|
|
6
|
+
import type { CustomCredentials, CustomCredentialsWithoutSensitiveData } from './aws-clients';
|
|
7
|
+
import type { DownloadBehavior } from './content-disposition-header';
|
|
8
|
+
import type { ExpensiveChunk } from './get-most-expensive-chunks';
|
|
9
|
+
import type { LambdaArchitecture } from './validate-architecture';
|
|
10
|
+
import type { LambdaCodec } from './validate-lambda-codec';
|
|
7
11
|
export declare const MIN_MEMORY = 512;
|
|
8
12
|
export declare const MAX_MEMORY = 10240;
|
|
9
13
|
export declare const DEFAULT_MEMORY_SIZE = 2048;
|
|
@@ -18,19 +22,21 @@ export declare const COMMAND_NOT_FOUND = "Command not found";
|
|
|
18
22
|
export declare const DEFAULT_REGION: AwsRegion;
|
|
19
23
|
export declare const DEFAULT_MAX_RETRIES = 1;
|
|
20
24
|
export declare const MAX_FUNCTIONS_PER_RENDER = 200;
|
|
21
|
-
export declare const DEFAULT_EPHEMERAL_STORAGE_IN_MB =
|
|
25
|
+
export declare const DEFAULT_EPHEMERAL_STORAGE_IN_MB = 2048;
|
|
22
26
|
export declare const MIN_EPHEMERAL_STORAGE_IN_MB = 512;
|
|
23
27
|
export declare const MAX_EPHEMERAL_STORAGE_IN_MB = 10240;
|
|
24
28
|
export declare const DEFAULT_OUTPUT_PRIVACY: Privacy;
|
|
25
29
|
export declare const DEFAULT_CLOUDWATCH_RETENTION_PERIOD = 14;
|
|
30
|
+
export declare const ENCODING_PROGRESS_STEP_SIZE = 100;
|
|
26
31
|
export declare const REMOTION_BUCKET_PREFIX = "remotionlambda-";
|
|
27
32
|
export declare const RENDER_FN_PREFIX = "remotion-render-";
|
|
28
33
|
export declare const LOG_GROUP_PREFIX = "/aws/lambda/";
|
|
29
34
|
export declare const rendersPrefix: (renderId: string) => string;
|
|
30
35
|
export declare const encodingProgressKey: (renderId: string) => string;
|
|
31
36
|
export declare const renderMetadataKey: (renderId: string) => string;
|
|
32
|
-
export declare const
|
|
33
|
-
export declare const
|
|
37
|
+
export declare const initalizedMetadataKey: (renderId: string) => string;
|
|
38
|
+
export declare const lambdaChunkInitializedPrefix: (renderId: string) => string;
|
|
39
|
+
export declare const lambdaChunkInitializedKey: ({ renderId, chunk, attempt, }: {
|
|
34
40
|
attempt: number;
|
|
35
41
|
renderId: string;
|
|
36
42
|
chunk: number;
|
|
@@ -58,17 +64,24 @@ export declare const getErrorFileName: ({ renderId, chunk, attempt, }: {
|
|
|
58
64
|
export declare type OutNameInput = string | {
|
|
59
65
|
bucketName: string;
|
|
60
66
|
key: string;
|
|
67
|
+
s3OutputProvider?: CustomCredentials;
|
|
68
|
+
};
|
|
69
|
+
export declare type OutNameInputWithoutCredentials = string | {
|
|
70
|
+
bucketName: string;
|
|
71
|
+
key: string;
|
|
72
|
+
s3OutputProvider?: CustomCredentialsWithoutSensitiveData;
|
|
61
73
|
};
|
|
62
74
|
export declare type OutNameOutput = {
|
|
63
75
|
renderBucketName: string;
|
|
64
76
|
key: string;
|
|
77
|
+
customCredentials: CustomCredentials | null;
|
|
65
78
|
};
|
|
66
|
-
export declare const optimizationProfile: (siteId: string, compositionId: string) => string;
|
|
67
79
|
export declare const getSitesKey: (siteId: string) => string;
|
|
68
80
|
export declare const outName: (renderId: string, extension: string) => string;
|
|
69
81
|
export declare const outStillName: (renderId: string, imageFormat: ImageFormat) => string;
|
|
70
82
|
export declare const customOutName: (renderId: string, bucketName: string, name: OutNameInput) => OutNameOutput;
|
|
71
83
|
export declare const postRenderDataKey: (renderId: string) => string;
|
|
84
|
+
export declare const inputPropsKey: (hash: string) => string;
|
|
72
85
|
export declare const RENDERER_PATH_TOKEN = "remotion-bucket";
|
|
73
86
|
export declare const CONCAT_FOLDER_TOKEN = "remotion-concat";
|
|
74
87
|
export declare const REMOTION_CONCATED_TOKEN = "remotion-concated-token";
|
|
@@ -79,19 +92,33 @@ export declare enum LambdaRoutines {
|
|
|
79
92
|
launch = "launch",
|
|
80
93
|
status = "status",
|
|
81
94
|
renderer = "renderer",
|
|
82
|
-
still = "still"
|
|
95
|
+
still = "still",
|
|
96
|
+
compositions = "compositions"
|
|
83
97
|
}
|
|
98
|
+
declare type WebhookOption = null | {
|
|
99
|
+
url: string;
|
|
100
|
+
secret: string | null;
|
|
101
|
+
};
|
|
102
|
+
export declare type SerializedInputProps = {
|
|
103
|
+
type: 'bucket-url';
|
|
104
|
+
hash: string;
|
|
105
|
+
} | {
|
|
106
|
+
type: 'payload';
|
|
107
|
+
payload: unknown;
|
|
108
|
+
};
|
|
84
109
|
export declare type LambdaPayloads = {
|
|
85
110
|
info: {
|
|
86
111
|
type: LambdaRoutines.info;
|
|
87
112
|
};
|
|
88
113
|
start: {
|
|
114
|
+
rendererFunctionName: string | null;
|
|
89
115
|
type: LambdaRoutines.start;
|
|
90
116
|
serveUrl: string;
|
|
91
117
|
composition: string;
|
|
92
118
|
framesPerLambda: number | null;
|
|
93
|
-
inputProps:
|
|
94
|
-
codec:
|
|
119
|
+
inputProps: SerializedInputProps;
|
|
120
|
+
codec: LambdaCodec;
|
|
121
|
+
audioCodec: AudioCodec | null;
|
|
95
122
|
imageFormat: ImageFormat;
|
|
96
123
|
crf: number | undefined;
|
|
97
124
|
envVariables: Record<string, string> | undefined;
|
|
@@ -106,17 +133,32 @@ export declare type LambdaPayloads = {
|
|
|
106
133
|
timeoutInMilliseconds: number;
|
|
107
134
|
chromiumOptions: ChromiumOptions;
|
|
108
135
|
scale: number;
|
|
136
|
+
everyNthFrame: number;
|
|
137
|
+
numberOfGifLoops: number | null;
|
|
138
|
+
concurrencyPerLambda: number;
|
|
139
|
+
downloadBehavior: DownloadBehavior;
|
|
140
|
+
muted: boolean;
|
|
141
|
+
version: string;
|
|
142
|
+
overwrite: boolean;
|
|
143
|
+
audioBitrate: string | null;
|
|
144
|
+
videoBitrate: string | null;
|
|
145
|
+
webhook: WebhookOption;
|
|
146
|
+
forceHeight: number | null;
|
|
147
|
+
forceWidth: number | null;
|
|
148
|
+
bucketName: string | null;
|
|
109
149
|
};
|
|
110
150
|
launch: {
|
|
151
|
+
rendererFunctionName: string | null;
|
|
111
152
|
type: LambdaRoutines.launch;
|
|
112
153
|
serveUrl: string;
|
|
113
154
|
composition: string;
|
|
114
155
|
framesPerLambda: number | null;
|
|
115
156
|
bucketName: string;
|
|
116
|
-
inputProps:
|
|
157
|
+
inputProps: SerializedInputProps;
|
|
117
158
|
renderId: string;
|
|
118
159
|
imageFormat: ImageFormat;
|
|
119
|
-
codec:
|
|
160
|
+
codec: LambdaCodec;
|
|
161
|
+
audioCodec: AudioCodec | null;
|
|
120
162
|
crf: number | undefined;
|
|
121
163
|
envVariables: Record<string, string> | undefined;
|
|
122
164
|
pixelFormat: PixelFormat | undefined;
|
|
@@ -130,13 +172,27 @@ export declare type LambdaPayloads = {
|
|
|
130
172
|
timeoutInMilliseconds: number;
|
|
131
173
|
chromiumOptions: ChromiumOptions;
|
|
132
174
|
scale: number;
|
|
175
|
+
everyNthFrame: number;
|
|
176
|
+
numberOfGifLoops: number | null;
|
|
177
|
+
concurrencyPerLambda: number;
|
|
178
|
+
downloadBehavior: DownloadBehavior;
|
|
179
|
+
muted: boolean;
|
|
180
|
+
overwrite: boolean;
|
|
181
|
+
audioBitrate: string | null;
|
|
182
|
+
videoBitrate: string | null;
|
|
183
|
+
webhook: WebhookOption;
|
|
184
|
+
forceHeight: number | null;
|
|
185
|
+
forceWidth: number | null;
|
|
133
186
|
};
|
|
134
187
|
status: {
|
|
135
188
|
type: LambdaRoutines.status;
|
|
136
189
|
bucketName: string;
|
|
137
190
|
renderId: string;
|
|
191
|
+
version: string;
|
|
192
|
+
s3OutputProvider?: CustomCredentials;
|
|
138
193
|
};
|
|
139
194
|
renderer: {
|
|
195
|
+
concurrencyPerLambda: number;
|
|
140
196
|
type: LambdaRoutines.renderer;
|
|
141
197
|
serveUrl: string;
|
|
142
198
|
frameRange: [number, number];
|
|
@@ -148,10 +204,10 @@ export declare type LambdaPayloads = {
|
|
|
148
204
|
width: number;
|
|
149
205
|
durationInFrames: number;
|
|
150
206
|
retriesLeft: number;
|
|
151
|
-
inputProps:
|
|
207
|
+
inputProps: SerializedInputProps;
|
|
152
208
|
renderId: string;
|
|
153
209
|
imageFormat: ImageFormat;
|
|
154
|
-
codec:
|
|
210
|
+
codec: LambdaCodec;
|
|
155
211
|
crf: number | undefined;
|
|
156
212
|
proResProfile: ProResProfile | undefined;
|
|
157
213
|
pixelFormat: PixelFormat | undefined;
|
|
@@ -163,12 +219,19 @@ export declare type LambdaPayloads = {
|
|
|
163
219
|
timeoutInMilliseconds: number;
|
|
164
220
|
chromiumOptions: ChromiumOptions;
|
|
165
221
|
scale: number;
|
|
222
|
+
everyNthFrame: number;
|
|
223
|
+
muted: boolean;
|
|
224
|
+
audioBitrate: string | null;
|
|
225
|
+
videoBitrate: string | null;
|
|
226
|
+
launchFunctionConfig: {
|
|
227
|
+
version: string;
|
|
228
|
+
};
|
|
166
229
|
};
|
|
167
230
|
still: {
|
|
168
231
|
type: LambdaRoutines.still;
|
|
169
232
|
serveUrl: string;
|
|
170
233
|
composition: string;
|
|
171
|
-
inputProps:
|
|
234
|
+
inputProps: SerializedInputProps;
|
|
172
235
|
imageFormat: ImageFormat;
|
|
173
236
|
envVariables: Record<string, string> | undefined;
|
|
174
237
|
attempt: number;
|
|
@@ -177,18 +240,31 @@ export declare type LambdaPayloads = {
|
|
|
177
240
|
frame: number;
|
|
178
241
|
privacy: Privacy;
|
|
179
242
|
logLevel: LogLevel;
|
|
180
|
-
outName:
|
|
243
|
+
outName: OutNameInput | null;
|
|
181
244
|
timeoutInMilliseconds: number;
|
|
182
245
|
chromiumOptions: ChromiumOptions;
|
|
183
246
|
scale: number;
|
|
247
|
+
downloadBehavior: DownloadBehavior | null;
|
|
248
|
+
version: string;
|
|
249
|
+
forceHeight: number | null;
|
|
250
|
+
forceWidth: number | null;
|
|
251
|
+
bucketName: string | null;
|
|
252
|
+
};
|
|
253
|
+
compositions: {
|
|
254
|
+
type: LambdaRoutines.compositions;
|
|
255
|
+
version: string;
|
|
256
|
+
chromiumOptions: ChromiumOptions;
|
|
257
|
+
logLevel: LogLevel;
|
|
258
|
+
inputProps: SerializedInputProps;
|
|
259
|
+
envVariables: Record<string, string> | undefined;
|
|
260
|
+
timeoutInMilliseconds: number;
|
|
261
|
+
serveUrl: string;
|
|
262
|
+
bucketName: string | null;
|
|
184
263
|
};
|
|
185
264
|
};
|
|
186
265
|
export declare type LambdaPayload = LambdaPayloads[LambdaRoutines];
|
|
187
266
|
export declare type EncodingProgress = {
|
|
188
267
|
framesEncoded: number;
|
|
189
|
-
totalFrames: number | null;
|
|
190
|
-
doneIn: number | null;
|
|
191
|
-
timeToInvoke: number | null;
|
|
192
268
|
};
|
|
193
269
|
export declare type RenderMetadata = {
|
|
194
270
|
siteId: string;
|
|
@@ -199,26 +275,28 @@ export declare type RenderMetadata = {
|
|
|
199
275
|
estimatedRenderLambdaInvokations: number;
|
|
200
276
|
compositionId: string;
|
|
201
277
|
codec: Codec | null;
|
|
202
|
-
|
|
278
|
+
audioCodec: AudioCodec | null;
|
|
203
279
|
type: 'still' | 'video';
|
|
204
280
|
imageFormat: ImageFormat;
|
|
205
|
-
inputProps:
|
|
281
|
+
inputProps: SerializedInputProps;
|
|
206
282
|
framesPerLambda: number;
|
|
207
283
|
memorySizeInMb: number;
|
|
208
|
-
lambdaVersion:
|
|
284
|
+
lambdaVersion: string;
|
|
209
285
|
region: AwsRegion;
|
|
210
286
|
renderId: string;
|
|
211
|
-
outName:
|
|
287
|
+
outName: OutNameInputWithoutCredentials | undefined;
|
|
288
|
+
privacy: Privacy;
|
|
289
|
+
frameRange: [number, number];
|
|
290
|
+
everyNthFrame: number;
|
|
291
|
+
};
|
|
292
|
+
export declare type AfterRenderCost = {
|
|
293
|
+
estimatedCost: number;
|
|
294
|
+
estimatedDisplayCost: string;
|
|
295
|
+
currency: string;
|
|
296
|
+
disclaimer: string;
|
|
212
297
|
};
|
|
213
|
-
export declare type LambdaVersions = '2099-05-20' | '2022-05-19' | '2022-05-16' | '2022-05-11' | '2022-05-07' | '2022-05-06' | '2022-05-03' | '2022-04-20' | '2022-04-19' | '2022-04-18' | '2022-04-09' | '2022-04-08' | '2022-04-05' | '2022-04-02' | '2022-03-29' | '2022-03-17' | '2022-03-02' | '2022-03-01' | '2022-02-27' | '2022-02-14' | '2022-02-12' | '2022-02-09' | '2022-02-08' | '2022-02-07' | '2022-02-06' | '2022-02-05' | '2022-02-04' | '2022-02-03' | '2022-01-23' | '2022-01-19' | '2022-01-11' | '2022-01-10' | '2022-01-09' | '2022-01-06' | '2022-01-05' | '2021-12-22' | '2021-12-17' | '2021-12-16' | '2021-12-15' | '2021-12-14' | '2021-12-13' | '2021-12-11' | '2021-12-10' | '2021-12-04' | '2021-11-29' | '2021-11-27' | '2021-11-24' | '2021-11-22' | '2021-11-19' | '2021-11-18' | '2021-11-15' | '2021-11-12' | '2021-11-10' | '2021-11-01' | '2021-10-29' | '2021-10-27' | '2021-10-21' | '2021-10-19' | '2021-10-07' | '2021-10-03' | '2021-10-01' | '2021-09-15' | '2021-09-06' | '2021-08-06' | '2021-07-14' | '2021-07-05' | '2021-07-02' | '2021-06-23' | 'n/a';
|
|
214
|
-
export declare const CURRENT_VERSION: LambdaVersions;
|
|
215
298
|
export declare type PostRenderData = {
|
|
216
|
-
cost:
|
|
217
|
-
estimatedCost: number;
|
|
218
|
-
estimatedDisplayCost: string;
|
|
219
|
-
currency: string;
|
|
220
|
-
disclaimer: string;
|
|
221
|
-
};
|
|
299
|
+
cost: AfterRenderCost;
|
|
222
300
|
outputFile: string;
|
|
223
301
|
outputSize: number;
|
|
224
302
|
renderSize: number;
|
|
@@ -231,8 +309,8 @@ export declare type PostRenderData = {
|
|
|
231
309
|
timeToEncode: number;
|
|
232
310
|
timeToCleanUp: number;
|
|
233
311
|
timeToRenderChunks: number;
|
|
234
|
-
timeToInvokeLambdas: number;
|
|
235
312
|
retriesInfo: ChunkRetry[];
|
|
313
|
+
mostExpensiveFrameRanges: ExpensiveChunk[] | undefined;
|
|
236
314
|
};
|
|
237
315
|
export declare type CostsInfo = {
|
|
238
316
|
accruedSoFar: number;
|
|
@@ -264,10 +342,14 @@ export declare type RenderProgress = {
|
|
|
264
342
|
lambdasInvoked: number;
|
|
265
343
|
cleanup: CleanupInfo | null;
|
|
266
344
|
timeToFinishChunks: number | null;
|
|
267
|
-
|
|
345
|
+
timeToEncode: number | null;
|
|
268
346
|
overallProgress: number;
|
|
269
347
|
retriesInfo: ChunkRetry[];
|
|
348
|
+
mostExpensiveFrameRanges: ExpensiveChunk[] | null;
|
|
349
|
+
framesRendered: number;
|
|
350
|
+
outputSizeInBytes: number | null;
|
|
270
351
|
};
|
|
271
|
-
export declare type Privacy = 'public' | 'private';
|
|
352
|
+
export declare type Privacy = 'public' | 'private' | 'no-acl';
|
|
272
353
|
export declare const LAMBDA_CONCURRENCY_LIMIT_QUOTA = "L-B99A9384";
|
|
273
354
|
export declare const LAMBDA_BURST_LIMIT_QUOTA = "L-548AE339";
|
|
355
|
+
export {};
|
package/dist/shared/constants.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.LAMBDA_BURST_LIMIT_QUOTA = exports.LAMBDA_CONCURRENCY_LIMIT_QUOTA = 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_ARCHITECTURE = 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;
|
|
@@ -15,11 +15,12 @@ exports.COMMAND_NOT_FOUND = 'Command not found';
|
|
|
15
15
|
exports.DEFAULT_REGION = 'us-east-1';
|
|
16
16
|
exports.DEFAULT_MAX_RETRIES = 1;
|
|
17
17
|
exports.MAX_FUNCTIONS_PER_RENDER = 200;
|
|
18
|
-
exports.DEFAULT_EPHEMERAL_STORAGE_IN_MB =
|
|
18
|
+
exports.DEFAULT_EPHEMERAL_STORAGE_IN_MB = 2048;
|
|
19
19
|
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/';
|
|
@@ -29,10 +30,12 @@ const encodingProgressKey = (renderId) => `${(0, exports.rendersPrefix)(renderId
|
|
|
29
30
|
exports.encodingProgressKey = encodingProgressKey;
|
|
30
31
|
const renderMetadataKey = (renderId) => `${(0, exports.rendersPrefix)(renderId)}/pre-render-metadata.json`;
|
|
31
32
|
exports.renderMetadataKey = renderMetadataKey;
|
|
32
|
-
const
|
|
33
|
-
exports.
|
|
34
|
-
const
|
|
35
|
-
exports.
|
|
33
|
+
const initalizedMetadataKey = (renderId) => `${(0, exports.rendersPrefix)(renderId)}/initialized.txt`;
|
|
34
|
+
exports.initalizedMetadataKey = initalizedMetadataKey;
|
|
35
|
+
const lambdaChunkInitializedPrefix = (renderId) => `${(0, exports.rendersPrefix)(renderId)}/lambda-initialized`;
|
|
36
|
+
exports.lambdaChunkInitializedPrefix = lambdaChunkInitializedPrefix;
|
|
37
|
+
const lambdaChunkInitializedKey = ({ renderId, chunk, attempt, }) => `${(0, exports.lambdaChunkInitializedPrefix)(renderId)}-chunk:${chunk}-attempt:${attempt}.txt`;
|
|
38
|
+
exports.lambdaChunkInitializedKey = lambdaChunkInitializedKey;
|
|
36
39
|
const lambdaTimingsPrefix = (renderId) => `${(0, exports.rendersPrefix)(renderId)}/lambda-timings/chunk:`;
|
|
37
40
|
exports.lambdaTimingsPrefix = lambdaTimingsPrefix;
|
|
38
41
|
const lambdaTimingsPrefixForChunk = (renderId, chunk) => (0, exports.lambdaTimingsPrefix)(renderId) + String(chunk).padStart(8, '0');
|
|
@@ -49,8 +52,6 @@ const getErrorKeyPrefix = (renderId) => `${(0, exports.rendersPrefix)(renderId)}
|
|
|
49
52
|
exports.getErrorKeyPrefix = getErrorKeyPrefix;
|
|
50
53
|
const getErrorFileName = ({ renderId, chunk, attempt, }) => (0, exports.getErrorKeyPrefix)(renderId) + ':chunk-' + chunk + ':attempt-' + attempt;
|
|
51
54
|
exports.getErrorFileName = getErrorFileName;
|
|
52
|
-
const optimizationProfile = (siteId, compositionId) => `optimization-profiles/${siteId}/${compositionId}/optimization-profile`;
|
|
53
|
-
exports.optimizationProfile = optimizationProfile;
|
|
54
55
|
const getSitesKey = (siteId) => `sites/${siteId}`;
|
|
55
56
|
exports.getSitesKey = getSitesKey;
|
|
56
57
|
const outName = (renderId, extension) => `${(0, exports.rendersPrefix)(renderId)}/out.${extension}`;
|
|
@@ -58,19 +59,29 @@ exports.outName = outName;
|
|
|
58
59
|
const outStillName = (renderId, imageFormat) => `${(0, exports.rendersPrefix)(renderId)}/out.${imageFormat}`;
|
|
59
60
|
exports.outStillName = outStillName;
|
|
60
61
|
const customOutName = (renderId, bucketName, name) => {
|
|
62
|
+
var _a;
|
|
61
63
|
if (typeof name === 'string') {
|
|
62
64
|
return {
|
|
63
65
|
renderBucketName: bucketName,
|
|
64
66
|
key: `${(0, exports.rendersPrefix)(renderId)}/${name}`,
|
|
67
|
+
customCredentials: null,
|
|
65
68
|
};
|
|
66
69
|
}
|
|
67
|
-
return {
|
|
70
|
+
return {
|
|
71
|
+
key: name.key,
|
|
72
|
+
renderBucketName: name.bucketName,
|
|
73
|
+
customCredentials: (_a = name.s3OutputProvider) !== null && _a !== void 0 ? _a : null,
|
|
74
|
+
};
|
|
68
75
|
};
|
|
69
76
|
exports.customOutName = customOutName;
|
|
70
77
|
const postRenderDataKey = (renderId) => {
|
|
71
78
|
return `${(0, exports.rendersPrefix)(renderId)}/post-render-metadata.json`;
|
|
72
79
|
};
|
|
73
80
|
exports.postRenderDataKey = postRenderDataKey;
|
|
81
|
+
const inputPropsKey = (hash) => {
|
|
82
|
+
return `input-props/${hash}.json`;
|
|
83
|
+
};
|
|
84
|
+
exports.inputPropsKey = inputPropsKey;
|
|
74
85
|
exports.RENDERER_PATH_TOKEN = 'remotion-bucket';
|
|
75
86
|
exports.CONCAT_FOLDER_TOKEN = 'remotion-concat';
|
|
76
87
|
exports.REMOTION_CONCATED_TOKEN = 'remotion-concated-token';
|
|
@@ -83,7 +94,7 @@ var LambdaRoutines;
|
|
|
83
94
|
LambdaRoutines["status"] = "status";
|
|
84
95
|
LambdaRoutines["renderer"] = "renderer";
|
|
85
96
|
LambdaRoutines["still"] = "still";
|
|
97
|
+
LambdaRoutines["compositions"] = "compositions";
|
|
86
98
|
})(LambdaRoutines = exports.LambdaRoutines || (exports.LambdaRoutines = {}));
|
|
87
|
-
exports.CURRENT_VERSION = '2099-05-20';
|
|
88
99
|
exports.LAMBDA_CONCURRENCY_LIMIT_QUOTA = 'L-B99A9384';
|
|
89
100
|
exports.LAMBDA_BURST_LIMIT_QUOTA = 'L-548AE339';
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// By setting the Content-Disposition header in an S3 object,
|
|
3
|
+
// you can control if the user downloads the item if you
|
|
4
|
+
// visit the link
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.getContentDispositionHeader = void 0;
|
|
7
|
+
const getContentDispositionHeader = (behavior) => {
|
|
8
|
+
if (behavior === null) {
|
|
9
|
+
return undefined;
|
|
10
|
+
}
|
|
11
|
+
if (behavior.type === 'play-in-browser') {
|
|
12
|
+
return undefined;
|
|
13
|
+
}
|
|
14
|
+
if (behavior.fileName === null) {
|
|
15
|
+
return `attachment`;
|
|
16
|
+
}
|
|
17
|
+
return `attachment; filename="${behavior.fileName}"`;
|
|
18
|
+
};
|
|
19
|
+
exports.getContentDispositionHeader = getContentDispositionHeader;
|
|
@@ -1,2 +1,6 @@
|
|
|
1
|
-
import { AwsRegion } from '../pricing/aws-regions';
|
|
2
|
-
export declare const convertToServeUrl: (urlOrId
|
|
1
|
+
import type { AwsRegion } from '../pricing/aws-regions';
|
|
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<object>;
|
|
@@ -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,2 @@
|
|
|
1
|
-
export declare const
|
|
1
|
+
export declare const FUNCTION_ZIP_ARM64: string;
|
|
2
|
+
export declare const FUNCTION_ZIP_X86_64: string;
|
|
@@ -3,6 +3,7 @@ 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.
|
|
6
|
+
exports.FUNCTION_ZIP_X86_64 = exports.FUNCTION_ZIP_ARM64 = void 0;
|
|
7
7
|
const path_1 = __importDefault(require("path"));
|
|
8
|
-
exports.
|
|
8
|
+
exports.FUNCTION_ZIP_ARM64 = path_1.default.join(path_1.default.resolve(__dirname, '..', '..'), `remotionlambda-arm64.zip`);
|
|
9
|
+
exports.FUNCTION_ZIP_X86_64 = path_1.default.join(path_1.default.resolve(__dirname, '..', '..'), `remotionlambda-x64.zip`);
|
|
@@ -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;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { AwsRegion } from '../client';
|
|
2
|
+
import type { LambdaRoutines } from './constants';
|
|
3
|
+
export declare const getCloudwatchStreamUrl: ({ region, functionName, method, renderId, rendererFunctionName, }: {
|
|
4
|
+
region: AwsRegion;
|
|
5
|
+
functionName: string;
|
|
6
|
+
rendererFunctionName: string | null;
|
|
7
|
+
method: LambdaRoutines;
|
|
8
|
+
renderId: string;
|
|
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 fs_1 = __importDefault(require("fs"));
|
|
8
|
+
const crypto_1 = __importDefault(require("crypto"));
|
|
9
|
+
const chunk = 1024 * 1024 * 5; // 5MB
|
|
10
|
+
const md5 = (data) => crypto_1.default.createHash('md5').update(data).digest('hex');
|
|
11
|
+
const getEtagOfFile = async (filePath) => {
|
|
12
|
+
const stream = await 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;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import { AwsRegion } from '../pricing/aws-regions';
|
|
2
|
-
import { LambdaVersions } from './constants';
|
|
1
|
+
import type { AwsRegion } from '../pricing/aws-regions';
|
|
3
2
|
export declare const getFunctionVersion: ({ functionName, region, }: {
|
|
4
3
|
functionName: string;
|
|
5
4
|
region: AwsRegion;
|
|
6
|
-
}) => Promise<
|
|
5
|
+
}) => Promise<string>;
|
|
File without changes
|