@remotion/lambda 4.0.0-offthread.9 → 4.0.0-playerimpr.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/admin/bundle-lambda.d.ts +0 -0
- package/dist/admin/bundle-lambda.js +1 -0
- package/dist/admin/make-layer-public.d.ts +0 -0
- package/dist/admin/make-layer-public.js +8 -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 +2 -2
- package/dist/api/create-function.js +0 -0
- package/dist/api/delete-function.d.ts +1 -1
- package/dist/api/delete-function.js +0 -0
- package/dist/api/delete-render.d.ts +19 -0
- package/dist/api/delete-render.js +66 -0
- package/dist/api/delete-site.d.ts +1 -1
- package/dist/api/delete-site.js +0 -5
- package/dist/api/deploy-function.d.ts +2 -2
- package/dist/api/deploy-function.js +4 -2
- package/dist/api/deploy-site.d.ts +5 -3
- package/dist/api/deploy-site.js +4 -3
- package/dist/api/download-media.d.ts +15 -2
- package/dist/api/download-media.js +15 -3
- package/dist/api/enable-s3-website.d.ts +1 -1
- package/dist/api/enable-s3-website.js +1 -1
- package/dist/api/estimate-price.d.ts +2 -2
- package/dist/api/estimate-price.js +0 -0
- package/dist/api/get-aws-client.d.ts +5 -3
- package/dist/api/get-aws-client.js +7 -2
- package/dist/api/get-buckets.d.ts +1 -1
- package/dist/api/get-buckets.js +2 -2
- package/dist/api/get-function-info.d.ts +2 -3
- package/dist/api/get-function-info.js +0 -0
- package/dist/api/get-functions.d.ts +2 -2
- package/dist/api/get-functions.js +2 -1
- package/dist/api/get-or-create-bucket.d.ts +1 -1
- package/dist/api/get-or-create-bucket.js +0 -0
- package/dist/api/get-regions.d.ts +1 -1
- package/dist/api/get-regions.js +0 -0
- package/dist/api/get-render-progress.d.ts +6 -3
- package/dist/api/get-render-progress.js +5 -1
- package/dist/api/get-sites.d.ts +2 -2
- package/dist/api/get-sites.js +0 -0
- 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 -0
- package/dist/api/iam-validation/simulate.d.ts +2 -2
- package/dist/api/iam-validation/simulate.js +0 -0
- 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 +0 -0
- package/dist/api/iam-validation/user-permissions.js +0 -0
- package/dist/api/mock-functions.d.ts +6 -7
- package/dist/api/mock-functions.js +0 -0
- package/dist/api/presign-url.d.ts +3 -2
- package/dist/api/presign-url.js +6 -1
- package/dist/api/render-media-on-lambda.d.ts +18 -11
- package/dist/api/render-media-on-lambda.js +65 -36
- package/dist/api/render-still-on-lambda.d.ts +9 -7
- package/dist/api/render-still-on-lambda.js +49 -31
- package/dist/api/upload-dir.d.ts +2 -2
- package/dist/api/upload-dir.js +6 -2
- package/dist/cli/args.d.ts +4 -3
- package/dist/cli/args.js +0 -0
- package/dist/cli/commands/functions/deploy.d.ts +0 -0
- package/dist/cli/commands/functions/deploy.js +2 -1
- package/dist/cli/commands/functions/index.d.ts +0 -0
- package/dist/cli/commands/functions/index.js +0 -0
- package/dist/cli/commands/functions/ls.d.ts +0 -0
- package/dist/cli/commands/functions/ls.js +0 -0
- 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 +0 -0
- package/dist/cli/commands/quotas/index.d.ts +0 -0
- package/dist/cli/commands/quotas/index.js +0 -0
- 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 +0 -0
- package/dist/cli/commands/render/progress.d.ts +4 -4
- package/dist/cli/commands/render/progress.js +11 -3
- package/dist/cli/commands/render/render.d.ts +0 -0
- package/dist/cli/commands/render/render.js +16 -11
- package/dist/cli/commands/sites/create.d.ts +0 -0
- package/dist/cli/commands/sites/create.js +2 -3
- package/dist/cli/commands/sites/index.d.ts +0 -0
- package/dist/cli/commands/sites/index.js +0 -0
- package/dist/cli/commands/sites/ls.d.ts +0 -0
- package/dist/cli/commands/sites/ls.js +1 -2
- package/dist/cli/commands/sites/rm.d.ts +0 -0
- package/dist/cli/commands/sites/rm.js +2 -3
- package/dist/cli/commands/sites/rmall.d.ts +0 -0
- package/dist/cli/commands/sites/rmall.js +2 -3
- package/dist/cli/commands/still.d.ts +0 -0
- package/dist/cli/commands/still.js +2 -9
- 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 +3 -2
- package/dist/cli/helpers/progress-bar.d.ts +0 -0
- package/dist/cli/helpers/progress-bar.js +1 -2
- 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 +0 -0
- package/dist/cli/index.js +1 -1
- 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 +0 -0
- package/dist/client.js +0 -0
- package/dist/defaults.d.ts +0 -0
- package/dist/defaults.js +0 -0
- package/dist/functions/chunk-optimization/can-use-optimization.d.ts +1 -1
- package/dist/functions/chunk-optimization/can-use-optimization.js +2 -2
- package/dist/functions/chunk-optimization/collect-data.d.ts +1 -1
- package/dist/functions/chunk-optimization/collect-data.js +0 -0
- package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.d.ts +1 -1
- package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.js +0 -0
- package/dist/functions/chunk-optimization/get-profile-duration.d.ts +1 -1
- package/dist/functions/chunk-optimization/get-profile-duration.js +0 -0
- package/dist/functions/chunk-optimization/is-valid-profile.d.ts +1 -1
- package/dist/functions/chunk-optimization/is-valid-profile.js +2 -2
- package/dist/functions/chunk-optimization/optimize-invocation-order.d.ts +1 -1
- package/dist/functions/chunk-optimization/optimize-invocation-order.js +0 -0
- package/dist/functions/chunk-optimization/optimize-profile.d.ts +1 -1
- package/dist/functions/chunk-optimization/optimize-profile.js +0 -0
- package/dist/functions/chunk-optimization/plan-frame-ranges.d.ts +3 -3
- package/dist/functions/chunk-optimization/plan-frame-ranges.js +7 -6
- package/dist/functions/chunk-optimization/s3-optimization-file.d.ts +2 -2
- package/dist/functions/chunk-optimization/s3-optimization-file.js +2 -0
- package/dist/functions/chunk-optimization/simulate-frame-ranges.d.ts +1 -1
- package/dist/functions/chunk-optimization/simulate-frame-ranges.js +0 -0
- package/dist/functions/chunk-optimization/sort-by-duration.d.ts +1 -1
- package/dist/functions/chunk-optimization/sort-by-duration.js +0 -0
- package/dist/functions/chunk-optimization/types.d.ts +2 -2
- package/dist/functions/chunk-optimization/types.js +0 -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 +0 -0
- package/dist/functions/helpers/concat-videos.d.ts +5 -4
- package/dist/functions/helpers/concat-videos.js +2 -1
- package/dist/functions/helpers/create-post-render-data.d.ts +6 -6
- package/dist/functions/helpers/create-post-render-data.js +12 -7
- 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 +26 -5
- package/dist/functions/helpers/find-output-file-in-bucket.d.ts +5 -3
- package/dist/functions/helpers/find-output-file-in-bucket.js +14 -6
- 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 +0 -0
- package/dist/functions/helpers/get-chromium-executable-path.d.ts +0 -0
- package/dist/functions/helpers/get-chromium-executable-path.js +0 -0
- 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 +0 -0
- 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 +2 -2
- package/dist/functions/helpers/get-encoding-metadata.js +0 -0
- 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 +1 -1
- package/dist/functions/helpers/get-final-encoding-status.d.ts +2 -2
- package/dist/functions/helpers/get-final-encoding-status.js +0 -0
- 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 +8 -3
- package/dist/functions/helpers/get-lambdas-invoked-stats.js +8 -8
- 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 +0 -0
- package/dist/functions/helpers/get-overall-progress.js +0 -0
- 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 +31 -16
- 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-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 +16 -6
- package/dist/functions/helpers/io.js +20 -7
- 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/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 +15 -3
- 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 +6 -4
- package/dist/functions/helpers/validate-composition.js +3 -1
- package/dist/functions/helpers/write-lambda-error.d.ts +1 -1
- 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 +16 -9
- package/dist/functions/info.d.ts +2 -2
- package/dist/functions/info.js +2 -1
- package/dist/functions/launch.d.ts +1 -1
- package/dist/functions/launch.js +84 -31
- 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 +108 -74
- package/dist/functions/start.d.ts +6 -2
- package/dist/functions/start.js +26 -3
- package/dist/functions/still.d.ts +1 -1
- package/dist/functions/still.js +25 -8
- package/dist/index.d.ts +37 -20
- package/dist/index.js +3 -1
- package/dist/internals.d.ts +0 -0
- package/dist/internals.js +0 -0
- package/dist/pricing/aws-regions.d.ts +0 -0
- package/dist/pricing/aws-regions.js +0 -0
- package/dist/pricing/price-per-1-s.d.ts +1 -1
- package/dist/pricing/price-per-1-s.js +0 -0
- 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 +14 -3
- package/dist/shared/aws-clients.js +56 -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 +2 -2
- package/dist/shared/constants.d.ts +49 -18
- package/dist/shared/constants.js +15 -8
- 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 +1 -1
- package/dist/shared/convert-to-serve-url.js +0 -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 +0 -0
- package/dist/shared/function-zip-path.js +0 -0
- package/dist/shared/get-account-id.d.ts +1 -1
- package/dist/shared/get-account-id.js +0 -0
- package/dist/{cli/helpers → shared}/get-cloudwatch-stream-url.d.ts +2 -2
- package/dist/{cli/helpers → shared}/get-cloudwatch-stream-url.js +0 -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 +25 -0
- package/dist/shared/hosted-layers.d.ts +2 -2
- package/dist/shared/hosted-layers.js +80 -80
- 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 +0 -0
- package/dist/shared/make-s3-key.js +0 -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-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 +0 -0
- package/dist/shared/random-hash.js +0 -0
- package/dist/shared/return-values.d.ts +7 -7
- package/dist/shared/return-values.js +0 -1
- package/dist/shared/sleep.d.ts +0 -0
- package/dist/shared/sleep.js +0 -0
- package/dist/shared/stream-to-string.d.ts +1 -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 +0 -0
- package/dist/shared/validate-bucketname.js +0 -0
- 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 +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 +2 -2
- package/dist/shared/validate-outname.js +0 -0
- 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 +9 -11
- package/remotionlambda.zip +0 -0
- package/dist/admin/bundle-lambda.d.ts.map +0 -1
- package/dist/admin/bundle-lambda.js.map +0 -1
- package/dist/admin/make-layer-public.d.ts.map +0 -1
- package/dist/admin/make-layer-public.js.map +0 -1
- package/dist/api/bucket-exists.d.ts.map +0 -1
- package/dist/api/bucket-exists.js.map +0 -1
- package/dist/api/clean-items.d.ts.map +0 -1
- package/dist/api/clean-items.js.map +0 -1
- package/dist/api/create-bucket.d.ts.map +0 -1
- package/dist/api/create-bucket.js.map +0 -1
- package/dist/api/create-function.d.ts.map +0 -1
- package/dist/api/create-function.js.map +0 -1
- package/dist/api/delete-function.d.ts.map +0 -1
- package/dist/api/delete-function.js.map +0 -1
- package/dist/api/delete-site.d.ts.map +0 -1
- package/dist/api/delete-site.js.map +0 -1
- package/dist/api/deploy-function.d.ts.map +0 -1
- package/dist/api/deploy-function.js.map +0 -1
- package/dist/api/deploy-site.d.ts.map +0 -1
- package/dist/api/deploy-site.js.map +0 -1
- package/dist/api/download-media.d.ts.map +0 -1
- package/dist/api/download-media.js.map +0 -1
- package/dist/api/enable-s3-website.d.ts.map +0 -1
- package/dist/api/enable-s3-website.js.map +0 -1
- package/dist/api/estimate-price.d.ts.map +0 -1
- package/dist/api/estimate-price.js.map +0 -1
- package/dist/api/get-aws-client.d.ts.map +0 -1
- package/dist/api/get-aws-client.js.map +0 -1
- package/dist/api/get-buckets.d.ts.map +0 -1
- package/dist/api/get-buckets.js.map +0 -1
- package/dist/api/get-function-info.d.ts.map +0 -1
- package/dist/api/get-function-info.js.map +0 -1
- package/dist/api/get-functions.d.ts.map +0 -1
- package/dist/api/get-functions.js.map +0 -1
- package/dist/api/get-or-create-bucket.d.ts.map +0 -1
- package/dist/api/get-or-create-bucket.js.map +0 -1
- package/dist/api/get-regions.d.ts.map +0 -1
- package/dist/api/get-regions.js.map +0 -1
- package/dist/api/get-render-progress.d.ts.map +0 -1
- package/dist/api/get-render-progress.js.map +0 -1
- package/dist/api/get-sites.d.ts.map +0 -1
- package/dist/api/get-sites.js.map +0 -1
- package/dist/api/iam-validation/role-permissions.d.ts.map +0 -1
- package/dist/api/iam-validation/role-permissions.js.map +0 -1
- package/dist/api/iam-validation/simulate-rule.d.ts.map +0 -1
- package/dist/api/iam-validation/simulate-rule.js.map +0 -1
- package/dist/api/iam-validation/simulate.d.ts.map +0 -1
- package/dist/api/iam-validation/simulate.js.map +0 -1
- package/dist/api/iam-validation/suggested-policy.d.ts.map +0 -1
- package/dist/api/iam-validation/suggested-policy.js.map +0 -1
- package/dist/api/iam-validation/user-permissions.d.ts.map +0 -1
- package/dist/api/iam-validation/user-permissions.js.map +0 -1
- package/dist/api/mock-functions.d.ts.map +0 -1
- package/dist/api/mock-functions.js.map +0 -1
- package/dist/api/presign-url.d.ts.map +0 -1
- package/dist/api/presign-url.js.map +0 -1
- package/dist/api/render-media-on-lambda.d.ts.map +0 -1
- package/dist/api/render-media-on-lambda.js.map +0 -1
- package/dist/api/render-still-on-lambda.d.ts.map +0 -1
- package/dist/api/render-still-on-lambda.js.map +0 -1
- package/dist/api/upload-dir.d.ts.map +0 -1
- package/dist/api/upload-dir.js.map +0 -1
- package/dist/cli/args.d.ts.map +0 -1
- package/dist/cli/args.js.map +0 -1
- package/dist/cli/commands/functions/deploy.d.ts.map +0 -1
- package/dist/cli/commands/functions/deploy.js.map +0 -1
- package/dist/cli/commands/functions/index.d.ts.map +0 -1
- package/dist/cli/commands/functions/index.js.map +0 -1
- package/dist/cli/commands/functions/ls.d.ts.map +0 -1
- package/dist/cli/commands/functions/ls.js.map +0 -1
- package/dist/cli/commands/functions/rm.d.ts.map +0 -1
- package/dist/cli/commands/functions/rm.js.map +0 -1
- package/dist/cli/commands/functions/rmall.d.ts.map +0 -1
- package/dist/cli/commands/functions/rmall.js.map +0 -1
- package/dist/cli/commands/policies/policies.d.ts.map +0 -1
- package/dist/cli/commands/policies/policies.js.map +0 -1
- package/dist/cli/commands/policies/role.d.ts.map +0 -1
- package/dist/cli/commands/policies/role.js.map +0 -1
- package/dist/cli/commands/policies/user.d.ts.map +0 -1
- package/dist/cli/commands/policies/user.js.map +0 -1
- package/dist/cli/commands/policies/validate.d.ts.map +0 -1
- package/dist/cli/commands/policies/validate.js.map +0 -1
- package/dist/cli/commands/quotas/increase.d.ts.map +0 -1
- package/dist/cli/commands/quotas/increase.js.map +0 -1
- package/dist/cli/commands/quotas/index.d.ts.map +0 -1
- package/dist/cli/commands/quotas/index.js.map +0 -1
- package/dist/cli/commands/quotas/list.d.ts.map +0 -1
- package/dist/cli/commands/quotas/list.js.map +0 -1
- package/dist/cli/commands/regions.d.ts.map +0 -1
- package/dist/cli/commands/regions.js.map +0 -1
- package/dist/cli/commands/render/progress.d.ts.map +0 -1
- package/dist/cli/commands/render/progress.js.map +0 -1
- package/dist/cli/commands/render/render.d.ts.map +0 -1
- package/dist/cli/commands/render/render.js.map +0 -1
- package/dist/cli/commands/sites/create.d.ts.map +0 -1
- package/dist/cli/commands/sites/create.js.map +0 -1
- package/dist/cli/commands/sites/index.d.ts.map +0 -1
- package/dist/cli/commands/sites/index.js.map +0 -1
- package/dist/cli/commands/sites/ls.d.ts.map +0 -1
- package/dist/cli/commands/sites/ls.js.map +0 -1
- package/dist/cli/commands/sites/rm.d.ts.map +0 -1
- package/dist/cli/commands/sites/rm.js.map +0 -1
- package/dist/cli/commands/sites/rmall.d.ts.map +0 -1
- package/dist/cli/commands/sites/rmall.js.map +0 -1
- package/dist/cli/commands/still.d.ts.map +0 -1
- package/dist/cli/commands/still.js.map +0 -1
- package/dist/cli/get-aws-region.d.ts.map +0 -1
- package/dist/cli/get-aws-region.js.map +0 -1
- package/dist/cli/help.d.ts.map +0 -1
- package/dist/cli/help.js.map +0 -1
- package/dist/cli/helpers/confirm.d.ts.map +0 -1
- package/dist/cli/helpers/confirm.js.map +0 -1
- package/dist/cli/helpers/date-string.d.ts.map +0 -1
- package/dist/cli/helpers/date-string.js.map +0 -1
- package/dist/cli/helpers/find-function-name.d.ts.map +0 -1
- package/dist/cli/helpers/find-function-name.js.map +0 -1
- package/dist/cli/helpers/format-bytes.d.ts +0 -6
- package/dist/cli/helpers/format-bytes.d.ts.map +0 -1
- package/dist/cli/helpers/format-bytes.js +0 -103
- package/dist/cli/helpers/format-bytes.js.map +0 -1
- package/dist/cli/helpers/get-cloudwatch-stream-url.d.ts.map +0 -1
- package/dist/cli/helpers/get-cloudwatch-stream-url.js.map +0 -1
- package/dist/cli/helpers/progress-bar.d.ts.map +0 -1
- package/dist/cli/helpers/progress-bar.js.map +0 -1
- package/dist/cli/helpers/quit.d.ts.map +0 -1
- package/dist/cli/helpers/quit.js.map +0 -1
- package/dist/cli/helpers/yes-or-no.d.ts.map +0 -1
- package/dist/cli/helpers/yes-or-no.js.map +0 -1
- package/dist/cli/index.d.ts.map +0 -1
- package/dist/cli/index.js.map +0 -1
- package/dist/cli/is-cli.d.ts.map +0 -1
- package/dist/cli/is-cli.js.map +0 -1
- package/dist/cli/log.d.ts.map +0 -1
- package/dist/cli/log.js.map +0 -1
- package/dist/client.d.ts.map +0 -1
- package/dist/client.js.map +0 -1
- package/dist/defaults.d.ts.map +0 -1
- package/dist/defaults.js.map +0 -1
- package/dist/functions/chunk-optimization/can-use-optimization.d.ts.map +0 -1
- package/dist/functions/chunk-optimization/can-use-optimization.js.map +0 -1
- package/dist/functions/chunk-optimization/collect-data.d.ts.map +0 -1
- package/dist/functions/chunk-optimization/collect-data.js.map +0 -1
- package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.d.ts.map +0 -1
- package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.js.map +0 -1
- package/dist/functions/chunk-optimization/get-profile-duration.d.ts.map +0 -1
- package/dist/functions/chunk-optimization/get-profile-duration.js.map +0 -1
- package/dist/functions/chunk-optimization/is-valid-profile.d.ts.map +0 -1
- package/dist/functions/chunk-optimization/is-valid-profile.js.map +0 -1
- package/dist/functions/chunk-optimization/optimize-invocation-order.d.ts.map +0 -1
- package/dist/functions/chunk-optimization/optimize-invocation-order.js.map +0 -1
- package/dist/functions/chunk-optimization/optimize-profile.d.ts.map +0 -1
- package/dist/functions/chunk-optimization/optimize-profile.js.map +0 -1
- package/dist/functions/chunk-optimization/plan-frame-ranges.d.ts.map +0 -1
- package/dist/functions/chunk-optimization/plan-frame-ranges.js.map +0 -1
- package/dist/functions/chunk-optimization/s3-optimization-file.d.ts.map +0 -1
- package/dist/functions/chunk-optimization/s3-optimization-file.js.map +0 -1
- package/dist/functions/chunk-optimization/simulate-frame-ranges.d.ts.map +0 -1
- package/dist/functions/chunk-optimization/simulate-frame-ranges.js.map +0 -1
- package/dist/functions/chunk-optimization/sort-by-duration.d.ts.map +0 -1
- package/dist/functions/chunk-optimization/sort-by-duration.js.map +0 -1
- package/dist/functions/chunk-optimization/types.d.ts.map +0 -1
- package/dist/functions/chunk-optimization/types.js.map +0 -1
- package/dist/functions/helpers/best-frames-per-lambda-param.d.ts.map +0 -1
- package/dist/functions/helpers/best-frames-per-lambda-param.js.map +0 -1
- package/dist/functions/helpers/calculate-chunk-times.d.ts.map +0 -1
- package/dist/functions/helpers/calculate-chunk-times.js.map +0 -1
- package/dist/functions/helpers/calculate-price-from-bucket.d.ts.map +0 -1
- package/dist/functions/helpers/calculate-price-from-bucket.js.map +0 -1
- package/dist/functions/helpers/clean-tmpdir.d.ts.map +0 -1
- package/dist/functions/helpers/clean-tmpdir.js.map +0 -1
- package/dist/functions/helpers/concat-videos.d.ts.map +0 -1
- package/dist/functions/helpers/concat-videos.js.map +0 -1
- package/dist/functions/helpers/create-post-render-data.d.ts.map +0 -1
- package/dist/functions/helpers/create-post-render-data.js.map +0 -1
- package/dist/functions/helpers/delete-chunks.d.ts.map +0 -1
- package/dist/functions/helpers/delete-chunks.js.map +0 -1
- package/dist/functions/helpers/expected-out-name.d.ts.map +0 -1
- package/dist/functions/helpers/expected-out-name.js.map +0 -1
- package/dist/functions/helpers/find-output-file-in-bucket.d.ts.map +0 -1
- package/dist/functions/helpers/find-output-file-in-bucket.js.map +0 -1
- package/dist/functions/helpers/format-costs-info.d.ts.map +0 -1
- package/dist/functions/helpers/format-costs-info.js.map +0 -1
- package/dist/functions/helpers/get-browser-instance.d.ts.map +0 -1
- package/dist/functions/helpers/get-browser-instance.js.map +0 -1
- package/dist/functions/helpers/get-chromium-executable-path.d.ts.map +0 -1
- package/dist/functions/helpers/get-chromium-executable-path.js.map +0 -1
- package/dist/functions/helpers/get-cleanup-progress.d.ts.map +0 -1
- package/dist/functions/helpers/get-cleanup-progress.js.map +0 -1
- package/dist/functions/helpers/get-current-architecture.d.ts.map +0 -1
- package/dist/functions/helpers/get-current-architecture.js.map +0 -1
- package/dist/functions/helpers/get-current-region.d.ts.map +0 -1
- package/dist/functions/helpers/get-current-region.js.map +0 -1
- package/dist/functions/helpers/get-encoding-metadata.d.ts.map +0 -1
- package/dist/functions/helpers/get-encoding-metadata.js.map +0 -1
- package/dist/functions/helpers/get-files-in-folder.d.ts.map +0 -1
- package/dist/functions/helpers/get-files-in-folder.js.map +0 -1
- package/dist/functions/helpers/get-files-to-delete.d.ts.map +0 -1
- package/dist/functions/helpers/get-files-to-delete.js.map +0 -1
- package/dist/functions/helpers/get-final-encoding-status.d.ts.map +0 -1
- package/dist/functions/helpers/get-final-encoding-status.js.map +0 -1
- package/dist/functions/helpers/get-folder-size.d.ts.map +0 -1
- package/dist/functions/helpers/get-folder-size.js.map +0 -1
- package/dist/functions/helpers/get-lambdas-invoked-stats.d.ts.map +0 -1
- package/dist/functions/helpers/get-lambdas-invoked-stats.js.map +0 -1
- package/dist/functions/helpers/get-output-url-from-metadata.d.ts.map +0 -1
- package/dist/functions/helpers/get-output-url-from-metadata.js.map +0 -1
- package/dist/functions/helpers/get-overall-progress.d.ts.map +0 -1
- package/dist/functions/helpers/get-overall-progress.js.map +0 -1
- package/dist/functions/helpers/get-post-render-data.d.ts.map +0 -1
- package/dist/functions/helpers/get-post-render-data.js.map +0 -1
- package/dist/functions/helpers/get-progress.d.ts.map +0 -1
- package/dist/functions/helpers/get-progress.js.map +0 -1
- package/dist/functions/helpers/get-render-metadata.d.ts.map +0 -1
- package/dist/functions/helpers/get-render-metadata.js.map +0 -1
- package/dist/functions/helpers/get-retry-stats.d.ts.map +0 -1
- package/dist/functions/helpers/get-retry-stats.js.map +0 -1
- package/dist/functions/helpers/get-time-to-finish.d.ts.map +0 -1
- package/dist/functions/helpers/get-time-to-finish.js.map +0 -1
- package/dist/functions/helpers/inspect-errors.d.ts.map +0 -1
- package/dist/functions/helpers/inspect-errors.js.map +0 -1
- package/dist/functions/helpers/io.d.ts.map +0 -1
- package/dist/functions/helpers/io.js.map +0 -1
- package/dist/functions/helpers/is-enosp-err.d.ts.map +0 -1
- package/dist/functions/helpers/is-enosp-err.js.map +0 -1
- package/dist/functions/helpers/is-warm.d.ts.map +0 -1
- package/dist/functions/helpers/is-warm.js.map +0 -1
- package/dist/functions/helpers/min-max.d.ts.map +0 -1
- package/dist/functions/helpers/min-max.js.map +0 -1
- package/dist/functions/helpers/print-cloudwatch-helper.d.ts.map +0 -1
- package/dist/functions/helpers/print-cloudwatch-helper.js.map +0 -1
- package/dist/functions/helpers/print-concurrency-curve.d.ts.map +0 -1
- package/dist/functions/helpers/print-concurrency-curve.js.map +0 -1
- package/dist/functions/helpers/read-with-progress.d.ts.map +0 -1
- package/dist/functions/helpers/read-with-progress.js.map +0 -1
- package/dist/functions/helpers/timer.d.ts.map +0 -1
- package/dist/functions/helpers/timer.js.map +0 -1
- package/dist/functions/helpers/validate-composition.d.ts.map +0 -1
- package/dist/functions/helpers/validate-composition.js.map +0 -1
- package/dist/functions/helpers/write-lambda-error.d.ts.map +0 -1
- package/dist/functions/helpers/write-lambda-error.js.map +0 -1
- package/dist/functions/helpers/write-post-render-data.d.ts.map +0 -1
- package/dist/functions/helpers/write-post-render-data.js.map +0 -1
- package/dist/functions/index.d.ts.map +0 -1
- package/dist/functions/index.js.map +0 -1
- package/dist/functions/info.d.ts.map +0 -1
- package/dist/functions/info.js.map +0 -1
- package/dist/functions/launch.d.ts.map +0 -1
- package/dist/functions/launch.js.map +0 -1
- package/dist/functions/progress.d.ts.map +0 -1
- package/dist/functions/progress.js.map +0 -1
- package/dist/functions/renderer.d.ts.map +0 -1
- package/dist/functions/renderer.js.map +0 -1
- package/dist/functions/start.d.ts.map +0 -1
- package/dist/functions/start.js.map +0 -1
- package/dist/functions/still.d.ts.map +0 -1
- package/dist/functions/still.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/internals.d.ts.map +0 -1
- package/dist/internals.js.map +0 -1
- package/dist/pricing/aws-regions.d.ts.map +0 -1
- package/dist/pricing/aws-regions.js.map +0 -1
- package/dist/pricing/price-per-1-s.d.ts.map +0 -1
- package/dist/pricing/price-per-1-s.js.map +0 -1
- package/dist/regions.d.ts.map +0 -1
- package/dist/regions.js.map +0 -1
- package/dist/shared/await.d.ts.map +0 -1
- package/dist/shared/await.js.map +0 -1
- package/dist/shared/aws-clients.d.ts.map +0 -1
- package/dist/shared/aws-clients.js.map +0 -1
- package/dist/shared/bundle-site.d.ts.map +0 -1
- package/dist/shared/bundle-site.js.map +0 -1
- package/dist/shared/call-lambda.d.ts.map +0 -1
- package/dist/shared/call-lambda.js.map +0 -1
- package/dist/shared/check-credentials.d.ts.map +0 -1
- package/dist/shared/check-credentials.js.map +0 -1
- package/dist/shared/chunk.d.ts +0 -1
- package/dist/shared/chunk.d.ts.map +0 -1
- package/dist/shared/chunk.js +0 -11
- package/dist/shared/chunk.js.map +0 -1
- package/dist/shared/constants.d.ts.map +0 -1
- package/dist/shared/constants.js.map +0 -1
- package/dist/shared/convert-to-serve-url.d.ts.map +0 -1
- package/dist/shared/convert-to-serve-url.js.map +0 -1
- package/dist/shared/docs-url.d.ts.map +0 -1
- package/dist/shared/docs-url.js.map +0 -1
- package/dist/shared/function-zip-path.d.ts.map +0 -1
- package/dist/shared/function-zip-path.js.map +0 -1
- package/dist/shared/get-account-id.d.ts.map +0 -1
- package/dist/shared/get-account-id.js.map +0 -1
- package/dist/shared/get-function-version.d.ts.map +0 -1
- package/dist/shared/get-function-version.js.map +0 -1
- package/dist/shared/hosted-layers.d.ts.map +0 -1
- package/dist/shared/hosted-layers.js.map +0 -1
- package/dist/shared/is-in-lambda.d.ts.map +0 -1
- package/dist/shared/is-in-lambda.js.map +0 -1
- package/dist/shared/make-s3-url.d.ts.map +0 -1
- package/dist/shared/make-s3-url.js.map +0 -1
- package/dist/shared/parse-lambda-initialized-key.d.ts.map +0 -1
- package/dist/shared/parse-lambda-initialized-key.js.map +0 -1
- package/dist/shared/parse-lambda-timings-key.d.ts.map +0 -1
- package/dist/shared/parse-lambda-timings-key.js.map +0 -1
- package/dist/shared/random-hash.d.ts.map +0 -1
- package/dist/shared/random-hash.js.map +0 -1
- package/dist/shared/return-values.d.ts.map +0 -1
- package/dist/shared/return-values.js.map +0 -1
- package/dist/shared/sleep.d.ts.map +0 -1
- package/dist/shared/sleep.js.map +0 -1
- package/dist/shared/stream-to-string.d.ts.map +0 -1
- package/dist/shared/stream-to-string.js.map +0 -1
- package/dist/shared/validate-architecture.d.ts.map +0 -1
- package/dist/shared/validate-architecture.js.map +0 -1
- package/dist/shared/validate-aws-region.d.ts.map +0 -1
- package/dist/shared/validate-aws-region.js.map +0 -1
- package/dist/shared/validate-bucketname.d.ts.map +0 -1
- package/dist/shared/validate-bucketname.js.map +0 -1
- package/dist/shared/validate-disk-size-in-mb.d.ts.map +0 -1
- package/dist/shared/validate-disk-size-in-mb.js.map +0 -1
- package/dist/shared/validate-frames-per-lambda.d.ts.map +0 -1
- package/dist/shared/validate-frames-per-lambda.js.map +0 -1
- package/dist/shared/validate-memory-size.d.ts.map +0 -1
- package/dist/shared/validate-memory-size.js.map +0 -1
- package/dist/shared/validate-outname.d.ts.map +0 -1
- package/dist/shared/validate-outname.js.map +0 -1
- package/dist/shared/validate-presign-expiration.d.ts.map +0 -1
- package/dist/shared/validate-presign-expiration.js.map +0 -1
- package/dist/shared/validate-privacy.d.ts.map +0 -1
- package/dist/shared/validate-privacy.js.map +0 -1
- package/dist/shared/validate-retention-period.d.ts.map +0 -1
- package/dist/shared/validate-retention-period.js.map +0 -1
- package/dist/shared/validate-retries.d.ts.map +0 -1
- package/dist/shared/validate-retries.js.map +0 -1
- package/dist/shared/validate-serveurl.d.ts.map +0 -1
- package/dist/shared/validate-serveurl.js.map +0 -1
- package/dist/shared/validate-site-name.d.ts.map +0 -1
- package/dist/shared/validate-site-name.js.map +0 -1
- package/dist/shared/validate-timeout.d.ts.map +0 -1
- package/dist/shared/validate-timeout.js.map +0 -1
package/dist/functions/launch.js
CHANGED
|
@@ -8,6 +8,7 @@ const client_lambda_1 = require("@aws-sdk/client-lambda");
|
|
|
8
8
|
const renderer_1 = require("@remotion/renderer");
|
|
9
9
|
const fs_1 = __importDefault(require("fs"));
|
|
10
10
|
const remotion_1 = require("remotion");
|
|
11
|
+
const version_1 = require("remotion/version");
|
|
11
12
|
const aws_clients_1 = require("../shared/aws-clients");
|
|
12
13
|
const constants_1 = require("../shared/constants");
|
|
13
14
|
const docs_url_1 = require("../shared/docs-url");
|
|
@@ -39,14 +40,35 @@ const timer_1 = require("./helpers/timer");
|
|
|
39
40
|
const validate_composition_1 = require("./helpers/validate-composition");
|
|
40
41
|
const write_lambda_error_1 = require("./helpers/write-lambda-error");
|
|
41
42
|
const write_post_render_data_1 = require("./helpers/write-post-render-data");
|
|
43
|
+
const callFunctionWithRetry = async (payload, retries = 0) => {
|
|
44
|
+
try {
|
|
45
|
+
await (0, aws_clients_1.getLambdaClient)((0, get_current_region_1.getCurrentRegionInFunction)()).send(new client_lambda_1.InvokeCommand({
|
|
46
|
+
FunctionName: process.env.AWS_LAMBDA_FUNCTION_NAME,
|
|
47
|
+
// @ts-expect-error
|
|
48
|
+
Payload: JSON.stringify(payload),
|
|
49
|
+
InvocationType: 'Event',
|
|
50
|
+
}), {});
|
|
51
|
+
}
|
|
52
|
+
catch (err) {
|
|
53
|
+
if (err.name === 'ResourceConflictException') {
|
|
54
|
+
if (retries > 10) {
|
|
55
|
+
throw err;
|
|
56
|
+
}
|
|
57
|
+
await new Promise((resolve) => {
|
|
58
|
+
setTimeout(resolve, 1000);
|
|
59
|
+
});
|
|
60
|
+
return callFunctionWithRetry(payload, retries + 1);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
};
|
|
42
64
|
const innerLaunchHandler = async (params, options) => {
|
|
43
|
-
var _a, _b;
|
|
65
|
+
var _a, _b, _c, _d;
|
|
44
66
|
if (params.type !== constants_1.LambdaRoutines.launch) {
|
|
45
67
|
throw new Error('Expected launch type');
|
|
46
68
|
}
|
|
47
69
|
const startedDate = Date.now();
|
|
48
70
|
const [browserInstance, optimization] = await Promise.all([
|
|
49
|
-
(0, get_browser_instance_1.getBrowserInstance)(
|
|
71
|
+
(0, get_browser_instance_1.getBrowserInstance)(renderer_1.RenderInternals.isEqualOrBelowLogLevel(params.logLevel, 'verbose'), params.chromiumOptions),
|
|
50
72
|
(0, s3_optimization_file_1.getOptimization)({
|
|
51
73
|
bucketName: params.bucketName,
|
|
52
74
|
siteId: (0, make_s3_url_1.getServeUrlHash)(params.serveUrl),
|
|
@@ -55,6 +77,7 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
55
77
|
expectedBucketOwner: options.expectedBucketOwner,
|
|
56
78
|
}),
|
|
57
79
|
]);
|
|
80
|
+
const downloadMap = renderer_1.RenderInternals.makeDownloadMap();
|
|
58
81
|
const comp = await (0, validate_composition_1.validateComposition)({
|
|
59
82
|
serveUrl: params.serveUrl,
|
|
60
83
|
composition: params.composition,
|
|
@@ -62,19 +85,25 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
62
85
|
inputProps: params.inputProps,
|
|
63
86
|
envVariables: params.envVariables,
|
|
64
87
|
ffmpegExecutable: null,
|
|
88
|
+
ffprobeExecutable: null,
|
|
65
89
|
timeoutInMilliseconds: params.timeoutInMilliseconds,
|
|
66
90
|
chromiumOptions: params.chromiumOptions,
|
|
67
91
|
port: null,
|
|
92
|
+
downloadMap,
|
|
68
93
|
});
|
|
69
|
-
remotion_1.Internals.validateDurationInFrames(comp.durationInFrames, 'passed to
|
|
70
|
-
remotion_1.Internals.validateFps(comp.fps, 'passed to
|
|
71
|
-
remotion_1.Internals.validateDimension(comp.height, 'height', 'passed to
|
|
72
|
-
remotion_1.Internals.validateDimension(comp.width, 'width', 'passed to
|
|
94
|
+
remotion_1.Internals.validateDurationInFrames(comp.durationInFrames, 'passed to a Lambda render');
|
|
95
|
+
remotion_1.Internals.validateFps(comp.fps, 'passed to a Lambda render', false);
|
|
96
|
+
remotion_1.Internals.validateDimension(comp.height, 'height', 'passed to a Lambda render');
|
|
97
|
+
remotion_1.Internals.validateDimension(comp.width, 'width', 'passed to a Lambda render');
|
|
98
|
+
renderer_1.RenderInternals.validateConcurrency(params.concurrencyPerLambda, 'concurrencyPerLambda');
|
|
73
99
|
const realFrameRange = renderer_1.RenderInternals.getRealFrameRange(comp.durationInFrames, params.frameRange);
|
|
74
|
-
const frameCount = renderer_1.RenderInternals.
|
|
75
|
-
const framesPerLambda = (_a = params.framesPerLambda) !== null && _a !== void 0 ? _a : (0, best_frames_per_lambda_param_1.bestFramesPerLambdaParam)(frameCount);
|
|
76
|
-
(0, validate_frames_per_lambda_1.validateFramesPerLambda)(
|
|
77
|
-
|
|
100
|
+
const frameCount = renderer_1.RenderInternals.getFramesToRender(realFrameRange, params.everyNthFrame);
|
|
101
|
+
const framesPerLambda = (_a = params.framesPerLambda) !== null && _a !== void 0 ? _a : (0, best_frames_per_lambda_param_1.bestFramesPerLambdaParam)(frameCount.length);
|
|
102
|
+
(0, validate_frames_per_lambda_1.validateFramesPerLambda)({
|
|
103
|
+
framesPerLambda,
|
|
104
|
+
durationInFrames: frameCount.length,
|
|
105
|
+
});
|
|
106
|
+
const chunkCount = Math.ceil(frameCount.length / framesPerLambda);
|
|
78
107
|
if (chunkCount > constants_1.MAX_FUNCTIONS_PER_RENDER) {
|
|
79
108
|
throw new Error(`Too many functions: This render would cause ${chunkCount} functions to spawn. We limit this amount to ${constants_1.MAX_FUNCTIONS_PER_RENDER} functions as more would result in diminishing returns. Values set: frameCount = ${frameCount}, framesPerLambda=${framesPerLambda}. See ${docs_url_1.DOCS_URL}/docs/lambda/concurrency for how this parameter is calculated.`);
|
|
80
109
|
}
|
|
@@ -82,12 +111,12 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
82
111
|
(0, validate_privacy_1.validatePrivacy)(params.privacy);
|
|
83
112
|
renderer_1.RenderInternals.validatePuppeteerTimeout(params.timeoutInMilliseconds);
|
|
84
113
|
const { chunks, didUseOptimization } = (0, plan_frame_ranges_1.planFrameRanges)({
|
|
85
|
-
chunkCount,
|
|
86
114
|
framesPerLambda,
|
|
87
115
|
optimization,
|
|
88
116
|
// TODO: Re-enable chunk optimization later
|
|
89
117
|
shouldUseOptimization: false,
|
|
90
118
|
frameRange: realFrameRange,
|
|
119
|
+
everyNthFrame: params.everyNthFrame,
|
|
91
120
|
});
|
|
92
121
|
const sortedChunks = chunks.slice().sort((a, b) => a[0] - b[0]);
|
|
93
122
|
const invokers = Math.round(Math.sqrt(chunks.length));
|
|
@@ -109,18 +138,21 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
109
138
|
inputProps: params.inputProps,
|
|
110
139
|
renderId: params.renderId,
|
|
111
140
|
imageFormat: params.imageFormat,
|
|
112
|
-
codec: params.codec,
|
|
141
|
+
codec: params.codec === 'h264' ? 'h264-mkv' : params.codec,
|
|
113
142
|
crf: params.crf,
|
|
114
143
|
envVariables: params.envVariables,
|
|
115
144
|
pixelFormat: params.pixelFormat,
|
|
116
145
|
proResProfile: params.proResProfile,
|
|
117
146
|
quality: params.quality,
|
|
118
147
|
privacy: params.privacy,
|
|
119
|
-
logLevel: (_a = params.logLevel) !== null && _a !== void 0 ? _a :
|
|
148
|
+
logLevel: (_a = params.logLevel) !== null && _a !== void 0 ? _a : 'info',
|
|
120
149
|
attempt: 1,
|
|
121
150
|
timeoutInMilliseconds: params.timeoutInMilliseconds,
|
|
122
151
|
chromiumOptions: params.chromiumOptions,
|
|
123
152
|
scale: params.scale,
|
|
153
|
+
everyNthFrame: params.everyNthFrame,
|
|
154
|
+
concurrencyPerLambda: params.concurrencyPerLambda,
|
|
155
|
+
muted: params.muted,
|
|
124
156
|
};
|
|
125
157
|
return payload;
|
|
126
158
|
});
|
|
@@ -143,12 +175,13 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
143
175
|
type: 'video',
|
|
144
176
|
imageFormat: params.imageFormat,
|
|
145
177
|
inputProps: params.inputProps,
|
|
146
|
-
lambdaVersion:
|
|
178
|
+
lambdaVersion: version_1.VERSION,
|
|
147
179
|
framesPerLambda,
|
|
148
180
|
memorySizeInMb: Number(process.env.AWS_LAMBDA_FUNCTION_MEMORY_SIZE),
|
|
149
181
|
region: (0, get_current_region_1.getCurrentRegionInFunction)(),
|
|
150
182
|
renderId: params.renderId,
|
|
151
183
|
outName: (_b = params.outName) !== null && _b !== void 0 ? _b : undefined,
|
|
184
|
+
privacy: params.privacy,
|
|
152
185
|
};
|
|
153
186
|
await (0, io_1.lambdaWriteFile)({
|
|
154
187
|
bucketName: params.bucketName,
|
|
@@ -157,22 +190,19 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
157
190
|
region: (0, get_current_region_1.getCurrentRegionInFunction)(),
|
|
158
191
|
privacy: 'private',
|
|
159
192
|
expectedBucketOwner: options.expectedBucketOwner,
|
|
193
|
+
downloadBehavior: null,
|
|
194
|
+
customCredentials: null,
|
|
160
195
|
});
|
|
161
196
|
await Promise.all(lambdaPayloads.map(async (payload, index) => {
|
|
162
197
|
const callingLambdaTimer = (0, timer_1.timer)('Calling chunk ' + index);
|
|
163
|
-
await (
|
|
164
|
-
FunctionName: process.env.AWS_LAMBDA_FUNCTION_NAME,
|
|
165
|
-
// @ts-expect-error
|
|
166
|
-
Payload: JSON.stringify(payload),
|
|
167
|
-
InvocationType: 'Event',
|
|
168
|
-
}), {});
|
|
198
|
+
await callFunctionWithRetry(payload);
|
|
169
199
|
callingLambdaTimer.end();
|
|
170
200
|
}));
|
|
171
201
|
reqSend.end();
|
|
172
202
|
let lastProgressUploaded = 0;
|
|
173
203
|
let encodingStop = null;
|
|
174
204
|
const onProgress = (framesEncoded, start) => {
|
|
175
|
-
const relativeProgress = framesEncoded / frameCount;
|
|
205
|
+
const relativeProgress = framesEncoded / frameCount.length;
|
|
176
206
|
const deltaSinceLastProgressUploaded = relativeProgress - lastProgressUploaded;
|
|
177
207
|
if (relativeProgress === 1) {
|
|
178
208
|
encodingStop = Date.now();
|
|
@@ -183,7 +213,7 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
183
213
|
lastProgressUploaded = relativeProgress;
|
|
184
214
|
const encodingProgress = {
|
|
185
215
|
framesEncoded,
|
|
186
|
-
totalFrames: frameCount,
|
|
216
|
+
totalFrames: frameCount.length,
|
|
187
217
|
doneIn: encodingStop ? encodingStop - start : null,
|
|
188
218
|
timeToInvoke: null,
|
|
189
219
|
};
|
|
@@ -194,6 +224,8 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
194
224
|
region: (0, get_current_region_1.getCurrentRegionInFunction)(),
|
|
195
225
|
privacy: 'private',
|
|
196
226
|
expectedBucketOwner: options.expectedBucketOwner,
|
|
227
|
+
downloadBehavior: null,
|
|
228
|
+
customCredentials: null,
|
|
197
229
|
}).catch((err) => {
|
|
198
230
|
(0, write_lambda_error_1.writeLambdaError)({
|
|
199
231
|
bucketName: params.bucketName,
|
|
@@ -215,21 +247,25 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
215
247
|
});
|
|
216
248
|
});
|
|
217
249
|
};
|
|
250
|
+
const fps = comp.fps / params.everyNthFrame;
|
|
218
251
|
const { outfile, cleanupChunksProm, encodingStart } = await (0, concat_videos_1.concatVideosS3)({
|
|
219
252
|
bucket: params.bucketName,
|
|
220
253
|
expectedFiles: chunkCount,
|
|
221
254
|
onProgress,
|
|
222
|
-
numberOfFrames: frameCount,
|
|
255
|
+
numberOfFrames: frameCount.length,
|
|
223
256
|
renderId: params.renderId,
|
|
224
257
|
region: (0, get_current_region_1.getCurrentRegionInFunction)(),
|
|
225
258
|
codec: params.codec,
|
|
226
259
|
expectedBucketOwner: options.expectedBucketOwner,
|
|
227
|
-
fps
|
|
260
|
+
fps,
|
|
261
|
+
numberOfGifLoops: params.numberOfGifLoops,
|
|
228
262
|
});
|
|
229
263
|
if (!encodingStop) {
|
|
230
264
|
encodingStop = Date.now();
|
|
231
265
|
}
|
|
232
|
-
const { key, renderBucketName } = (0, expected_out_name_1.getExpectedOutName)(renderMetadata, params.bucketName
|
|
266
|
+
const { key, renderBucketName, customCredentials } = (0, expected_out_name_1.getExpectedOutName)(renderMetadata, params.bucketName, typeof params.outName === 'string' || typeof params.outName === 'undefined'
|
|
267
|
+
? null
|
|
268
|
+
: (_d = (_c = params.outName) === null || _c === void 0 ? void 0 : _c.s3OutputProvider) !== null && _d !== void 0 ? _d : null);
|
|
233
269
|
const outputSize = fs_1.default.statSync(outfile);
|
|
234
270
|
await (0, io_1.lambdaWriteFile)({
|
|
235
271
|
bucketName: renderBucketName,
|
|
@@ -238,6 +274,8 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
238
274
|
region: (0, get_current_region_1.getCurrentRegionInFunction)(),
|
|
239
275
|
privacy: params.privacy,
|
|
240
276
|
expectedBucketOwner: options.expectedBucketOwner,
|
|
277
|
+
downloadBehavior: params.downloadBehavior,
|
|
278
|
+
customCredentials,
|
|
241
279
|
});
|
|
242
280
|
let chunkProm = Promise.resolve();
|
|
243
281
|
// TODO: Enable in a later release
|
|
@@ -260,8 +298,9 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
260
298
|
newTiming: (0, get_profile_duration_1.getProfileDuration)(optimizedProfile),
|
|
261
299
|
createdFromRenderId: params.renderId,
|
|
262
300
|
framesPerLambda,
|
|
263
|
-
lambdaVersion:
|
|
301
|
+
lambdaVersion: version_1.VERSION,
|
|
264
302
|
frameRange: realFrameRange,
|
|
303
|
+
everyNthFrame: params.everyNthFrame,
|
|
265
304
|
},
|
|
266
305
|
expectedBucketOwner: options.expectedBucketOwner,
|
|
267
306
|
compositionId: params.composition,
|
|
@@ -280,10 +319,16 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
280
319
|
}),
|
|
281
320
|
]);
|
|
282
321
|
const finalEncodingProgress = {
|
|
283
|
-
framesEncoded: frameCount,
|
|
284
|
-
totalFrames: frameCount,
|
|
322
|
+
framesEncoded: frameCount.length,
|
|
323
|
+
totalFrames: frameCount.length,
|
|
285
324
|
doneIn: encodingStop ? encodingStop - encodingStart : null,
|
|
286
|
-
timeToInvoke: (0, get_lambdas_invoked_stats_1.getLambdasInvokedStats)(
|
|
325
|
+
timeToInvoke: (0, get_lambdas_invoked_stats_1.getLambdasInvokedStats)({
|
|
326
|
+
contents,
|
|
327
|
+
renderId: params.renderId,
|
|
328
|
+
estimatedRenderLambdaInvokations: renderMetadata.estimatedRenderLambdaInvokations,
|
|
329
|
+
checkIfAllLambdasWereInvoked: false,
|
|
330
|
+
startDate: renderMetadata.startedDate,
|
|
331
|
+
}).timeToInvokeLambdas,
|
|
287
332
|
};
|
|
288
333
|
const finalEncodingProgressProm = (0, io_1.lambdaWriteFile)({
|
|
289
334
|
bucketName: params.bucketName,
|
|
@@ -292,6 +337,8 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
292
337
|
region: (0, get_current_region_1.getCurrentRegionInFunction)(),
|
|
293
338
|
privacy: 'private',
|
|
294
339
|
expectedBucketOwner: options.expectedBucketOwner,
|
|
340
|
+
downloadBehavior: null,
|
|
341
|
+
customCredentials: null,
|
|
295
342
|
});
|
|
296
343
|
const errorExplanationsProm = (0, inspect_errors_1.inspectErrors)({
|
|
297
344
|
contents,
|
|
@@ -310,7 +357,7 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
310
357
|
contents,
|
|
311
358
|
jobs,
|
|
312
359
|
});
|
|
313
|
-
const postRenderData =
|
|
360
|
+
const postRenderData = (0, create_post_render_data_1.createPostRenderData)({
|
|
314
361
|
expectedBucketOwner: options.expectedBucketOwner,
|
|
315
362
|
region: (0, get_current_region_1.getCurrentRegionInFunction)(),
|
|
316
363
|
renderId: params.renderId,
|
|
@@ -323,7 +370,7 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
323
370
|
outputFile: {
|
|
324
371
|
lastModified: Date.now(),
|
|
325
372
|
size: outputSize.size,
|
|
326
|
-
url: (0, get_output_url_from_metadata_1.getOutputUrlFromMetadata)(renderMetadata, params.bucketName),
|
|
373
|
+
url: (0, get_output_url_from_metadata_1.getOutputUrlFromMetadata)(renderMetadata, params.bucketName, customCredentials),
|
|
327
374
|
},
|
|
328
375
|
});
|
|
329
376
|
await finalEncodingProgressProm;
|
|
@@ -334,6 +381,12 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
334
381
|
region: (0, get_current_region_1.getCurrentRegionInFunction)(),
|
|
335
382
|
renderId: params.renderId,
|
|
336
383
|
});
|
|
384
|
+
await (0, io_1.lambdaDeleteFile)({
|
|
385
|
+
bucketName: params.bucketName,
|
|
386
|
+
key: (0, constants_1.initalizedMetadataKey)(params.renderId),
|
|
387
|
+
region: (0, get_current_region_1.getCurrentRegionInFunction)(),
|
|
388
|
+
customCredentials: null,
|
|
389
|
+
});
|
|
337
390
|
await Promise.all([cleanupChunksProm, fs_1.default.promises.rm(outfile)]);
|
|
338
391
|
};
|
|
339
392
|
const launchHandler = async (params, options) => {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { LambdaPayload, RenderProgress } from '../shared/constants';
|
|
1
|
+
import type { LambdaPayload, RenderProgress } from '../shared/constants';
|
|
2
2
|
declare type Options = {
|
|
3
3
|
expectedBucketOwner: string;
|
|
4
|
-
|
|
4
|
+
timeoutInMilliseconds: number;
|
|
5
5
|
};
|
|
6
6
|
export declare const progressHandler: (lambdaParams: LambdaPayload, options: Options) => Promise<RenderProgress>;
|
|
7
7
|
export {};
|
|
@@ -1,20 +1,29 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.progressHandler = void 0;
|
|
4
|
+
const version_1 = require("remotion/version");
|
|
4
5
|
const constants_1 = require("../shared/constants");
|
|
5
6
|
const get_current_region_1 = require("./helpers/get-current-region");
|
|
6
7
|
const get_progress_1 = require("./helpers/get-progress");
|
|
7
8
|
const progressHandler = (lambdaParams, options) => {
|
|
9
|
+
var _a;
|
|
8
10
|
if (lambdaParams.type !== constants_1.LambdaRoutines.status) {
|
|
9
11
|
throw new TypeError('Expected status type');
|
|
10
12
|
}
|
|
13
|
+
if (lambdaParams.version !== version_1.VERSION) {
|
|
14
|
+
if (!lambdaParams.version) {
|
|
15
|
+
throw new Error(`Version mismatch: When calling getRenderProgress(), the deployed Lambda function had version ${version_1.VERSION} but the @remotion/lambda package is an older version. Align the versions.`);
|
|
16
|
+
}
|
|
17
|
+
throw new Error(`Version mismatch: When calling getRenderProgress(), get deployed Lambda function had version ${version_1.VERSION} and the @remotion/lambda package has version ${lambdaParams.version}. Align the versions.`);
|
|
18
|
+
}
|
|
11
19
|
return (0, get_progress_1.getProgress)({
|
|
12
20
|
bucketName: lambdaParams.bucketName,
|
|
13
21
|
renderId: lambdaParams.renderId,
|
|
14
22
|
expectedBucketOwner: options.expectedBucketOwner,
|
|
15
23
|
region: (0, get_current_region_1.getCurrentRegionInFunction)(),
|
|
16
24
|
memorySizeInMb: Number(process.env.AWS_LAMBDA_FUNCTION_MEMORY_SIZE),
|
|
17
|
-
|
|
25
|
+
timeoutInMilliseconds: options.timeoutInMilliseconds,
|
|
26
|
+
customCredentials: (_a = lambdaParams.s3OutputProvider) !== null && _a !== void 0 ? _a : null,
|
|
18
27
|
});
|
|
19
28
|
};
|
|
20
29
|
exports.progressHandler = progressHandler;
|
|
@@ -8,7 +8,6 @@ const client_lambda_1 = require("@aws-sdk/client-lambda");
|
|
|
8
8
|
const renderer_1 = require("@remotion/renderer");
|
|
9
9
|
const fs_1 = __importDefault(require("fs"));
|
|
10
10
|
const path_1 = __importDefault(require("path"));
|
|
11
|
-
const remotion_1 = require("remotion");
|
|
12
11
|
const aws_clients_1 = require("../shared/aws-clients");
|
|
13
12
|
const constants_1 = require("../shared/constants");
|
|
14
13
|
const clean_tmpdir_1 = require("./helpers/clean-tmpdir");
|
|
@@ -19,12 +18,11 @@ const get_folder_size_1 = require("./helpers/get-folder-size");
|
|
|
19
18
|
const io_1 = require("./helpers/io");
|
|
20
19
|
const write_lambda_error_1 = require("./helpers/write-lambda-error");
|
|
21
20
|
const renderHandler = async (params, options, logs) => {
|
|
22
|
-
var _a
|
|
21
|
+
var _a;
|
|
23
22
|
if (params.type !== constants_1.LambdaRoutines.renderer) {
|
|
24
23
|
throw new Error('Params must be renderer');
|
|
25
24
|
}
|
|
26
|
-
|
|
27
|
-
const browserInstance = await (0, get_browser_instance_1.getBrowserInstance)(remotion_1.Internals.Logging.isEqualOrBelowLogLevel(params.logLevel, 'verbose'), (_a = params.chromiumOptions) !== null && _a !== void 0 ? _a : {});
|
|
25
|
+
const browserInstance = await (0, get_browser_instance_1.getBrowserInstance)(renderer_1.RenderInternals.isEqualOrBelowLogLevel(params.logLevel, 'verbose'), (_a = params.chromiumOptions) !== null && _a !== void 0 ? _a : {});
|
|
28
26
|
const outputPath = renderer_1.RenderInternals.tmpDir('remotion-render-');
|
|
29
27
|
if (typeof params.chunk !== 'number') {
|
|
30
28
|
throw new Error('must pass chunk');
|
|
@@ -41,76 +39,108 @@ const renderHandler = async (params, options, logs) => {
|
|
|
41
39
|
};
|
|
42
40
|
const outdir = renderer_1.RenderInternals.tmpDir(constants_1.RENDERER_PATH_TOKEN);
|
|
43
41
|
const outputLocation = path_1.default.join(outdir, `localchunk-${String(params.chunk).padStart(8, '0')}.${renderer_1.RenderInternals.getFileExtensionFromCodec(params.codec, 'chunk')}`);
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
42
|
+
const chunkCodec = params.codec === 'gif' ? 'h264-mkv' : params.codec;
|
|
43
|
+
const downloadMap = renderer_1.RenderInternals.makeDownloadMap();
|
|
44
|
+
const downloads = {};
|
|
45
|
+
await new Promise((resolve, reject) => {
|
|
46
|
+
var _a;
|
|
47
|
+
(0, renderer_1.renderMedia)({
|
|
48
|
+
composition: {
|
|
49
|
+
id: params.composition,
|
|
50
|
+
durationInFrames: params.durationInFrames,
|
|
51
|
+
fps: params.fps,
|
|
52
|
+
height: params.height,
|
|
53
|
+
width: params.width,
|
|
54
|
+
},
|
|
55
|
+
imageFormat: params.imageFormat,
|
|
56
|
+
inputProps: params.inputProps,
|
|
57
|
+
frameRange: params.frameRange,
|
|
58
|
+
onProgress: ({ renderedFrames, encodedFrames, stitchStage }) => {
|
|
59
|
+
if (renderedFrames % 10 === 0 &&
|
|
60
|
+
renderer_1.RenderInternals.isEqualOrBelowLogLevel(params.logLevel, 'verbose')) {
|
|
61
|
+
console.log(`Rendered ${renderedFrames} frames, encoded ${encodedFrames} frames, stage = ${stitchStage}`);
|
|
62
|
+
}
|
|
63
|
+
const allFrames = renderer_1.RenderInternals.getFramesToRender(params.frameRange, params.everyNthFrame);
|
|
64
|
+
if (renderedFrames === allFrames.length) {
|
|
65
|
+
console.log('Rendered all frames!');
|
|
66
|
+
}
|
|
67
|
+
chunkTimingData.timings[renderedFrames] = Date.now() - start;
|
|
68
|
+
},
|
|
69
|
+
concurrency: params.concurrencyPerLambda,
|
|
70
|
+
onStart: () => {
|
|
71
|
+
(0, io_1.lambdaWriteFile)({
|
|
72
|
+
privacy: 'private',
|
|
73
|
+
bucketName: params.bucketName,
|
|
74
|
+
body: JSON.stringify({
|
|
75
|
+
filesCleaned: clean_tmpdir_1.deletedFilesSize,
|
|
76
|
+
filesInTmp: fs_1.default.readdirSync('/tmp'),
|
|
77
|
+
isWarm: options.isWarm,
|
|
78
|
+
deletedFiles: clean_tmpdir_1.deletedFiles,
|
|
79
|
+
tmpSize: (0, get_folder_size_1.getFolderSizeRecursively)('/tmp'),
|
|
80
|
+
tmpDirFiles: (0, get_files_in_folder_1.getFolderFiles)('/tmp'),
|
|
81
|
+
}),
|
|
82
|
+
key: (0, constants_1.lambdaChunkInitializedKey)({
|
|
83
|
+
renderId: params.renderId,
|
|
84
|
+
chunk: params.chunk,
|
|
85
|
+
attempt: params.attempt,
|
|
86
|
+
}),
|
|
87
|
+
region: (0, get_current_region_1.getCurrentRegionInFunction)(),
|
|
88
|
+
expectedBucketOwner: options.expectedBucketOwner,
|
|
89
|
+
downloadBehavior: null,
|
|
90
|
+
customCredentials: null,
|
|
91
|
+
}).catch((err) => reject(err));
|
|
92
|
+
},
|
|
93
|
+
puppeteerInstance: browserInstance,
|
|
94
|
+
serveUrl: params.serveUrl,
|
|
95
|
+
quality: params.quality,
|
|
96
|
+
envVariables: params.envVariables,
|
|
97
|
+
dumpBrowserLogs: renderer_1.RenderInternals.isEqualOrBelowLogLevel(params.logLevel, 'verbose'),
|
|
98
|
+
verbose: renderer_1.RenderInternals.isEqualOrBelowLogLevel(params.logLevel, 'verbose'),
|
|
99
|
+
onBrowserLog: (log) => {
|
|
100
|
+
logs.push(log);
|
|
101
|
+
},
|
|
102
|
+
outputLocation,
|
|
103
|
+
codec: chunkCodec,
|
|
104
|
+
crf: (_a = params.crf) !== null && _a !== void 0 ? _a : undefined,
|
|
105
|
+
ffmpegExecutable: process.env.NODE_ENV === 'test' ? null : '/opt/bin/ffmpeg',
|
|
106
|
+
pixelFormat: params.pixelFormat,
|
|
107
|
+
proResProfile: params.proResProfile,
|
|
108
|
+
onDownload: (src) => {
|
|
109
|
+
console.log('Downloading', src);
|
|
110
|
+
downloads[src] = 0;
|
|
111
|
+
return ({ percent, downloaded }) => {
|
|
112
|
+
if (percent === null) {
|
|
113
|
+
console.log(`Download progress (${src}): ${downloaded} bytes. Don't know final size of download, no Content-Length header.`);
|
|
114
|
+
return;
|
|
115
|
+
}
|
|
116
|
+
if (
|
|
117
|
+
// Only report every 10% change
|
|
118
|
+
downloads[src] > percent - 0.1 &&
|
|
119
|
+
percent !== 1) {
|
|
120
|
+
return;
|
|
121
|
+
}
|
|
122
|
+
downloads[src] = percent;
|
|
123
|
+
console.log(`Download progress (${src}): ${downloaded} bytes, ${(percent * 100).toFixed(1)}%`);
|
|
124
|
+
if (percent === 1) {
|
|
125
|
+
console.log(`Download complete: ${src}`);
|
|
126
|
+
}
|
|
127
|
+
};
|
|
128
|
+
},
|
|
129
|
+
overwrite: false,
|
|
130
|
+
chromiumOptions: params.chromiumOptions,
|
|
131
|
+
scale: params.scale,
|
|
132
|
+
timeoutInMilliseconds: params.timeoutInMilliseconds,
|
|
133
|
+
port: null,
|
|
134
|
+
everyNthFrame: params.everyNthFrame,
|
|
135
|
+
numberOfGifLoops: null,
|
|
136
|
+
downloadMap,
|
|
137
|
+
muted: params.muted,
|
|
138
|
+
enforceAudioTrack: true,
|
|
139
|
+
})
|
|
140
|
+
.then(() => resolve())
|
|
141
|
+
.catch((err) => reject(err));
|
|
111
142
|
});
|
|
112
143
|
const endRendered = Date.now();
|
|
113
|
-
console.log('Adding silent audio, chunk', params.chunk);
|
|
114
144
|
const condensedTimingData = {
|
|
115
145
|
...chunkTimingData,
|
|
116
146
|
timings: Object.values(chunkTimingData.timings),
|
|
@@ -125,6 +155,8 @@ const renderHandler = async (params, options, logs) => {
|
|
|
125
155
|
region: (0, get_current_region_1.getCurrentRegionInFunction)(),
|
|
126
156
|
privacy: params.privacy,
|
|
127
157
|
expectedBucketOwner: options.expectedBucketOwner,
|
|
158
|
+
downloadBehavior: null,
|
|
159
|
+
customCredentials: null,
|
|
128
160
|
});
|
|
129
161
|
await Promise.all([
|
|
130
162
|
fs_1.default.promises.rm(outputLocation, { recursive: true }),
|
|
@@ -132,15 +164,17 @@ const renderHandler = async (params, options, logs) => {
|
|
|
132
164
|
(0, io_1.lambdaWriteFile)({
|
|
133
165
|
bucketName: params.bucketName,
|
|
134
166
|
body: JSON.stringify(condensedTimingData, null, 2),
|
|
135
|
-
key:
|
|
167
|
+
key: (0, constants_1.lambdaTimingsKey)({
|
|
136
168
|
renderId: params.renderId,
|
|
137
169
|
chunk: params.chunk,
|
|
138
170
|
rendered: endRendered,
|
|
139
171
|
start,
|
|
140
|
-
})
|
|
172
|
+
}),
|
|
141
173
|
region: (0, get_current_region_1.getCurrentRegionInFunction)(),
|
|
142
174
|
privacy: 'private',
|
|
143
175
|
expectedBucketOwner: options.expectedBucketOwner,
|
|
176
|
+
downloadBehavior: null,
|
|
177
|
+
customCredentials: null,
|
|
144
178
|
}),
|
|
145
179
|
]);
|
|
146
180
|
};
|
|
@@ -1,5 +1,9 @@
|
|
|
1
|
-
import { LambdaPayload } from '../shared/constants';
|
|
2
|
-
|
|
1
|
+
import type { LambdaPayload } from '../shared/constants';
|
|
2
|
+
declare type Options = {
|
|
3
|
+
expectedBucketOwner: string;
|
|
4
|
+
};
|
|
5
|
+
export declare const startHandler: (params: LambdaPayload, options: Options) => Promise<{
|
|
3
6
|
bucketName: string;
|
|
4
7
|
renderId: string;
|
|
5
8
|
}>;
|
|
9
|
+
export {};
|
package/dist/functions/start.js
CHANGED
|
@@ -2,21 +2,38 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.startHandler = void 0;
|
|
4
4
|
const client_lambda_1 = require("@aws-sdk/client-lambda");
|
|
5
|
-
const
|
|
5
|
+
const version_1 = require("remotion/version");
|
|
6
6
|
const get_or_create_bucket_1 = require("../api/get-or-create-bucket");
|
|
7
7
|
const aws_clients_1 = require("../shared/aws-clients");
|
|
8
8
|
const constants_1 = require("../shared/constants");
|
|
9
9
|
const random_hash_1 = require("../shared/random-hash");
|
|
10
10
|
const get_current_region_1 = require("./helpers/get-current-region");
|
|
11
|
-
const
|
|
11
|
+
const io_1 = require("./helpers/io");
|
|
12
|
+
const startHandler = async (params, options) => {
|
|
12
13
|
var _a;
|
|
13
14
|
if (params.type !== constants_1.LambdaRoutines.start) {
|
|
14
15
|
throw new TypeError('Expected type start');
|
|
15
16
|
}
|
|
17
|
+
if (params.version !== version_1.VERSION) {
|
|
18
|
+
if (!params.version) {
|
|
19
|
+
throw new Error(`Version mismatch: When calling renderMediaOnLambda(), the deployed Lambda function had version ${version_1.VERSION} but the @remotion/lambda package is an older version. Align the versions.`);
|
|
20
|
+
}
|
|
21
|
+
throw new Error(`Version mismatch: When calling renderMediaOnLambda(), get deployed Lambda function had version ${version_1.VERSION} and the @remotion/lambda package has version ${params.version}. Align the versions.`);
|
|
22
|
+
}
|
|
16
23
|
const { bucketName } = await (0, get_or_create_bucket_1.getOrCreateBucket)({
|
|
17
24
|
region: (0, get_current_region_1.getCurrentRegionInFunction)(),
|
|
18
25
|
});
|
|
19
26
|
const renderId = (0, random_hash_1.randomHash)({ randomInTests: true });
|
|
27
|
+
const initialFile = (0, io_1.lambdaWriteFile)({
|
|
28
|
+
bucketName,
|
|
29
|
+
downloadBehavior: null,
|
|
30
|
+
region: (0, get_current_region_1.getCurrentRegionInFunction)(),
|
|
31
|
+
body: 'Render was initialized',
|
|
32
|
+
expectedBucketOwner: options.expectedBucketOwner,
|
|
33
|
+
key: (0, constants_1.initalizedMetadataKey)(renderId),
|
|
34
|
+
privacy: 'private',
|
|
35
|
+
customCredentials: null,
|
|
36
|
+
});
|
|
20
37
|
const payload = {
|
|
21
38
|
type: constants_1.LambdaRoutines.launch,
|
|
22
39
|
framesPerLambda: params.framesPerLambda,
|
|
@@ -34,12 +51,17 @@ const startHandler = async (params) => {
|
|
|
34
51
|
quality: params.quality,
|
|
35
52
|
maxRetries: params.maxRetries,
|
|
36
53
|
privacy: params.privacy,
|
|
37
|
-
logLevel: (_a = params.logLevel) !== null && _a !== void 0 ? _a :
|
|
54
|
+
logLevel: (_a = params.logLevel) !== null && _a !== void 0 ? _a : 'info',
|
|
38
55
|
frameRange: params.frameRange,
|
|
39
56
|
outName: params.outName,
|
|
40
57
|
timeoutInMilliseconds: params.timeoutInMilliseconds,
|
|
41
58
|
chromiumOptions: params.chromiumOptions,
|
|
42
59
|
scale: params.scale,
|
|
60
|
+
numberOfGifLoops: params.numberOfGifLoops,
|
|
61
|
+
everyNthFrame: params.everyNthFrame,
|
|
62
|
+
concurrencyPerLambda: params.concurrencyPerLambda,
|
|
63
|
+
downloadBehavior: params.downloadBehavior,
|
|
64
|
+
muted: params.muted,
|
|
43
65
|
};
|
|
44
66
|
await (0, aws_clients_1.getLambdaClient)((0, get_current_region_1.getCurrentRegionInFunction)()).send(new client_lambda_1.InvokeCommand({
|
|
45
67
|
FunctionName: process.env.AWS_LAMBDA_FUNCTION_NAME,
|
|
@@ -47,6 +69,7 @@ const startHandler = async (params) => {
|
|
|
47
69
|
Payload: JSON.stringify(payload),
|
|
48
70
|
InvocationType: 'Event',
|
|
49
71
|
}));
|
|
72
|
+
await initialFile;
|
|
50
73
|
return {
|
|
51
74
|
bucketName,
|
|
52
75
|
renderId,
|