@remotion/lambda 4.0.0-offthread.9 → 4.0.0-prefetch.7

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 (504) hide show
  1. package/dist/admin/bundle-lambda.js +1 -0
  2. package/dist/admin/make-layer-public.js +8 -8
  3. package/dist/api/bucket-exists.d.ts +1 -1
  4. package/dist/api/clean-items.d.ts +1 -1
  5. package/dist/api/create-bucket.d.ts +1 -1
  6. package/dist/api/create-function.d.ts +2 -2
  7. package/dist/api/delete-function.d.ts +1 -1
  8. package/dist/api/delete-site.d.ts +1 -1
  9. package/dist/api/deploy-function.d.ts +2 -2
  10. package/dist/api/deploy-function.js +4 -2
  11. package/dist/api/deploy-site.d.ts +3 -3
  12. package/dist/api/deploy-site.js +2 -3
  13. package/dist/api/download-media.d.ts +2 -2
  14. package/dist/api/enable-s3-website.d.ts +1 -1
  15. package/dist/api/estimate-price.d.ts +2 -2
  16. package/dist/api/get-aws-client.d.ts +2 -2
  17. package/dist/api/get-buckets.d.ts +1 -1
  18. package/dist/api/get-function-info.d.ts +2 -3
  19. package/dist/api/get-functions.d.ts +2 -2
  20. package/dist/api/get-functions.js +2 -1
  21. package/dist/api/get-or-create-bucket.d.ts +1 -1
  22. package/dist/api/get-regions.d.ts +1 -1
  23. package/dist/api/get-render-progress.d.ts +2 -2
  24. package/dist/api/get-render-progress.js +2 -0
  25. package/dist/api/get-sites.d.ts +2 -2
  26. package/dist/api/iam-validation/role-permissions.d.ts +2 -1
  27. package/dist/api/iam-validation/simulate-rule.d.ts +1 -1
  28. package/dist/api/iam-validation/simulate.d.ts +2 -2
  29. package/dist/api/mock-functions.d.ts +6 -7
  30. package/dist/api/presign-url.d.ts +3 -2
  31. package/dist/api/presign-url.js +5 -0
  32. package/dist/api/render-media-on-lambda.d.ts +15 -8
  33. package/dist/api/render-media-on-lambda.js +58 -32
  34. package/dist/api/render-still-on-lambda.d.ts +9 -7
  35. package/dist/api/render-still-on-lambda.js +49 -31
  36. package/dist/api/upload-dir.d.ts +2 -2
  37. package/dist/api/upload-dir.js +5 -1
  38. package/dist/cli/args.d.ts +4 -3
  39. package/dist/cli/commands/functions/deploy.js +2 -1
  40. package/dist/cli/commands/render/progress.d.ts +4 -4
  41. package/dist/cli/commands/render/progress.js +11 -3
  42. package/dist/cli/commands/render/render.js +15 -10
  43. package/dist/cli/commands/sites/create.js +2 -3
  44. package/dist/cli/commands/sites/ls.js +1 -2
  45. package/dist/cli/commands/sites/rm.js +2 -3
  46. package/dist/cli/commands/sites/rmall.js +2 -3
  47. package/dist/cli/commands/still.js +2 -9
  48. package/dist/cli/get-aws-region.d.ts +1 -1
  49. package/dist/cli/get-aws-region.js +2 -1
  50. package/dist/cli/helpers/find-function-name.js +3 -2
  51. package/dist/cli/helpers/get-cloudwatch-stream-url.d.ts +2 -2
  52. package/dist/cli/helpers/progress-bar.js +1 -2
  53. package/dist/cli/index.js +1 -1
  54. package/dist/functions/chunk-optimization/can-use-optimization.d.ts +1 -1
  55. package/dist/functions/chunk-optimization/can-use-optimization.js +2 -2
  56. package/dist/functions/chunk-optimization/collect-data.d.ts +1 -1
  57. package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.d.ts +5 -2
  58. package/dist/functions/chunk-optimization/get-profile-duration.d.ts +1 -1
  59. package/dist/functions/chunk-optimization/is-valid-profile.d.ts +1 -1
  60. package/dist/functions/chunk-optimization/is-valid-profile.js +2 -2
  61. package/dist/functions/chunk-optimization/optimize-invocation-order.d.ts +1 -1
  62. package/dist/functions/chunk-optimization/optimize-profile.d.ts +9 -3
  63. package/dist/functions/chunk-optimization/plan-frame-ranges.d.ts +7 -4
  64. package/dist/functions/chunk-optimization/plan-frame-ranges.js +7 -6
  65. package/dist/functions/chunk-optimization/s3-optimization-file.d.ts +2 -2
  66. package/dist/functions/chunk-optimization/s3-optimization-file.js +1 -0
  67. package/dist/functions/chunk-optimization/simulate-frame-ranges.d.ts +5 -2
  68. package/dist/functions/chunk-optimization/sort-by-duration.d.ts +1 -1
  69. package/dist/functions/chunk-optimization/types.d.ts +2 -2
  70. package/dist/functions/helpers/calculate-chunk-times.d.ts +1 -1
  71. package/dist/functions/helpers/calculate-price-from-bucket.d.ts +4 -4
  72. package/dist/functions/helpers/check-if-render-exists.d.ts +3 -0
  73. package/dist/functions/helpers/check-if-render-exists.js +14 -0
  74. package/dist/functions/helpers/concat-videos.d.ts +5 -4
  75. package/dist/functions/helpers/concat-videos.js +2 -1
  76. package/dist/functions/helpers/create-post-render-data.d.ts +6 -6
  77. package/dist/functions/helpers/create-post-render-data.js +12 -7
  78. package/dist/functions/helpers/delete-chunks.d.ts +3 -3
  79. package/dist/functions/helpers/expected-out-name.d.ts +1 -1
  80. package/dist/functions/helpers/find-output-file-in-bucket.d.ts +2 -2
  81. package/dist/functions/helpers/find-output-file-in-bucket.js +6 -0
  82. package/dist/functions/helpers/format-costs-info.d.ts +1 -1
  83. package/dist/functions/helpers/get-browser-instance.d.ts +2 -1
  84. package/dist/functions/helpers/get-cleanup-progress.d.ts +2 -2
  85. package/dist/functions/helpers/get-current-architecture.d.ts +1 -1
  86. package/dist/functions/helpers/get-encoding-metadata.d.ts +2 -2
  87. package/dist/functions/helpers/get-files-to-delete.js +1 -1
  88. package/dist/functions/helpers/get-final-encoding-status.d.ts +2 -2
  89. package/dist/functions/helpers/get-lambdas-invoked-stats.d.ts +8 -3
  90. package/dist/functions/helpers/get-lambdas-invoked-stats.js +8 -8
  91. package/dist/functions/helpers/get-output-url-from-metadata.d.ts +1 -1
  92. package/dist/functions/helpers/get-post-render-data.d.ts +2 -2
  93. package/dist/functions/helpers/get-progress.d.ts +2 -2
  94. package/dist/functions/helpers/get-progress.js +20 -10
  95. package/dist/functions/helpers/get-render-metadata.d.ts +2 -2
  96. package/dist/functions/helpers/get-retry-stats.d.ts +1 -1
  97. package/dist/functions/helpers/get-retry-stats.js +1 -1
  98. package/dist/functions/helpers/get-time-to-finish.d.ts +1 -1
  99. package/dist/functions/helpers/inspect-errors.d.ts +3 -3
  100. package/dist/functions/helpers/io.d.ts +13 -6
  101. package/dist/functions/helpers/io.js +16 -3
  102. package/dist/functions/helpers/min-max.d.ts +1 -1
  103. package/dist/functions/helpers/min-max.js +1 -1
  104. package/dist/functions/helpers/print-cloudwatch-helper.d.ts +2 -2
  105. package/dist/functions/helpers/read-with-progress.d.ts +3 -2
  106. package/dist/functions/helpers/read-with-progress.js +13 -1
  107. package/dist/functions/helpers/validate-composition.d.ts +6 -4
  108. package/dist/functions/helpers/validate-composition.js +3 -1
  109. package/dist/functions/helpers/write-lambda-error.d.ts +1 -1
  110. package/dist/functions/helpers/write-lambda-error.js +1 -0
  111. package/dist/functions/helpers/write-post-render-data.d.ts +2 -2
  112. package/dist/functions/helpers/write-post-render-data.js +1 -0
  113. package/dist/functions/index.d.ts +3 -2
  114. package/dist/functions/index.js +14 -7
  115. package/dist/functions/info.d.ts +2 -2
  116. package/dist/functions/info.js +2 -1
  117. package/dist/functions/launch.d.ts +1 -1
  118. package/dist/functions/launch.js +69 -27
  119. package/dist/functions/progress.d.ts +1 -1
  120. package/dist/functions/progress.js +7 -0
  121. package/dist/functions/renderer.d.ts +1 -1
  122. package/dist/functions/renderer.js +105 -74
  123. package/dist/functions/start.d.ts +6 -2
  124. package/dist/functions/start.js +25 -3
  125. package/dist/functions/still.d.ts +1 -1
  126. package/dist/functions/still.js +21 -7
  127. package/dist/index.d.ts +33 -18
  128. package/dist/pricing/price-per-1-s.d.ts +1 -1
  129. package/dist/shared/aws-clients.d.ts +1 -1
  130. package/dist/shared/bundle-site.d.ts +1 -6
  131. package/dist/shared/call-lambda.d.ts +3 -3
  132. package/dist/shared/check-credentials.js +2 -2
  133. package/dist/shared/constants.d.ts +38 -17
  134. package/dist/shared/constants.js +8 -7
  135. package/dist/shared/content-disposition-header.d.ts +7 -0
  136. package/dist/shared/content-disposition-header.js +19 -0
  137. package/dist/shared/convert-to-serve-url.d.ts +1 -1
  138. package/dist/shared/get-account-id.d.ts +1 -1
  139. package/dist/shared/get-cloudwatch-stream-url.d.ts +8 -0
  140. package/dist/shared/get-cloudwatch-stream-url.js +7 -0
  141. package/dist/shared/get-function-version.d.ts +2 -3
  142. package/dist/shared/get-most-expensive-chunks.d.ts +8 -0
  143. package/dist/shared/get-most-expensive-chunks.js +25 -0
  144. package/dist/shared/hosted-layers.d.ts +2 -2
  145. package/dist/shared/hosted-layers.js +80 -80
  146. package/dist/shared/is-in-lambda.js +5 -1
  147. package/dist/shared/lambda-version-string.d.ts +1 -0
  148. package/dist/shared/lambda-version-string.js +7 -0
  149. package/dist/shared/make-s3-url.d.ts +1 -1
  150. package/dist/shared/return-values.d.ts +7 -7
  151. package/dist/shared/return-values.js +0 -1
  152. package/dist/shared/stream-to-string.d.ts +1 -1
  153. package/dist/shared/truthy.d.ts +3 -0
  154. package/dist/shared/truthy.js +7 -0
  155. package/dist/shared/validate-aws-region.d.ts +1 -1
  156. package/dist/shared/validate-download-behavior.d.ts +1 -0
  157. package/dist/shared/validate-download-behavior.js +21 -0
  158. package/dist/shared/validate-lambda-codec.d.ts +4 -0
  159. package/dist/shared/validate-lambda-codec.js +30 -0
  160. package/dist/shared/validate-outname.d.ts +1 -1
  161. package/dist/shared/validate-presign-expiration.d.ts +0 -2
  162. package/dist/shared/validate-presign-expiration.js +7 -7
  163. package/dist/shared/validate-privacy.d.ts +1 -1
  164. package/dist/shared/validate-privacy.js +2 -2
  165. package/package.json +9 -11
  166. package/remotionlambda.zip +0 -0
  167. package/dist/admin/bundle-lambda.d.ts.map +0 -1
  168. package/dist/admin/bundle-lambda.js.map +0 -1
  169. package/dist/admin/make-layer-public.d.ts.map +0 -1
  170. package/dist/admin/make-layer-public.js.map +0 -1
  171. package/dist/api/bucket-exists.d.ts.map +0 -1
  172. package/dist/api/bucket-exists.js.map +0 -1
  173. package/dist/api/clean-items.d.ts.map +0 -1
  174. package/dist/api/clean-items.js.map +0 -1
  175. package/dist/api/create-bucket.d.ts.map +0 -1
  176. package/dist/api/create-bucket.js.map +0 -1
  177. package/dist/api/create-function.d.ts.map +0 -1
  178. package/dist/api/create-function.js.map +0 -1
  179. package/dist/api/delete-function.d.ts.map +0 -1
  180. package/dist/api/delete-function.js.map +0 -1
  181. package/dist/api/delete-site.d.ts.map +0 -1
  182. package/dist/api/delete-site.js.map +0 -1
  183. package/dist/api/deploy-function.d.ts.map +0 -1
  184. package/dist/api/deploy-function.js.map +0 -1
  185. package/dist/api/deploy-site.d.ts.map +0 -1
  186. package/dist/api/deploy-site.js.map +0 -1
  187. package/dist/api/download-media.d.ts.map +0 -1
  188. package/dist/api/download-media.js.map +0 -1
  189. package/dist/api/enable-s3-website.d.ts.map +0 -1
  190. package/dist/api/enable-s3-website.js.map +0 -1
  191. package/dist/api/estimate-price.d.ts.map +0 -1
  192. package/dist/api/estimate-price.js.map +0 -1
  193. package/dist/api/get-aws-client.d.ts.map +0 -1
  194. package/dist/api/get-aws-client.js.map +0 -1
  195. package/dist/api/get-buckets.d.ts.map +0 -1
  196. package/dist/api/get-buckets.js.map +0 -1
  197. package/dist/api/get-function-info.d.ts.map +0 -1
  198. package/dist/api/get-function-info.js.map +0 -1
  199. package/dist/api/get-functions.d.ts.map +0 -1
  200. package/dist/api/get-functions.js.map +0 -1
  201. package/dist/api/get-or-create-bucket.d.ts.map +0 -1
  202. package/dist/api/get-or-create-bucket.js.map +0 -1
  203. package/dist/api/get-regions.d.ts.map +0 -1
  204. package/dist/api/get-regions.js.map +0 -1
  205. package/dist/api/get-render-progress.d.ts.map +0 -1
  206. package/dist/api/get-render-progress.js.map +0 -1
  207. package/dist/api/get-sites.d.ts.map +0 -1
  208. package/dist/api/get-sites.js.map +0 -1
  209. package/dist/api/iam-validation/role-permissions.d.ts.map +0 -1
  210. package/dist/api/iam-validation/role-permissions.js.map +0 -1
  211. package/dist/api/iam-validation/simulate-rule.d.ts.map +0 -1
  212. package/dist/api/iam-validation/simulate-rule.js.map +0 -1
  213. package/dist/api/iam-validation/simulate.d.ts.map +0 -1
  214. package/dist/api/iam-validation/simulate.js.map +0 -1
  215. package/dist/api/iam-validation/suggested-policy.d.ts.map +0 -1
  216. package/dist/api/iam-validation/suggested-policy.js.map +0 -1
  217. package/dist/api/iam-validation/user-permissions.d.ts.map +0 -1
  218. package/dist/api/iam-validation/user-permissions.js.map +0 -1
  219. package/dist/api/mock-functions.d.ts.map +0 -1
  220. package/dist/api/mock-functions.js.map +0 -1
  221. package/dist/api/presign-url.d.ts.map +0 -1
  222. package/dist/api/presign-url.js.map +0 -1
  223. package/dist/api/render-media-on-lambda.d.ts.map +0 -1
  224. package/dist/api/render-media-on-lambda.js.map +0 -1
  225. package/dist/api/render-still-on-lambda.d.ts.map +0 -1
  226. package/dist/api/render-still-on-lambda.js.map +0 -1
  227. package/dist/api/upload-dir.d.ts.map +0 -1
  228. package/dist/api/upload-dir.js.map +0 -1
  229. package/dist/cli/args.d.ts.map +0 -1
  230. package/dist/cli/args.js.map +0 -1
  231. package/dist/cli/commands/functions/deploy.d.ts.map +0 -1
  232. package/dist/cli/commands/functions/deploy.js.map +0 -1
  233. package/dist/cli/commands/functions/index.d.ts.map +0 -1
  234. package/dist/cli/commands/functions/index.js.map +0 -1
  235. package/dist/cli/commands/functions/ls.d.ts.map +0 -1
  236. package/dist/cli/commands/functions/ls.js.map +0 -1
  237. package/dist/cli/commands/functions/rm.d.ts.map +0 -1
  238. package/dist/cli/commands/functions/rm.js.map +0 -1
  239. package/dist/cli/commands/functions/rmall.d.ts.map +0 -1
  240. package/dist/cli/commands/functions/rmall.js.map +0 -1
  241. package/dist/cli/commands/policies/policies.d.ts.map +0 -1
  242. package/dist/cli/commands/policies/policies.js.map +0 -1
  243. package/dist/cli/commands/policies/role.d.ts.map +0 -1
  244. package/dist/cli/commands/policies/role.js.map +0 -1
  245. package/dist/cli/commands/policies/user.d.ts.map +0 -1
  246. package/dist/cli/commands/policies/user.js.map +0 -1
  247. package/dist/cli/commands/policies/validate.d.ts.map +0 -1
  248. package/dist/cli/commands/policies/validate.js.map +0 -1
  249. package/dist/cli/commands/quotas/increase.d.ts.map +0 -1
  250. package/dist/cli/commands/quotas/increase.js.map +0 -1
  251. package/dist/cli/commands/quotas/index.d.ts.map +0 -1
  252. package/dist/cli/commands/quotas/index.js.map +0 -1
  253. package/dist/cli/commands/quotas/list.d.ts.map +0 -1
  254. package/dist/cli/commands/quotas/list.js.map +0 -1
  255. package/dist/cli/commands/regions.d.ts.map +0 -1
  256. package/dist/cli/commands/regions.js.map +0 -1
  257. package/dist/cli/commands/render/progress.d.ts.map +0 -1
  258. package/dist/cli/commands/render/progress.js.map +0 -1
  259. package/dist/cli/commands/render/render.d.ts.map +0 -1
  260. package/dist/cli/commands/render/render.js.map +0 -1
  261. package/dist/cli/commands/sites/create.d.ts.map +0 -1
  262. package/dist/cli/commands/sites/create.js.map +0 -1
  263. package/dist/cli/commands/sites/index.d.ts.map +0 -1
  264. package/dist/cli/commands/sites/index.js.map +0 -1
  265. package/dist/cli/commands/sites/ls.d.ts.map +0 -1
  266. package/dist/cli/commands/sites/ls.js.map +0 -1
  267. package/dist/cli/commands/sites/rm.d.ts.map +0 -1
  268. package/dist/cli/commands/sites/rm.js.map +0 -1
  269. package/dist/cli/commands/sites/rmall.d.ts.map +0 -1
  270. package/dist/cli/commands/sites/rmall.js.map +0 -1
  271. package/dist/cli/commands/still.d.ts.map +0 -1
  272. package/dist/cli/commands/still.js.map +0 -1
  273. package/dist/cli/get-aws-region.d.ts.map +0 -1
  274. package/dist/cli/get-aws-region.js.map +0 -1
  275. package/dist/cli/help.d.ts.map +0 -1
  276. package/dist/cli/help.js.map +0 -1
  277. package/dist/cli/helpers/confirm.d.ts.map +0 -1
  278. package/dist/cli/helpers/confirm.js.map +0 -1
  279. package/dist/cli/helpers/date-string.d.ts.map +0 -1
  280. package/dist/cli/helpers/date-string.js.map +0 -1
  281. package/dist/cli/helpers/find-function-name.d.ts.map +0 -1
  282. package/dist/cli/helpers/find-function-name.js.map +0 -1
  283. package/dist/cli/helpers/format-bytes.d.ts +0 -6
  284. package/dist/cli/helpers/format-bytes.d.ts.map +0 -1
  285. package/dist/cli/helpers/format-bytes.js +0 -103
  286. package/dist/cli/helpers/format-bytes.js.map +0 -1
  287. package/dist/cli/helpers/get-cloudwatch-stream-url.d.ts.map +0 -1
  288. package/dist/cli/helpers/get-cloudwatch-stream-url.js.map +0 -1
  289. package/dist/cli/helpers/progress-bar.d.ts.map +0 -1
  290. package/dist/cli/helpers/progress-bar.js.map +0 -1
  291. package/dist/cli/helpers/quit.d.ts.map +0 -1
  292. package/dist/cli/helpers/quit.js.map +0 -1
  293. package/dist/cli/helpers/yes-or-no.d.ts.map +0 -1
  294. package/dist/cli/helpers/yes-or-no.js.map +0 -1
  295. package/dist/cli/index.d.ts.map +0 -1
  296. package/dist/cli/index.js.map +0 -1
  297. package/dist/cli/is-cli.d.ts.map +0 -1
  298. package/dist/cli/is-cli.js.map +0 -1
  299. package/dist/cli/log.d.ts.map +0 -1
  300. package/dist/cli/log.js.map +0 -1
  301. package/dist/client.d.ts.map +0 -1
  302. package/dist/client.js.map +0 -1
  303. package/dist/defaults.d.ts.map +0 -1
  304. package/dist/defaults.js.map +0 -1
  305. package/dist/functions/chunk-optimization/can-use-optimization.d.ts.map +0 -1
  306. package/dist/functions/chunk-optimization/can-use-optimization.js.map +0 -1
  307. package/dist/functions/chunk-optimization/collect-data.d.ts.map +0 -1
  308. package/dist/functions/chunk-optimization/collect-data.js.map +0 -1
  309. package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.d.ts.map +0 -1
  310. package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.js.map +0 -1
  311. package/dist/functions/chunk-optimization/get-profile-duration.d.ts.map +0 -1
  312. package/dist/functions/chunk-optimization/get-profile-duration.js.map +0 -1
  313. package/dist/functions/chunk-optimization/is-valid-profile.d.ts.map +0 -1
  314. package/dist/functions/chunk-optimization/is-valid-profile.js.map +0 -1
  315. package/dist/functions/chunk-optimization/optimize-invocation-order.d.ts.map +0 -1
  316. package/dist/functions/chunk-optimization/optimize-invocation-order.js.map +0 -1
  317. package/dist/functions/chunk-optimization/optimize-profile.d.ts.map +0 -1
  318. package/dist/functions/chunk-optimization/optimize-profile.js.map +0 -1
  319. package/dist/functions/chunk-optimization/plan-frame-ranges.d.ts.map +0 -1
  320. package/dist/functions/chunk-optimization/plan-frame-ranges.js.map +0 -1
  321. package/dist/functions/chunk-optimization/s3-optimization-file.d.ts.map +0 -1
  322. package/dist/functions/chunk-optimization/s3-optimization-file.js.map +0 -1
  323. package/dist/functions/chunk-optimization/simulate-frame-ranges.d.ts.map +0 -1
  324. package/dist/functions/chunk-optimization/simulate-frame-ranges.js.map +0 -1
  325. package/dist/functions/chunk-optimization/sort-by-duration.d.ts.map +0 -1
  326. package/dist/functions/chunk-optimization/sort-by-duration.js.map +0 -1
  327. package/dist/functions/chunk-optimization/types.d.ts.map +0 -1
  328. package/dist/functions/chunk-optimization/types.js.map +0 -1
  329. package/dist/functions/helpers/best-frames-per-lambda-param.d.ts.map +0 -1
  330. package/dist/functions/helpers/best-frames-per-lambda-param.js.map +0 -1
  331. package/dist/functions/helpers/calculate-chunk-times.d.ts.map +0 -1
  332. package/dist/functions/helpers/calculate-chunk-times.js.map +0 -1
  333. package/dist/functions/helpers/calculate-price-from-bucket.d.ts.map +0 -1
  334. package/dist/functions/helpers/calculate-price-from-bucket.js.map +0 -1
  335. package/dist/functions/helpers/clean-tmpdir.d.ts.map +0 -1
  336. package/dist/functions/helpers/clean-tmpdir.js.map +0 -1
  337. package/dist/functions/helpers/concat-videos.d.ts.map +0 -1
  338. package/dist/functions/helpers/concat-videos.js.map +0 -1
  339. package/dist/functions/helpers/create-post-render-data.d.ts.map +0 -1
  340. package/dist/functions/helpers/create-post-render-data.js.map +0 -1
  341. package/dist/functions/helpers/delete-chunks.d.ts.map +0 -1
  342. package/dist/functions/helpers/delete-chunks.js.map +0 -1
  343. package/dist/functions/helpers/expected-out-name.d.ts.map +0 -1
  344. package/dist/functions/helpers/expected-out-name.js.map +0 -1
  345. package/dist/functions/helpers/find-output-file-in-bucket.d.ts.map +0 -1
  346. package/dist/functions/helpers/find-output-file-in-bucket.js.map +0 -1
  347. package/dist/functions/helpers/format-costs-info.d.ts.map +0 -1
  348. package/dist/functions/helpers/format-costs-info.js.map +0 -1
  349. package/dist/functions/helpers/get-browser-instance.d.ts.map +0 -1
  350. package/dist/functions/helpers/get-browser-instance.js.map +0 -1
  351. package/dist/functions/helpers/get-chromium-executable-path.d.ts.map +0 -1
  352. package/dist/functions/helpers/get-chromium-executable-path.js.map +0 -1
  353. package/dist/functions/helpers/get-cleanup-progress.d.ts.map +0 -1
  354. package/dist/functions/helpers/get-cleanup-progress.js.map +0 -1
  355. package/dist/functions/helpers/get-current-architecture.d.ts.map +0 -1
  356. package/dist/functions/helpers/get-current-architecture.js.map +0 -1
  357. package/dist/functions/helpers/get-current-region.d.ts.map +0 -1
  358. package/dist/functions/helpers/get-current-region.js.map +0 -1
  359. package/dist/functions/helpers/get-encoding-metadata.d.ts.map +0 -1
  360. package/dist/functions/helpers/get-encoding-metadata.js.map +0 -1
  361. package/dist/functions/helpers/get-files-in-folder.d.ts.map +0 -1
  362. package/dist/functions/helpers/get-files-in-folder.js.map +0 -1
  363. package/dist/functions/helpers/get-files-to-delete.d.ts.map +0 -1
  364. package/dist/functions/helpers/get-files-to-delete.js.map +0 -1
  365. package/dist/functions/helpers/get-final-encoding-status.d.ts.map +0 -1
  366. package/dist/functions/helpers/get-final-encoding-status.js.map +0 -1
  367. package/dist/functions/helpers/get-folder-size.d.ts.map +0 -1
  368. package/dist/functions/helpers/get-folder-size.js.map +0 -1
  369. package/dist/functions/helpers/get-lambdas-invoked-stats.d.ts.map +0 -1
  370. package/dist/functions/helpers/get-lambdas-invoked-stats.js.map +0 -1
  371. package/dist/functions/helpers/get-output-url-from-metadata.d.ts.map +0 -1
  372. package/dist/functions/helpers/get-output-url-from-metadata.js.map +0 -1
  373. package/dist/functions/helpers/get-overall-progress.d.ts.map +0 -1
  374. package/dist/functions/helpers/get-overall-progress.js.map +0 -1
  375. package/dist/functions/helpers/get-post-render-data.d.ts.map +0 -1
  376. package/dist/functions/helpers/get-post-render-data.js.map +0 -1
  377. package/dist/functions/helpers/get-progress.d.ts.map +0 -1
  378. package/dist/functions/helpers/get-progress.js.map +0 -1
  379. package/dist/functions/helpers/get-render-metadata.d.ts.map +0 -1
  380. package/dist/functions/helpers/get-render-metadata.js.map +0 -1
  381. package/dist/functions/helpers/get-retry-stats.d.ts.map +0 -1
  382. package/dist/functions/helpers/get-retry-stats.js.map +0 -1
  383. package/dist/functions/helpers/get-time-to-finish.d.ts.map +0 -1
  384. package/dist/functions/helpers/get-time-to-finish.js.map +0 -1
  385. package/dist/functions/helpers/inspect-errors.d.ts.map +0 -1
  386. package/dist/functions/helpers/inspect-errors.js.map +0 -1
  387. package/dist/functions/helpers/io.d.ts.map +0 -1
  388. package/dist/functions/helpers/io.js.map +0 -1
  389. package/dist/functions/helpers/is-enosp-err.d.ts.map +0 -1
  390. package/dist/functions/helpers/is-enosp-err.js.map +0 -1
  391. package/dist/functions/helpers/is-warm.d.ts.map +0 -1
  392. package/dist/functions/helpers/is-warm.js.map +0 -1
  393. package/dist/functions/helpers/min-max.d.ts.map +0 -1
  394. package/dist/functions/helpers/min-max.js.map +0 -1
  395. package/dist/functions/helpers/print-cloudwatch-helper.d.ts.map +0 -1
  396. package/dist/functions/helpers/print-cloudwatch-helper.js.map +0 -1
  397. package/dist/functions/helpers/print-concurrency-curve.d.ts.map +0 -1
  398. package/dist/functions/helpers/print-concurrency-curve.js.map +0 -1
  399. package/dist/functions/helpers/read-with-progress.d.ts.map +0 -1
  400. package/dist/functions/helpers/read-with-progress.js.map +0 -1
  401. package/dist/functions/helpers/timer.d.ts.map +0 -1
  402. package/dist/functions/helpers/timer.js.map +0 -1
  403. package/dist/functions/helpers/validate-composition.d.ts.map +0 -1
  404. package/dist/functions/helpers/validate-composition.js.map +0 -1
  405. package/dist/functions/helpers/write-lambda-error.d.ts.map +0 -1
  406. package/dist/functions/helpers/write-lambda-error.js.map +0 -1
  407. package/dist/functions/helpers/write-post-render-data.d.ts.map +0 -1
  408. package/dist/functions/helpers/write-post-render-data.js.map +0 -1
  409. package/dist/functions/index.d.ts.map +0 -1
  410. package/dist/functions/index.js.map +0 -1
  411. package/dist/functions/info.d.ts.map +0 -1
  412. package/dist/functions/info.js.map +0 -1
  413. package/dist/functions/launch.d.ts.map +0 -1
  414. package/dist/functions/launch.js.map +0 -1
  415. package/dist/functions/progress.d.ts.map +0 -1
  416. package/dist/functions/progress.js.map +0 -1
  417. package/dist/functions/renderer.d.ts.map +0 -1
  418. package/dist/functions/renderer.js.map +0 -1
  419. package/dist/functions/start.d.ts.map +0 -1
  420. package/dist/functions/start.js.map +0 -1
  421. package/dist/functions/still.d.ts.map +0 -1
  422. package/dist/functions/still.js.map +0 -1
  423. package/dist/index.d.ts.map +0 -1
  424. package/dist/index.js.map +0 -1
  425. package/dist/internals.d.ts.map +0 -1
  426. package/dist/internals.js.map +0 -1
  427. package/dist/pricing/aws-regions.d.ts.map +0 -1
  428. package/dist/pricing/aws-regions.js.map +0 -1
  429. package/dist/pricing/price-per-1-s.d.ts.map +0 -1
  430. package/dist/pricing/price-per-1-s.js.map +0 -1
  431. package/dist/regions.d.ts.map +0 -1
  432. package/dist/regions.js.map +0 -1
  433. package/dist/shared/await.d.ts.map +0 -1
  434. package/dist/shared/await.js.map +0 -1
  435. package/dist/shared/aws-clients.d.ts.map +0 -1
  436. package/dist/shared/aws-clients.js.map +0 -1
  437. package/dist/shared/bundle-site.d.ts.map +0 -1
  438. package/dist/shared/bundle-site.js.map +0 -1
  439. package/dist/shared/call-lambda.d.ts.map +0 -1
  440. package/dist/shared/call-lambda.js.map +0 -1
  441. package/dist/shared/check-credentials.d.ts.map +0 -1
  442. package/dist/shared/check-credentials.js.map +0 -1
  443. package/dist/shared/chunk.d.ts +0 -1
  444. package/dist/shared/chunk.d.ts.map +0 -1
  445. package/dist/shared/chunk.js +0 -11
  446. package/dist/shared/chunk.js.map +0 -1
  447. package/dist/shared/constants.d.ts.map +0 -1
  448. package/dist/shared/constants.js.map +0 -1
  449. package/dist/shared/convert-to-serve-url.d.ts.map +0 -1
  450. package/dist/shared/convert-to-serve-url.js.map +0 -1
  451. package/dist/shared/docs-url.d.ts.map +0 -1
  452. package/dist/shared/docs-url.js.map +0 -1
  453. package/dist/shared/function-zip-path.d.ts.map +0 -1
  454. package/dist/shared/function-zip-path.js.map +0 -1
  455. package/dist/shared/get-account-id.d.ts.map +0 -1
  456. package/dist/shared/get-account-id.js.map +0 -1
  457. package/dist/shared/get-function-version.d.ts.map +0 -1
  458. package/dist/shared/get-function-version.js.map +0 -1
  459. package/dist/shared/hosted-layers.d.ts.map +0 -1
  460. package/dist/shared/hosted-layers.js.map +0 -1
  461. package/dist/shared/is-in-lambda.d.ts.map +0 -1
  462. package/dist/shared/is-in-lambda.js.map +0 -1
  463. package/dist/shared/make-s3-url.d.ts.map +0 -1
  464. package/dist/shared/make-s3-url.js.map +0 -1
  465. package/dist/shared/parse-lambda-initialized-key.d.ts.map +0 -1
  466. package/dist/shared/parse-lambda-initialized-key.js.map +0 -1
  467. package/dist/shared/parse-lambda-timings-key.d.ts.map +0 -1
  468. package/dist/shared/parse-lambda-timings-key.js.map +0 -1
  469. package/dist/shared/random-hash.d.ts.map +0 -1
  470. package/dist/shared/random-hash.js.map +0 -1
  471. package/dist/shared/return-values.d.ts.map +0 -1
  472. package/dist/shared/return-values.js.map +0 -1
  473. package/dist/shared/sleep.d.ts.map +0 -1
  474. package/dist/shared/sleep.js.map +0 -1
  475. package/dist/shared/stream-to-string.d.ts.map +0 -1
  476. package/dist/shared/stream-to-string.js.map +0 -1
  477. package/dist/shared/validate-architecture.d.ts.map +0 -1
  478. package/dist/shared/validate-architecture.js.map +0 -1
  479. package/dist/shared/validate-aws-region.d.ts.map +0 -1
  480. package/dist/shared/validate-aws-region.js.map +0 -1
  481. package/dist/shared/validate-bucketname.d.ts.map +0 -1
  482. package/dist/shared/validate-bucketname.js.map +0 -1
  483. package/dist/shared/validate-disk-size-in-mb.d.ts.map +0 -1
  484. package/dist/shared/validate-disk-size-in-mb.js.map +0 -1
  485. package/dist/shared/validate-frames-per-lambda.d.ts.map +0 -1
  486. package/dist/shared/validate-frames-per-lambda.js.map +0 -1
  487. package/dist/shared/validate-memory-size.d.ts.map +0 -1
  488. package/dist/shared/validate-memory-size.js.map +0 -1
  489. package/dist/shared/validate-outname.d.ts.map +0 -1
  490. package/dist/shared/validate-outname.js.map +0 -1
  491. package/dist/shared/validate-presign-expiration.d.ts.map +0 -1
  492. package/dist/shared/validate-presign-expiration.js.map +0 -1
  493. package/dist/shared/validate-privacy.d.ts.map +0 -1
  494. package/dist/shared/validate-privacy.js.map +0 -1
  495. package/dist/shared/validate-retention-period.d.ts.map +0 -1
  496. package/dist/shared/validate-retention-period.js.map +0 -1
  497. package/dist/shared/validate-retries.d.ts.map +0 -1
  498. package/dist/shared/validate-retries.js.map +0 -1
  499. package/dist/shared/validate-serveurl.d.ts.map +0 -1
  500. package/dist/shared/validate-serveurl.js.map +0 -1
  501. package/dist/shared/validate-site-name.d.ts.map +0 -1
  502. package/dist/shared/validate-site-name.js.map +0 -1
  503. package/dist/shared/validate-timeout.d.ts.map +0 -1
  504. package/dist/shared/validate-timeout.js.map +0 -1
