@remotion/lambda 4.0.0-audio.36 → 4.0.0-audio.9

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.
Files changed (747) hide show
  1. package/LICENSE.md +8 -8
  2. package/dist/admin/bundle-lambda.d.ts +0 -1
  3. package/dist/admin/bundle-lambda.js +21 -5
  4. package/dist/admin/generate-etag-list.d.ts +1 -0
  5. package/dist/admin/generate-etag-list.js +14 -0
  6. package/dist/admin/make-layer-public.d.ts +0 -1
  7. package/dist/admin/make-layer-public.js +30 -9
  8. package/dist/api/bucket-exists.d.ts +1 -2
  9. package/dist/api/bucket-exists.js +1 -2
  10. package/dist/api/clean-items.d.ts +1 -2
  11. package/dist/api/clean-items.js +3 -7
  12. package/dist/api/create-bucket.d.ts +1 -2
  13. package/dist/api/create-bucket.js +1 -2
  14. package/dist/api/create-function.d.ts +4 -4
  15. package/dist/api/create-function.js +26 -5
  16. package/dist/api/delete-function.d.ts +2 -3
  17. package/dist/api/delete-function.js +1 -2
  18. package/dist/api/delete-render.d.ts +19 -0
  19. package/dist/api/delete-render.js +66 -0
  20. package/dist/api/delete-site.d.ts +2 -3
  21. package/dist/api/delete-site.js +1 -7
  22. package/dist/api/deploy-function.d.ts +4 -4
  23. package/dist/api/deploy-function.js +11 -5
  24. package/dist/api/deploy-site.d.ts +13 -5
  25. package/dist/api/deploy-site.js +60 -23
  26. package/dist/api/download-media.d.ts +15 -3
  27. package/dist/api/download-media.js +15 -4
  28. package/dist/api/estimate-price.d.ts +3 -4
  29. package/dist/api/estimate-price.js +1 -2
  30. package/dist/api/get-aws-client.d.ts +8 -5
  31. package/dist/api/get-aws-client.js +15 -5
  32. package/dist/api/get-buckets.d.ts +1 -2
  33. package/dist/api/get-buckets.js +27 -11
  34. package/dist/api/get-compositions-on-lambda.d.ts +31 -0
  35. package/dist/api/get-compositions-on-lambda.js +56 -0
  36. package/dist/api/get-function-info.d.ts +3 -5
  37. package/dist/api/get-function-info.js +1 -2
  38. package/dist/api/get-functions.d.ts +3 -6
  39. package/dist/api/get-functions.js +3 -5
  40. package/dist/api/get-or-create-bucket.d.ts +3 -3
  41. package/dist/api/get-or-create-bucket.js +6 -12
  42. package/dist/api/get-regions.d.ts +7 -4
  43. package/dist/api/get-regions.js +6 -4
  44. package/dist/api/get-render-progress.d.ts +7 -5
  45. package/dist/api/get-render-progress.js +6 -3
  46. package/dist/api/get-sites.d.ts +4 -5
  47. package/dist/api/get-sites.js +1 -3
  48. package/dist/api/iam-validation/role-permissions.d.ts +2 -2
  49. package/dist/api/iam-validation/role-permissions.js +0 -1
  50. package/dist/api/iam-validation/simulate-rule.d.ts +1 -2
  51. package/dist/api/iam-validation/simulate-rule.js +0 -23
  52. package/dist/api/iam-validation/simulate.d.ts +3 -4
  53. package/dist/api/iam-validation/simulate.js +25 -7
  54. package/dist/api/iam-validation/suggested-policy.d.ts +0 -1
  55. package/dist/api/iam-validation/suggested-policy.js +0 -1
  56. package/dist/api/iam-validation/user-permissions.d.ts +1 -2
  57. package/dist/api/iam-validation/user-permissions.js +1 -9
  58. package/dist/api/mock-functions.d.ts +6 -8
  59. package/dist/api/mock-functions.js +0 -1
  60. package/dist/api/presign-url.d.ts +5 -6
  61. package/dist/api/presign-url.js +9 -5
  62. package/dist/api/render-media-on-lambda.d.ts +40 -18
  63. package/dist/api/render-media-on-lambda.js +90 -39
  64. package/dist/api/render-still-on-lambda.d.ts +14 -8
  65. package/dist/api/render-still-on-lambda.js +60 -32
  66. package/dist/api/speculate-function-name.d.ts +14 -0
  67. package/dist/api/speculate-function-name.js +22 -0
  68. package/dist/api/upload-dir.d.ts +6 -6
  69. package/dist/api/upload-dir.js +60 -53
  70. package/dist/api/validate-webhook-signature.d.ts +13 -0
  71. package/dist/api/validate-webhook-signature.js +32 -0
  72. package/dist/cli/args.d.ts +13 -6
  73. package/dist/cli/args.js +1 -6
  74. package/dist/cli/commands/compositions/index.d.ts +2 -0
  75. package/dist/cli/commands/compositions/index.js +44 -0
  76. package/dist/cli/commands/functions/deploy.d.ts +0 -1
  77. package/dist/cli/commands/functions/deploy.js +10 -7
  78. package/dist/cli/commands/functions/index.d.ts +0 -1
  79. package/dist/cli/commands/functions/index.js +16 -18
  80. package/dist/cli/commands/functions/ls.d.ts +0 -1
  81. package/dist/cli/commands/functions/ls.js +6 -8
  82. package/dist/cli/commands/functions/rm.d.ts +0 -1
  83. package/dist/cli/commands/functions/rm.js +0 -1
  84. package/dist/cli/commands/functions/rmall.d.ts +0 -1
  85. package/dist/cli/commands/functions/rmall.js +0 -1
  86. package/dist/cli/commands/policies/policies.d.ts +0 -1
  87. package/dist/cli/commands/policies/policies.js +0 -1
  88. package/dist/cli/commands/policies/role.d.ts +0 -1
  89. package/dist/cli/commands/policies/role.js +0 -1
  90. package/dist/cli/commands/policies/user.d.ts +0 -1
  91. package/dist/cli/commands/policies/user.js +0 -1
  92. package/dist/cli/commands/policies/validate.d.ts +0 -1
  93. package/dist/cli/commands/policies/validate.js +0 -1
  94. package/dist/cli/commands/quotas/increase.d.ts +0 -1
  95. package/dist/cli/commands/quotas/increase.js +28 -9
  96. package/dist/cli/commands/quotas/index.d.ts +0 -1
  97. package/dist/cli/commands/quotas/index.js +8 -10
  98. package/dist/cli/commands/quotas/list.d.ts +0 -1
  99. package/dist/cli/commands/quotas/list.js +0 -1
  100. package/dist/cli/commands/regions.d.ts +0 -1
  101. package/dist/cli/commands/regions.js +6 -3
  102. package/dist/cli/commands/render/progress.d.ts +11 -8
  103. package/dist/cli/commands/render/progress.js +66 -49
  104. package/dist/cli/commands/render/render.d.ts +1 -2
  105. package/dist/cli/commands/render/render.js +80 -26
  106. package/dist/cli/commands/sites/create.d.ts +1 -2
  107. package/dist/cli/commands/sites/create.js +25 -27
  108. package/dist/cli/commands/sites/index.d.ts +1 -2
  109. package/dist/cli/commands/sites/index.js +15 -17
  110. package/dist/cli/commands/sites/ls.d.ts +0 -1
  111. package/dist/cli/commands/sites/ls.js +10 -13
  112. package/dist/cli/commands/sites/rm.d.ts +0 -1
  113. package/dist/cli/commands/sites/rm.js +8 -20
  114. package/dist/cli/commands/sites/rmall.d.ts +0 -1
  115. package/dist/cli/commands/sites/rmall.js +7 -20
  116. package/dist/cli/commands/still.d.ts +1 -2
  117. package/dist/cli/commands/still.js +34 -28
  118. package/dist/cli/get-aws-region.d.ts +1 -2
  119. package/dist/cli/get-aws-region.js +2 -2
  120. package/dist/cli/help.d.ts +0 -1
  121. package/dist/cli/help.js +0 -1
  122. package/dist/cli/helpers/confirm.d.ts +0 -1
  123. package/dist/cli/helpers/confirm.js +0 -1
  124. package/dist/cli/helpers/date-string.d.ts +0 -1
  125. package/dist/cli/helpers/date-string.js +0 -1
  126. package/dist/cli/helpers/find-function-name.d.ts +0 -1
  127. package/dist/cli/helpers/find-function-name.js +37 -8
  128. package/dist/cli/helpers/progress-bar.d.ts +9 -4
  129. package/dist/cli/helpers/progress-bar.js +20 -9
  130. package/dist/cli/helpers/quit.d.ts +0 -1
  131. package/dist/cli/helpers/quit.js +0 -1
  132. package/dist/cli/helpers/yes-or-no.d.ts +0 -1
  133. package/dist/cli/helpers/yes-or-no.js +0 -1
  134. package/dist/cli/index.d.ts +1 -2
  135. package/dist/cli/index.js +30 -10
  136. package/dist/cli/is-cli.d.ts +0 -1
  137. package/dist/cli/is-cli.js +0 -1
  138. package/dist/cli/log.d.ts +0 -1
  139. package/dist/cli/log.js +0 -1
  140. package/dist/client.d.ts +10 -3
  141. package/dist/client.js +11 -2
  142. package/dist/defaults.d.ts +0 -1
  143. package/dist/defaults.js +5 -2
  144. package/dist/functions/chunk-optimization/plan-frame-ranges.d.ts +2 -7
  145. package/dist/functions/chunk-optimization/plan-frame-ranges.js +7 -20
  146. package/dist/functions/chunk-optimization/types.d.ts +0 -12
  147. package/dist/functions/chunk-optimization/types.js +0 -1
  148. package/dist/functions/compositions.d.ts +8 -0
  149. package/dist/functions/compositions.js +58 -0
  150. package/dist/functions/helpers/best-frames-per-lambda-param.d.ts +0 -1
  151. package/dist/functions/helpers/best-frames-per-lambda-param.js +0 -1
  152. package/dist/functions/helpers/calculate-chunk-times.d.ts +1 -2
  153. package/dist/functions/helpers/calculate-chunk-times.js +0 -1
  154. package/dist/functions/helpers/calculate-price-from-bucket.d.ts +4 -5
  155. package/dist/functions/helpers/calculate-price-from-bucket.js +0 -1
  156. package/dist/functions/helpers/check-if-render-exists.d.ts +3 -0
  157. package/dist/functions/helpers/check-if-render-exists.js +14 -0
  158. package/dist/functions/helpers/clean-tmpdir.d.ts +0 -1
  159. package/dist/functions/helpers/clean-tmpdir.js +1 -2
  160. package/dist/functions/helpers/concat-videos.d.ts +19 -8
  161. package/dist/functions/helpers/concat-videos.js +41 -34
  162. package/dist/functions/helpers/create-post-render-data.d.ts +6 -7
  163. package/dist/functions/helpers/create-post-render-data.js +5 -13
  164. package/dist/functions/helpers/delete-chunks.d.ts +3 -4
  165. package/dist/functions/helpers/delete-chunks.js +0 -1
  166. package/dist/functions/helpers/expected-out-name.d.ts +4 -3
  167. package/dist/functions/helpers/expected-out-name.js +27 -7
  168. package/dist/functions/helpers/find-output-file-in-bucket.d.ts +5 -4
  169. package/dist/functions/helpers/find-output-file-in-bucket.js +17 -10
  170. package/dist/functions/helpers/format-costs-info.d.ts +1 -2
  171. package/dist/functions/helpers/format-costs-info.js +0 -1
  172. package/dist/functions/helpers/get-browser-instance.d.ts +2 -2
  173. package/dist/functions/helpers/get-browser-instance.js +5 -4
  174. package/dist/functions/helpers/get-chromium-executable-path.d.ts +1 -2
  175. package/dist/functions/helpers/get-chromium-executable-path.js +3 -3
  176. package/dist/functions/helpers/get-cleanup-progress.d.ts +2 -3
  177. package/dist/functions/helpers/get-cleanup-progress.js +0 -1
  178. package/dist/functions/helpers/get-current-architecture.d.ts +1 -2
  179. package/dist/functions/helpers/get-current-architecture.js +0 -1
  180. package/dist/functions/helpers/get-current-region.d.ts +1 -2
  181. package/dist/functions/helpers/get-current-region.js +0 -1
  182. package/dist/functions/helpers/get-custom-out-name.d.ts +6 -0
  183. package/dist/functions/helpers/get-custom-out-name.js +31 -0
  184. package/dist/functions/helpers/get-encoding-metadata.d.ts +6 -10
  185. package/dist/functions/helpers/get-encoding-metadata.js +7 -18
  186. package/dist/functions/helpers/get-files-in-folder.d.ts +0 -1
  187. package/dist/functions/helpers/get-files-in-folder.js +0 -1
  188. package/dist/functions/helpers/get-files-to-delete.d.ts +0 -1
  189. package/dist/functions/helpers/get-files-to-delete.js +3 -4
  190. package/dist/functions/helpers/get-final-encoding-status.d.ts +3 -6
  191. package/dist/functions/helpers/get-final-encoding-status.js +1 -5
  192. package/dist/functions/helpers/get-folder-size.d.ts +0 -1
  193. package/dist/functions/helpers/get-folder-size.js +0 -1
  194. package/dist/functions/helpers/get-lambdas-invoked-stats.d.ts +5 -5
  195. package/dist/functions/helpers/get-lambdas-invoked-stats.js +2 -11
  196. package/dist/functions/helpers/get-output-url-from-metadata.d.ts +3 -3
  197. package/dist/functions/helpers/get-output-url-from-metadata.js +2 -3
  198. package/dist/functions/helpers/get-overall-progress.d.ts +2 -2
  199. package/dist/functions/helpers/get-overall-progress.js +7 -6
  200. package/dist/functions/helpers/get-post-render-data.d.ts +2 -3
  201. package/dist/functions/helpers/get-post-render-data.js +0 -1
  202. package/dist/functions/helpers/get-progress.d.ts +6 -5
  203. package/dist/functions/helpers/get-progress.js +65 -47
  204. package/dist/functions/helpers/get-render-metadata.d.ts +2 -3
  205. package/dist/functions/helpers/get-render-metadata.js +0 -1
  206. package/dist/functions/helpers/get-rendered-frames-progress.d.ts +8 -0
  207. package/dist/functions/helpers/get-rendered-frames-progress.js +37 -0
  208. package/dist/functions/helpers/get-retry-stats.d.ts +1 -2
  209. package/dist/functions/helpers/get-retry-stats.js +1 -2
  210. package/dist/functions/helpers/get-time-to-finish.d.ts +1 -2
  211. package/dist/functions/helpers/get-time-to-finish.js +0 -1
  212. package/dist/functions/helpers/inspect-errors.d.ts +3 -4
  213. package/dist/functions/helpers/inspect-errors.js +0 -1
  214. package/dist/functions/helpers/io.d.ts +24 -7
  215. package/dist/functions/helpers/io.js +36 -9
  216. package/dist/functions/helpers/is-enosp-err.d.ts +0 -1
  217. package/dist/functions/helpers/is-enosp-err.js +0 -1
  218. package/dist/functions/helpers/is-warm.d.ts +0 -1
  219. package/dist/functions/helpers/is-warm.js +0 -1
  220. package/dist/functions/helpers/make-timeout-error.d.ts +8 -0
  221. package/dist/functions/helpers/make-timeout-error.js +35 -0
  222. package/dist/functions/helpers/make-timeout-message.d.ts +6 -0
  223. package/dist/functions/helpers/make-timeout-message.js +31 -0
  224. package/dist/functions/helpers/min-max.d.ts +1 -2
  225. package/dist/functions/helpers/min-max.js +1 -2
  226. package/dist/functions/helpers/print-cloudwatch-helper.d.ts +2 -3
  227. package/dist/functions/helpers/print-cloudwatch-helper.js +0 -1
  228. package/dist/functions/helpers/print-concurrency-curve.d.ts +0 -1
  229. package/dist/functions/helpers/print-concurrency-curve.js +0 -1
  230. package/dist/functions/helpers/read-with-progress.d.ts +6 -4
  231. package/dist/functions/helpers/read-with-progress.js +16 -5
  232. package/dist/functions/helpers/timer.d.ts +0 -1
  233. package/dist/functions/helpers/timer.js +0 -1
  234. package/dist/functions/helpers/validate-composition.d.ts +13 -5
  235. package/dist/functions/helpers/validate-composition.js +15 -3
  236. package/dist/functions/helpers/write-lambda-error.d.ts +2 -3
  237. package/dist/functions/helpers/write-lambda-error.js +2 -1
  238. package/dist/functions/helpers/write-post-render-data.d.ts +2 -3
  239. package/dist/functions/helpers/write-post-render-data.js +2 -1
  240. package/dist/functions/index.d.ts +3 -3
  241. package/dist/functions/index.js +29 -11
  242. package/dist/functions/info.d.ts +2 -3
  243. package/dist/functions/info.js +2 -2
  244. package/dist/functions/launch.d.ts +2 -2
  245. package/dist/functions/launch.js +372 -123
  246. package/dist/functions/progress.d.ts +2 -3
  247. package/dist/functions/progress.js +10 -2
  248. package/dist/functions/renderer.d.ts +1 -2
  249. package/dist/functions/renderer.js +144 -80
  250. package/dist/functions/start.d.ts +6 -3
  251. package/dist/functions/start.js +45 -7
  252. package/dist/functions/still.d.ts +1 -2
  253. package/dist/functions/still.js +81 -24
  254. package/dist/index.d.ts +57 -22
  255. package/dist/index.js +27 -6
  256. package/dist/internals.d.ts +1 -2
  257. package/dist/internals.js +0 -1
  258. package/dist/pricing/aws-regions.d.ts +2 -2
  259. package/dist/pricing/aws-regions.js +31 -2
  260. package/dist/pricing/price-per-1-s.d.ts +1 -2
  261. package/dist/pricing/price-per-1-s.js +413 -40
  262. package/dist/regions.d.ts +0 -1
  263. package/dist/regions.js +0 -1
  264. package/dist/shared/await.d.ts +0 -1
  265. package/dist/shared/await.js +0 -1
  266. package/dist/shared/aws-clients.d.ts +17 -4
  267. package/dist/shared/aws-clients.js +118 -27
  268. package/dist/shared/bundle-site.d.ts +2 -7
  269. package/dist/shared/bundle-site.js +0 -1
  270. package/dist/shared/call-lambda.d.ts +3 -4
  271. package/dist/shared/call-lambda.js +0 -1
  272. package/dist/shared/check-credentials.d.ts +0 -1
  273. package/dist/shared/check-credentials.js +5 -3
  274. package/dist/shared/chunk-progress.d.ts +9 -0
  275. package/dist/shared/chunk-progress.js +2034 -0
  276. package/dist/shared/cleanup-serialized-input-props.d.ts +7 -0
  277. package/dist/shared/cleanup-serialized-input-props.js +19 -0
  278. package/dist/shared/constants.d.ts +124 -38
  279. package/dist/shared/constants.js +21 -11
  280. package/dist/shared/content-disposition-header.d.ts +7 -0
  281. package/dist/shared/content-disposition-header.js +19 -0
  282. package/dist/shared/convert-to-serve-url.d.ts +6 -3
  283. package/dist/shared/convert-to-serve-url.js +1 -6
  284. package/dist/shared/deserialize-input-props.d.ts +8 -0
  285. package/dist/shared/deserialize-input-props.js +26 -0
  286. package/dist/shared/docs-url.d.ts +0 -1
  287. package/dist/shared/docs-url.js +0 -1
  288. package/dist/shared/function-zip-path.d.ts +2 -2
  289. package/dist/shared/function-zip-path.js +3 -3
  290. package/dist/shared/get-account-id.d.ts +1 -2
  291. package/dist/shared/get-account-id.js +4 -7
  292. package/dist/shared/get-aws-urls.d.ts +14 -0
  293. package/dist/shared/get-aws-urls.js +12 -0
  294. package/dist/shared/get-etag.d.ts +1 -0
  295. package/dist/shared/get-etag.js +24 -0
  296. package/dist/shared/get-function-version.d.ts +2 -4
  297. package/dist/shared/get-function-version.js +0 -1
  298. package/dist/shared/get-most-expensive-chunks.d.ts +8 -0
  299. package/dist/shared/get-most-expensive-chunks.js +26 -0
  300. package/dist/shared/get-s3-operations.d.ts +10 -0
  301. package/dist/shared/get-s3-operations.js +36 -0
  302. package/dist/shared/hosted-layers.d.ts +89 -4
  303. package/dist/shared/hosted-layers.js +443 -135
  304. package/dist/shared/invoke-webhook.d.ts +46 -0
  305. package/dist/shared/invoke-webhook.js +89 -0
  306. package/dist/shared/is-in-lambda.d.ts +0 -1
  307. package/dist/shared/is-in-lambda.js +5 -2
  308. package/dist/shared/lambda-version-string.d.ts +1 -0
  309. package/dist/shared/lambda-version-string.js +7 -0
  310. package/dist/shared/make-s3-key.d.ts +1 -0
  311. package/dist/shared/make-s3-key.js +11 -0
  312. package/dist/shared/make-s3-url.d.ts +1 -2
  313. package/dist/shared/make-s3-url.js +0 -1
  314. package/dist/shared/p-limit.d.ts +1 -0
  315. package/dist/shared/p-limit.js +57 -0
  316. package/dist/shared/parse-chunk-key.d.ts +4 -0
  317. package/dist/shared/parse-chunk-key.js +14 -0
  318. package/dist/shared/parse-lambda-initialized-key.d.ts +0 -1
  319. package/dist/shared/parse-lambda-initialized-key.js +0 -1
  320. package/dist/shared/parse-lambda-timings-key.d.ts +0 -1
  321. package/dist/shared/parse-lambda-timings-key.js +0 -1
  322. package/dist/shared/random-hash.d.ts +2 -3
  323. package/dist/shared/random-hash.js +1 -2
  324. package/dist/shared/read-dir.d.ts +9 -0
  325. package/dist/shared/read-dir.js +57 -0
  326. package/dist/shared/return-values.d.ts +9 -8
  327. package/dist/shared/return-values.js +0 -2
  328. package/dist/shared/serialize-input-props.d.ts +8 -0
  329. package/dist/shared/serialize-input-props.js +42 -0
  330. package/dist/shared/sleep.d.ts +0 -1
  331. package/dist/shared/sleep.js +0 -1
  332. package/dist/shared/stream-to-string.d.ts +2 -2
  333. package/dist/shared/stream-to-string.js +0 -1
  334. package/dist/shared/truthy.d.ts +3 -0
  335. package/dist/shared/truthy.js +7 -0
  336. package/dist/shared/validate-architecture.d.ts +0 -1
  337. package/dist/shared/validate-architecture.js +0 -1
  338. package/dist/shared/validate-aws-region.d.ts +1 -2
  339. package/dist/shared/validate-aws-region.js +0 -1
  340. package/dist/shared/validate-bucketname.d.ts +5 -1
  341. package/dist/shared/validate-bucketname.js +19 -2
  342. package/dist/shared/validate-custom-role-arn.d.ts +1 -0
  343. package/dist/shared/validate-custom-role-arn.js +11 -0
  344. package/dist/shared/validate-disk-size-in-mb.d.ts +0 -1
  345. package/dist/shared/validate-disk-size-in-mb.js +0 -1
  346. package/dist/shared/validate-download-behavior.d.ts +1 -0
  347. package/dist/shared/validate-download-behavior.js +21 -0
  348. package/dist/shared/validate-frames-per-lambda.d.ts +4 -2
  349. package/dist/shared/validate-frames-per-lambda.js +4 -4
  350. package/dist/shared/validate-lambda-codec.d.ts +4 -0
  351. package/dist/shared/validate-lambda-codec.js +30 -0
  352. package/dist/shared/validate-memory-size.d.ts +0 -1
  353. package/dist/shared/validate-memory-size.js +0 -1
  354. package/dist/shared/validate-outname.d.ts +3 -3
  355. package/dist/shared/validate-outname.js +13 -4
  356. package/dist/shared/validate-presign-expiration.d.ts +0 -3
  357. package/dist/shared/validate-presign-expiration.js +7 -8
  358. package/dist/shared/validate-privacy.d.ts +1 -2
  359. package/dist/shared/validate-privacy.js +2 -3
  360. package/dist/shared/validate-retention-period.d.ts +0 -1
  361. package/dist/shared/validate-retention-period.js +0 -1
  362. package/dist/shared/validate-retries.d.ts +0 -1
  363. package/dist/shared/validate-retries.js +0 -1
  364. package/dist/shared/validate-serveurl.d.ts +0 -1
  365. package/dist/shared/validate-serveurl.js +0 -1
  366. package/dist/shared/validate-site-name.d.ts +0 -1
  367. package/dist/shared/validate-site-name.js +0 -1
  368. package/dist/shared/validate-timeout.d.ts +0 -1
  369. package/dist/shared/validate-timeout.js +0 -1
  370. package/package.json +59 -34
  371. package/remotionlambda-arm64.zip +0 -0
  372. package/remotionlambda-x64.zip +0 -0
  373. package/remotionlambda.zip +0 -0
  374. package/.prettierrc.js +0 -14
  375. package/client.d.ts +0 -1
  376. package/client.js +0 -1
  377. package/dist/admin/bundle-lambda.d.ts.map +0 -1
  378. package/dist/admin/bundle-lambda.js.map +0 -1
  379. package/dist/admin/make-layer-public.d.ts.map +0 -1
  380. package/dist/admin/make-layer-public.js.map +0 -1
  381. package/dist/api/bucket-exists.d.ts.map +0 -1
  382. package/dist/api/bucket-exists.js.map +0 -1
  383. package/dist/api/clean-items.d.ts.map +0 -1
  384. package/dist/api/clean-items.js.map +0 -1
  385. package/dist/api/create-bucket.d.ts.map +0 -1
  386. package/dist/api/create-bucket.js.map +0 -1
  387. package/dist/api/create-function.d.ts.map +0 -1
  388. package/dist/api/create-function.js.map +0 -1
  389. package/dist/api/delete-function.d.ts.map +0 -1
  390. package/dist/api/delete-function.js.map +0 -1
  391. package/dist/api/delete-site.d.ts.map +0 -1
  392. package/dist/api/delete-site.js.map +0 -1
  393. package/dist/api/deploy-function.d.ts.map +0 -1
  394. package/dist/api/deploy-function.js.map +0 -1
  395. package/dist/api/deploy-site.d.ts.map +0 -1
  396. package/dist/api/deploy-site.js.map +0 -1
  397. package/dist/api/download-media.d.ts.map +0 -1
  398. package/dist/api/download-media.js.map +0 -1
  399. package/dist/api/enable-s3-website.d.ts +0 -6
  400. package/dist/api/enable-s3-website.d.ts.map +0 -1
  401. package/dist/api/enable-s3-website.js +0 -17
  402. package/dist/api/enable-s3-website.js.map +0 -1
  403. package/dist/api/estimate-price.d.ts.map +0 -1
  404. package/dist/api/estimate-price.js.map +0 -1
  405. package/dist/api/get-aws-client.d.ts.map +0 -1
  406. package/dist/api/get-aws-client.js.map +0 -1
  407. package/dist/api/get-buckets.d.ts.map +0 -1
  408. package/dist/api/get-buckets.js.map +0 -1
  409. package/dist/api/get-function-info.d.ts.map +0 -1
  410. package/dist/api/get-function-info.js.map +0 -1
  411. package/dist/api/get-functions.d.ts.map +0 -1
  412. package/dist/api/get-functions.js.map +0 -1
  413. package/dist/api/get-or-create-bucket.d.ts.map +0 -1
  414. package/dist/api/get-or-create-bucket.js.map +0 -1
  415. package/dist/api/get-regions.d.ts.map +0 -1
  416. package/dist/api/get-regions.js.map +0 -1
  417. package/dist/api/get-render-progress.d.ts.map +0 -1
  418. package/dist/api/get-render-progress.js.map +0 -1
  419. package/dist/api/get-sites.d.ts.map +0 -1
  420. package/dist/api/get-sites.js.map +0 -1
  421. package/dist/api/iam-validation/role-permissions.d.ts.map +0 -1
  422. package/dist/api/iam-validation/role-permissions.js.map +0 -1
  423. package/dist/api/iam-validation/simulate-rule.d.ts.map +0 -1
  424. package/dist/api/iam-validation/simulate-rule.js.map +0 -1
  425. package/dist/api/iam-validation/simulate.d.ts.map +0 -1
  426. package/dist/api/iam-validation/simulate.js.map +0 -1
  427. package/dist/api/iam-validation/suggested-policy.d.ts.map +0 -1
  428. package/dist/api/iam-validation/suggested-policy.js.map +0 -1
  429. package/dist/api/iam-validation/user-permissions.d.ts.map +0 -1
  430. package/dist/api/iam-validation/user-permissions.js.map +0 -1
  431. package/dist/api/mock-functions.d.ts.map +0 -1
  432. package/dist/api/mock-functions.js.map +0 -1
  433. package/dist/api/presign-url.d.ts.map +0 -1
  434. package/dist/api/presign-url.js.map +0 -1
  435. package/dist/api/render-media-on-lambda.d.ts.map +0 -1
  436. package/dist/api/render-media-on-lambda.js.map +0 -1
  437. package/dist/api/render-still-on-lambda.d.ts.map +0 -1
  438. package/dist/api/render-still-on-lambda.js.map +0 -1
  439. package/dist/api/upload-dir.d.ts.map +0 -1
  440. package/dist/api/upload-dir.js.map +0 -1
  441. package/dist/cli/args.d.ts.map +0 -1
  442. package/dist/cli/args.js.map +0 -1
  443. package/dist/cli/commands/functions/deploy.d.ts.map +0 -1
  444. package/dist/cli/commands/functions/deploy.js.map +0 -1
  445. package/dist/cli/commands/functions/index.d.ts.map +0 -1
  446. package/dist/cli/commands/functions/index.js.map +0 -1
  447. package/dist/cli/commands/functions/ls.d.ts.map +0 -1
  448. package/dist/cli/commands/functions/ls.js.map +0 -1
  449. package/dist/cli/commands/functions/rm.d.ts.map +0 -1
  450. package/dist/cli/commands/functions/rm.js.map +0 -1
  451. package/dist/cli/commands/functions/rmall.d.ts.map +0 -1
  452. package/dist/cli/commands/functions/rmall.js.map +0 -1
  453. package/dist/cli/commands/policies/policies.d.ts.map +0 -1
  454. package/dist/cli/commands/policies/policies.js.map +0 -1
  455. package/dist/cli/commands/policies/role.d.ts.map +0 -1
  456. package/dist/cli/commands/policies/role.js.map +0 -1
  457. package/dist/cli/commands/policies/user.d.ts.map +0 -1
  458. package/dist/cli/commands/policies/user.js.map +0 -1
  459. package/dist/cli/commands/policies/validate.d.ts.map +0 -1
  460. package/dist/cli/commands/policies/validate.js.map +0 -1
  461. package/dist/cli/commands/quotas/increase.d.ts.map +0 -1
  462. package/dist/cli/commands/quotas/increase.js.map +0 -1
  463. package/dist/cli/commands/quotas/index.d.ts.map +0 -1
  464. package/dist/cli/commands/quotas/index.js.map +0 -1
  465. package/dist/cli/commands/quotas/list.d.ts.map +0 -1
  466. package/dist/cli/commands/quotas/list.js.map +0 -1
  467. package/dist/cli/commands/regions.d.ts.map +0 -1
  468. package/dist/cli/commands/regions.js.map +0 -1
  469. package/dist/cli/commands/render/progress.d.ts.map +0 -1
  470. package/dist/cli/commands/render/progress.js.map +0 -1
  471. package/dist/cli/commands/render/render.d.ts.map +0 -1
  472. package/dist/cli/commands/render/render.js.map +0 -1
  473. package/dist/cli/commands/sites/create.d.ts.map +0 -1
  474. package/dist/cli/commands/sites/create.js.map +0 -1
  475. package/dist/cli/commands/sites/index.d.ts.map +0 -1
  476. package/dist/cli/commands/sites/index.js.map +0 -1
  477. package/dist/cli/commands/sites/ls.d.ts.map +0 -1
  478. package/dist/cli/commands/sites/ls.js.map +0 -1
  479. package/dist/cli/commands/sites/rm.d.ts.map +0 -1
  480. package/dist/cli/commands/sites/rm.js.map +0 -1
  481. package/dist/cli/commands/sites/rmall.d.ts.map +0 -1
  482. package/dist/cli/commands/sites/rmall.js.map +0 -1
  483. package/dist/cli/commands/still.d.ts.map +0 -1
  484. package/dist/cli/commands/still.js.map +0 -1
  485. package/dist/cli/get-aws-region.d.ts.map +0 -1
  486. package/dist/cli/get-aws-region.js.map +0 -1
  487. package/dist/cli/help.d.ts.map +0 -1
  488. package/dist/cli/help.js.map +0 -1
  489. package/dist/cli/helpers/confirm.d.ts.map +0 -1
  490. package/dist/cli/helpers/confirm.js.map +0 -1
  491. package/dist/cli/helpers/date-string.d.ts.map +0 -1
  492. package/dist/cli/helpers/date-string.js.map +0 -1
  493. package/dist/cli/helpers/find-function-name.d.ts.map +0 -1
  494. package/dist/cli/helpers/find-function-name.js.map +0 -1
  495. package/dist/cli/helpers/format-bytes.d.ts +0 -7
  496. package/dist/cli/helpers/format-bytes.d.ts.map +0 -1
  497. package/dist/cli/helpers/format-bytes.js +0 -104
  498. package/dist/cli/helpers/format-bytes.js.map +0 -1
  499. package/dist/cli/helpers/get-cloudwatch-stream-url.d.ts +0 -9
  500. package/dist/cli/helpers/get-cloudwatch-stream-url.d.ts.map +0 -1
  501. package/dist/cli/helpers/get-cloudwatch-stream-url.js +0 -8
  502. package/dist/cli/helpers/get-cloudwatch-stream-url.js.map +0 -1
  503. package/dist/cli/helpers/progress-bar.d.ts.map +0 -1
  504. package/dist/cli/helpers/progress-bar.js.map +0 -1
  505. package/dist/cli/helpers/quit.d.ts.map +0 -1
  506. package/dist/cli/helpers/quit.js.map +0 -1
  507. package/dist/cli/helpers/yes-or-no.d.ts.map +0 -1
  508. package/dist/cli/helpers/yes-or-no.js.map +0 -1
  509. package/dist/cli/index.d.ts.map +0 -1
  510. package/dist/cli/index.js.map +0 -1
  511. package/dist/cli/is-cli.d.ts.map +0 -1
  512. package/dist/cli/is-cli.js.map +0 -1
  513. package/dist/cli/log.d.ts.map +0 -1
  514. package/dist/cli/log.js.map +0 -1
  515. package/dist/client.d.ts.map +0 -1
  516. package/dist/client.js.map +0 -1
  517. package/dist/defaults.d.ts.map +0 -1
  518. package/dist/defaults.js.map +0 -1
  519. package/dist/functions/chunk-optimization/can-use-optimization.d.ts +0 -7
  520. package/dist/functions/chunk-optimization/can-use-optimization.d.ts.map +0 -1
  521. package/dist/functions/chunk-optimization/can-use-optimization.js +0 -24
  522. package/dist/functions/chunk-optimization/can-use-optimization.js.map +0 -1
  523. package/dist/functions/chunk-optimization/collect-data.d.ts +0 -10
  524. package/dist/functions/chunk-optimization/collect-data.d.ts.map +0 -1
  525. package/dist/functions/chunk-optimization/collect-data.js +0 -28
  526. package/dist/functions/chunk-optimization/collect-data.js.map +0 -1
  527. package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.d.ts +0 -4
  528. package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.d.ts.map +0 -1
  529. package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.js +0 -12
  530. package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.js.map +0 -1
  531. package/dist/functions/chunk-optimization/get-profile-duration.d.ts +0 -4
  532. package/dist/functions/chunk-optimization/get-profile-duration.d.ts.map +0 -1
  533. package/dist/functions/chunk-optimization/get-profile-duration.js +0 -19
  534. package/dist/functions/chunk-optimization/get-profile-duration.js.map +0 -1
  535. package/dist/functions/chunk-optimization/is-valid-profile.d.ts +0 -3
  536. package/dist/functions/chunk-optimization/is-valid-profile.d.ts.map +0 -1
  537. package/dist/functions/chunk-optimization/is-valid-profile.js +0 -13
  538. package/dist/functions/chunk-optimization/is-valid-profile.js.map +0 -1
  539. package/dist/functions/chunk-optimization/optimize-invocation-order.d.ts +0 -3
  540. package/dist/functions/chunk-optimization/optimize-invocation-order.d.ts.map +0 -1
  541. package/dist/functions/chunk-optimization/optimize-invocation-order.js +0 -20
  542. package/dist/functions/chunk-optimization/optimize-invocation-order.js.map +0 -1
  543. package/dist/functions/chunk-optimization/optimize-profile.d.ts +0 -10
  544. package/dist/functions/chunk-optimization/optimize-profile.d.ts.map +0 -1
  545. package/dist/functions/chunk-optimization/optimize-profile.js +0 -75
  546. package/dist/functions/chunk-optimization/optimize-profile.js.map +0 -1
  547. package/dist/functions/chunk-optimization/plan-frame-ranges.d.ts.map +0 -1
  548. package/dist/functions/chunk-optimization/plan-frame-ranges.js.map +0 -1
  549. package/dist/functions/chunk-optimization/s3-optimization-file.d.ts +0 -18
  550. package/dist/functions/chunk-optimization/s3-optimization-file.d.ts.map +0 -1
  551. package/dist/functions/chunk-optimization/s3-optimization-file.js +0 -46
  552. package/dist/functions/chunk-optimization/s3-optimization-file.js.map +0 -1
  553. package/dist/functions/chunk-optimization/simulate-frame-ranges.d.ts +0 -8
  554. package/dist/functions/chunk-optimization/simulate-frame-ranges.d.ts.map +0 -1
  555. package/dist/functions/chunk-optimization/simulate-frame-ranges.js +0 -48
  556. package/dist/functions/chunk-optimization/simulate-frame-ranges.js.map +0 -1
  557. package/dist/functions/chunk-optimization/sort-by-duration.d.ts +0 -3
  558. package/dist/functions/chunk-optimization/sort-by-duration.d.ts.map +0 -1
  559. package/dist/functions/chunk-optimization/sort-by-duration.js +0 -26
  560. package/dist/functions/chunk-optimization/sort-by-duration.js.map +0 -1
  561. package/dist/functions/chunk-optimization/types.d.ts.map +0 -1
  562. package/dist/functions/chunk-optimization/types.js.map +0 -1
  563. package/dist/functions/fire.d.ts +0 -3
  564. package/dist/functions/fire.d.ts.map +0 -1
  565. package/dist/functions/fire.js +0 -25
  566. package/dist/functions/fire.js.map +0 -1
  567. package/dist/functions/helpers/best-frames-per-lambda-param.d.ts.map +0 -1
  568. package/dist/functions/helpers/best-frames-per-lambda-param.js.map +0 -1
  569. package/dist/functions/helpers/calculate-chunk-times.d.ts.map +0 -1
  570. package/dist/functions/helpers/calculate-chunk-times.js.map +0 -1
  571. package/dist/functions/helpers/calculate-price-from-bucket.d.ts.map +0 -1
  572. package/dist/functions/helpers/calculate-price-from-bucket.js.map +0 -1
  573. package/dist/functions/helpers/clean-tmpdir.d.ts.map +0 -1
  574. package/dist/functions/helpers/clean-tmpdir.js.map +0 -1
  575. package/dist/functions/helpers/concat-videos.d.ts.map +0 -1
  576. package/dist/functions/helpers/concat-videos.js.map +0 -1
  577. package/dist/functions/helpers/create-post-render-data.d.ts.map +0 -1
  578. package/dist/functions/helpers/create-post-render-data.js.map +0 -1
  579. package/dist/functions/helpers/delete-chunks.d.ts.map +0 -1
  580. package/dist/functions/helpers/delete-chunks.js.map +0 -1
  581. package/dist/functions/helpers/expected-out-name.d.ts.map +0 -1
  582. package/dist/functions/helpers/expected-out-name.js.map +0 -1
  583. package/dist/functions/helpers/find-output-file-in-bucket.d.ts.map +0 -1
  584. package/dist/functions/helpers/find-output-file-in-bucket.js.map +0 -1
  585. package/dist/functions/helpers/format-costs-info.d.ts.map +0 -1
  586. package/dist/functions/helpers/format-costs-info.js.map +0 -1
  587. package/dist/functions/helpers/get-browser-instance.d.ts.map +0 -1
  588. package/dist/functions/helpers/get-browser-instance.js.map +0 -1
  589. package/dist/functions/helpers/get-chromium-executable-path.d.ts.map +0 -1
  590. package/dist/functions/helpers/get-chromium-executable-path.js.map +0 -1
  591. package/dist/functions/helpers/get-cleanup-progress.d.ts.map +0 -1
  592. package/dist/functions/helpers/get-cleanup-progress.js.map +0 -1
  593. package/dist/functions/helpers/get-current-architecture.d.ts.map +0 -1
  594. package/dist/functions/helpers/get-current-architecture.js.map +0 -1
  595. package/dist/functions/helpers/get-current-region.d.ts.map +0 -1
  596. package/dist/functions/helpers/get-current-region.js.map +0 -1
  597. package/dist/functions/helpers/get-encoding-metadata.d.ts.map +0 -1
  598. package/dist/functions/helpers/get-encoding-metadata.js.map +0 -1
  599. package/dist/functions/helpers/get-files-in-folder.d.ts.map +0 -1
  600. package/dist/functions/helpers/get-files-in-folder.js.map +0 -1
  601. package/dist/functions/helpers/get-files-to-delete.d.ts.map +0 -1
  602. package/dist/functions/helpers/get-files-to-delete.js.map +0 -1
  603. package/dist/functions/helpers/get-final-encoding-status.d.ts.map +0 -1
  604. package/dist/functions/helpers/get-final-encoding-status.js.map +0 -1
  605. package/dist/functions/helpers/get-folder-size.d.ts.map +0 -1
  606. package/dist/functions/helpers/get-folder-size.js.map +0 -1
  607. package/dist/functions/helpers/get-lambdas-invoked-stats.d.ts.map +0 -1
  608. package/dist/functions/helpers/get-lambdas-invoked-stats.js.map +0 -1
  609. package/dist/functions/helpers/get-output-url-from-metadata.d.ts.map +0 -1
  610. package/dist/functions/helpers/get-output-url-from-metadata.js.map +0 -1
  611. package/dist/functions/helpers/get-overall-progress.d.ts.map +0 -1
  612. package/dist/functions/helpers/get-overall-progress.js.map +0 -1
  613. package/dist/functions/helpers/get-post-render-data.d.ts.map +0 -1
  614. package/dist/functions/helpers/get-post-render-data.js.map +0 -1
  615. package/dist/functions/helpers/get-progress.d.ts.map +0 -1
  616. package/dist/functions/helpers/get-progress.js.map +0 -1
  617. package/dist/functions/helpers/get-render-metadata.d.ts.map +0 -1
  618. package/dist/functions/helpers/get-render-metadata.js.map +0 -1
  619. package/dist/functions/helpers/get-retry-stats.d.ts.map +0 -1
  620. package/dist/functions/helpers/get-retry-stats.js.map +0 -1
  621. package/dist/functions/helpers/get-time-to-finish.d.ts.map +0 -1
  622. package/dist/functions/helpers/get-time-to-finish.js.map +0 -1
  623. package/dist/functions/helpers/inspect-errors.d.ts.map +0 -1
  624. package/dist/functions/helpers/inspect-errors.js.map +0 -1
  625. package/dist/functions/helpers/io.d.ts.map +0 -1
  626. package/dist/functions/helpers/io.js.map +0 -1
  627. package/dist/functions/helpers/is-enosp-err.d.ts.map +0 -1
  628. package/dist/functions/helpers/is-enosp-err.js.map +0 -1
  629. package/dist/functions/helpers/is-warm.d.ts.map +0 -1
  630. package/dist/functions/helpers/is-warm.js.map +0 -1
  631. package/dist/functions/helpers/min-max.d.ts.map +0 -1
  632. package/dist/functions/helpers/min-max.js.map +0 -1
  633. package/dist/functions/helpers/presign-url.d.ts +0 -2
  634. package/dist/functions/helpers/presign-url.d.ts.map +0 -1
  635. package/dist/functions/helpers/presign-url.js +0 -9
  636. package/dist/functions/helpers/presign-url.js.map +0 -1
  637. package/dist/functions/helpers/print-cloudwatch-helper.d.ts.map +0 -1
  638. package/dist/functions/helpers/print-cloudwatch-helper.js.map +0 -1
  639. package/dist/functions/helpers/print-concurrency-curve.d.ts.map +0 -1
  640. package/dist/functions/helpers/print-concurrency-curve.js.map +0 -1
  641. package/dist/functions/helpers/read-with-progress.d.ts.map +0 -1
  642. package/dist/functions/helpers/read-with-progress.js.map +0 -1
  643. package/dist/functions/helpers/timer.d.ts.map +0 -1
  644. package/dist/functions/helpers/timer.js.map +0 -1
  645. package/dist/functions/helpers/validate-composition.d.ts.map +0 -1
  646. package/dist/functions/helpers/validate-composition.js.map +0 -1
  647. package/dist/functions/helpers/write-lambda-error.d.ts.map +0 -1
  648. package/dist/functions/helpers/write-lambda-error.js.map +0 -1
  649. package/dist/functions/helpers/write-post-render-data.d.ts.map +0 -1
  650. package/dist/functions/helpers/write-post-render-data.js.map +0 -1
  651. package/dist/functions/index.d.ts.map +0 -1
  652. package/dist/functions/index.js.map +0 -1
  653. package/dist/functions/info.d.ts.map +0 -1
  654. package/dist/functions/info.js.map +0 -1
  655. package/dist/functions/launch.d.ts.map +0 -1
  656. package/dist/functions/launch.js.map +0 -1
  657. package/dist/functions/progress.d.ts.map +0 -1
  658. package/dist/functions/progress.js.map +0 -1
  659. package/dist/functions/renderer.d.ts.map +0 -1
  660. package/dist/functions/renderer.js.map +0 -1
  661. package/dist/functions/start.d.ts.map +0 -1
  662. package/dist/functions/start.js.map +0 -1
  663. package/dist/functions/still.d.ts.map +0 -1
  664. package/dist/functions/still.js.map +0 -1
  665. package/dist/index.d.ts.map +0 -1
  666. package/dist/index.js.map +0 -1
  667. package/dist/internals.d.ts.map +0 -1
  668. package/dist/internals.js.map +0 -1
  669. package/dist/pricing/aws-regions.d.ts.map +0 -1
  670. package/dist/pricing/aws-regions.js.map +0 -1
  671. package/dist/pricing/price-per-1-s.d.ts.map +0 -1
  672. package/dist/pricing/price-per-1-s.js.map +0 -1
  673. package/dist/regions.d.ts.map +0 -1
  674. package/dist/regions.js.map +0 -1
  675. package/dist/shared/await.d.ts.map +0 -1
  676. package/dist/shared/await.js.map +0 -1
  677. package/dist/shared/aws-clients.d.ts.map +0 -1
  678. package/dist/shared/aws-clients.js.map +0 -1
  679. package/dist/shared/bundle-site.d.ts.map +0 -1
  680. package/dist/shared/bundle-site.js.map +0 -1
  681. package/dist/shared/call-lambda.d.ts.map +0 -1
  682. package/dist/shared/call-lambda.js.map +0 -1
  683. package/dist/shared/check-credentials.d.ts.map +0 -1
  684. package/dist/shared/check-credentials.js.map +0 -1
  685. package/dist/shared/chunk.d.ts +0 -2
  686. package/dist/shared/chunk.d.ts.map +0 -1
  687. package/dist/shared/chunk.js +0 -12
  688. package/dist/shared/chunk.js.map +0 -1
  689. package/dist/shared/constants.d.ts.map +0 -1
  690. package/dist/shared/constants.js.map +0 -1
  691. package/dist/shared/convert-to-serve-url.d.ts.map +0 -1
  692. package/dist/shared/convert-to-serve-url.js.map +0 -1
  693. package/dist/shared/docs-url.d.ts.map +0 -1
  694. package/dist/shared/docs-url.js.map +0 -1
  695. package/dist/shared/function-zip-path.d.ts.map +0 -1
  696. package/dist/shared/function-zip-path.js.map +0 -1
  697. package/dist/shared/get-account-id.d.ts.map +0 -1
  698. package/dist/shared/get-account-id.js.map +0 -1
  699. package/dist/shared/get-function-version.d.ts.map +0 -1
  700. package/dist/shared/get-function-version.js.map +0 -1
  701. package/dist/shared/hosted-layers.d.ts.map +0 -1
  702. package/dist/shared/hosted-layers.js.map +0 -1
  703. package/dist/shared/is-in-lambda.d.ts.map +0 -1
  704. package/dist/shared/is-in-lambda.js.map +0 -1
  705. package/dist/shared/make-s3-url.d.ts.map +0 -1
  706. package/dist/shared/make-s3-url.js.map +0 -1
  707. package/dist/shared/parse-lambda-initialized-key.d.ts.map +0 -1
  708. package/dist/shared/parse-lambda-initialized-key.js.map +0 -1
  709. package/dist/shared/parse-lambda-timings-key.d.ts.map +0 -1
  710. package/dist/shared/parse-lambda-timings-key.js.map +0 -1
  711. package/dist/shared/random-hash.d.ts.map +0 -1
  712. package/dist/shared/random-hash.js.map +0 -1
  713. package/dist/shared/return-values.d.ts.map +0 -1
  714. package/dist/shared/return-values.js.map +0 -1
  715. package/dist/shared/sleep.d.ts.map +0 -1
  716. package/dist/shared/sleep.js.map +0 -1
  717. package/dist/shared/stream-to-string.d.ts.map +0 -1
  718. package/dist/shared/stream-to-string.js.map +0 -1
  719. package/dist/shared/validate-architecture.d.ts.map +0 -1
  720. package/dist/shared/validate-architecture.js.map +0 -1
  721. package/dist/shared/validate-aws-region.d.ts.map +0 -1
  722. package/dist/shared/validate-aws-region.js.map +0 -1
  723. package/dist/shared/validate-bucketname.d.ts.map +0 -1
  724. package/dist/shared/validate-bucketname.js.map +0 -1
  725. package/dist/shared/validate-disk-size-in-mb.d.ts.map +0 -1
  726. package/dist/shared/validate-disk-size-in-mb.js.map +0 -1
  727. package/dist/shared/validate-frames-per-lambda.d.ts.map +0 -1
  728. package/dist/shared/validate-frames-per-lambda.js.map +0 -1
  729. package/dist/shared/validate-memory-size.d.ts.map +0 -1
  730. package/dist/shared/validate-memory-size.js.map +0 -1
  731. package/dist/shared/validate-outname.d.ts.map +0 -1
  732. package/dist/shared/validate-outname.js.map +0 -1
  733. package/dist/shared/validate-presign-expiration.d.ts.map +0 -1
  734. package/dist/shared/validate-presign-expiration.js.map +0 -1
  735. package/dist/shared/validate-privacy.d.ts.map +0 -1
  736. package/dist/shared/validate-privacy.js.map +0 -1
  737. package/dist/shared/validate-retention-period.d.ts.map +0 -1
  738. package/dist/shared/validate-retention-period.js.map +0 -1
  739. package/dist/shared/validate-retries.d.ts.map +0 -1
  740. package/dist/shared/validate-retries.js.map +0 -1
  741. package/dist/shared/validate-serveurl.d.ts.map +0 -1
  742. package/dist/shared/validate-serveurl.js.map +0 -1
  743. package/dist/shared/validate-site-name.d.ts.map +0 -1
  744. package/dist/shared/validate-site-name.js.map +0 -1
  745. package/dist/shared/validate-timeout.d.ts.map +0 -1
  746. package/dist/shared/validate-timeout.js.map +0 -1
  747. package/tsconfig.json +0 -16
