@remotion/renderer 3.0.0-lambda.85 → 3.0.0-pnpm.295

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 (146) hide show
  1. package/dist/add-silent-audio-if-necessary.d.ts +1 -1
  2. package/dist/add-silent-audio-if-necessary.d.ts.map +1 -1
  3. package/dist/add-silent-audio-if-necessary.js +6 -2
  4. package/dist/add-silent-audio-if-necessary.js.map +1 -1
  5. package/dist/assets/calculate-asset-positions.d.ts.map +1 -1
  6. package/dist/assets/calculate-asset-positions.js +3 -2
  7. package/dist/assets/calculate-asset-positions.js.map +1 -1
  8. package/dist/assets/convert-assets-to-file-urls.d.ts +3 -3
  9. package/dist/assets/convert-assets-to-file-urls.d.ts.map +1 -1
  10. package/dist/assets/convert-assets-to-file-urls.js +2 -3
  11. package/dist/assets/convert-assets-to-file-urls.js.map +1 -1
  12. package/dist/assets/download-and-map-assets-to-file.d.ts +8 -7
  13. package/dist/assets/download-and-map-assets-to-file.d.ts.map +1 -1
  14. package/dist/assets/download-and-map-assets-to-file.js +84 -31
  15. package/dist/assets/download-and-map-assets-to-file.js.map +1 -1
  16. package/dist/assets/get-asset-audio-details.d.ts +0 -1
  17. package/dist/assets/get-asset-audio-details.d.ts.map +1 -1
  18. package/dist/assets/get-asset-audio-details.js +1 -3
  19. package/dist/assets/get-asset-audio-details.js.map +1 -1
  20. package/dist/assets/sanitize-filename.d.ts +2 -0
  21. package/dist/assets/sanitize-filename.d.ts.map +1 -0
  22. package/dist/assets/sanitize-filename.js +59 -0
  23. package/dist/assets/sanitize-filename.js.map +1 -0
  24. package/dist/assets/sanitize-filepath.d.ts +2 -0
  25. package/dist/assets/sanitize-filepath.d.ts.map +1 -0
  26. package/dist/assets/sanitize-filepath.js +16 -0
  27. package/dist/assets/sanitize-filepath.js.map +1 -0
  28. package/dist/assets/truncate-utf8-bytes.d.ts +2 -0
  29. package/dist/assets/truncate-utf8-bytes.d.ts.map +1 -0
  30. package/dist/assets/truncate-utf8-bytes.js +38 -0
  31. package/dist/assets/truncate-utf8-bytes.js.map +1 -0
  32. package/dist/assets/types.d.ts +1 -0
  33. package/dist/assets/types.d.ts.map +1 -1
  34. package/dist/assets/types.js +19 -0
  35. package/dist/assets/types.js.map +1 -1
  36. package/dist/create-ffmpeg-complex-filter.d.ts +4 -1
  37. package/dist/create-ffmpeg-complex-filter.d.ts.map +1 -1
  38. package/dist/create-ffmpeg-complex-filter.js +2 -2
  39. package/dist/create-ffmpeg-complex-filter.js.map +1 -1
  40. package/dist/cycle-browser-tabs.d.ts +1 -1
  41. package/dist/cycle-browser-tabs.d.ts.map +1 -1
  42. package/dist/cycle-browser-tabs.js +27 -14
  43. package/dist/cycle-browser-tabs.js.map +1 -1
  44. package/dist/delete-directory.d.ts +2 -0
  45. package/dist/delete-directory.d.ts.map +1 -0
  46. package/dist/delete-directory.js +28 -0
  47. package/dist/delete-directory.js.map +1 -0
  48. package/dist/ensure-frames-in-order.d.ts +6 -0
  49. package/dist/ensure-frames-in-order.d.ts.map +1 -0
  50. package/dist/ensure-frames-in-order.js +39 -0
  51. package/dist/ensure-frames-in-order.js.map +1 -0
  52. package/dist/ensure-output-directory.d.ts +2 -0
  53. package/dist/ensure-output-directory.d.ts.map +1 -0
  54. package/dist/ensure-output-directory.js +18 -0
  55. package/dist/ensure-output-directory.js.map +1 -0
  56. package/dist/get-browser-instance.d.ts +10 -0
  57. package/dist/get-browser-instance.d.ts.map +1 -0
  58. package/dist/get-browser-instance.js +35 -0
  59. package/dist/get-browser-instance.js.map +1 -0
  60. package/dist/get-compositions.d.ts +5 -5
  61. package/dist/get-compositions.d.ts.map +1 -1
  62. package/dist/get-compositions.js +19 -40
  63. package/dist/get-compositions.js.map +1 -1
  64. package/dist/get-extension-from-codec.d.ts +3 -0
  65. package/dist/get-extension-from-codec.d.ts.map +1 -0
  66. package/dist/get-extension-from-codec.js +33 -0
  67. package/dist/get-extension-from-codec.js.map +1 -0
  68. package/dist/get-frame-to-render.d.ts +1 -1
  69. package/dist/get-frame-to-render.d.ts.map +1 -1
  70. package/dist/get-frame-to-render.js +13 -7
  71. package/dist/get-frame-to-render.js.map +1 -1
  72. package/dist/index.d.ts +22 -8
  73. package/dist/index.d.ts.map +1 -1
  74. package/dist/index.js +32 -8
  75. package/dist/index.js.map +1 -1
  76. package/dist/is-serve-url.d.ts +2 -0
  77. package/dist/is-serve-url.d.ts.map +1 -0
  78. package/dist/is-serve-url.js +13 -0
  79. package/dist/is-serve-url.js.map +1 -0
  80. package/dist/legacy-webpack-config.d.ts +10 -0
  81. package/dist/legacy-webpack-config.d.ts.map +1 -0
  82. package/dist/legacy-webpack-config.js +14 -0
  83. package/dist/legacy-webpack-config.js.map +1 -0
  84. package/dist/make-assets-download-dir.d.ts +2 -0
  85. package/dist/make-assets-download-dir.d.ts.map +1 -0
  86. package/dist/make-assets-download-dir.js +9 -0
  87. package/dist/make-assets-download-dir.js.map +1 -0
  88. package/dist/open-browser.d.ts.map +1 -1
  89. package/dist/open-browser.js +4 -2
  90. package/dist/open-browser.js.map +1 -1
  91. package/dist/prepare-server.d.ts +5 -0
  92. package/dist/prepare-server.d.ts.map +1 -0
  93. package/dist/prepare-server.js +20 -0
  94. package/dist/prepare-server.js.map +1 -0
  95. package/dist/provide-screenshot.d.ts +2 -2
  96. package/dist/provide-screenshot.d.ts.map +1 -1
  97. package/dist/provide-screenshot.js +1 -1
  98. package/dist/provide-screenshot.js.map +1 -1
  99. package/dist/puppeteer-screenshot.d.ts +0 -1
  100. package/dist/puppeteer-screenshot.d.ts.map +1 -1
  101. package/dist/render-media.d.ts +39 -0
  102. package/dist/render-media.d.ts.map +1 -0
  103. package/dist/render-media.js +146 -0
  104. package/dist/render-media.js.map +1 -0
  105. package/dist/render-still.d.ts +5 -4
  106. package/dist/render-still.d.ts.map +1 -1
  107. package/dist/render-still.js +20 -8
  108. package/dist/render-still.js.map +1 -1
  109. package/dist/render-video.d.ts +39 -0
  110. package/dist/render-video.d.ts.map +1 -0
  111. package/dist/render-video.js +138 -0
  112. package/dist/render-video.js.map +1 -0
  113. package/dist/render.d.ts +23 -9
  114. package/dist/render.d.ts.map +1 -1
  115. package/dist/render.js +132 -53
  116. package/dist/render.js.map +1 -1
  117. package/dist/sample-rate.d.ts +2 -0
  118. package/dist/sample-rate.d.ts.map +1 -0
  119. package/dist/sample-rate.js +5 -0
  120. package/dist/sample-rate.js.map +1 -0
  121. package/dist/screenshot-dom-element.d.ts +0 -1
  122. package/dist/screenshot-dom-element.d.ts.map +1 -1
  123. package/dist/screenshot-dom-element.js +6 -3
  124. package/dist/screenshot-dom-element.js.map +1 -1
  125. package/dist/screenshot-task.d.ts +0 -1
  126. package/dist/screenshot-task.d.ts.map +1 -1
  127. package/dist/set-props-and-env.d.ts +2 -1
  128. package/dist/set-props-and-env.d.ts.map +1 -1
  129. package/dist/set-props-and-env.js +22 -16
  130. package/dist/set-props-and-env.js.map +1 -1
  131. package/dist/stitcher.d.ts +21 -17
  132. package/dist/stitcher.d.ts.map +1 -1
  133. package/dist/stitcher.js +96 -81
  134. package/dist/stitcher.js.map +1 -1
  135. package/dist/stringify-ffmpeg-filter.d.ts.map +1 -1
  136. package/dist/stringify-ffmpeg-filter.js +0 -2
  137. package/dist/stringify-ffmpeg-filter.js.map +1 -1
  138. package/dist/tmp-dir.d.ts +2 -0
  139. package/dist/tmp-dir.d.ts.map +1 -0
  140. package/dist/tmp-dir.js +31 -0
  141. package/dist/tmp-dir.js.map +1 -0
  142. package/dist/validate-puppeteer-timeout.d.ts +2 -0
  143. package/dist/validate-puppeteer-timeout.d.ts.map +1 -0
  144. package/dist/validate-puppeteer-timeout.js +25 -0
  145. package/dist/validate-puppeteer-timeout.js.map +1 -0
  146. package/package.json +5 -7