@@ -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, _b;
21
+ var _a;
23
22
  if (params.type !== constants_1.LambdaRoutines.renderer) {
24
23
  throw new Error('Params must be renderer');
25
24
  }
26
- remotion_1.Internals.Logging.setLogLevel(params.logLevel);
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,107 @@ 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
- await (0, renderer_1.renderMedia)({
45
- composition: {
46
- id: params.composition,
47
- durationInFrames: params.durationInFrames,
48
- fps: params.fps,
49
- height: params.height,
50
- width: params.width,
51
- },
52
- imageFormat: params.imageFormat,
53
- inputProps: params.inputProps,
54
- frameRange: params.frameRange,
55
- onProgress: ({ renderedFrames, encodedFrames, stitchStage }) => {
56
- if (renderedFrames % 10 === 0 &&
57
- remotion_1.Internals.Logging.isEqualOrBelowLogLevel(params.logLevel, 'verbose')) {
58
- console.log(`Rendered ${renderedFrames} frames, encoded ${encodedFrames} frames, stage = ${stitchStage}`);
59
- }
60
- const duration = renderer_1.RenderInternals.getDurationFromFrameRange(params.frameRange, params.durationInFrames);
61
- if (renderedFrames === duration) {
62
- console.log('Rendered all frames!');
63
- }
64
- chunkTimingData.timings[renderedFrames] = Date.now() - start;
65
- },
66
- parallelism: 1,
67
- onStart: () => {
68
- (0, io_1.lambdaWriteFile)({
69
- privacy: 'private',
70
- bucketName: params.bucketName,
71
- body: JSON.stringify({
72
- filesCleaned: clean_tmpdir_1.deletedFilesSize,
73
- filesInTmp: fs_1.default.readdirSync('/tmp'),
74
- isWarm: options.isWarm,
75
- deletedFiles: clean_tmpdir_1.deletedFiles,
76
- tmpSize: (0, get_folder_size_1.getFolderSizeRecursively)('/tmp'),
77
- tmpDirFiles: (0, get_files_in_folder_1.getFolderFiles)('/tmp'),
78
- }),
79
- key: (0, constants_1.lambdaInitializedKey)({
80
- renderId: params.renderId,
81
- chunk: params.chunk,
82
- attempt: params.attempt,
83
- }),
84
- region: (0, get_current_region_1.getCurrentRegionInFunction)(),
85
- expectedBucketOwner: options.expectedBucketOwner,
86
- });
87
- },
88
- puppeteerInstance: browserInstance,
89
- serveUrl: params.serveUrl,
90
- quality: params.quality,
91
- envVariables: params.envVariables,
92
- dumpBrowserLogs: remotion_1.Internals.Logging.isEqualOrBelowLogLevel(params.logLevel, 'verbose'),
93
- onBrowserLog: (log) => {
94
- logs.push(log);
95
- },
96
- outputLocation,
97
- codec: params.codec,
98
- crf: (_b = params.crf) !== null && _b !== void 0 ? _b : undefined,
99
- ffmpegExecutable: process.env.NODE_ENV === 'test' ? null : '/opt/bin/ffmpeg',
100
- pixelFormat: params.pixelFormat,
101
- proResProfile: params.proResProfile,
102
- onDownload: (src) => {
103
- console.log('Downloading', src);
104
- return () => undefined;
105
- },
106
- overwrite: false,
107
- chromiumOptions: params.chromiumOptions,
108
- scale: params.scale,
109
- timeoutInMilliseconds: params.timeoutInMilliseconds,
110
- port: null,
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
+ parallelism: 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
+ }).catch((err) => reject(err));
91
+ },
92
+ puppeteerInstance: browserInstance,
93
+ serveUrl: params.serveUrl,
94
+ quality: params.quality,
95
+ envVariables: params.envVariables,
96
+ dumpBrowserLogs: renderer_1.RenderInternals.isEqualOrBelowLogLevel(params.logLevel, 'verbose'),
97
+ verbose: renderer_1.RenderInternals.isEqualOrBelowLogLevel(params.logLevel, 'verbose'),
98
+ onBrowserLog: (log) => {
99
+ logs.push(log);
100
+ },
101
+ outputLocation,
102
+ codec: chunkCodec,
103
+ crf: (_a = params.crf) !== null && _a !== void 0 ? _a : undefined,
104
+ ffmpegExecutable: process.env.NODE_ENV === 'test' ? null : '/opt/bin/ffmpeg',
105
+ pixelFormat: params.pixelFormat,
106
+ proResProfile: params.proResProfile,
107
+ onDownload: (src) => {
108
+ console.log('Downloading', src);
109
+ downloads[src] = 0;
110
+ return ({ percent, downloaded }) => {
111
+ if (percent === null) {
112
+ console.log(`Download progress (${src}): ${downloaded} bytes. Don't know final size of download, no Content-Length header.`);
113
+ return;
114
+ }
115
+ if (
116
+ // Only report every 10% change
117
+ downloads[src] > percent - 0.1 &&
118
+ percent !== 1) {
119
+ return;
120
+ }
121
+ downloads[src] = percent;
122
+ console.log(`Download progress (${src}): ${downloaded} bytes, ${(percent * 100).toFixed(1)}%`);
123
+ if (percent === 1) {
124
+ console.log(`Download complete: ${src}`);
125
+ }
126
+ };
127
+ },
128
+ overwrite: false,
129
+ chromiumOptions: params.chromiumOptions,
130
+ scale: params.scale,
131
+ timeoutInMilliseconds: params.timeoutInMilliseconds,
132
+ port: null,
133
+ everyNthFrame: params.everyNthFrame,
134
+ numberOfGifLoops: null,
135
+ downloadMap,
136
+ muted: params.muted,
137
+ enforceAudioTrack: true,
138
+ })
139
+ .then(() => resolve())
140
+ .catch((err) => reject(err));
111
141
  });