@@ -1,36 +1,55 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
4
24
  };
5
25
  Object.defineProperty(exports, "__esModule", { value: true });
6
26
  exports.launchHandler = void 0;
7
27
  const client_lambda_1 = require("@aws-sdk/client-lambda");
8
28
  const renderer_1 = require("@remotion/renderer");
9
- const fs_1 = __importDefault(require("fs"));
29
+ const fs_1 = __importStar(require("fs"));
30
+ const path_1 = require("path");
10
31
  const remotion_1 = require("remotion");
32
+ const version_1 = require("remotion/version");
11
33
  const aws_clients_1 = require("../shared/aws-clients");
34
+ const cleanup_serialized_input_props_1 = require("../shared/cleanup-serialized-input-props");
12
35
  const constants_1 = require("../shared/constants");
36
+ const deserialize_input_props_1 = require("../shared/deserialize-input-props");
13
37
  const docs_url_1 = require("../shared/docs-url");
38
+ const invoke_webhook_1 = require("../shared/invoke-webhook");
14
39
  const make_s3_url_1 = require("../shared/make-s3-url");
15
40
  const validate_frames_per_lambda_1 = require("../shared/validate-frames-per-lambda");
16
41
  const validate_outname_1 = require("../shared/validate-outname");
17
42
  const validate_privacy_1 = require("../shared/validate-privacy");
