@remotion/lambda 4.0.0-publish.3 → 4.0.0-reorg.27

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 (352) hide show
  1. package/dist/admin/bundle-lambda.d.ts +0 -0
  2. package/dist/admin/bundle-lambda.js +1 -0
  3. package/dist/admin/make-layer-public.d.ts +0 -0
  4. package/dist/admin/make-layer-public.js +0 -0
  5. package/dist/api/bucket-exists.d.ts +0 -0
  6. package/dist/api/bucket-exists.js +0 -0
  7. package/dist/api/clean-items.d.ts +0 -0
  8. package/dist/api/clean-items.js +0 -0
  9. package/dist/api/create-bucket.d.ts +0 -0
  10. package/dist/api/create-bucket.js +0 -0
  11. package/dist/api/create-function.d.ts +0 -0
  12. package/dist/api/create-function.js +0 -0
  13. package/dist/api/delete-function.d.ts +0 -0
  14. package/dist/api/delete-function.js +0 -0
  15. package/dist/api/delete-site.d.ts +0 -0
  16. package/dist/api/delete-site.js +0 -0
  17. package/dist/api/deploy-function.d.ts +0 -0
  18. package/dist/api/deploy-function.js +0 -0
  19. package/dist/api/deploy-site.d.ts +0 -0
  20. package/dist/api/deploy-site.js +2 -3
  21. package/dist/api/download-media.d.ts +0 -0
  22. package/dist/api/download-media.js +0 -0
  23. package/dist/api/enable-s3-website.d.ts +0 -0
  24. package/dist/api/enable-s3-website.js +0 -0
  25. package/dist/api/estimate-price.d.ts +0 -0
  26. package/dist/api/estimate-price.js +0 -0
  27. package/dist/api/get-aws-client.d.ts +0 -0
  28. package/dist/api/get-aws-client.js +0 -0
  29. package/dist/api/get-buckets.d.ts +0 -0
  30. package/dist/api/get-buckets.js +0 -0
  31. package/dist/api/get-function-info.d.ts +0 -0
  32. package/dist/api/get-function-info.js +0 -0
  33. package/dist/api/get-functions.d.ts +0 -0
  34. package/dist/api/get-functions.js +0 -0
  35. package/dist/api/get-or-create-bucket.d.ts +0 -0
  36. package/dist/api/get-or-create-bucket.js +0 -0
  37. package/dist/api/get-regions.d.ts +0 -0
  38. package/dist/api/get-regions.js +0 -0
  39. package/dist/api/get-render-progress.d.ts +0 -0
  40. package/dist/api/get-render-progress.js +0 -0
  41. package/dist/api/get-sites.d.ts +0 -0
  42. package/dist/api/get-sites.js +0 -0
  43. package/dist/api/iam-validation/role-permissions.d.ts +0 -0
  44. package/dist/api/iam-validation/role-permissions.js +0 -0
  45. package/dist/api/iam-validation/simulate-rule.d.ts +0 -0
  46. package/dist/api/iam-validation/simulate-rule.js +0 -0
  47. package/dist/api/iam-validation/simulate.d.ts +0 -0
  48. package/dist/api/iam-validation/simulate.js +0 -0
  49. package/dist/api/iam-validation/suggested-policy.d.ts +0 -0
  50. package/dist/api/iam-validation/suggested-policy.js +0 -0
  51. package/dist/api/iam-validation/user-permissions.d.ts +0 -0
  52. package/dist/api/iam-validation/user-permissions.js +0 -0
  53. package/dist/api/mock-functions.d.ts +0 -0
  54. package/dist/api/mock-functions.js +0 -0
  55. package/dist/api/presign-url.d.ts +2 -1
  56. package/dist/api/presign-url.js +0 -0
  57. package/dist/api/render-media-on-lambda.d.ts +10 -6
  58. package/dist/api/render-media-on-lambda.js +9 -4
  59. package/dist/api/render-still-on-lambda.d.ts +6 -5
  60. package/dist/api/render-still-on-lambda.js +4 -4
  61. package/dist/api/upload-dir.d.ts +0 -0
  62. package/dist/api/upload-dir.js +0 -0
  63. package/dist/cli/args.d.ts +1 -0
  64. package/dist/cli/args.js +0 -0
  65. package/dist/cli/commands/functions/deploy.d.ts +0 -0
  66. package/dist/cli/commands/functions/deploy.js +0 -0
  67. package/dist/cli/commands/functions/index.d.ts +0 -0
  68. package/dist/cli/commands/functions/index.js +0 -0
  69. package/dist/cli/commands/functions/ls.d.ts +0 -0
  70. package/dist/cli/commands/functions/ls.js +0 -0
  71. package/dist/cli/commands/functions/rm.d.ts +0 -0
  72. package/dist/cli/commands/functions/rm.js +0 -0
  73. package/dist/cli/commands/functions/rmall.d.ts +0 -0
  74. package/dist/cli/commands/functions/rmall.js +0 -0
  75. package/dist/cli/commands/policies/policies.d.ts +0 -0
  76. package/dist/cli/commands/policies/policies.js +0 -0
  77. package/dist/cli/commands/policies/role.d.ts +0 -0
  78. package/dist/cli/commands/policies/role.js +0 -0
  79. package/dist/cli/commands/policies/user.d.ts +0 -0
  80. package/dist/cli/commands/policies/user.js +0 -0
  81. package/dist/cli/commands/policies/validate.d.ts +0 -0
  82. package/dist/cli/commands/policies/validate.js +0 -0
  83. package/dist/cli/commands/quotas/increase.d.ts +0 -0
  84. package/dist/cli/commands/quotas/increase.js +0 -0
  85. package/dist/cli/commands/quotas/index.d.ts +0 -0
  86. package/dist/cli/commands/quotas/index.js +0 -0
  87. package/dist/cli/commands/quotas/list.d.ts +0 -0
  88. package/dist/cli/commands/quotas/list.js +0 -0
  89. package/dist/cli/commands/regions.d.ts +0 -0
  90. package/dist/cli/commands/regions.js +0 -0
  91. package/dist/cli/commands/render/progress.d.ts +1 -1
  92. package/dist/cli/commands/render/progress.js +0 -0
  93. package/dist/cli/commands/render/render.d.ts +0 -0
  94. package/dist/cli/commands/render/render.js +4 -1
  95. package/dist/cli/commands/sites/create.d.ts +0 -0
  96. package/dist/cli/commands/sites/create.js +2 -3
  97. package/dist/cli/commands/sites/index.d.ts +0 -0
  98. package/dist/cli/commands/sites/index.js +0 -0
  99. package/dist/cli/commands/sites/ls.d.ts +0 -0
  100. package/dist/cli/commands/sites/ls.js +0 -0
  101. package/dist/cli/commands/sites/rm.d.ts +0 -0
  102. package/dist/cli/commands/sites/rm.js +0 -0
  103. package/dist/cli/commands/sites/rmall.d.ts +0 -0
  104. package/dist/cli/commands/sites/rmall.js +0 -0
  105. package/dist/cli/commands/still.d.ts +0 -0
  106. package/dist/cli/commands/still.js +0 -0
  107. package/dist/cli/get-aws-region.d.ts +0 -0
  108. package/dist/cli/get-aws-region.js +0 -0
  109. package/dist/cli/help.d.ts +0 -0
  110. package/dist/cli/help.js +0 -0
  111. package/dist/cli/helpers/confirm.d.ts +0 -0
  112. package/dist/cli/helpers/confirm.js +0 -0
  113. package/dist/cli/helpers/date-string.d.ts +0 -0
  114. package/dist/cli/helpers/date-string.js +0 -0
  115. package/dist/cli/helpers/find-function-name.d.ts +0 -0
  116. package/dist/cli/helpers/find-function-name.js +0 -0
  117. package/dist/cli/helpers/get-cloudwatch-stream-url.d.ts +0 -0
  118. package/dist/cli/helpers/get-cloudwatch-stream-url.js +0 -0
  119. package/dist/cli/helpers/progress-bar.d.ts +0 -0
  120. package/dist/cli/helpers/progress-bar.js +0 -0
  121. package/dist/cli/helpers/quit.d.ts +0 -0
  122. package/dist/cli/helpers/quit.js +0 -0
  123. package/dist/cli/helpers/yes-or-no.d.ts +0 -0
  124. package/dist/cli/helpers/yes-or-no.js +0 -0
  125. package/dist/cli/index.d.ts +0 -0
  126. package/dist/cli/index.js +0 -0
  127. package/dist/cli/is-cli.d.ts +0 -0
  128. package/dist/cli/is-cli.js +0 -0
  129. package/dist/cli/log.d.ts +0 -0
  130. package/dist/cli/log.js +0 -0
  131. package/dist/client.d.ts +0 -0
  132. package/dist/client.js +0 -0
  133. package/dist/defaults.d.ts +0 -0
  134. package/dist/defaults.js +0 -0
  135. package/dist/functions/chunk-optimization/can-use-optimization.d.ts +0 -0
  136. package/dist/functions/chunk-optimization/can-use-optimization.js +0 -0
  137. package/dist/functions/chunk-optimization/collect-data.d.ts +0 -0
  138. package/dist/functions/chunk-optimization/collect-data.js +0 -0
  139. package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.d.ts +0 -0
  140. package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.js +0 -0
  141. package/dist/functions/chunk-optimization/get-profile-duration.d.ts +0 -0
  142. package/dist/functions/chunk-optimization/get-profile-duration.js +0 -0
  143. package/dist/functions/chunk-optimization/is-valid-profile.d.ts +0 -0
  144. package/dist/functions/chunk-optimization/is-valid-profile.js +2 -2
  145. package/dist/functions/chunk-optimization/optimize-invocation-order.d.ts +0 -0
  146. package/dist/functions/chunk-optimization/optimize-invocation-order.js +0 -0
  147. package/dist/functions/chunk-optimization/optimize-profile.d.ts +0 -0
  148. package/dist/functions/chunk-optimization/optimize-profile.js +0 -0
  149. package/dist/functions/chunk-optimization/plan-frame-ranges.d.ts +2 -2
  150. package/dist/functions/chunk-optimization/plan-frame-ranges.js +7 -6
  151. package/dist/functions/chunk-optimization/s3-optimization-file.d.ts +0 -0
  152. package/dist/functions/chunk-optimization/s3-optimization-file.js +1 -0
  153. package/dist/functions/chunk-optimization/simulate-frame-ranges.d.ts +0 -0
  154. package/dist/functions/chunk-optimization/simulate-frame-ranges.js +0 -0
  155. package/dist/functions/chunk-optimization/sort-by-duration.d.ts +0 -0
  156. package/dist/functions/chunk-optimization/sort-by-duration.js +0 -0
  157. package/dist/functions/chunk-optimization/types.d.ts +1 -0
  158. package/dist/functions/chunk-optimization/types.js +0 -0
  159. package/dist/functions/helpers/best-frames-per-lambda-param.d.ts +0 -0
  160. package/dist/functions/helpers/best-frames-per-lambda-param.js +0 -0
  161. package/dist/functions/helpers/calculate-chunk-times.d.ts +0 -0
  162. package/dist/functions/helpers/calculate-chunk-times.js +0 -0
  163. package/dist/functions/helpers/calculate-price-from-bucket.d.ts +0 -0
  164. package/dist/functions/helpers/calculate-price-from-bucket.js +0 -0
  165. package/dist/functions/helpers/clean-tmpdir.d.ts +0 -0
  166. package/dist/functions/helpers/clean-tmpdir.js +0 -0
  167. package/dist/functions/helpers/concat-videos.d.ts +2 -1
  168. package/dist/functions/helpers/concat-videos.js +2 -1
  169. package/dist/functions/helpers/create-post-render-data.d.ts +0 -0
  170. package/dist/functions/helpers/create-post-render-data.js +0 -0
  171. package/dist/functions/helpers/delete-chunks.d.ts +0 -0
  172. package/dist/functions/helpers/delete-chunks.js +0 -0
  173. package/dist/functions/helpers/expected-out-name.d.ts +0 -0
  174. package/dist/functions/helpers/expected-out-name.js +0 -0
  175. package/dist/functions/helpers/find-output-file-in-bucket.d.ts +0 -0
  176. package/dist/functions/helpers/find-output-file-in-bucket.js +0 -0
  177. package/dist/functions/helpers/format-costs-info.d.ts +0 -0
  178. package/dist/functions/helpers/format-costs-info.js +0 -0
  179. package/dist/functions/helpers/get-browser-instance.d.ts +0 -0
  180. package/dist/functions/helpers/get-browser-instance.js +0 -0
  181. package/dist/functions/helpers/get-chromium-executable-path.d.ts +0 -0
  182. package/dist/functions/helpers/get-chromium-executable-path.js +0 -0
  183. package/dist/functions/helpers/get-cleanup-progress.d.ts +0 -0
  184. package/dist/functions/helpers/get-cleanup-progress.js +0 -0
  185. package/dist/functions/helpers/get-current-architecture.d.ts +0 -0
  186. package/dist/functions/helpers/get-current-architecture.js +0 -0
  187. package/dist/functions/helpers/get-current-region.d.ts +0 -0
  188. package/dist/functions/helpers/get-current-region.js +0 -0
  189. package/dist/functions/helpers/get-encoding-metadata.d.ts +0 -0
  190. package/dist/functions/helpers/get-encoding-metadata.js +0 -0
  191. package/dist/functions/helpers/get-files-in-folder.d.ts +0 -0
  192. package/dist/functions/helpers/get-files-in-folder.js +0 -0
  193. package/dist/functions/helpers/get-files-to-delete.d.ts +0 -0
  194. package/dist/functions/helpers/get-files-to-delete.js +0 -0
  195. package/dist/functions/helpers/get-final-encoding-status.d.ts +0 -0
  196. package/dist/functions/helpers/get-final-encoding-status.js +0 -0
  197. package/dist/functions/helpers/get-folder-size.d.ts +0 -0
  198. package/dist/functions/helpers/get-folder-size.js +0 -0
  199. package/dist/functions/helpers/get-lambdas-invoked-stats.d.ts +0 -0
  200. package/dist/functions/helpers/get-lambdas-invoked-stats.js +0 -0
  201. package/dist/functions/helpers/get-output-url-from-metadata.d.ts +0 -0
  202. package/dist/functions/helpers/get-output-url-from-metadata.js +0 -0
  203. package/dist/functions/helpers/get-overall-progress.d.ts +0 -0
  204. package/dist/functions/helpers/get-overall-progress.js +0 -0
  205. package/dist/functions/helpers/get-post-render-data.d.ts +0 -0
  206. package/dist/functions/helpers/get-post-render-data.js +0 -0
  207. package/dist/functions/helpers/get-progress.d.ts +0 -0
  208. package/dist/functions/helpers/get-progress.js +0 -0
  209. package/dist/functions/helpers/get-render-metadata.d.ts +0 -0
  210. package/dist/functions/helpers/get-render-metadata.js +0 -0
  211. package/dist/functions/helpers/get-retry-stats.d.ts +0 -0
  212. package/dist/functions/helpers/get-retry-stats.js +0 -0
  213. package/dist/functions/helpers/get-time-to-finish.d.ts +0 -0
  214. package/dist/functions/helpers/get-time-to-finish.js +0 -0
  215. package/dist/functions/helpers/inspect-errors.d.ts +0 -0
  216. package/dist/functions/helpers/inspect-errors.js +0 -0
  217. package/dist/functions/helpers/io.d.ts +3 -1
  218. package/dist/functions/helpers/io.js +3 -1
  219. package/dist/functions/helpers/is-enosp-err.d.ts +0 -0
  220. package/dist/functions/helpers/is-enosp-err.js +0 -0
  221. package/dist/functions/helpers/is-warm.d.ts +0 -0
  222. package/dist/functions/helpers/is-warm.js +0 -0
  223. package/dist/functions/helpers/min-max.d.ts +0 -0
  224. package/dist/functions/helpers/min-max.js +0 -0
  225. package/dist/functions/helpers/print-cloudwatch-helper.d.ts +0 -0
  226. package/dist/functions/helpers/print-cloudwatch-helper.js +0 -0
  227. package/dist/functions/helpers/print-concurrency-curve.d.ts +0 -0
  228. package/dist/functions/helpers/print-concurrency-curve.js +0 -0
  229. package/dist/functions/helpers/read-with-progress.d.ts +2 -2
  230. package/dist/functions/helpers/read-with-progress.js +8 -1
  231. package/dist/functions/helpers/timer.d.ts +0 -0
  232. package/dist/functions/helpers/timer.js +0 -0
  233. package/dist/functions/helpers/validate-composition.d.ts +2 -2
  234. package/dist/functions/helpers/validate-composition.js +0 -0
  235. package/dist/functions/helpers/write-lambda-error.d.ts +0 -0
  236. package/dist/functions/helpers/write-lambda-error.js +1 -0
  237. package/dist/functions/helpers/write-post-render-data.d.ts +0 -0
  238. package/dist/functions/helpers/write-post-render-data.js +1 -0
  239. package/dist/functions/index.d.ts +0 -0
  240. package/dist/functions/index.js +4 -4
  241. package/dist/functions/info.d.ts +0 -0
  242. package/dist/functions/info.js +0 -0
  243. package/dist/functions/launch.d.ts +0 -0
  244. package/dist/functions/launch.js +26 -16
  245. package/dist/functions/progress.d.ts +0 -0
  246. package/dist/functions/progress.js +0 -0
  247. package/dist/functions/renderer.d.ts +0 -0
  248. package/dist/functions/renderer.js +16 -11
  249. package/dist/functions/start.d.ts +0 -0
  250. package/dist/functions/start.js +5 -2
  251. package/dist/functions/still.d.ts +0 -0
  252. package/dist/functions/still.js +9 -6
  253. package/dist/index.d.ts +0 -0
  254. package/dist/index.js +0 -0
  255. package/dist/internals.d.ts +0 -0
  256. package/dist/internals.js +0 -0
  257. package/dist/pricing/aws-regions.d.ts +0 -0
  258. package/dist/pricing/aws-regions.js +0 -0
  259. package/dist/pricing/price-per-1-s.d.ts +0 -0
  260. package/dist/pricing/price-per-1-s.js +0 -0
  261. package/dist/regions.d.ts +0 -0
  262. package/dist/regions.js +0 -0
  263. package/dist/shared/await.d.ts +0 -0
  264. package/dist/shared/await.js +0 -0
  265. package/dist/shared/aws-clients.d.ts +0 -0
  266. package/dist/shared/aws-clients.js +0 -0
  267. package/dist/shared/bundle-site.d.ts +1 -1
  268. package/dist/shared/bundle-site.js +0 -0
  269. package/dist/shared/call-lambda.d.ts +0 -0
  270. package/dist/shared/call-lambda.js +0 -0
  271. package/dist/shared/check-credentials.d.ts +0 -0
  272. package/dist/shared/check-credentials.js +2 -2
  273. package/dist/shared/constants.d.ts +16 -4
  274. package/dist/shared/constants.js +1 -1
  275. package/dist/shared/content-disposition-header.d.ts +7 -0
  276. package/dist/shared/content-disposition-header.js +19 -0
  277. package/dist/shared/convert-to-serve-url.d.ts +0 -0
  278. package/dist/shared/convert-to-serve-url.js +0 -0
  279. package/dist/shared/docs-url.d.ts +0 -0
  280. package/dist/shared/docs-url.js +0 -0
  281. package/dist/shared/function-zip-path.d.ts +0 -0
  282. package/dist/shared/function-zip-path.js +0 -0
  283. package/dist/shared/get-account-id.d.ts +0 -0
  284. package/dist/shared/get-account-id.js +0 -0
  285. package/dist/shared/get-function-version.d.ts +0 -0
  286. package/dist/shared/get-function-version.js +0 -0
  287. package/dist/shared/get-most-expensive-chunks.d.ts +0 -0
  288. package/dist/shared/get-most-expensive-chunks.js +0 -0
  289. package/dist/shared/hosted-layers.d.ts +0 -0
  290. package/dist/shared/hosted-layers.js +0 -0
  291. package/dist/shared/is-in-lambda.d.ts +0 -0
  292. package/dist/shared/is-in-lambda.js +0 -0
  293. package/dist/shared/make-s3-key.d.ts +0 -0
  294. package/dist/shared/make-s3-key.js +0 -0
  295. package/dist/shared/make-s3-url.d.ts +0 -0
  296. package/dist/shared/make-s3-url.js +0 -0
  297. package/dist/shared/p-limit.d.ts +0 -0
  298. package/dist/shared/p-limit.js +0 -0
  299. package/dist/shared/parse-lambda-initialized-key.d.ts +0 -0
  300. package/dist/shared/parse-lambda-initialized-key.js +0 -0
  301. package/dist/shared/parse-lambda-timings-key.d.ts +0 -0
  302. package/dist/shared/parse-lambda-timings-key.js +0 -0
  303. package/dist/shared/random-hash.d.ts +0 -0
  304. package/dist/shared/random-hash.js +0 -0
  305. package/dist/shared/return-values.d.ts +0 -0
  306. package/dist/shared/return-values.js +0 -0
  307. package/dist/shared/sleep.d.ts +0 -0
  308. package/dist/shared/sleep.js +0 -0
  309. package/dist/shared/stream-to-string.d.ts +0 -0
  310. package/dist/shared/stream-to-string.js +0 -0
  311. package/dist/shared/truthy.d.ts +3 -0
  312. package/dist/shared/truthy.js +7 -0
  313. package/dist/shared/validate-architecture.d.ts +0 -0
  314. package/dist/shared/validate-architecture.js +0 -0
  315. package/dist/shared/validate-aws-region.d.ts +0 -0
  316. package/dist/shared/validate-aws-region.js +0 -0
  317. package/dist/shared/validate-bucketname.d.ts +0 -0
  318. package/dist/shared/validate-bucketname.js +0 -0
  319. package/dist/shared/validate-custom-role-arn.d.ts +0 -0
  320. package/dist/shared/validate-custom-role-arn.js +0 -0
  321. package/dist/shared/validate-disk-size-in-mb.d.ts +0 -0
  322. package/dist/shared/validate-disk-size-in-mb.js +0 -0
  323. package/dist/shared/validate-download-behavior.d.ts +1 -0
  324. package/dist/shared/validate-download-behavior.js +21 -0
  325. package/dist/shared/validate-frames-per-lambda.d.ts +0 -0
  326. package/dist/shared/validate-frames-per-lambda.js +0 -0
  327. package/dist/shared/validate-lambda-codec.d.ts +1 -1
  328. package/dist/shared/validate-lambda-codec.js +9 -1
  329. package/dist/shared/validate-memory-size.d.ts +0 -0
  330. package/dist/shared/validate-memory-size.js +0 -0
  331. package/dist/shared/validate-outname.d.ts +0 -0
  332. package/dist/shared/validate-outname.js +0 -0
  333. package/dist/shared/validate-presign-expiration.d.ts +0 -2
  334. package/dist/shared/validate-presign-expiration.js +7 -7
  335. package/dist/shared/validate-privacy.d.ts +0 -0
  336. package/dist/shared/validate-privacy.js +0 -0
  337. package/dist/shared/validate-retention-period.d.ts +0 -0
  338. package/dist/shared/validate-retention-period.js +0 -0
  339. package/dist/shared/validate-retries.d.ts +0 -0
  340. package/dist/shared/validate-retries.js +0 -0
  341. package/dist/shared/validate-serveurl.d.ts +0 -0
  342. package/dist/shared/validate-serveurl.js +0 -0
  343. package/dist/shared/validate-site-name.d.ts +0 -0
  344. package/dist/shared/validate-site-name.js +0 -0
  345. package/dist/shared/validate-timeout.d.ts +0 -0
  346. package/dist/shared/validate-timeout.js +0 -0
  347. package/package.json +6 -6
  348. package/remotionlambda.zip +0 -0
  349. package/dist/cli/helpers/format-bytes.d.ts +0 -6
  350. package/dist/cli/helpers/format-bytes.js +0 -103
  351. package/dist/shared/chunk.d.ts +0 -1
  352. package/dist/shared/chunk.js +0 -11