112
142
  const endRendered = Date.now();
113
- console.log('Adding silent audio, chunk', params.chunk);
114
143
  const condensedTimingData = {
115
144
  ...chunkTimingData,
116
145
  timings: Object.values(chunkTimingData.timings),
@@ -125,6 +154,7 @@ const renderHandler = async (params, options, logs) => {
125
154
  region: (0, get_current_region_1.getCurrentRegionInFunction)(),
126
155
  privacy: params.privacy,
127
156
  expectedBucketOwner: options.expectedBucketOwner,
157
+ downloadBehavior: null,
128
158
  });
129
159
  await Promise.all([
130
160
  fs_1.default.promises.rm(outputLocation, { recursive: true }),
@@ -132,15 +162,16 @@ const renderHandler = async (params, options, logs) => {
132
162
  (0, io_1.lambdaWriteFile)({
133
163
  bucketName: params.bucketName,
134
164
  body: JSON.stringify(condensedTimingData, null, 2),
135
- key: `${(0, constants_1.lambdaTimingsKey)({
165
+ key: (0, constants_1.lambdaTimingsKey)({
136
166
  renderId: params.renderId,
137
167
  chunk: params.chunk,
138
168
  rendered: endRendered,
139
169
  start,
140
- })}`,
170
+ }),
141
171
  region: (0, get_current_region_1.getCurrentRegionInFunction)(),
142
172
  privacy: 'private',
143
173
  expectedBucketOwner: options.expectedBucketOwner,
174
+ downloadBehavior: null,
144
175
  }),
145
176
  ]);