18
- const collect_data_1 = require("./chunk-optimization/collect-data");
19
- const get_frame_ranges_from_profile_1 = require("./chunk-optimization/get-frame-ranges-from-profile");
20
- const get_profile_duration_1 = require("./chunk-optimization/get-profile-duration");
21
- const is_valid_profile_1 = require("./chunk-optimization/is-valid-profile");
22
- const optimize_invocation_order_1 = require("./chunk-optimization/optimize-invocation-order");
23
- const optimize_profile_1 = require("./chunk-optimization/optimize-profile");
24
43
  const plan_frame_ranges_1 = require("./chunk-optimization/plan-frame-ranges");
25
- const s3_optimization_file_1 = require("./chunk-optimization/s3-optimization-file");
26
44
  const best_frames_per_lambda_param_1 = require("./helpers/best-frames-per-lambda-param");
27
45
  const concat_videos_1 = require("./helpers/concat-videos");
28
46
  const create_post_render_data_1 = require("./helpers/create-post-render-data");
47
+ const delete_chunks_1 = require("./helpers/delete-chunks");
29
48
  const expected_out_name_1 = require("./helpers/expected-out-name");
49
+ const find_output_file_in_bucket_1 = require("./helpers/find-output-file-in-bucket");
30
50
  const get_browser_instance_1 = require("./helpers/get-browser-instance");