@@ -5,8 +5,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.createFfmpegComplexFilter = void 0;
7
7
  const fs_1 = __importDefault(require("fs"));
8
- const os_1 = __importDefault(require("os"));
9
8
  const path_1 = __importDefault(require("path"));
9
+ const tmp_dir_1 = require("./tmp-dir");
10
10
  const createMix = (filters) => {
11
11
  const baseFilter = filters
12
12
  .map((asset) => {
@@ -31,7 +31,7 @@ const createFfmpegComplexFilter = async (filters) => {
31
31
  ...filters.map((f) => f.filter),
32
32
  createMix(filters),
33
33
  ].join(';');
34
- const tempPath = await fs_1.default.promises.mkdtemp(path_1.default.join(os_1.default.tmpdir(), 'remotion-complex-filter'));
34
+ const tempPath = (0, tmp_dir_1.tmpDir)('remotion-complex-filter');
35
35
  const filterFile = path_1.default.join(tempPath, 'complex-filter.txt');
36
36
  await fs_1.default.promises.writeFile(filterFile, complexFilter);
37
37
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"create-ffmpeg-complex-filter.js","sourceRoot":"","sources":["../src/create-ffmpeg-complex-filter.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,4CAAoB;AACpB,gDAAwB;AAGxB,MAAM,SAAS,GAAG,CAAC,OAAkC,EAAE,EAAE;IACxD,MAAM,UAAU,GAAG,OAAO;SACxB,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QACd,OAAO,KAAK,KAAK,CAAC,WAAW,GAAG,CAAC;IAClC,CAAC,CAAC;SACD,IAAI,CAAC,EAAE,CAAC,CAAC;IACX,MAAM,OAAO,GAAG;QACf,uCAAuC;QACvC,UAAU,OAAO,CAAC,MAAM,EAAE;QAC1B,qDAAqD;QACrD,sBAAsB;QACtB,8CAA8C;QAC9C,kBAAkB;KAClB,CAAC;IACF,OAAO,GAAG,UAAU,QAAQ,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;AACjD,CAAC,CAAC;AAEK,MAAM,yBAAyB,GAAG,KAAK,EAC7C,OAAkC,EAIhC,EAAE;IACJ,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;QACpB,OAAO,EAAC,iBAAiB,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,EAAC,CAAC;KAC3D;IAED,MAAM,aAAa,GAAG;QACrB,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;QAC/B,SAAS,CAAC,OAAO,CAAC;KAClB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACZ,MAAM,QAAQ,GAAG,MAAM,YAAE,CAAC,QAAQ,CAAC,OAAO,CACzC,cAAI,CAAC,IAAI,CAAC,YAAE,CAAC,MAAM,EAAE,EAAE,yBAAyB,CAAC,CACjD,CAAC;IACF,MAAM,UAAU,GAAG,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;IAC7D,MAAM,YAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IAEvD,OAAO;QACN,iBAAiB,EAAE,CAAC,wBAAwB,EAAE,UAAU,CAAC;QACzD,OAAO,EAAE,GAAG,EAAE;;YACb,CAAC,MAAA,YAAE,CAAC,QAAQ,CAAC,EAAE,mCAAI,YAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE;gBAC/C,SAAS,EAAE,IAAI;aACf,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBAChB,OAAO,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;gBAC9C,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACnB,OAAO,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;YAC7D,CAAC,CAAC,CAAC;QACJ,CAAC;KACD,CAAC;AACH,CAAC,CAAC;AAhCW,QAAA,yBAAyB,6BAgCpC"}
1
+ {"version":3,"file":"create-ffmpeg-complex-filter.js","sourceRoot":"","sources":["../src/create-ffmpeg-complex-filter.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,gDAAwB;AAExB,uCAAiC;AAEjC,MAAM,SAAS,GAAG,CAAC,OAAkC,EAAE,EAAE;IACxD,MAAM,UAAU,GAAG,OAAO;SACxB,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QACd,OAAO,KAAK,KAAK,CAAC,WAAW,GAAG,CAAC;IAClC,CAAC,CAAC;SACD,IAAI,CAAC,EAAE,CAAC,CAAC;IACX,MAAM,OAAO,GAAG;QACf,uCAAuC;QACvC,UAAU,OAAO,CAAC,MAAM,EAAE;QAC1B,qDAAqD;QACrD,sBAAsB;QACtB,8CAA8C;QAC9C,kBAAkB;KAClB,CAAC;IACF,OAAO,GAAG,UAAU,QAAQ,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;AACjD,CAAC,CAAC;AAEK,MAAM,yBAAyB,GAAG,KAAK,EAC7C,OAAkC,EAIhC,EAAE;IACJ,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;QACpB,OAAO,EAAC,iBAAiB,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,EAAC,CAAC;KAC3D;IAED,MAAM,aAAa,GAAG;QACrB,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;QAC/B,SAAS,CAAC,OAAO,CAAC;KAClB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACZ,MAAM,QAAQ,GAAG,IAAA,gBAAM,EAAC,yBAAyB,CAAC,CAAC;IACnD,MAAM,UAAU,GAAG,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;IAC7D,MAAM,YAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IAEvD,OAAO;QACN,iBAAiB,EAAE,CAAC,wBAAwB,EAAE,UAAU,CAAC;QACzD,OAAO,EAAE,GAAG,EAAE;;YACb,CAAC,MAAA,YAAE,CAAC,QAAQ,CAAC,EAAE,mCAAI,YAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE;gBAC/C,SAAS,EAAE,IAAI;aACf,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBAChB,OAAO,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;gBAC9C,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACnB,OAAO,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;YAC7D,CAAC,CAAC,CAAC;QACJ,CAAC;KACD,CAAC;AACH,CAAC,CAAC;AA9BW,QAAA,yBAAyB,6BA8BpC"}
@@ -1,6 +1,6 @@
1
1
  import { openBrowser } from './open-browser';
2
2
  declare type Await<T> = T extends PromiseLike<infer U> ? U : T;
3
- export declare const cycleBrowserTabs: (openedBrowser: Await<ReturnType<typeof openBrowser>>) => {
3
+ export declare const cycleBrowserTabs: (puppeteerInstance: Await<ReturnType<typeof openBrowser>>) => {
4
4
  stopCycling: () => void;
5
5
  };
6
6
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"cycle-browser-tabs.d.ts","sourceRoot":"","sources":["../src/cycle-browser-tabs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAE3C,aAAK,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAEvD,eAAO,MAAM,gBAAgB,kBACb,MAAM,WAAW,kBAAkB,CAAC,CAAC;;CAmBpD,CAAC"}
1
+ {"version":3,"file":"cycle-browser-tabs.d.ts","sourceRoot":"","sources":["../src/cycle-browser-tabs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAE3C,aAAK,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAEvD,eAAO,MAAM,gBAAgB,sBACT,MAAM,WAAW,kBAAkB,CAAC,CAAC;;CAiCxD,CAAC"}
@@ -1,22 +1,35 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.cycleBrowserTabs = void 0;
4
- const cycleBrowserTabs = (openedBrowser) => {
4
+ const cycleBrowserTabs = (puppeteerInstance) => {
5
+ let interval = null;
5
6
  let i = 0;
6
- const interval = setInterval(() => {
7
- openedBrowser
8
- .pages()
9
- .then((pages) => {
10
- const currentPage = pages[i % pages.length];
11
- i++;
12
- if (!currentPage.isClosed()) {
13
- return currentPage.bringToFront();
14
- }
15
- })
16
- .catch((err) => console.log(err));
17
- }, 100);
7
+ const set = () => {
8
+ interval = setTimeout(() => {
9
+ puppeteerInstance
10
+ .pages()
11
+ .then((pages) => {
12
+ var _a, _b;
13
+ const currentPage = pages[i % pages.length];
14
+ i++;
15
+ if (!((_b = (_a = currentPage === null || currentPage === void 0 ? void 0 : currentPage.isClosed) === null || _a === void 0 ? void 0 : _a.call(currentPage)) !== null && _b !== void 0 ? _b : true)) {
16
+ return currentPage.bringToFront();
17
+ }
18
+ })
19
+ .then(() => {
20
+ set();
21
+ })
22
+ .catch((err) => console.log(err));
23
+ }, 200);
24
+ };
25
+ set();
18
26
  return {
19
- stopCycling: () => clearInterval(interval),
27
+ stopCycling: () => {
28
+ if (!interval) {
29
+ return;
30
+ }
31
+ return clearInterval(interval);
32
+ },
20
33
  };
21
34
  };
22
35
  exports.cycleBrowserTabs = cycleBrowserTabs;
@@ -1 +1 @@
1
- {"version":3,"file":"cycle-browser-tabs.js","sourceRoot":"","sources":["../src/cycle-browser-tabs.ts"],"names":[],"mappings":";;;AAIO,MAAM,gBAAgB,GAAG,CAC/B,aAAoD,EACnD,EAAE;IACH,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;QACjC,aAAa;aACX,KAAK,EAAE;aACP,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;YACf,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;YAC5C,CAAC,EAAE,CAAC;YACJ,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,EAAE;gBAC5B,OAAO,WAAW,CAAC,YAAY,EAAE,CAAC;aAClC;QACF,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IACpC,CAAC,EAAE,GAAG,CAAC,CAAC;IAER,OAAO;QACN,WAAW,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC;KAC1C,CAAC;AACH,CAAC,CAAC;AApBW,QAAA,gBAAgB,oBAoB3B"}
1
+ {"version":3,"file":"cycle-browser-tabs.js","sourceRoot":"","sources":["../src/cycle-browser-tabs.ts"],"names":[],"mappings":";;;AAIO,MAAM,gBAAgB,GAAG,CAC/B,iBAAwD,EACvD,EAAE;IACH,IAAI,QAAQ,GAA0B,IAAI,CAAC;IAC3C,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,MAAM,GAAG,GAAG,GAAG,EAAE;QAChB,QAAQ,GAAG,UAAU,CAAC,GAAG,EAAE;YAC1B,iBAAiB;iBACf,KAAK,EAAE;iBACP,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;;gBACf,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;gBAC5C,CAAC,EAAE,CAAC;gBACJ,IAAI,CAAC,CAAC,MAAA,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,QAAQ,+CAArB,WAAW,CAAc,mCAAI,IAAI,CAAC,EAAE;oBACzC,OAAO,WAAW,CAAC,YAAY,EAAE,CAAC;iBAClC;YACF,CAAC,CAAC;iBACD,IAAI,CAAC,GAAG,EAAE;gBACV,GAAG,EAAE,CAAC;YACP,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACpC,CAAC,EAAE,GAAG,CAAC,CAAC;IACT,CAAC,CAAC;IAEF,GAAG,EAAE,CAAC;IAEN,OAAO;QACN,WAAW,EAAE,GAAG,EAAE;YACjB,IAAI,CAAC,QAAQ,EAAE;gBACd,OAAO;aACP;YAED,OAAO,aAAa,CAAC,QAAQ,CAAC,CAAC;QAChC,CAAC;KACD,CAAC;AACH,CAAC,CAAC;AAlCW,QAAA,gBAAgB,oBAkC3B"}
@@ -0,0 +1,2 @@
1
+ export declare const deleteDirectory: (directory: string) => Promise<void>;
2
+ //# sourceMappingURL=delete-directory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-directory.d.ts","sourceRoot":"","sources":["../src/delete-directory.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,eAAe,cAAqB,MAAM,KAAG,QAAQ,IAAI,CAerE,CAAC"}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.deleteDirectory = void 0;
7
+ const fs_1 = __importDefault(require("fs"));
8
+ const execa_1 = __importDefault(require("execa"));
9
+ const is_serve_url_1 = require("./is-serve-url");
10
+ const deleteDirectory = async (directory) => {
11
+ var _a;
12
+ if ((0, is_serve_url_1.isServeUrl)(directory)) {
13
+ return;
14
+ }
15
+ if (process.platform === 'win32') {
16
+ // We use del before to remove all files inside the directories otherwise
17
+ // rmdir will throw an error.
18
+ await (0, execa_1.default)('cmd', ['/c', 'del', '/f', '/s', '/q', directory]);
19
+ await (0, execa_1.default)('cmd', ['/c', 'rmdir', '/s', '/q', directory]);
20
+ }
21
+ else {
22
+ await ((_a = fs_1.default.promises.rm) !== null && _a !== void 0 ? _a : fs_1.default.promises.rmdir)(directory, {
23
+ recursive: true,
24
+ });
25
+ }
26
+ };
27
+ exports.deleteDirectory = deleteDirectory;
28
+ //# sourceMappingURL=delete-directory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-directory.js","sourceRoot":"","sources":["../src/delete-directory.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,kDAA0B;AAC1B,iDAA0C;AAEnC,MAAM,eAAe,GAAG,KAAK,EAAE,SAAiB,EAAiB,EAAE;;IACzE,IAAI,IAAA,yBAAU,EAAC,SAAS,CAAC,EAAE;QAC1B,OAAO;KACP;IAED,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE;QACjC,yEAAyE;QACzE,6BAA6B;QAC7B,MAAM,IAAA,eAAK,EAAC,KAAK,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;QAC/D,MAAM,IAAA,eAAK,EAAC,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;KAC3D;SAAM;QACN,MAAM,CAAC,MAAA,YAAE,CAAC,QAAQ,CAAC,EAAE,mCAAI,YAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE;YACtD,SAAS,EAAE,IAAI;SACf,CAAC,CAAC;KACH;AACF,CAAC,CAAC;AAfW,QAAA,eAAe,mBAe1B"}
@@ -0,0 +1,6 @@
1
+ export declare const ensureFramesInOrder: (frameRange: [number, number]) => {
2
+ waitForRightTimeOfFrameToBeInserted: (frameToBe: number) => Promise<void>;
3
+ setFrameToStitch: (f: number) => void;
4
+ waitForFinish: () => Promise<void>;
5
+ };
6
+ //# sourceMappingURL=ensure-frames-in-order.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ensure-frames-in-order.d.ts","sourceRoot":"","sources":["../src/ensure-frames-in-order.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,mBAAmB,eAAgB,CAAC,MAAM,EAAE,MAAM,CAAC;qDAcD,MAAM;0BAWvC,MAAM;;CAcnC,CAAC"}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ensureFramesInOrder = void 0;
4
+ const ensureFramesInOrder = (frameRange) => {
5
+ let [frameToStitch, finalFrame] = frameRange;
6
+ let waiters = [];
7
+ const resolveWaiters = () => {
8
+ for (const waiter of waiters.slice(0)) {
9
+ if (frameToStitch === waiter.forFrame) {
10
+ waiter.resolve();
11
+ waiters = waiters.filter((w) => w.id !== waiter.id);
12
+ }
13
+ }
14
+ };
15
+ const waitForRightTimeOfFrameToBeInserted = async (frameToBe) => {
16
+ return new Promise((resolve) => {
17
+ waiters.push({
18
+ id: String(Math.random()),
19
+ forFrame: frameToBe,
20
+ resolve,
21
+ });
22
+ resolveWaiters();
23
+ });
24
+ };
25
+ const setFrameToStitch = (f) => {
26
+ frameToStitch = f;
27
+ resolveWaiters();
28
+ };
29
+ const waitForFinish = async () => {
30
+ await waitForRightTimeOfFrameToBeInserted(finalFrame + 1);
31
+ };
32
+ return {
33
+ waitForRightTimeOfFrameToBeInserted,
34
+ setFrameToStitch,
35
+ waitForFinish,
36
+ };
37
+ };
38
+ exports.ensureFramesInOrder = ensureFramesInOrder;
39
+ //# sourceMappingURL=ensure-frames-in-order.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ensure-frames-in-order.js","sourceRoot":"","sources":["../src/ensure-frames-in-order.ts"],"names":[],"mappings":";;;AAMO,MAAM,mBAAmB,GAAG,CAAC,UAA4B,EAAE,EAAE;IACnE,IAAI,CAAC,aAAa,EAAE,UAAU,CAAC,GAAG,UAAU,CAAC;IAE7C,IAAI,OAAO,GAAa,EAAE,CAAC;IAE3B,MAAM,cAAc,GAAG,GAAG,EAAE;QAC3B,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;YACtC,IAAI,aAAa,KAAK,MAAM,CAAC,QAAQ,EAAE;gBACtC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACjB,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,CAAC,CAAC;aACpD;SACD;IACF,CAAC,CAAC;IAEF,MAAM,mCAAmC,GAAG,KAAK,EAAE,SAAiB,EAAE,EAAE;QACvE,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YACpC,OAAO,CAAC,IAAI,CAAC;gBACZ,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACzB,QAAQ,EAAE,SAAS;gBACnB,OAAO;aACP,CAAC,CAAC;YACH,cAAc,EAAE,CAAC;QAClB,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,gBAAgB,GAAG,CAAC,CAAS,EAAE,EAAE;QACtC,aAAa,GAAG,CAAC,CAAC;QAClB,cAAc,EAAE,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,KAAK,IAAI,EAAE;QAChC,MAAM,mCAAmC,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;IAC3D,CAAC,CAAC;IAEF,OAAO;QACN,mCAAmC;QACnC,gBAAgB;QAChB,aAAa;KACb,CAAC;AACH,CAAC,CAAC;AAvCW,QAAA,mBAAmB,uBAuC9B"}
@@ -0,0 +1,2 @@
1
+ export declare const ensureOutputDirectory: (outputLocation: string) => void;
2
+ //# sourceMappingURL=ensure-output-directory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ensure-output-directory.d.ts","sourceRoot":"","sources":["../src/ensure-output-directory.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,qBAAqB,mBAAoB,MAAM,SAQ3D,CAAC"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ensureOutputDirectory = void 0;
7
+ const fs_1 = __importDefault(require("fs"));
8
+ const path_1 = __importDefault(require("path"));
9
+ const ensureOutputDirectory = (outputLocation) => {
10
+ const dirName = path_1.default.dirname(outputLocation);
11
+ if (!fs_1.default.existsSync(dirName)) {
12
+ fs_1.default.mkdirSync(dirName, {
13
+ recursive: true,
14
+ });
15
+ }
16
+ };
17
+ exports.ensureOutputDirectory = ensureOutputDirectory;
18
+ //# sourceMappingURL=ensure-output-directory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ensure-output-directory.js","sourceRoot":"","sources":["../src/ensure-output-directory.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,gDAAwB;AAEjB,MAAM,qBAAqB,GAAG,CAAC,cAAsB,EAAE,EAAE;IAC/D,MAAM,OAAO,GAAG,cAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IAE7C,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;QAC5B,YAAE,CAAC,SAAS,CAAC,OAAO,EAAE;YACrB,SAAS,EAAE,IAAI;SACf,CAAC,CAAC;KACH;AACF,CAAC,CAAC;AARW,QAAA,qBAAqB,yBAQhC"}
@@ -0,0 +1,10 @@
1
+ import { Browser, Page } from 'puppeteer-core';
2
+ import { BrowserExecutable } from 'remotion';
3
+ export declare const getPageAndCleanupFn: ({ passedInInstance, browserExecutable, }: {
4
+ passedInInstance: Browser | undefined;
5
+ browserExecutable: BrowserExecutable | null;
6
+ }) => Promise<{
7
+ cleanup: () => void;
8
+ page: Page;
9
+ }>;
10
+ //# sourceMappingURL=get-browser-instance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-browser-instance.d.ts","sourceRoot":"","sources":["../src/get-browser-instance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,IAAI,EAAC,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAC,iBAAiB,EAAY,MAAM,UAAU,CAAC;AAGtD,eAAO,MAAM,mBAAmB;sBAIb,OAAO,GAAG,SAAS;uBAClB,iBAAiB,GAAG,IAAI;MACxC,QAAQ;IACX,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,IAAI,EAAE,IAAI,CAAC;CACX,CA6BA,CAAC"}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getPageAndCleanupFn = void 0;
4
+ const remotion_1 = require("remotion");
5
+ const open_browser_1 = require("./open-browser");
6
+ const getPageAndCleanupFn = async ({ passedInInstance, browserExecutable, }) => {
7
+ if (passedInInstance) {
8
+ const page = await passedInInstance.newPage();
9
+ return {
10
+ page,
11
+ cleanup: () => {
12
+ // Close puppeteer page and don't wait for it to finish.
13
+ // Keep browser open.
14
+ page.close().catch((err) => {
15
+ console.error('Was not able to close puppeteer page', err);
16
+ });
17
+ },
18
+ };
19
+ }
20
+ const browserInstance = await (0, open_browser_1.openBrowser)(remotion_1.Internals.DEFAULT_BROWSER, {
21
+ browserExecutable,
22
+ });
23
+ const browserPage = await browserInstance.newPage();
24
+ return {
25
+ page: browserPage,
26
+ cleanup: () => {
27
+ // Close whole browser that was just created and don't wait for it to finish.
28
+ browserInstance.close().catch((err) => {
29
+ console.error('Was not able to close puppeteer page', err);
30
+ });
31
+ },
32
+ };
33
+ };
34
+ exports.getPageAndCleanupFn = getPageAndCleanupFn;
35
+ //# sourceMappingURL=get-browser-instance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-browser-instance.js","sourceRoot":"","sources":["../src/get-browser-instance.ts"],"names":[],"mappings":";;;AACA,uCAAsD;AACtD,iDAA2C;AAEpC,MAAM,mBAAmB,GAAG,KAAK,EAAE,EACzC,gBAAgB,EAChB,iBAAiB,GAIjB,EAGE,EAAE;IACJ,IAAI,gBAAgB,EAAE;QACrB,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,OAAO,EAAE,CAAC;QAC9C,OAAO;YACN,IAAI;YACJ,OAAO,EAAE,GAAG,EAAE;gBACb,wDAAwD;gBACxD,qBAAqB;gBACrB,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;oBAC1B,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,GAAG,CAAC,CAAC;gBAC5D,CAAC,CAAC,CAAC;YACJ,CAAC;SACD,CAAC;KACF;IAED,MAAM,eAAe,GAAG,MAAM,IAAA,0BAAW,EAAC,oBAAS,CAAC,eAAe,EAAE;QACpE,iBAAiB;KACjB,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,MAAM,eAAe,CAAC,OAAO,EAAE,CAAC;IAEpD,OAAO;QACN,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,GAAG,EAAE;YACb,6EAA6E;YAC7E,eAAe,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACrC,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,GAAG,CAAC,CAAC;YAC5D,CAAC,CAAC,CAAC;QACJ,CAAC;KACD,CAAC;AACH,CAAC,CAAC;AAtCW,QAAA,mBAAmB,uBAsC9B"}
@@ -1,14 +1,14 @@
1
- import { Browser as PuppeteerBrowser } from 'puppeteer-core';
2
- import { Browser, BrowserExecutable, TCompMetadata } from 'remotion';
1
+ import { Browser } from 'puppeteer-core';
2
+ import { BrowserExecutable, TCompMetadata } from 'remotion';
3
3
  import { BrowserLog } from './browser-log';
4
4
  declare type GetCompositionsConfig = {
5
- browser?: Browser;
6
5
  inputProps?: object | null;
7
6
  envVariables?: Record<string, string>;
8
- browserInstance?: PuppeteerBrowser;
7
+ puppeteerInstance?: Browser;
9
8
  onBrowserLog?: (log: BrowserLog) => void;
10
9
  browserExecutable?: BrowserExecutable;
10
+ timeoutInMilliseconds?: number;
11
11
  };
12
- export declare const getCompositions: (serveUrl: string, config?: GetCompositionsConfig | undefined) => Promise<TCompMetadata[]>;
12
+ export declare const getCompositions: (serveUrlOrWebpackUrl: string, config?: GetCompositionsConfig | undefined) => Promise<TCompMetadata[]>;
13
13
  export {};
14
14
  //# sourceMappingURL=get-compositions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-compositions.d.ts","sourceRoot":"","sources":["../src/get-compositions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,IAAI,gBAAgB,EAAO,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAAC,OAAO,EAAE,iBAAiB,EAAa,aAAa,EAAC,MAAM,UAAU,CAAC;AAC9E,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AAKzC,aAAK,qBAAqB,GAAG;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,eAAe,CAAC,EAAE,gBAAgB,CAAC;IACnC,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,UAAU,KAAK,IAAI,CAAC;IACzC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;CACtC,CAAC;AA4GF,eAAO,MAAM,eAAe,aACjB,MAAM,yEAehB,CAAC"}
1
+ {"version":3,"file":"get-compositions.d.ts","sourceRoot":"","sources":["../src/get-compositions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAO,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAC,iBAAiB,EAAE,aAAa,EAAC,MAAM,UAAU,CAAC;AAC1D,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AAOzC,aAAK,qBAAqB,GAAG;IAC5B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,UAAU,KAAK,IAAI,CAAC;IACzC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAC/B,CAAC;AA2DF,eAAO,MAAM,eAAe,yBACL,MAAM,yEA0B5B,CAAC"}
@@ -1,45 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getCompositions = void 0;
4
- const remotion_1 = require("remotion");
4
+ const get_browser_instance_1 = require("./get-browser-instance");
5
5
  const normalize_serve_url_1 = require("./normalize-serve-url");
6
- const open_browser_1 = require("./open-browser");
6
+ const prepare_server_1 = require("./prepare-server");
7
7
  const set_props_and_env_1 = require("./set-props-and-env");
8
- const getPageAndCleanupFn = async ({ passedInInstance, browser, browserExecutable, }) => {
9
- if (passedInInstance) {
10
- const page = await passedInInstance.newPage();
11
- return {
12
- page,
13
- cleanup: () => {
14
- // Close puppeteer page and don't wait for it to finish.
15
- // Keep browser open.
16
- page.close().catch((err) => {
17
- console.error('Was not able to close puppeteer page', err);
18
- });
19
- },
20
- };
21
- }
22
- const browserInstance = await (0, open_browser_1.openBrowser)(browser || remotion_1.Internals.DEFAULT_BROWSER, {
23
- browserExecutable,
24
- });
25
- const browserPage = await browserInstance.newPage();
26
- return {
27
- page: browserPage,
28
- cleanup: () => {
29
- // Close whole browser that was just created and don't wait for it to finish.
30
- browserInstance.close().catch((err) => {
31
- console.error('Was not able to close puppeteer page', err);
32
- });
33
- },
34
- };
35
- };
36
- const innerGetCompositions = async (serveUrl, config) => {
37
- var _a, _b;
38
- const { page, cleanup } = await getPageAndCleanupFn({
39
- passedInInstance: config === null || config === void 0 ? void 0 : config.browserInstance,
40
- browser: (_a = config === null || config === void 0 ? void 0 : config.browser) !== null && _a !== void 0 ? _a : remotion_1.Internals.DEFAULT_BROWSER,
41
- browserExecutable: (_b = config === null || config === void 0 ? void 0 : config.browserExecutable) !== null && _b !== void 0 ? _b : null,
42
- });
8
+ const validate_puppeteer_timeout_1 = require("./validate-puppeteer-timeout");
9
+ const innerGetCompositions = async (serveUrl, page, config) => {
43
10
  page.on('error', (err) => {
44
11
  console.log(err);
45
12
  config.onError(err);
@@ -58,12 +25,14 @@ const innerGetCompositions = async (serveUrl, config) => {
58
25
  });
59
26
  });
60
27
  }
28
+ (0, validate_puppeteer_timeout_1.validatePuppeteerTimeout)(config === null || config === void 0 ? void 0 : config.timeoutInMilliseconds);
61
29
  await (0, set_props_and_env_1.setPropsAndEnv)({
62
30
  inputProps: config === null || config === void 0 ? void 0 : config.inputProps,
63
31
  envVariables: config === null || config === void 0 ? void 0 : config.envVariables,
64
32
  page,
65
33
  serveUrl,
66
34
  initialFrame: 0,
35
+ timeoutInMilliseconds: config === null || config === void 0 ? void 0 : config.timeoutInMilliseconds,
67
36
  });
68
37
  const urlToVisit = `${(0, normalize_serve_url_1.normalizeServeUrl)(serveUrl)}?evaluation=true`;
69
38
  const pageRes = await page.goto(urlToVisit);
@@ -76,12 +45,18 @@ const innerGetCompositions = async (serveUrl, config) => {
76
45
  }
77
46
  await page.waitForFunction('window.ready === true');
78
47
  const result = await page.evaluate('window.getStaticCompositions()');
79
- cleanup();
80
48
  return result;
81
49
  };
82
- const getCompositions = (serveUrl, config) => {
50
+ const getCompositions = async (serveUrlOrWebpackUrl, config) => {
51
+ var _a;
52
+ const { serveUrl, closeServer } = await (0, prepare_server_1.prepareServer)(serveUrlOrWebpackUrl);
53
+ const { page, cleanup } = await (0, get_browser_instance_1.getPageAndCleanupFn)({
54
+ passedInInstance: config === null || config === void 0 ? void 0 : config.puppeteerInstance,
55
+ browserExecutable: (_a = config === null || config === void 0 ? void 0 : config.browserExecutable) !== null && _a !== void 0 ? _a : null,
56
+ });
83
57
  return new Promise((resolve, reject) => {
84
- innerGetCompositions(serveUrl, {
58
+ // eslint-disable-next-line promise/catch-or-return
59
+ innerGetCompositions(serveUrl, page, {
85
60
  ...(config !== null && config !== void 0 ? config : {}),
86
61
  onError: (err) => {
87
62
  reject(err);
@@ -90,6 +65,10 @@ const getCompositions = (serveUrl, config) => {
90
65
  .then((comp) => resolve(comp))
91
66
  .catch((err) => {
92
67
  reject(err);
68
+ })
69
+ .finally(() => {
70
+ cleanup();
71
+ closeServer();
93
72
  });
94
73
  });
95
74
  };
@@ -1 +1 @@
1
- {"version":3,"file":"get-compositions.js","sourceRoot":"","sources":["../src/get-compositions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get-compositions.js","sourceRoot":"","sources":["../src/get-compositions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Codec } from 'remotion';
2
+ export declare const getFileExtensionFromCodec: (codec: Codec, type: 'chunk' | 'final') => "mp3" | "aac" | "wav" | "mp4" | "mkv" | "mov" | "webm";
3
+ //# sourceMappingURL=get-extension-from-codec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-extension-from-codec.d.ts","sourceRoot":"","sources":["../src/get-extension-from-codec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAC,MAAM,UAAU,CAAC;AAE/B,eAAO,MAAM,yBAAyB,UAC9B,KAAK,QACN,OAAO,GAAG,OAAO,2DAgCvB,CAAC"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getFileExtensionFromCodec = void 0;
4
+ const getFileExtensionFromCodec = (codec, type) => {
5
+ switch (codec) {
6
+ case 'aac':
7
+ return 'aac';
8
+ case 'h264':
9
+ return 'mp4';
10
+ // The chunks will be rendered as mkv, but the final output will still be MP4
11
+ case 'h264-mkv':
12
+ if (type === 'chunk') {
13
+ return 'mkv';
14
+ }
15
+ return 'mp4';
16
+ case 'h265':
17
+ return 'mp4';
18
+ case 'mp3':
19
+ return 'mp3';
20
+ case 'prores':
21
+ return 'mov';
22
+ case 'vp8':
23
+ return 'webm';
24
+ case 'vp9':
25
+ return 'webm';
26
+ case 'wav':
27
+ return 'wav';
28
+ default:
29
+ throw new Error("Don't know which file extension to use for codec " + codec);
30
+ }
31
+ };
32
+ exports.getFileExtensionFromCodec = getFileExtensionFromCodec;
33
+ //# sourceMappingURL=get-extension-from-codec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-extension-from-codec.js","sourceRoot":"","sources":["../src/get-extension-from-codec.ts"],"names":[],"mappings":";;;AAEO,MAAM,yBAAyB,GAAG,CACxC,KAAY,EACZ,IAAuB,EACtB,EAAE;IACH,QAAQ,KAAK,EAAE;QACd,KAAK,KAAK;YACT,OAAO,KAAK,CAAC;QACd,KAAK,MAAM;YACV,OAAO,KAAK,CAAC;QACd,6EAA6E;QAC7E,KAAK,UAAU;YACd,IAAI,IAAI,KAAK,OAAO,EAAE;gBACrB,OAAO,KAAK,CAAC;aACb;YAED,OAAO,KAAK,CAAC;QAEd,KAAK,MAAM;YACV,OAAO,KAAK,CAAC;QACd,KAAK,KAAK;YACT,OAAO,KAAK,CAAC;QACd,KAAK,QAAQ;YACZ,OAAO,KAAK,CAAC;QACd,KAAK,KAAK;YACT,OAAO,MAAM,CAAC;QACf,KAAK,KAAK;YACT,OAAO,MAAM,CAAC;QACf,KAAK,KAAK;YACT,OAAO,KAAK,CAAC;QACd;YACC,MAAM,IAAI,KAAK,CACd,mDAAmD,GAAG,KAAK,CAC3D,CAAC;KACH;AACF,CAAC,CAAC;AAlCW,QAAA,yBAAyB,6BAkCpC"}
@@ -1,3 +1,3 @@
1
1
  import { FrameRange } from 'remotion';
2
- export declare const getFrameToRender: (frameRange: FrameRange | null, index: number) => number;
2
+ export declare const getRealFrameRange: (durationInFrames: number, frameRange: FrameRange | null) => [number, number];
3
3
  //# sourceMappingURL=get-frame-to-render.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-frame-to-render.d.ts","sourceRoot":"","sources":["../src/get-frame-to-render.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,UAAU,CAAC;AAEpC,eAAO,MAAM,gBAAgB,eAChB,UAAU,GAAG,IAAI,SACtB,MAAM,WAWb,CAAC"}
1
+ {"version":3,"file":"get-frame-to-render.d.ts","sourceRoot":"","sources":["../src/get-frame-to-render.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,UAAU,CAAC;AAEpC,eAAO,MAAM,iBAAiB,qBACX,MAAM,cACZ,UAAU,GAAG,IAAI,KAC3B,CAAC,MAAM,EAAE,MAAM,CA0BjB,CAAC"}
@@ -1,14 +1,20 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getFrameToRender = void 0;
4
- const getFrameToRender = (frameRange, index) => {
5
- if (typeof frameRange === 'object' && frameRange !== null) {
6
- return index + frameRange[0];
3
+ exports.getRealFrameRange = void 0;
4
+ const getRealFrameRange = (durationInFrames, frameRange) => {
5
+ if (frameRange === null) {
6
+ return [0, durationInFrames - 1];
7
7
  }
8
8
  if (typeof frameRange === 'number') {
9
- return frameRange;
9
+ if (frameRange < 0 || frameRange >= durationInFrames) {
10
+ throw new Error(`Frame number is out of range, must be between 0 and ${durationInFrames - 1} but got ${frameRange}`);
11
+ }
12
+ return [frameRange, frameRange];
10
13
  }
11
- return index;
14
+ if (frameRange[1] >= durationInFrames || frameRange[0] < 0) {
15
+ throw new Error(`Frame range ${frameRange.join('-')} is not in between 0-${durationInFrames - 1}`);
16
+ }
17
+ return frameRange;
12
18
  };
13
- exports.getFrameToRender = getFrameToRender;
19
+ exports.getRealFrameRange = getRealFrameRange;
14
20
  //# sourceMappingURL=get-frame-to-render.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-frame-to-render.js","sourceRoot":"","sources":["../src/get-frame-to-render.ts"],"names":[],"mappings":";;;AAEO,MAAM,gBAAgB,GAAG,CAC/B,UAA6B,EAC7B,KAAa,EACZ,EAAE;IACH,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,KAAK,IAAI,EAAE;QAC1D,OAAO,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;KAC7B;IAED,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;QACnC,OAAO,UAAU,CAAC;KAClB;IAED,OAAO,KAAK,CAAC;AACd,CAAC,CAAC;AAbW,QAAA,gBAAgB,oBAa3B"}
1
+ {"version":3,"file":"get-frame-to-render.js","sourceRoot":"","sources":["../src/get-frame-to-render.ts"],"names":[],"mappings":";;;AAEO,MAAM,iBAAiB,GAAG,CAChC,gBAAwB,EACxB,UAA6B,EACV,EAAE;IACrB,IAAI,UAAU,KAAK,IAAI,EAAE;QACxB,OAAO,CAAC,CAAC,EAAE,gBAAgB,GAAG,CAAC,CAAC,CAAC;KACjC;IAED,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;QACnC,IAAI,UAAU,GAAG,CAAC,IAAI,UAAU,IAAI,gBAAgB,EAAE;YACrD,MAAM,IAAI,KAAK,CACd,uDACC,gBAAgB,GAAG,CACpB,YAAY,UAAU,EAAE,CACxB,CAAC;SACF;QAED,OAAO,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;KAChC;IAED,IAAI,UAAU,CAAC,CAAC,CAAC,IAAI,gBAAgB,IAAI,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE;QAC3D,MAAM,IAAI,KAAK,CACd,eAAe,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,wBAClC,gBAAgB,GAAG,CACpB,EAAE,CACF,CAAC;KACF;IAED,OAAO,UAAU,CAAC;AACnB,CAAC,CAAC;AA7BW,QAAA,iBAAiB,qBA6B5B"}
package/dist/index.d.ts CHANGED
@@ -7,14 +7,17 @@ declare global {
7
7
  remotion_collectAssets: () => TAsset[];
8
8
  }
9
9
  }
10
+ export { renderMedia, RenderMediaOnProgress, StitchingState, RenderMediaOptions, } from './render-media';
11
+ export type { RenderMediaOnDownload } from './assets/download-and-map-assets-to-file';
10
12
  export { combineVideos } from './combine-videos';
11
13
  export { FfmpegVersion } from './ffmpeg-flags';
12
14
  export { getCompositions } from './get-compositions';
13
15
  export { renderFrames } from './render';
14
16
  export { renderStill } from './render-still';
15
- export { stitchFramesToVideo } from './stitcher';
17
+ export { stitchFramesToVideo, StitcherOptions } from './stitcher';
16
18
  export { OnStartData, RenderFramesOutput } from './types';
17
19
  export { BrowserLog } from './browser-log';
20
+ export { openBrowser } from './open-browser';
18
21
  export declare const RenderInternals: {
19
22
  ensureLocalBrowser: (browser: import("remotion").Browser, preferredBrowserExecutable: import("remotion").BrowserExecutable) => Promise<void>;
20
23
  ffmpegHasFeature: ({ ffmpegExecutable, feature, isLambda, }: {
@@ -26,10 +29,6 @@ export declare const RenderInternals: {
26
29
  getFfmpegVersion: (options: {
27
30
  ffmpegExecutable: string | null;
28
31
  }) => Promise<import("./ffmpeg-flags").FfmpegVersion>;
29
- openBrowser: (browser: import("remotion").Browser, options?: {
30
- shouldDumpIo?: boolean | undefined;
31
- browserExecutable?: string | null | undefined;
32
- } | undefined) => Promise<import("puppeteer-core").Browser>;
33
32
  validateFfmpeg: (customFfmpegBinary: string | null) => Promise<void>;
34
33
  binaryExists: (name: "ffmpeg" | "brew", localFFmpeg: string | null) => Promise<boolean>;
35
34
  getFfmpegBuildInfo: (options: {
@@ -41,14 +40,29 @@ export declare const RenderInternals: {
41
40
  port: number;
42
41
  close: () => Promise<void>;
43
42
  }>;
44
- addSilentAudioIfNecessary: (videoFile: string) => Promise<void>;
43
+ addSilentAudioIfNecessary: (videoFile: string, durationInFrames: number, fps: number) => Promise<void>;
45
44
  validateEvenDimensionsWithCodec: ({ width, height, codec, }: {
46
45
  width: number;
47
46
  height: number;
48
47
  codec: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv";
49
48
  }) => void;
50
- min: (arr: number[]) => number;
51
- max: (arr: number[]) => number;
52
49
  normalizeServeUrl: (unnormalized: string) => string;
50
+ spawnFfmpeg: (options: import("./stitcher").StitcherOptions) => Promise<{
51
+ task: import("execa").ExecaChildProcess<string>;
52
+ cleanup: (() => void) | undefined;
53
+ }>;
54
+ getFileExtensionFromCodec: (codec: "h264" | "h265" | "vp8" | "vp9" | "mp3" | "aac" | "wav" | "prores" | "h264-mkv", type: "chunk" | "final") => "mp3" | "aac" | "wav" | "mp4" | "mkv" | "mov" | "webm";
55
+ makeAssetsDownloadTmpDir: () => string;
56
+ tmpDir: (str: string) => string;
57
+ deleteDirectory: (directory: string) => Promise<void>;
58
+ prepareServer: (webpackConfigOrServeUrl: string) => Promise<{
59
+ serveUrl: string;
60
+ closeServer: () => Promise<void>;
61
+ }>;
62
+ isServeUrl: (potentialUrl: string) => boolean;
63
+ ensureOutputDirectory: (outputLocation: string) => void;
64
+ gotStream: import("got/dist/source").GotStream;
65
+ getRealFrameRange: (durationInFrames: number, frameRange: import("remotion").FrameRange | null) => [number, number];
66
+ validatePuppeteerTimeout: (timeoutInMilliseconds: unknown) => void;
53
67
  };
54
68
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAE,aAAa,EAAC,MAAM,UAAU,CAAC;AAgB/C,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,MAAM;QACf,KAAK,EAAE,OAAO,CAAC;QACf,qBAAqB,EAAE,MAAM,aAAa,EAAE,CAAC;QAC7C,iBAAiB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;QAC3C,sBAAsB,EAAE,MAAM,MAAM,EAAE,CAAC;KACvC;CACD;AAED,OAAO,EAAC,aAAa,EAAC,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAC,aAAa,EAAC,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAC,eAAe,EAAC,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAC,YAAY,EAAC,MAAM,UAAU,CAAC;AACtC,OAAO,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAC,mBAAmB,EAAC,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAC,WAAW,EAAE,kBAAkB,EAAC,MAAM,SAAS,CAAC;AACxD,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AAEzC,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAe3B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAE,aAAa,EAAC,MAAM,UAAU,CAAC;AAyB/C,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,MAAM;QACf,KAAK,EAAE,OAAO,CAAC;QACf,qBAAqB,EAAE,MAAM,aAAa,EAAE,CAAC;QAC7C,iBAAiB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;QAC3C,sBAAsB,EAAE,MAAM,MAAM,EAAE,CAAC;KACvC;CACD;AAED,OAAO,EACN,WAAW,EACX,qBAAqB,EACrB,cAAc,EACd,kBAAkB,GAClB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EAAC,qBAAqB,EAAC,MAAM,0CAA0C,CAAC;AACpF,OAAO,EAAC,aAAa,EAAC,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAC,aAAa,EAAC,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAC,eAAe,EAAC,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAC,YAAY,EAAC,MAAM,UAAU,CAAC;AACtC,OAAO,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAC,mBAAmB,EAAE,eAAe,EAAC,MAAM,YAAY,CAAC;AAChE,OAAO,EAAC,WAAW,EAAE,kBAAkB,EAAC,MAAM,SAAS,CAAC;AACxD,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AACzC,OAAO,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAE3C,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuB3B,CAAC"}