@@ -1,10 +1,10 @@
1
1
  import type { OptimizationProfile } from './types';
2
- export declare const planFrameRanges: ({ chunkCount, framesPerLambda, optimization, shouldUseOptimization, frameRange, }: {
3
- chunkCount: number;
2
+ export declare const planFrameRanges: ({ framesPerLambda, optimization, shouldUseOptimization, frameRange, everyNthFrame, }: {
4
3
  framesPerLambda: number;
5
4
  optimization: OptimizationProfile | null;
6
5
  shouldUseOptimization: boolean;
7
6
  frameRange: [number, number];
7
+ everyNthFrame: number;
8
8
  }) => {
9
9
  chunks: [
10
10
  number,
@@ -3,7 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.planFrameRanges = void 0;
4
4
  const renderer_1 = require("@remotion/renderer");
5
5
  const can_use_optimization_1 = require("./can-use-optimization");
6
- const planFrameRanges = ({ chunkCount, framesPerLambda, optimization, shouldUseOptimization, frameRange, }) => {
6
+ const planFrameRanges = ({ framesPerLambda, optimization, shouldUseOptimization, frameRange, everyNthFrame, }) => {
7
+ const framesToRender = renderer_1.RenderInternals.getFramesToRender(frameRange, everyNthFrame);
8
+ const chunkCount = Math.ceil(framesToRender.length / framesPerLambda);
7
9
  if ((0, can_use_optimization_1.canUseOptimization)({
8
10
  optimization,
9
11
  framesPerLambda,
@@ -15,13 +17,12 @@ const planFrameRanges = ({ chunkCount, framesPerLambda, optimization, shouldUseO
15
17
  didUseOptimization: true,
16
18
  };
17
19
  }
18
- const frameCount = renderer_1.RenderInternals.getDurationFromFrameRange(frameRange, 0);
20
+ const firstFrame = frameRange[0];
19
21
  return {
20
22
  chunks: new Array(chunkCount).fill(1).map((_, i) => {
21
- return [
22
- i * framesPerLambda + frameRange[0],
23
- Math.min(frameCount, (i + 1) * framesPerLambda) - 1 + frameRange[0],
24
- ];
23
+ const start = i * framesPerLambda * everyNthFrame + firstFrame;
24
+ const end = Math.min(framesToRender[framesToRender.length - 1], (i + 1) * framesPerLambda * everyNthFrame - 1) + firstFrame;
25
+ return [start, end];
25
26
  }),
26
27
  didUseOptimization: false,
27
28
  };
@@ -12,6 +12,7 @@ const writeOptimization = async ({ bucketName, optimization, compositionId, site
12
12
  region,
13
13
  privacy: 'private',
14
14
  expectedBucketOwner,
15
+ downloadBehavior: null,
15
16
  });
16
17
  };
17
18
  exports.writeOptimization = writeOptimization;
@@ -19,4 +19,5 @@ export declare type OptimizationProfile = {
19
19
  createdFromRenderId: string;
20
20
  framesPerLambda: number;
21
21
  lambdaVersion: LambdaVersions;
22
+ everyNthFrame: number;
22
23
  };
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -1,6 +1,6 @@
1
1
  import type { AwsRegion } from '../../pricing/aws-regions';
2
2
  import type { LambdaCodec } from '../../shared/validate-lambda-codec';
3
- export declare const concatVideosS3: ({ bucket, expectedFiles, onProgress, numberOfFrames, renderId, region, codec, expectedBucketOwner, fps, }: {
3
+ export declare const concatVideosS3: ({ bucket, expectedFiles, onProgress, numberOfFrames, renderId, region, codec, expectedBucketOwner, fps, numberOfGifLoops, }: {
4
4
  bucket: string;
5
5
  expectedFiles: number;
6
6
  onProgress: (frames: number, encodingStart: number) => void;
@@ -10,6 +10,7 @@ export declare const concatVideosS3: ({ bucket, expectedFiles, onProgress, numbe
10
10
  codec: LambdaCodec;
11
11
  expectedBucketOwner: string;
12
12
  fps: number;
13
+ numberOfGifLoops: number | null;
13
14
  }) => Promise<{
14
15
  outfile: string;
15
16
  cleanupChunksProm: Promise<void>;
@@ -112,7 +112,7 @@ const getAllFilesS3 = ({ bucket, expectedFiles, outdir, renderId, region, expect
112
112
  loop();
113
113
  });
114
114
  };
115
- const concatVideosS3 = async ({ bucket, expectedFiles, onProgress, numberOfFrames, renderId, region, codec, expectedBucketOwner, fps, }) => {
115
+ const concatVideosS3 = async ({ bucket, expectedFiles, onProgress, numberOfFrames, renderId, region, codec, expectedBucketOwner, fps, numberOfGifLoops, }) => {
116
116
  var _a;
117
117
  const outdir = (0, path_1.join)(renderer_1.RenderInternals.tmpDir(constants_1.CONCAT_FOLDER_TOKEN), 'bucket');
118
118
  if ((0, fs_1.existsSync)(outdir)) {
@@ -142,6 +142,7 @@ const concatVideosS3 = async ({ bucket, expectedFiles, onProgress, numberOfFrame
142
142
  numberOfFrames,
143
143
  codec: codecForCombining,
144
144
  fps,
145
+ numberOfGifLoops,
145
146
  });
146
147
  combine.end();
147
148
  const cleanupChunksProm = ((_a = fs_1.default.promises.rm) !== null && _a !== void 0 ? _a : fs_1.default.promises.rmdir)(outdir, {
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -3,6 +3,7 @@ import type { ReadStream } from 'fs';
3
3
  import type { Readable } from 'stream';
4
4
  import type { AwsRegion } from '../../pricing/aws-regions';
5
5
  import type { Privacy } from '../../shared/constants';
6
+ import type { DownloadBehavior } from '../../shared/content-disposition-header';
6
7
  export declare type LambdaLSInput = {
7
8
  bucketName: string;
8
9
  prefix: string;
@@ -12,13 +13,14 @@ export declare type LambdaLSInput = {
12
13
  };
13
14
  export declare type LambdaLsReturnType = Promise<_Object[]>;
14
15
  export declare const lambdaLs: ({ bucketName, prefix, region, expectedBucketOwner, continuationToken, }: LambdaLSInput) => LambdaLsReturnType;
15
- export declare const lambdaWriteFile: ({ bucketName, key, body, region, privacy, expectedBucketOwner, }: {
16
+ export declare const lambdaWriteFile: ({ bucketName, key, body, region, privacy, expectedBucketOwner, downloadBehavior, }: {
16
17
  bucketName: string;
17
18
  key: string;
18
19
  body: ReadStream | string;
19
20
  region: AwsRegion;
20
21
  privacy: Privacy;
21
22
  expectedBucketOwner: string | null;
23
+ downloadBehavior: DownloadBehavior | null;
22
24
  }) => Promise<void>;
23
25
  export declare const lambdaReadFile: ({ bucketName, key, region, expectedBucketOwner, }: {
24
26
  bucketName: string;
@@ -7,6 +7,7 @@ exports.lambdaReadFile = exports.lambdaWriteFile = exports.lambdaLs = void 0;
7
7
  const client_s3_1 = require("@aws-sdk/client-s3");
8
8
  const mime_types_1 = __importDefault(require("mime-types"));
9
9
  const aws_clients_1 = require("../../shared/aws-clients");
10
+ const content_disposition_header_1 = require("../../shared/content-disposition-header");
10
11
  const lambdaLs = async ({ bucketName, prefix, region, expectedBucketOwner, continuationToken, }) => {
11
12
  var _a, _b, _c;
12
13
  try {
@@ -46,7 +47,7 @@ const lambdaLs = async ({ bucketName, prefix, region, expectedBucketOwner, conti
46
47
  }
47
48
  };
48
49
  exports.lambdaLs = lambdaLs;
49
- const lambdaWriteFile = async ({ bucketName, key, body, region, privacy, expectedBucketOwner, }) => {
50
+ const lambdaWriteFile = async ({ bucketName, key, body, region, privacy, expectedBucketOwner, downloadBehavior, }) => {
50
51
  await (0, aws_clients_1.getS3Client)(region).send(new client_s3_1.PutObjectCommand({
51
52
  Bucket: bucketName,
52
53
  Key: key,
@@ -54,6 +55,7 @@ const lambdaWriteFile = async ({ bucketName, key, body, region, privacy, expecte
54
55
  ACL: privacy === 'private' ? 'private' : 'public-read',
55
56
  ExpectedBucketOwner: expectedBucketOwner !== null && expectedBucketOwner !== void 0 ? expectedBucketOwner : undefined,
56
57
  ContentType: mime_types_1.default.lookup(key) || 'application/octet-stream',
58
+ ContentDisposition: (0, content_disposition_header_1.getContentDispositionHeader)(downloadBehavior),
57
59
  }));
58
60
  };
59
61
  exports.lambdaWriteFile = lambdaWriteFile;
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -1,8 +1,8 @@
1
1
  import type { AwsRegion } from '../../pricing/aws-regions';
2
2
  export declare type LambdaReadFileProgress = (progress: {
3
- totalSize: number | null;
3
+ totalSize: number;
4
4
  downloaded: number;
5
- percent: number | null;
5
+ percent: number;
6
6
  }) => unknown;
7
7
  export declare const lambdaDownloadFileWithProgress: ({ bucketName, key, region, expectedBucketOwner, outputPath, onProgress, }: {
8
8
  bucketName: string;
@@ -15,7 +15,14 @@ const lambdaDownloadFileWithProgress = async ({ bucketName, key, region, expecte
15
15
  const presigned = await (0, s3_request_presigner_1.getSignedUrl)(client, command);
16
16
  const { to, sizeInBytes } = await renderer_1.RenderInternals.downloadFile({
17
17
  url: presigned,
18
- onProgress,
18
+ onProgress: ({ downloaded, percent, totalSize }) => {
19
+ // On Lambda, it should always be a number
20
+ onProgress({
21
+ downloaded,
22
+ percent: percent,
23
+ totalSize: totalSize,
24
+ });
25
+ },
19
26
  to: () => outputPath,
20
27
  });
21
28
  return { sizeInBytes, to };
File without changes
File without changes
@@ -1,5 +1,5 @@
1
- import type { ChromiumOptions, openBrowser } from '@remotion/renderer';
2
- import type { FfmpegExecutable, TCompMetadata } from 'remotion';
1
+ import type { ChromiumOptions, FfmpegExecutable, openBrowser } from '@remotion/renderer';
2
+ import type { TCompMetadata } from 'remotion';
3
3
  import type { Await } from '../../shared/await';
4
4
  declare type ValidateCompositionOptions = {
5
5
  serveUrl: string;
File without changes
File without changes
@@ -33,6 +33,7 @@ const writeLambdaError = async ({ bucketName, renderId, errorInfo, expectedBucke
33
33
  region: (0, get_current_region_1.getCurrentRegionInFunction)(),
34
34
  privacy: 'private',
35
35
  expectedBucketOwner,
36
+ downloadBehavior: null,
36
37
  });
37
38
  };
38
39
  exports.writeLambdaError = writeLambdaError;
@@ -11,6 +11,7 @@ const writePostRenderData = async ({ bucketName, renderId, postRenderData, expec
11
11
  body: JSON.stringify(postRenderData),
12
12
  expectedBucketOwner,
13
13
  region,
14
+ downloadBehavior: null,
14
15
  });
15
16
  };
16
17
  exports.writePostRenderData = writePostRenderData;
File without changes
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.handler = void 0;
4
- const remotion_1 = require("remotion");
4
+ const renderer_1 = require("@remotion/renderer");
5
5
  const constants_1 = require("../shared/constants");
6
6
  const clean_tmpdir_1 = require("./helpers/clean-tmpdir");
7
7
  const is_warm_1 = require("./helpers/is-warm");
@@ -9,7 +9,7 @@ const print_cloudwatch_helper_1 = require("./helpers/print-cloudwatch-helper");
9
9
  const info_1 = require("./info");
10
10
  const launch_1 = require("./launch");
11
11
  const progress_1 = require("./progress");
12
- const renderer_1 = require("./renderer");
12
+ const renderer_2 = require("./renderer");
13
13
  const start_1 = require("./start");
14
14
  const still_1 = require("./still");
15
15
  const handler = async (params, context) => {
@@ -56,10 +56,10 @@ const handler = async (params, context) => {
56
56
  (0, print_cloudwatch_helper_1.printCloudwatchHelper)(constants_1.LambdaRoutines.renderer, {
57
57
  renderId: params.renderId,
58
58
  chunk: String(params.chunk),
59
- dumpLogs: String(remotion_1.Internals.Logging.isEqualOrBelowLogLevel(params.logLevel, 'verbose')),
59
+ dumpLogs: String(renderer_1.RenderInternals.isEqualOrBelowLogLevel(params.logLevel, 'verbose')),
60
60
  inputProps: JSON.stringify(params.inputProps),
61
61
  });
62
- return (0, renderer_1.rendererHandler)(params, {
62
+ return (0, renderer_2.rendererHandler)(params, {
63
63
  expectedBucketOwner: currentUserId,
64
64
  isWarm,
65
65
  });
File without changes
File without changes
File without changes
@@ -46,7 +46,7 @@ const innerLaunchHandler = async (params, options) => {
46
46
  }
47
47
  const startedDate = Date.now();
48
48
  const [browserInstance, optimization] = await Promise.all([
49
- (0, get_browser_instance_1.getBrowserInstance)(remotion_1.Internals.Logging.isEqualOrBelowLogLevel(remotion_1.Internals.Logging.getLogLevel(), 'verbose'), params.chromiumOptions),
49
+ (0, get_browser_instance_1.getBrowserInstance)(renderer_1.RenderInternals.isEqualOrBelowLogLevel(params.logLevel, 'verbose'), params.chromiumOptions),
50
50
  (0, s3_optimization_file_1.getOptimization)({
51
51
  bucketName: params.bucketName,
52
52
  siteId: (0, make_s3_url_1.getServeUrlHash)(params.serveUrl),
@@ -67,15 +67,16 @@ const innerLaunchHandler = async (params, options) => {
67
67
  chromiumOptions: params.chromiumOptions,
68
68
  port: null,
69
69
  });
70
- remotion_1.Internals.validateDurationInFrames(comp.durationInFrames, 'passed to <Component />');
71
- remotion_1.Internals.validateFps(comp.fps, 'passed to <Component />');
72
- remotion_1.Internals.validateDimension(comp.height, 'height', 'passed to <Component />');
73
- remotion_1.Internals.validateDimension(comp.width, 'width', 'passed to <Component />');
70
+ remotion_1.Internals.validateDurationInFrames(comp.durationInFrames, 'passed to a Lambda render');
71
+ remotion_1.Internals.validateFps(comp.fps, 'passed to a Lambda render', false);
72
+ remotion_1.Internals.validateDimension(comp.height, 'height', 'passed to a Lambda render');
73
+ remotion_1.Internals.validateDimension(comp.width, 'width', 'passed to a Lambda render');
74
+ renderer_1.RenderInternals.validateConcurrency(params.concurrencyPerLambda, 'concurrencyPerLambda');
74
75
  const realFrameRange = renderer_1.RenderInternals.getRealFrameRange(comp.durationInFrames, params.frameRange);
75
- const frameCount = renderer_1.RenderInternals.getDurationFromFrameRange(realFrameRange, 0);
76
- const framesPerLambda = (_a = params.framesPerLambda) !== null && _a !== void 0 ? _a : (0, best_frames_per_lambda_param_1.bestFramesPerLambdaParam)(frameCount);
76
+ const frameCount = renderer_1.RenderInternals.getFramesToRender(realFrameRange, params.everyNthFrame);
77
+ const framesPerLambda = (_a = params.framesPerLambda) !== null && _a !== void 0 ? _a : (0, best_frames_per_lambda_param_1.bestFramesPerLambdaParam)(frameCount.length);
77
78
  (0, validate_frames_per_lambda_1.validateFramesPerLambda)(framesPerLambda);
78
- const chunkCount = Math.ceil(frameCount / framesPerLambda);
79
+ const chunkCount = Math.ceil(frameCount.length / framesPerLambda);
79
80
  if (chunkCount > constants_1.MAX_FUNCTIONS_PER_RENDER) {
80
81
  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.`);
81
82
  }
@@ -83,12 +84,12 @@ const innerLaunchHandler = async (params, options) => {
83
84
  (0, validate_privacy_1.validatePrivacy)(params.privacy);
84
85
  renderer_1.RenderInternals.validatePuppeteerTimeout(params.timeoutInMilliseconds);
85
86
  const { chunks, didUseOptimization } = (0, plan_frame_ranges_1.planFrameRanges)({
86
- chunkCount,
87
87
  framesPerLambda,
88
88
  optimization,
89
89
  // TODO: Re-enable chunk optimization later
90
90
  shouldUseOptimization: false,
91
91
  frameRange: realFrameRange,
92
+ everyNthFrame: params.everyNthFrame,
92
93
  });
93
94
  const sortedChunks = chunks.slice().sort((a, b) => a[0] - b[0]);
94
95
  const invokers = Math.round(Math.sqrt(chunks.length));
@@ -117,11 +118,13 @@ const innerLaunchHandler = async (params, options) => {
117
118
  proResProfile: params.proResProfile,
118
119
  quality: params.quality,
119
120
  privacy: params.privacy,
120
- logLevel: (_a = params.logLevel) !== null && _a !== void 0 ? _a : remotion_1.Internals.Logging.DEFAULT_LOG_LEVEL,
121
+ logLevel: (_a = params.logLevel) !== null && _a !== void 0 ? _a : 'info',
121
122
  attempt: 1,
122
123
  timeoutInMilliseconds: params.timeoutInMilliseconds,
123
124
  chromiumOptions: params.chromiumOptions,
124
125
  scale: params.scale,
126
+ everyNthFrame: params.everyNthFrame,
127
+ concurrencyPerLambda: params.concurrencyPerLambda,
125
128
  };
126
129
  return payload;
127
130
  });
@@ -158,6 +161,7 @@ const innerLaunchHandler = async (params, options) => {
158
161
  region: (0, get_current_region_1.getCurrentRegionInFunction)(),
159
162
  privacy: 'private',
160
163
  expectedBucketOwner: options.expectedBucketOwner,
164
+ downloadBehavior: null,
161
165
  });
162
166
  await Promise.all(lambdaPayloads.map(async (payload, index) => {
163
167
  const callingLambdaTimer = (0, timer_1.timer)('Calling chunk ' + index);
@@ -173,7 +177,7 @@ const innerLaunchHandler = async (params, options) => {
173
177
  let lastProgressUploaded = 0;
174
178
  let encodingStop = null;
175
179
  const onProgress = (framesEncoded, start) => {
176
- const relativeProgress = framesEncoded / frameCount;
180
+ const relativeProgress = framesEncoded / frameCount.length;
177
181
  const deltaSinceLastProgressUploaded = relativeProgress - lastProgressUploaded;
178
182
  if (relativeProgress === 1) {
179
183
  encodingStop = Date.now();
@@ -184,7 +188,7 @@ const innerLaunchHandler = async (params, options) => {
184
188
  lastProgressUploaded = relativeProgress;
185
189
  const encodingProgress = {
186
190
  framesEncoded,
187
- totalFrames: frameCount,
191
+ totalFrames: frameCount.length,
188
192
  doneIn: encodingStop ? encodingStop - start : null,
189
193
  timeToInvoke: null,
190
194
  };
@@ -195,6 +199,7 @@ const innerLaunchHandler = async (params, options) => {
195
199
  region: (0, get_current_region_1.getCurrentRegionInFunction)(),
196
200
  privacy: 'private',
197
201
  expectedBucketOwner: options.expectedBucketOwner,
202
+ downloadBehavior: null,
198
203
  }).catch((err) => {
199
204
  (0, write_lambda_error_1.writeLambdaError)({
200
205
  bucketName: params.bucketName,
@@ -216,16 +221,18 @@ const innerLaunchHandler = async (params, options) => {
216
221
  });
217
222
  });
218
223
  };
224
+ const fps = comp.fps / params.everyNthFrame;
219
225
  const { outfile, cleanupChunksProm, encodingStart } = await (0, concat_videos_1.concatVideosS3)({
220
226
  bucket: params.bucketName,
221
227
  expectedFiles: chunkCount,
222
228
  onProgress,
223
- numberOfFrames: frameCount,
229
+ numberOfFrames: frameCount.length,
224
230
  renderId: params.renderId,
225
231
  region: (0, get_current_region_1.getCurrentRegionInFunction)(),
226
232
  codec: params.codec,
227
233
  expectedBucketOwner: options.expectedBucketOwner,
228
- fps: comp.fps,
234
+ fps,
235
+ numberOfGifLoops: params.numberOfGifLoops,
229
236
  });
230
237
  if (!encodingStop) {
231
238
  encodingStop = Date.now();
@@ -239,6 +246,7 @@ const innerLaunchHandler = async (params, options) => {
239
246
  region: (0, get_current_region_1.getCurrentRegionInFunction)(),
240
247
  privacy: params.privacy,
241
248
  expectedBucketOwner: options.expectedBucketOwner,
249
+ downloadBehavior: params.downloadBehavior,
242
250
  });
243
251
  let chunkProm = Promise.resolve();
244
252
  // TODO: Enable in a later release
@@ -263,6 +271,7 @@ const innerLaunchHandler = async (params, options) => {
263
271
  framesPerLambda,
264
272
  lambdaVersion: constants_1.CURRENT_VERSION,
265
273
  frameRange: realFrameRange,
274
+ everyNthFrame: params.everyNthFrame,
266
275
  },
267
276
  expectedBucketOwner: options.expectedBucketOwner,
268
277
  compositionId: params.composition,
@@ -281,8 +290,8 @@ const innerLaunchHandler = async (params, options) => {
281
290
  }),
282
291
  ]);
283
292
  const finalEncodingProgress = {
284
- framesEncoded: frameCount,
285
- totalFrames: frameCount,
293
+ framesEncoded: frameCount.length,
294
+ totalFrames: frameCount.length,
286
295
  doneIn: encodingStop ? encodingStop - encodingStart : null,
287
296
  timeToInvoke: (0, get_lambdas_invoked_stats_1.getLambdasInvokedStats)(contents, params.renderId, renderMetadata.estimatedRenderLambdaInvokations, renderMetadata.startedDate).timeToInvokeLambdas,
288
297
  };
@@ -293,6 +302,7 @@ const innerLaunchHandler = async (params, options) => {
293
302
  region: (0, get_current_region_1.getCurrentRegionInFunction)(),
294
303
  privacy: 'private',
295
304
  expectedBucketOwner: options.expectedBucketOwner,
305
+ downloadBehavior: null,
296
306
  });
297
307
  const errorExplanationsProm = (0, inspect_errors_1.inspectErrors)({
298
308
  contents,
File without changes
File without changes
File without changes