31
51
  const get_current_region_1 = require("./helpers/get-current-region");
32
52
  const get_files_to_delete_1 = require("./helpers/get-files-to-delete");
33
- const get_lambdas_invoked_stats_1 = require("./helpers/get-lambdas-invoked-stats");
34
53
  const get_output_url_from_metadata_1 = require("./helpers/get-output-url-from-metadata");
35
54
  const inspect_errors_1 = require("./helpers/inspect-errors");
36
55
  const io_1 = require("./helpers/io");
@@ -38,50 +57,136 @@ const timer_1 = require("./helpers/timer");
38
57
  const validate_composition_1 = require("./helpers/validate-composition");
39
58
  const write_lambda_error_1 = require("./helpers/write-lambda-error");
40
59
  const write_post_render_data_1 = require("./helpers/write-post-render-data");
60
+ const callFunctionWithRetry = async ({ payload, retries, functionName, }) => {
61
+ try {
62
+ await (0, aws_clients_1.getLambdaClient)((0, get_current_region_1.getCurrentRegionInFunction)()).send(new client_lambda_1.InvokeCommand({
63
+ FunctionName: functionName,
64
+ // @ts-expect-error
65
+ Payload: JSON.stringify(payload),
66
+ InvocationType: 'Event',
67
+ }), {});
68
+ }
69
+ catch (err) {
70
+ if (err.name === 'ResourceConflictException') {
71
+ if (retries > 10) {
72
+ throw err;
73
+ }
74
+ await new Promise((resolve) => {
75
+ setTimeout(resolve, 1000);
76
+ });
77
+ return callFunctionWithRetry({
78
+ payload,
79
+ retries: retries + 1,
80
+ functionName,
81
+ });
82
+ }
83
+ throw err;
84
+ }
85
+ };
41
86
  const innerLaunchHandler = async (params, options) => {
42
- var _a, _b;
87
+ var _a, _b, _c, _d, _e;
43
88
  if (params.type !== constants_1.LambdaRoutines.launch) {
44
89
  throw new Error('Expected launch type');
45
90
  }
91
+ const functionName = (_a = params.rendererFunctionName) !== null && _a !== void 0 ? _a : process.env.AWS_LAMBDA_FUNCTION_NAME;
46
92
  const startedDate = Date.now();
47
- const [browserInstance, optimization] = await Promise.all([
48
- (0, get_browser_instance_1.getBrowserInstance)(remotion_1.Internals.Logging.isEqualOrBelowLogLevel(remotion_1.Internals.Logging.getLogLevel(), 'verbose'), params.chromiumOptions),
49
- (0, s3_optimization_file_1.getOptimization)({
50
- bucketName: params.bucketName,
51
- siteId: (0, make_s3_url_1.getServeUrlHash)(params.serveUrl),
52
- compositionId: params.composition,
53
- region: (0, get_current_region_1.getCurrentRegionInFunction)(),
54
- expectedBucketOwner: options.expectedBucketOwner,
55
- }),
56
- ]);
93
+ let webhookInvoked = false;
94
+ console.log(`Function has ${Math.max(options.getRemainingTimeInMillis() - 1000, 1000)} before it times out`);
95
+ const verbose = renderer_1.RenderInternals.isEqualOrBelowLogLevel(params.logLevel, 'verbose');
96
+ const webhookDueToTimeout = setTimeout(async () => {
97
+ if (params.webhook && !webhookInvoked) {
98
+ try {
99
+ await (0, invoke_webhook_1.invokeWebhook)({
100
+ url: params.webhook.url,
101
+ secret: params.webhook.secret,
102
+ payload: {
103
+ type: 'timeout',
104
+ renderId: params.renderId,
105
+ expectedBucketOwner: options.expectedBucketOwner,
106
+ bucketName: params.bucketName,
107
+ },
108
+ });
109
+ webhookInvoked = true;
110
+ }
111
+ catch (err) {
112
+ if (process.env.NODE_ENV === 'test') {
113
+ throw err;
114
+ }
115
+ await (0, write_lambda_error_1.writeLambdaError)({
116
+ bucketName: params.bucketName,
117
+ errorInfo: {
118
+ type: 'webhook',
119
+ message: err.message,
120
+ name: err.name,
121
+ stack: err.stack,
122
+ tmpDir: null,
123
+ frame: 0,
124
+ chunk: 0,
125
+ isFatal: false,
126
+ attempt: 1,
127
+ willRetry: false,
128
+ totalAttempts: 1,
129
+ },
130
+ renderId: params.renderId,
131
+ expectedBucketOwner: options.expectedBucketOwner,
132
+ });
133
+ console.log('Failed to invoke webhook:');
134
+ console.log(err);
135
+ }
136
+ }
137
+ }, Math.max(options.getRemainingTimeInMillis() - 1000, 1000));
138
+ const browserInstance = await (0, get_browser_instance_1.getBrowserInstance)(verbose, params.chromiumOptions);
139
+ const downloadMap = renderer_1.RenderInternals.makeDownloadMap();
140
+ const inputPropsPromise = (0, deserialize_input_props_1.deserializeInputProps)({
141
+ bucketName: params.bucketName,
142
+ expectedBucketOwner: options.expectedBucketOwner,
143
+ region: (0, get_current_region_1.getCurrentRegionInFunction)(),
144
+ serialized: params.inputProps,
145
+ });
57
146
  const comp = await (0, validate_composition_1.validateComposition)({
58
147
  serveUrl: params.serveUrl,
59
148
  composition: params.composition,
60
149
  browserInstance,
61
- inputProps: params.inputProps,
150
+ inputProps: await inputPropsPromise,
151
+ envVariables: params.envVariables,
152
+ ffmpegExecutable: null,
153
+ ffprobeExecutable: null,
154
+ timeoutInMilliseconds: params.timeoutInMilliseconds,
155
+ chromiumOptions: params.chromiumOptions,
156
+ port: null,
157
+ downloadMap,
158
+ forceHeight: params.forceHeight,
159
+ forceWidth: params.forceWidth,
62
160
  });
63
- remotion_1.Internals.validateDurationInFrames(comp.durationInFrames, 'passed to <Component />');
64
- remotion_1.Internals.validateFps(comp.fps, 'passed to <Component />');
65
- remotion_1.Internals.validateDimension(comp.height, 'height', 'passed to <Component />');
66
- remotion_1.Internals.validateDimension(comp.width, 'width', 'passed to <Component />');
161
+ remotion_1.Internals.validateDurationInFrames({
162
+ durationInFrames: comp.durationInFrames,
163
+ component: 'passed to a Lambda render',
164
+ allowFloats: false,
165
+ });
166
+ remotion_1.Internals.validateFps(comp.fps, 'passed to a Lambda render', false);
167
+ remotion_1.Internals.validateDimension(comp.height, 'height', 'passed to a Lambda render');
168
+ remotion_1.Internals.validateDimension(comp.width, 'width', 'passed to a Lambda render');
169
+ renderer_1.RenderInternals.validateBitrate(params.audioBitrate, 'audioBitrate');
170
+ renderer_1.RenderInternals.validateBitrate(params.videoBitrate, 'videoBitrate');
171
+ renderer_1.RenderInternals.validateConcurrency(params.concurrencyPerLambda, 'concurrencyPerLambda');
67
172
  const realFrameRange = renderer_1.RenderInternals.getRealFrameRange(comp.durationInFrames, params.frameRange);
68
- const frameCount = renderer_1.RenderInternals.getDurationFromFrameRange(realFrameRange, 0);
69
- const framesPerLambda = (_a = params.framesPerLambda) !== null && _a !== void 0 ? _a : (0, best_frames_per_lambda_param_1.bestFramesPerLambdaParam)(frameCount);
70
- (0, validate_frames_per_lambda_1.validateFramesPerLambda)(framesPerLambda);
71
- const chunkCount = Math.ceil(frameCount / framesPerLambda);
173
+ const frameCount = renderer_1.RenderInternals.getFramesToRender(realFrameRange, params.everyNthFrame);
174
+ const framesPerLambda = (_b = params.framesPerLambda) !== null && _b !== void 0 ? _b : (0, best_frames_per_lambda_param_1.bestFramesPerLambdaParam)(frameCount.length);
175
+ (0, validate_frames_per_lambda_1.validateFramesPerLambda)({
176
+ framesPerLambda,
177
+ durationInFrames: frameCount.length,
178
+ });
179
+ const chunkCount = Math.ceil(frameCount.length / framesPerLambda);
72
180
  if (chunkCount > constants_1.MAX_FUNCTIONS_PER_RENDER) {
73
- 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.`);
181
+ 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#too-many-functions for help.`);
74
182
  }