146
177
  };
@@ -1,5 +1,9 @@
1
- import { LambdaPayload } from '../shared/constants';
2
- export declare const startHandler: (params: LambdaPayload) => Promise<{
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 {};
@@ -2,21 +2,37 @@
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 remotion_1 = require("remotion");
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 startHandler = async (params) => {
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
+ });
20
36
  const payload = {
21
37
  type: constants_1.LambdaRoutines.launch,
22
38
  framesPerLambda: params.framesPerLambda,
@@ -34,12 +50,17 @@ const startHandler = async (params) => {
34
50
  quality: params.quality,
35
51
  maxRetries: params.maxRetries,
36
52
  privacy: params.privacy,
37
- logLevel: (_a = params.logLevel) !== null && _a !== void 0 ? _a : remotion_1.Internals.Logging.DEFAULT_LOG_LEVEL,
53
+ logLevel: (_a = params.logLevel) !== null && _a !== void 0 ? _a : 'info',
38
54
  frameRange: params.frameRange,
39
55
  outName: params.outName,
40
56
  timeoutInMilliseconds: params.timeoutInMilliseconds,
41
57
  chromiumOptions: params.chromiumOptions,
42
58
  scale: params.scale,
59
+ numberOfGifLoops: params.numberOfGifLoops,
60
+ everyNthFrame: params.everyNthFrame,
61
+ concurrencyPerLambda: params.concurrencyPerLambda,
62
+ downloadBehavior: params.downloadBehavior,
63
+ muted: params.muted,
43
64
  };
44
65
  await (0, aws_clients_1.getLambdaClient)((0, get_current_region_1.getCurrentRegionInFunction)()).send(new client_lambda_1.InvokeCommand({
45
66
  FunctionName: process.env.AWS_LAMBDA_FUNCTION_NAME,
@@ -47,6 +68,7 @@ const startHandler = async (params) => {
47
68
  Payload: JSON.stringify(payload),
48
69
  InvocationType: 'Event',
49
70
  }));
71
+ await initialFile;
50
72
  return {
51
73
  bucketName,
52
74
  renderId,
@@ -1,4 +1,4 @@
1
- import { LambdaPayload } from '../shared/constants';
1
+ import type { LambdaPayload } from '../shared/constants';
2
2
  declare type Options = {
3
3
  expectedBucketOwner: string;
4
4
  };
@@ -8,13 +8,14 @@ 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");
11
+ const version_1 = require("remotion/version");
12
12
  const estimate_price_1 = require("../api/estimate-price");
13
13
  const get_or_create_bucket_1 = require("../api/get-or-create-bucket");
14
14
  const aws_clients_1 = require("../shared/aws-clients");
15
15
  const constants_1 = require("../shared/constants");
16
16
  const make_s3_url_1 = require("../shared/make-s3-url");
17
17
  const random_hash_1 = require("../shared/random-hash");
18
+ const validate_download_behavior_1 = require("../shared/validate-download-behavior");
18
19
  const validate_outname_1 = require("../shared/validate-outname");
19
20
  const validate_privacy_1 = require("../shared/validate-privacy");
20
21
  const expected_out_name_1 = require("./helpers/expected-out-name");
@@ -27,10 +28,17 @@ const io_1 = require("./helpers/io");
27
28
  const validate_composition_1 = require("./helpers/validate-composition");
28
29
  const write_lambda_error_1 = require("./helpers/write-lambda-error");
29
30
  const innerStillHandler = async (lambdaParams, renderId, options) => {
30
- var _a, _b, _c;
31
+ var _a, _b;
31
32
  if (lambdaParams.type !== constants_1.LambdaRoutines.still) {
32
33
  throw new TypeError('Expected still type');
33
34
  }
35
+ if (lambdaParams.version !== version_1.VERSION) {
36
+ if (!lambdaParams.version) {
37
+ throw new Error(`Version mismatch: When calling renderStillOnLambda(), the deployed Lambda function had version ${version_1.VERSION} but the @remotion/lambda package is an older version. Align the versions.`);
38
+ }
39
+ throw new Error(`Version mismatch: When calling renderStillOnLambda(), get deployed Lambda function had version ${version_1.VERSION} and the @remotion/lambda package has version ${lambdaParams.version}. Align the versions.`);
40
+ }
41
+ (0, validate_download_behavior_1.validateDownloadBehavior)(lambdaParams.downloadBehavior);
34
42
  (0, validate_privacy_1.validatePrivacy)(lambdaParams.privacy);
35
43
  (0, validate_outname_1.validateOutname)(lambdaParams.outName);
36
44
  const start = Date.now();
@@ -38,10 +46,11 @@ const innerStillHandler = async (lambdaParams, renderId, options) => {
38
46
  (0, get_or_create_bucket_1.getOrCreateBucket)({
39
47
  region: (0, get_current_region_1.getCurrentRegionInFunction)(),
40
48
  }),
41
- (0, get_browser_instance_1.getBrowserInstance)(remotion_1.Internals.Logging.isEqualOrBelowLogLevel((_a = lambdaParams.logLevel) !== null && _a !== void 0 ? _a : remotion_1.Internals.Logging.DEFAULT_LOG_LEVEL, 'verbose'), (_b = lambdaParams.chromiumOptions) !== null && _b !== void 0 ? _b : {}),
49
+ (0, get_browser_instance_1.getBrowserInstance)(renderer_1.RenderInternals.isEqualOrBelowLogLevel(lambdaParams.logLevel, 'verbose'), (_a = lambdaParams.chromiumOptions) !== null && _a !== void 0 ? _a : {}),
42
50
  ]);
43
51
  const outputDir = renderer_1.RenderInternals.tmpDir('remotion-render-');
44
52
  const outputPath = path_1.default.join(outputDir, 'output');
53
+ const downloadMap = renderer_1.RenderInternals.makeDownloadMap();
45
54
  const composition = await (0, validate_composition_1.validateComposition)({
46
55
  serveUrl: lambdaParams.serveUrl,
47
56
  browserInstance,
@@ -49,9 +58,11 @@ const innerStillHandler = async (lambdaParams, renderId, options) => {
49
58
  inputProps: lambdaParams.inputProps,
50
59
  envVariables: lambdaParams.envVariables,
51
60
  ffmpegExecutable: null,
61
+ ffprobeExecutable: null,
52
62
  chromiumOptions: lambdaParams.chromiumOptions,
53
63
  timeoutInMilliseconds: lambdaParams.timeoutInMilliseconds,
54
64
  port: null,
65
+ downloadMap,
55
66
  });
56
67
  const renderMetadata = {
57
68
  startedDate: Date.now(),
@@ -66,12 +77,12 @@ const innerStillHandler = async (lambdaParams, renderId, options) => {
66
77
  usesOptimizationProfile: false,
67
78
  imageFormat: lambdaParams.imageFormat,
68
79
  inputProps: lambdaParams.inputProps,
69
- lambdaVersion: constants_1.CURRENT_VERSION,
80
+ lambdaVersion: version_1.VERSION,
70
81
  framesPerLambda: 1,
71
82
  memorySizeInMb: Number(process.env.AWS_LAMBDA_FUNCTION_MEMORY_SIZE),
72
83
  region: (0, get_current_region_1.getCurrentRegionInFunction)(),
73
84
  renderId,
74
- outName: (_c = lambdaParams.outName) !== null && _c !== void 0 ? _c : undefined,
85
+ outName: (_b = lambdaParams.outName) !== null && _b !== void 0 ? _b : undefined,
75
86
  };
76
87
  await (0, io_1.lambdaWriteFile)({
77
88
  bucketName,
@@ -80,6 +91,7 @@ const innerStillHandler = async (lambdaParams, renderId, options) => {
80
91
  region: (0, get_current_region_1.getCurrentRegionInFunction)(),
81
92
  privacy: 'private',
82
93
  expectedBucketOwner: options.expectedBucketOwner,
94
+ downloadBehavior: null,
83
95
  });
84
96
  await (0, renderer_1.renderStill)({
85
97
  composition,
@@ -96,16 +108,18 @@ const innerStillHandler = async (lambdaParams, renderId, options) => {
96
108
  chromiumOptions: lambdaParams.chromiumOptions,
97
109
  scale: lambdaParams.scale,
98
110
  timeoutInMilliseconds: lambdaParams.timeoutInMilliseconds,
111
+ downloadMap,
99
112
  });
100
- const { key: outName, renderBucketName } = (0, expected_out_name_1.getExpectedOutName)(renderMetadata, bucketName);
113
+ const { key, renderBucketName } = (0, expected_out_name_1.getExpectedOutName)(renderMetadata, bucketName);
101
114
  const { size } = await fs_1.default.promises.stat(outputPath);
102
115
  await (0, io_1.lambdaWriteFile)({
103
116
  bucketName: renderBucketName,
104
- key: outName,
117
+ key,
105
118
  privacy: lambdaParams.privacy,
106
119
  body: fs_1.default.createReadStream(outputPath),
107
120
  expectedBucketOwner: options.expectedBucketOwner,
108
121
  region: (0, get_current_region_1.getCurrentRegionInFunction)(),
122
+ downloadBehavior: lambdaParams.downloadBehavior,
109
123
  });
110
124
  await fs_1.default.promises.rm(outputPath, { recursive: true });
111
125
  const estimatedPrice = (0, estimate_price_1.estimatePrice)({
package/dist/index.d.ts CHANGED
@@ -1,25 +1,40 @@
1
- import { deleteFunction, DeleteFunctionInput } from './api/delete-function';
2
- import { deleteSite, DeleteSiteInput, DeleteSiteOutput } from './api/delete-site';
3
- import { deployFunction, DeployFunctionInput, DeployFunctionOutput } from './api/deploy-function';
4
- import { deploySite, DeploySiteInput, DeploySiteOutput } from './api/deploy-site';
5
- import { downloadMedia, DownloadMediaInput, DownloadMediaOutput, downloadVideo } from './api/download-media';
6
- import { estimatePrice, EstimatePriceInput } from './api/estimate-price';
7
- import { getAwsClient, GetAwsClientInput, GetAwsClientOutput } from './api/get-aws-client';
8
- import { FunctionInfo, getFunctionInfo, GetFunctionInfoInput } from './api/get-function-info';
9
- import { getFunctions, GetFunctionsInput } from './api/get-functions';
10
- import { getOrCreateBucket, GetOrCreateBucketInput, GetOrCreateBucketOutput } from './api/get-or-create-bucket';
1
+ import type { DeleteFunctionInput } from './api/delete-function';
2
+ import { deleteFunction } from './api/delete-function';
3
+ import type { DeleteSiteInput, DeleteSiteOutput } from './api/delete-site';
4
+ import { deleteSite } from './api/delete-site';
5
+ import type { DeployFunctionInput, DeployFunctionOutput } from './api/deploy-function';
6
+ import { deployFunction } from './api/deploy-function';
7
+ import type { DeploySiteInput, DeploySiteOutput } from './api/deploy-site';
8
+ import { deploySite } from './api/deploy-site';
9
+ import type { DownloadMediaInput, DownloadMediaOutput } from './api/download-media';
10
+ import { downloadMedia, downloadVideo } from './api/download-media';
11
+ import type { EstimatePriceInput } from './api/estimate-price';
12
+ import { estimatePrice } from './api/estimate-price';
13
+ import type { GetAwsClientInput, GetAwsClientOutput } from './api/get-aws-client';
14
+ import { getAwsClient } from './api/get-aws-client';
15
+ import type { FunctionInfo, GetFunctionInfoInput } from './api/get-function-info';
16
+ import { getFunctionInfo } from './api/get-function-info';
17
+ import type { GetFunctionsInput } from './api/get-functions';
18
+ import { getFunctions } from './api/get-functions';
19
+ import type { GetOrCreateBucketInput, GetOrCreateBucketOutput } from './api/get-or-create-bucket';
20
+ import { getOrCreateBucket } from './api/get-or-create-bucket';
11
21
  import { getRegions } from './api/get-regions';
12
- import { GetRenderInput, getRenderProgress } from './api/get-render-progress';
13
- import { getSites, GetSitesInput, GetSitesOutput } from './api/get-sites';
14
- import { simulatePermissions, SimulatePermissionsInput, SimulatePermissionsOutput } from './api/iam-validation/simulate';
22
+ import type { GetRenderInput } from './api/get-render-progress';
23
+ import { getRenderProgress } from './api/get-render-progress';
24
+ import type { GetSitesInput, GetSitesOutput } from './api/get-sites';
25
+ import { getSites } from './api/get-sites';
26
+ import type { SimulatePermissionsInput, SimulatePermissionsOutput } from './api/iam-validation/simulate';
27
+ import { simulatePermissions } from './api/iam-validation/simulate';
15
28
  import { getRolePolicy, getUserPolicy } from './api/iam-validation/suggested-policy';
16
29
  import { presignUrl } from './api/presign-url';
17
- import { renderMediaOnLambda, RenderMediaOnLambdaInput, RenderMediaOnLambdaOutput, renderVideoOnLambda } from './api/render-media-on-lambda';
18
- import { renderStillOnLambda, RenderStillOnLambdaInput, RenderStillOnLambdaOutput } from './api/render-still-on-lambda';
19
- import { LambdaLSInput, LambdaLsReturnType } from './functions/helpers/io';
30
+ import type { RenderMediaOnLambdaInput, RenderMediaOnLambdaOutput } from './api/render-media-on-lambda';
31
+ import { renderMediaOnLambda, renderVideoOnLambda } from './api/render-media-on-lambda';
32
+ import type { RenderStillOnLambdaInput, RenderStillOnLambdaOutput } from './api/render-still-on-lambda';
33
+ import { renderStillOnLambda } from './api/render-still-on-lambda';
34
+ import type { LambdaLSInput, LambdaLsReturnType } from './functions/helpers/io';
20
35
  import { LambdaInternals } from './internals';
21
- import { AwsRegion } from './pricing/aws-regions';
36
+ import type { AwsRegion } from './pricing/aws-regions';
22
37
  import type { RenderProgress } from './shared/constants';
23
- import { LambdaArchitecture } from './shared/validate-architecture';
38
+ import type { LambdaArchitecture } from './shared/validate-architecture';
24
39
  export { deleteSite, deployFunction, deploySite, downloadMedia, downloadVideo, getFunctions, getUserPolicy, getRolePolicy, getSites, getOrCreateBucket, getRenderProgress, renderVideoOnLambda, renderMediaOnLambda, simulatePermissions, deleteFunction, getFunctionInfo, estimatePrice, LambdaInternals, renderStillOnLambda, getRegions, getAwsClient, presignUrl, };
25
40
  export type { AwsRegion, RenderProgress, DeploySiteInput, DeploySiteOutput, LambdaLsReturnType, LambdaLSInput, DeleteSiteInput, DeleteSiteOutput, EstimatePriceInput, DeployFunctionInput, DeployFunctionOutput, DeleteFunctionInput, GetFunctionInfoInput, FunctionInfo, GetFunctionsInput, GetSitesInput, GetSitesOutput, DownloadMediaInput, DownloadMediaOutput, GetOrCreateBucketInput, GetOrCreateBucketOutput, GetRenderInput, RenderMediaOnLambdaInput, RenderMediaOnLambdaOutput, RenderStillOnLambdaInput, RenderStillOnLambdaOutput, SimulatePermissionsInput, SimulatePermissionsOutput, GetAwsClientInput, GetAwsClientOutput, LambdaArchitecture, };
@@ -1,4 +1,4 @@
1
- import { AwsRegion } from './aws-regions';
1
+ import type { AwsRegion } from './aws-regions';
2
2
  export declare const pricing: {
3
3
  [key in AwsRegion]: {
4
4
  'Lambda Duration': {
@@ -3,7 +3,7 @@ import { IAMClient } from '@aws-sdk/client-iam';
3
3
  import { LambdaClient } from '@aws-sdk/client-lambda';
4
4
  import { S3Client } from '@aws-sdk/client-s3';
5
5
  import { ServiceQuotasClient } from '@aws-sdk/client-service-quotas';
6
- import { AwsRegion } from '../pricing/aws-regions';
6
+ import type { AwsRegion } from '../pricing/aws-regions';
7
7
  export declare type ServiceMapping = {
8
8
  s3: S3Client;
9
9
  cloudwatch: CloudWatchLogsClient;
@@ -1,6 +1 @@
1
- export declare const bundleSite: (entryPoint: string, onProgressUpdate?: ((progress: number) => void) | undefined, options?: {
2
- webpackOverride?: import("remotion").WebpackOverrideFn | undefined;
3
- outDir?: string | undefined;
4
- enableCaching?: boolean | undefined;
5
- publicPath?: string | undefined;
6
- } | undefined) => Promise<string>;
1
+ export declare const bundleSite: (entryPoint: string, onProgressUpdate?: ((progress: number) => void) | undefined, options?: import("@remotion/bundler").BundleOptions | undefined) => Promise<string>;
@@ -1,6 +1,6 @@
1
- import { AwsRegion } from '../pricing/aws-regions';
2
- import { LambdaPayloads, LambdaRoutines } from './constants';
3
- import { LambdaReturnValues } from './return-values';
1
+ import type { AwsRegion } from '../pricing/aws-regions';
2
+ import type { LambdaPayloads, LambdaRoutines } from './constants';
3
+ import type { LambdaReturnValues } from './return-values';
4
4
  export declare const callLambda: <T extends LambdaRoutines>({ functionName, type, payload, region, }: {
5
5
  functionName: string;
6
6
  type: T;
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.checkCredentials = void 0;
4
- const remotion_1 = require("remotion");
5
4
  const is_cli_1 = require("../cli/is-cli");
6
5
  const docs_url_1 = require("./docs-url");
6
+ const truthy_1 = require("./truthy");
7
7
  const messageForVariable = (variable) => {
8
8
  return [
9
9
  `You have tried to call a Remotion Lambda function, but have not set the environment variable ${variable}.`,
@@ -13,7 +13,7 @@ const messageForVariable = (variable) => {
13
13
  `- Please refer to the Remotion Lambda docs (${docs_url_1.DOCS_URL}/docs/lambda/setup) to see how to generate the credentials for your AWS account and then set the environment variables.`,
14
14
  `- For more reasons see the troubleshooting page: ${docs_url_1.DOCS_URL}/docs/lambda/troubleshooting/permissions`,
15
15
  ]
16
- .filter(remotion_1.Internals.truthy)
16
+ .filter(truthy_1.truthy)
17
17
  .join('\n');
18
18
  };
19
19
  const checkCredentials = () => {