75
- (0, validate_outname_1.validateOutname)(params.outName);
183
+ (0, validate_outname_1.validateOutname)(params.outName, params.codec, params.audioCodec);
76
184
  (0, validate_privacy_1.validatePrivacy)(params.privacy);
77
185
  renderer_1.RenderInternals.validatePuppeteerTimeout(params.timeoutInMilliseconds);
78
- const { chunks, didUseOptimization } = (0, plan_frame_ranges_1.planFrameRanges)({
79
- chunkCount,
186
+ const { chunks } = (0, plan_frame_ranges_1.planFrameRanges)({
80
187
  framesPerLambda,
81
- optimization,
82
- // TODO: Re-enable chunk optimization later
83
- shouldUseOptimization: false,
84
188
  frameRange: realFrameRange,
189
+ everyNthFrame: params.everyNthFrame,
85
190
  });
86
191
  const sortedChunks = chunks.slice().sort((a, b) => a[0] - b[0]);
87
192
  const invokers = Math.round(Math.sqrt(chunks.length));
@@ -110,14 +215,24 @@ const innerLaunchHandler = async (params, options) => {
110
215
  proResProfile: params.proResProfile,
111
216
  quality: params.quality,
112
217
  privacy: params.privacy,
113
- logLevel: (_a = params.logLevel) !== null && _a !== void 0 ? _a : remotion_1.Internals.Logging.DEFAULT_LOG_LEVEL,
218
+ logLevel: (_a = params.logLevel) !== null && _a !== void 0 ? _a : 'info',
114
219
  attempt: 1,
115
220
  timeoutInMilliseconds: params.timeoutInMilliseconds,
116
221
  chromiumOptions: params.chromiumOptions,
117
222
  scale: params.scale,
223
+ everyNthFrame: params.everyNthFrame,
224
+ concurrencyPerLambda: params.concurrencyPerLambda,
225
+ muted: params.muted,
226
+ audioBitrate: params.audioBitrate,
227
+ videoBitrate: params.videoBitrate,
228
+ launchFunctionConfig: {
229
+ version: version_1.VERSION,
230
+ },
231
+ dumpBrowserLogs: params.dumpBrowserLogs,
118
232
  };
119
233
  return payload;
120
234
  });
235
+ console.log('Render plan: ', chunks.map((c, i) => `Chunk ${i} (Frames ${c[0]} - ${c[1]})`).join(', '));
121
236
  const renderMetadata = {
122
237
  startedDate,
123
238
  videoConfig: comp,
@@ -133,17 +248,43 @@ const innerLaunchHandler = async (params, options) => {
133
248
  compositionId: comp.id,
134
249
  siteId: (0, make_s3_url_1.getServeUrlHash)(params.serveUrl),
135
250
  codec: params.codec,
136
- usesOptimizationProfile: didUseOptimization,
137
251
  type: 'video',
138
252
  imageFormat: params.imageFormat,
139
253
  inputProps: params.inputProps,
140
- lambdaVersion: constants_1.CURRENT_VERSION,
254
+ lambdaVersion: version_1.VERSION,
141
255
  framesPerLambda,
142
256
  memorySizeInMb: Number(process.env.AWS_LAMBDA_FUNCTION_MEMORY_SIZE),
143
257
  region: (0, get_current_region_1.getCurrentRegionInFunction)(),
144
258
  renderId: params.renderId,
145
- outName: (_b = params.outName) !== null && _b !== void 0 ? _b : undefined,
259
+ outName: (_c = params.outName) !== null && _c !== void 0 ? _c : undefined,
260
+ privacy: params.privacy,
261
+ everyNthFrame: params.everyNthFrame,
262
+ frameRange: realFrameRange,
263
+ audioCodec: params.audioCodec,
146
264
  };
265
+ const { key, renderBucketName, customCredentials } = (0, expected_out_name_1.getExpectedOutName)(renderMetadata, params.bucketName, typeof params.outName === 'string' || typeof params.outName === 'undefined'
266
+ ? null
267
+ : (_e = (_d = params.outName) === null || _d === void 0 ? void 0 : _d.s3OutputProvider) !== null && _e !== void 0 ? _e : null);
268
+ const output = await (0, find_output_file_in_bucket_1.findOutputFileInBucket)({
269
+ bucketName: params.bucketName,
270
+ customCredentials,
271
+ region: (0, get_current_region_1.getCurrentRegionInFunction)(),
272
+ renderMetadata,
273
+ });
274
+ if (output) {
275
+ if (params.overwrite) {
276
+ console.info('Deleting', { bucketName: renderBucketName, key }, 'because it already existed and will be overwritten');
277
+ await (0, io_1.lambdaDeleteFile)({
278
+ bucketName: renderBucketName,
279
+ customCredentials,
280
+ key,
281
+ region: (0, get_current_region_1.getCurrentRegionInFunction)(),
282
+ });
283
+ }
284
+ else {
285
+ throw new TypeError(`Output file "${key}" in bucket "${renderBucketName}" in region "${(0, get_current_region_1.getCurrentRegionInFunction)()}" already exists. Delete it before re-rendering, or use the overwrite option to delete it before render."`);
286
+ }
287
+ }
147
288
  await (0, io_1.lambdaWriteFile)({
148
289
  bucketName: params.bucketName,
149
290
  key: (0, constants_1.renderMetadataKey)(params.renderId),
@@ -151,43 +292,30 @@ const innerLaunchHandler = async (params, options) => {
151
292
  region: (0, get_current_region_1.getCurrentRegionInFunction)(),
152
293
  privacy: 'private',
153
294
  expectedBucketOwner: options.expectedBucketOwner,
295
+ downloadBehavior: null,
296
+ customCredentials: null,
154
297
  });
155
- await Promise.all(lambdaPayloads.map(async (payload, index) => {
156
- const callingLambdaTimer = (0, timer_1.timer)('Calling chunk ' + index);
157
- await (0, aws_clients_1.getLambdaClient)((0, get_current_region_1.getCurrentRegionInFunction)()).send(new client_lambda_1.InvokeCommand({
158
- FunctionName: process.env.AWS_LAMBDA_FUNCTION_NAME,
159
- // @ts-expect-error
160
- Payload: JSON.stringify(payload),
161
- InvocationType: 'Event',
162
- }), {});
163
- callingLambdaTimer.end();
298
+ await Promise.all(lambdaPayloads.map(async (payload) => {
299
+ await callFunctionWithRetry({ payload, retries: 0, functionName });
164
300
  }));
165
301
  reqSend.end();
166
302
  let lastProgressUploaded = 0;
167
- let encodingStop = null;
168
- const onProgress = (framesEncoded, start) => {
169
- const relativeProgress = framesEncoded / frameCount;
303
+ const onProgress = (framesEncoded) => {
304
+ const relativeProgress = framesEncoded / frameCount.length;
170
305
  const deltaSinceLastProgressUploaded = relativeProgress - lastProgressUploaded;
171
- if (relativeProgress === 1) {
172
- encodingStop = Date.now();
173
- }
174
306
  if (deltaSinceLastProgressUploaded < 0.1) {
175
307
  return;
176
308
  }
177
309
  lastProgressUploaded = relativeProgress;
178
- const encodingProgress = {
179
- framesEncoded,
180
- totalFrames: frameCount,
181
- doneIn: encodingStop ? encodingStop - start : null,
182
- timeToInvoke: null,
183
- };
184
310
  (0, io_1.lambdaWriteFile)({
185
311
  bucketName: params.bucketName,
186
312
  key: (0, constants_1.encodingProgressKey)(params.renderId),
187
- body: JSON.stringify(encodingProgress),
313
+ body: String(Math.round(framesEncoded / constants_1.ENCODING_PROGRESS_STEP_SIZE)),
188
314
  region: (0, get_current_region_1.getCurrentRegionInFunction)(),
189
315
  privacy: 'private',
190
316
  expectedBucketOwner: options.expectedBucketOwner,
317
+ downloadBehavior: null,
318
+ customCredentials: null,
191
319
  }).catch((err) => {
192
320
  (0, write_lambda_error_1.writeLambdaError)({
193
321
  bucketName: params.bucketName,
@@ -209,20 +337,63 @@ const innerLaunchHandler = async (params, options) => {
209
337
  });
210
338
  });
211
339
  };
212
- const { outfile, cleanupChunksProm, encodingStart } = await (0, concat_videos_1.concatVideosS3)({
340
+ const onErrors = async (errors) => {
341
+ var _a;
342
+ console.log('Found Errors', errors);
343
+ if (params.webhook) {
344
+ console.log('Sending webhook with errors');
345
+ await (0, invoke_webhook_1.invokeWebhook)({
346
+ url: params.webhook.url,
347
+ secret: (_a = params.webhook.secret) !== null && _a !== void 0 ? _a : null,
348
+ payload: {
349
+ type: 'error',
350
+ renderId: params.renderId,
351
+ expectedBucketOwner: options.expectedBucketOwner,
352
+ bucketName: params.bucketName,
353
+ errors: errors.slice(0, 5).map((e) => ({
354
+ message: e.message,
355
+ name: e.name,
356
+ stack: e.stack,
357
+ })),
358
+ },
359
+ });
360
+ }
361
+ else {
362
+ console.log('No webhook specified');
363
+ }
364
+ throw new Error('Stopping Lambda function because error occurred: ' + errors[0].stack);
365
+ };
366
+ const fps = comp.fps / params.everyNthFrame;
367
+ const outdir = (0, path_1.join)(renderer_1.RenderInternals.tmpDir(constants_1.CONCAT_FOLDER_TOKEN), 'bucket');
368
+ if ((0, fs_1.existsSync)(outdir)) {
369
+ (fs_1.rmSync !== null && fs_1.rmSync !== void 0 ? fs_1.rmSync : fs_1.rmdirSync)(outdir, {
370
+ recursive: true,
371
+ });
372
+ }
373
+ (0, fs_1.mkdirSync)(outdir);
374
+ const files = await (0, concat_videos_1.getAllFilesS3)({
213
375
  bucket: params.bucketName,
214
376
  expectedFiles: chunkCount,
215
- onProgress,
216
- numberOfFrames: frameCount,
377
+ outdir,
217
378
  renderId: params.renderId,
218
379
  region: (0, get_current_region_1.getCurrentRegionInFunction)(),
219
- codec: params.codec,
220
380
  expectedBucketOwner: options.expectedBucketOwner,
381
+ onErrors,
221
382
  });
222
- if (!encodingStop) {
223
- encodingStop = Date.now();
224
- }
225
- const { key, renderBucketName } = (0, expected_out_name_1.getExpectedOutName)(renderMetadata, params.bucketName);
383
+ const encodingStart = Date.now();
384
+ const { outfile, cleanupChunksProm } = await (0, concat_videos_1.concatVideosS3)({
385
+ onProgress,
386
+ numberOfFrames: frameCount.length,
387
+ codec: params.codec,
388
+ fps,
389
+ numberOfGifLoops: params.numberOfGifLoops,
390
+ ffmpegExecutable: null,
391
+ remotionRoot: process.cwd(),
392
+ files,
393
+ outdir,
394
+ audioCodec: params.audioCodec,
395
+ });
396
+ const encodingStop = Date.now();
226
397
  const outputSize = fs_1.default.statSync(outfile);
227
398
  await (0, io_1.lambdaWriteFile)({
228
399
  bucketName: renderBucketName,
@@ -231,60 +402,24 @@ const innerLaunchHandler = async (params, options) => {
231
402
  region: (0, get_current_region_1.getCurrentRegionInFunction)(),
232
403
  privacy: params.privacy,
233
404
  expectedBucketOwner: options.expectedBucketOwner,
405
+ downloadBehavior: params.downloadBehavior,
406
+ customCredentials,
407
+ });
408
+ const contents = await (0, io_1.lambdaLs)({
409
+ bucketName: params.bucketName,
410
+ prefix: (0, constants_1.rendersPrefix)(params.renderId),
411
+ expectedBucketOwner: options.expectedBucketOwner,
412
+ region: (0, get_current_region_1.getCurrentRegionInFunction)(),
234
413
  });
235
- let chunkProm = Promise.resolve();
236
- // TODO: Enable in a later release
237
- const enableChunkOptimization = false;
238
- if (enableChunkOptimization) {
239
- const chunkData = await (0, collect_data_1.collectChunkInformation)({
240
- bucketName: params.bucketName,
241
- renderId: params.renderId,
242
- region: (0, get_current_region_1.getCurrentRegionInFunction)(),
243
- expectedBucketOwner: options.expectedBucketOwner,
244
- });
245
- const optimizedProfile = (0, optimize_invocation_order_1.optimizeInvocationOrder)((0, optimize_profile_1.optimizeProfileRecursively)(chunkData, 400));
246
- const optimizedFrameRange = (0, get_frame_ranges_from_profile_1.getFrameRangesFromProfile)(optimizedProfile);
247
- chunkProm = (0, is_valid_profile_1.isValidOptimizationProfile)(optimizedProfile)
248
- ? (0, s3_optimization_file_1.writeOptimization)({
249
- bucketName: params.bucketName,
250
- optimization: {
251
- ranges: optimizedFrameRange,
252
- oldTiming: (0, get_profile_duration_1.getProfileDuration)(chunkData),
253
- newTiming: (0, get_profile_duration_1.getProfileDuration)(optimizedProfile),
254
- createdFromRenderId: params.renderId,
255
- framesPerLambda,
256
- lambdaVersion: constants_1.CURRENT_VERSION,
257
- frameRange: realFrameRange,
258
- },
259
- expectedBucketOwner: options.expectedBucketOwner,
260
- compositionId: params.composition,
261
- siteId: (0, make_s3_url_1.getServeUrlHash)(params.serveUrl),
262
- region: (0, get_current_region_1.getCurrentRegionInFunction)(),
263
- })
264
- : Promise.resolve();
265
- }
266
- const [, contents] = await Promise.all([
267
- chunkProm,
268
- (0, io_1.lambdaLs)({
269
- bucketName: params.bucketName,
270
- prefix: (0, constants_1.rendersPrefix)(params.renderId),
271
- expectedBucketOwner: options.expectedBucketOwner,
272
- region: (0, get_current_region_1.getCurrentRegionInFunction)(),
273
- }),
274
- ]);
275
- const finalEncodingProgress = {
276
- framesEncoded: frameCount,
277
- totalFrames: frameCount,
278
- doneIn: encodingStop ? encodingStop - encodingStart : null,
279
- timeToInvoke: (0, get_lambdas_invoked_stats_1.getLambdasInvokedStats)(contents, params.renderId, renderMetadata.estimatedRenderLambdaInvokations, renderMetadata.startedDate).timeToInvokeLambdas,
280
- };
281
414
  const finalEncodingProgressProm = (0, io_1.lambdaWriteFile)({
282
415
  bucketName: params.bucketName,
283
416
  key: (0, constants_1.encodingProgressKey)(params.renderId),
284
- body: JSON.stringify(finalEncodingProgress),
417
+ body: String(Math.ceil(frameCount.length / constants_1.ENCODING_PROGRESS_STEP_SIZE)),
285
418
  region: (0, get_current_region_1.getCurrentRegionInFunction)(),
286
419
  privacy: 'private',
287
420
  expectedBucketOwner: options.expectedBucketOwner,
421
+ downloadBehavior: null,
422
+ customCredentials: null,
288
423
  });
289
424
  const errorExplanationsProm = (0, inspect_errors_1.inspectErrors)({
290
425
  contents,
@@ -297,7 +432,21 @@ const innerLaunchHandler = async (params, options) => {
297
432
  chunkCount,
298
433
  renderId: params.renderId,
299
434
  });
300
- const postRenderData = await (0, create_post_render_data_1.createPostRenderData)({
435
+ const deletProm = verbose
436
+ ? Promise.resolve(0)
437
+ : (0, delete_chunks_1.cleanupFiles)({
438
+ region: (0, get_current_region_1.getCurrentRegionInFunction)(),
439
+ bucket: params.bucketName,
440
+ contents,
441
+ jobs,
442
+ });
443
+ const cleanupSerializedInputPropsProm = (0, cleanup_serialized_input_props_1.cleanupSerializedInputProps)({
444
+ bucketName: params.bucketName,
445
+ region: (0, get_current_region_1.getCurrentRegionInFunction)(),
446
+ serialized: params.inputProps,
447
+ });
448
+ const outputUrl = (0, get_output_url_from_metadata_1.getOutputUrlFromMetadata)(renderMetadata, params.bucketName, customCredentials);
449
+ const postRenderData = (0, create_post_render_data_1.createPostRenderData)({
301
450
  expectedBucketOwner: options.expectedBucketOwner,
302
451
  region: (0, get_current_region_1.getCurrentRegionInFunction)(),
303
452
  renderId: params.renderId,
@@ -306,11 +455,11 @@ const innerLaunchHandler = async (params, options) => {
306
455
  contents,
307
456
  errorExplanations: await errorExplanationsProm,
308
457
  timeToEncode: encodingStop - encodingStart,
309
- timeToDelete: 0,
458
+ timeToDelete: (await Promise.all([deletProm, cleanupSerializedInputPropsProm])).reduce((a, b) => a + b, 0),
310
459
  outputFile: {
311
460
  lastModified: Date.now(),
312
461
  size: outputSize.size,
313
- url: (0, get_output_url_from_metadata_1.getOutputUrlFromMetadata)(renderMetadata, params.bucketName),
462
+ url: outputUrl,
314
463
  },
315
464
  });
316
465
  await finalEncodingProgressProm;
@@ -321,9 +470,63 @@ const innerLaunchHandler = async (params, options) => {
321
470
  region: (0, get_current_region_1.getCurrentRegionInFunction)(),
322
471
  renderId: params.renderId,
323
472
  });
473
+ await (0, io_1.lambdaDeleteFile)({
474
+ bucketName: params.bucketName,
475
+ key: (0, constants_1.initalizedMetadataKey)(params.renderId),
476
+ region: (0, get_current_region_1.getCurrentRegionInFunction)(),
477
+ customCredentials: null,
478
+ });
479
+ renderer_1.RenderInternals.cleanDownloadMap(downloadMap);
324
480
  await Promise.all([cleanupChunksProm, fs_1.default.promises.rm(outfile)]);
481
+ clearTimeout(webhookDueToTimeout);
482
+ if (params.webhook && !webhookInvoked) {
483
+ try {
484
+ await (0, invoke_webhook_1.invokeWebhook)({
485
+ url: params.webhook.url,
486
+ secret: params.webhook.secret,
487
+ payload: {
488
+ type: 'success',
489
+ renderId: params.renderId,
490
+ expectedBucketOwner: options.expectedBucketOwner,
491
+ bucketName: params.bucketName,
492
+ outputUrl,
493
+ lambdaErrors: postRenderData.errors,
494
+ outputFile: postRenderData.outputFile,
495
+ timeToFinish: postRenderData.timeToFinish,
496
+ costs: postRenderData.cost,
497
+ },
498
+ });
499
+ webhookInvoked = true;
500
+ }
501
+ catch (err) {
502
+ if (process.env.NODE_ENV === 'test') {
503
+ throw err;
504
+ }
505
+ await (0, write_lambda_error_1.writeLambdaError)({
506
+ bucketName: params.bucketName,
507
+ errorInfo: {
508
+ type: 'webhook',
509
+ message: err.message,
510
+ name: err.name,
511
+ stack: err.stack,
512
+ tmpDir: null,
513
+ frame: 0,
514
+ chunk: 0,
515
+ isFatal: false,
516
+ attempt: 1,
517
+ willRetry: false,
518
+ totalAttempts: 1,
519
+ },
520
+ renderId: params.renderId,
521
+ expectedBucketOwner: options.expectedBucketOwner,
522
+ });
523
+ console.log('Failed to invoke webhook:');
524
+ console.log(err);
525
+ }
526
+ }
325
527
  };
326
528
  const launchHandler = async (params, options) => {
529
+ var _a, _b;
327
530
  if (params.type !== constants_1.LambdaRoutines.launch) {
328
531
  throw new Error('Expected launch type');
329
532
  }
@@ -331,6 +534,9 @@ const launchHandler = async (params, options) => {
331
534
  await innerLaunchHandler(params, options);
332
535
  }
333
536
  catch (err) {
537
+ if (process.env.NODE_ENV === 'test') {
538
+ throw err;
539
+ }
334
540
  console.log('Error occurred', err);
335
541
  await (0, write_lambda_error_1.writeLambdaError)({
336
542
  bucketName: params.bucketName,
@@ -350,7 +556,50 @@ const launchHandler = async (params, options) => {
350
556
  expectedBucketOwner: options.expectedBucketOwner,
351
557
  renderId: params.renderId,
352
558
  });
559
+ if ((_a = params.webhook) === null || _a === void 0 ? void 0 : _a.url) {
560
+ try {
561
+ await (0, invoke_webhook_1.invokeWebhook)({
562
+ url: params.webhook.url,
563
+ secret: (_b = params.webhook.secret) !== null && _b !== void 0 ? _b : null,
564
+ payload: {
565
+ type: 'error',
566
+ renderId: params.renderId,
567
+ expectedBucketOwner: options.expectedBucketOwner,
568
+ bucketName: params.bucketName,
569
+ errors: [err].map((e) => ({
570
+ message: e.message,
571
+ name: e.name,
572
+ stack: e.stack,
573
+ })),
574
+ },
575
+ });
576
+ }
577
+ catch (error) {
578
+ if (process.env.NODE_ENV === 'test') {
579
+ throw error;
580
+ }
581
+ await (0, write_lambda_error_1.writeLambdaError)({
582
+ bucketName: params.bucketName,
583
+ errorInfo: {
584
+ type: 'webhook',
585
+ message: err.message,
586
+ name: err.name,
587
+ stack: err.stack,
588
+ tmpDir: null,
589
+ frame: 0,
590
+ chunk: 0,
591
+ isFatal: false,
592
+ attempt: 1,
593
+ willRetry: false,
594
+ totalAttempts: 1,
595
+ },
596
+ renderId: params.renderId,
597
+ expectedBucketOwner: options.expectedBucketOwner,
598
+ });
599
+ console.log('Failed to invoke webhook:');
600
+ console.log(error);
601
+ }
602
+ }
353
603
  }
354
604
  };
355
605
  exports.launchHandler = launchHandler;
356
- //# sourceMappingURL=launch.js.map
@@ -1,8 +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
- timeoutInMiliseconds: number;
4
+ timeoutInMilliseconds: number;
5
5
  };
6
6
  export declare const progressHandler: (lambdaParams: LambdaPayload, options: Options) => Promise<RenderProgress>;
7
7
  export {};
8
- //# sourceMappingURL=progress.d.ts.map