@remotion/renderer 3.1.6 → 3.1.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/add-silent-audio-if-necessary.d.ts +8 -0
- package/dist/add-silent-audio-if-necessary.d.ts.map +1 -0
- package/dist/add-silent-audio-if-necessary.js +51 -0
- package/dist/add-silent-audio-if-necessary.js.map +1 -0
- package/dist/assets/asset-is-used-at-time.d.ts +3 -0
- package/dist/assets/asset-is-used-at-time.d.ts.map +1 -0
- package/dist/assets/asset-is-used-at-time.js +8 -0
- package/dist/assets/asset-is-used-at-time.js.map +1 -0
- package/dist/assets/calculate-asset-positions.d.ts.map +1 -0
- package/dist/assets/calculate-asset-positions.js.map +1 -0
- package/dist/assets/calculate-atempo.d.ts.map +1 -0
- package/dist/assets/calculate-atempo.js.map +1 -0
- package/dist/assets/convert-assets-to-file-urls.d.ts +3 -2
- package/dist/assets/convert-assets-to-file-urls.d.ts.map +1 -0
- package/dist/assets/convert-assets-to-file-urls.js +2 -2
- package/dist/assets/convert-assets-to-file-urls.js.map +1 -0
- package/dist/assets/download-and-map-assets-to-file.d.ts +6 -5
- package/dist/assets/download-and-map-assets-to-file.d.ts.map +1 -0
- package/dist/assets/download-and-map-assets-to-file.js +46 -47
- package/dist/assets/download-and-map-assets-to-file.js.map +1 -0
- package/dist/assets/download-file.d.ts.map +1 -0
- package/dist/assets/download-file.js.map +1 -0
- package/dist/assets/download-map.d.ts +64 -0
- package/dist/assets/download-map.js +73 -0
- package/dist/assets/ffmpeg-volume-expression.d.ts.map +1 -0
- package/dist/assets/ffmpeg-volume-expression.js.map +1 -0
- package/dist/assets/flatten-volume-array.d.ts.map +1 -0
- package/dist/assets/flatten-volume-array.js.map +1 -0
- package/dist/assets/get-asset-audio-details.d.ts +5 -0
- package/dist/assets/get-asset-audio-details.d.ts.map +1 -0
- package/dist/assets/get-asset-audio-details.js +21 -0
- package/dist/assets/get-asset-audio-details.js.map +1 -0
- package/dist/assets/get-audio-channels.d.ts +3 -7
- package/dist/assets/get-audio-channels.d.ts.map +1 -0
- package/dist/assets/get-audio-channels.js +6 -7
- package/dist/assets/get-audio-channels.js.map +1 -0
- package/dist/assets/get-simulatenous-assets.d.ts +3 -0
- package/dist/assets/get-simulatenous-assets.d.ts.map +1 -0
- package/dist/assets/get-simulatenous-assets.js +14 -0
- package/dist/assets/get-simulatenous-assets.js.map +1 -0
- package/dist/assets/get-video-stream-duration.d.ts +3 -6
- package/dist/assets/get-video-stream-duration.js +9 -8
- package/dist/assets/read-file.d.ts.map +1 -0
- package/dist/assets/read-file.js.map +1 -0
- package/dist/assets/round-volume-to-avoid-stack-overflow.d.ts.map +1 -0
- package/dist/assets/round-volume-to-avoid-stack-overflow.js.map +1 -0
- package/dist/assets/sanitize-filename.d.ts.map +1 -0
- package/dist/assets/sanitize-filename.js.map +1 -0
- package/dist/assets/sanitize-filepath.d.ts.map +1 -0
- package/dist/assets/sanitize-filepath.js.map +1 -0
- package/dist/assets/split-assets-into-segments.d.ts +6 -0
- package/dist/assets/split-assets-into-segments.d.ts.map +1 -0
- package/dist/assets/split-assets-into-segments.js +89 -0
- package/dist/assets/split-assets-into-segments.js.map +1 -0
- package/dist/assets/truncate-utf8-bytes.d.ts.map +1 -0
- package/dist/assets/truncate-utf8-bytes.js.map +1 -0
- package/dist/assets/types.d.ts.map +1 -0
- package/dist/assets/types.js.map +1 -0
- package/dist/assets-to-ffmpeg-inputs.d.ts +7 -0
- package/dist/assets-to-ffmpeg-inputs.d.ts.map +1 -0
- package/dist/assets-to-ffmpeg-inputs.js +15 -0
- package/dist/assets-to-ffmpeg-inputs.js.map +1 -0
- package/dist/browser/TimeoutSettings.d.ts +1 -0
- package/dist/browser/TimeoutSettings.js +4 -4
- package/dist/browser-executable.d.ts +1 -0
- package/dist/browser-executable.js +2 -0
- package/dist/browser-log.d.ts.map +1 -0
- package/dist/browser-log.js.map +1 -0
- package/dist/browser.d.ts +2 -0
- package/dist/browser.js +4 -0
- package/dist/calculate-ffmpeg-filters.d.ts.map +1 -0
- package/dist/calculate-ffmpeg-filters.js.map +1 -0
- package/dist/can-use-parallel-encoding.d.ts +1 -1
- package/dist/can-use-parallel-encoding.d.ts.map +1 -0
- package/dist/can-use-parallel-encoding.js +2 -2
- package/dist/can-use-parallel-encoding.js.map +1 -0
- package/dist/codec-supports-media.d.ts +1 -1
- package/dist/codec.d.ts +4 -0
- package/dist/codec.js +16 -0
- package/dist/combine-videos.d.ts +1 -1
- package/dist/combine-videos.d.ts.map +1 -0
- package/dist/combine-videos.js +7 -6
- package/dist/combine-videos.js.map +1 -0
- package/dist/compress-assets.d.ts +7 -0
- package/dist/compress-assets.js +25 -0
- package/dist/convert-to-pcm.d.ts +1 -1
- package/dist/create-ffmpeg-complex-filter.d.ts +6 -2
- package/dist/create-ffmpeg-complex-filter.d.ts.map +1 -0
- package/dist/create-ffmpeg-complex-filter.js +2 -11
- package/dist/create-ffmpeg-complex-filter.js.map +1 -0
- package/dist/create-ffmpeg-merge-filter.js +3 -3
- package/dist/create-silent-audio.d.ts +1 -1
- package/dist/crf.d.ts +5 -0
- package/dist/crf.js +64 -0
- package/dist/cycle-browser-tabs.d.ts.map +1 -0
- package/dist/cycle-browser-tabs.js.map +1 -0
- package/dist/delay-render-embedded-stack.d.ts.map +1 -0
- package/dist/delay-render-embedded-stack.js.map +1 -0
- package/dist/delete-directory.d.ts.map +1 -0
- package/dist/delete-directory.js.map +1 -0
- package/dist/ensure-frames-in-order.d.ts.map +1 -0
- package/dist/ensure-frames-in-order.js.map +1 -0
- package/dist/ensure-output-directory.d.ts.map +1 -0
- package/dist/ensure-output-directory.js.map +1 -0
- package/dist/ensure-presentation-timestamp.d.ts +2 -1
- package/dist/ensure-presentation-timestamp.js +9 -7
- package/dist/error-handling/handle-javascript-exception.d.ts.map +1 -0
- package/dist/error-handling/handle-javascript-exception.js.map +1 -0
- package/dist/error-handling/symbolicate-error.d.ts.map +1 -0
- package/dist/error-handling/symbolicate-error.js.map +1 -0
- package/dist/error-handling/symbolicateable-error.d.ts.map +1 -0
- package/dist/error-handling/symbolicateable-error.js.map +1 -0
- package/dist/extract-frame-from-video.d.ts +4 -1
- package/dist/extract-frame-from-video.js +21 -16
- package/dist/ffmpeg-executable.d.ts +1 -0
- package/dist/ffmpeg-executable.js +2 -0
- package/dist/ffmpeg-filter-file.d.ts +2 -1
- package/dist/ffmpeg-filter-file.js +4 -6
- package/dist/ffmpeg-flags.d.ts.map +1 -0
- package/dist/ffmpeg-flags.js.map +1 -0
- package/dist/frame-range.d.ts +2 -0
- package/dist/frame-range.js +49 -0
- package/dist/get-audio-codec-name.d.ts +1 -1
- package/dist/get-audio-codec-name.d.ts.map +1 -0
- package/dist/get-audio-codec-name.js +2 -2
- package/dist/get-audio-codec-name.js.map +1 -0
- package/dist/get-browser-instance.d.ts +1 -1
- package/dist/get-browser-instance.d.ts.map +1 -0
- package/dist/get-browser-instance.js +2 -2
- package/dist/get-browser-instance.js.map +1 -0
- package/dist/get-codec-name.d.ts +1 -1
- package/dist/get-codec-name.d.ts.map +1 -0
- package/dist/get-codec-name.js +2 -2
- package/dist/get-codec-name.js.map +1 -0
- package/dist/get-compositions.d.ts +8 -1
- package/dist/get-compositions.d.ts.map +1 -0
- package/dist/get-compositions.js +10 -6
- package/dist/get-compositions.js.map +1 -0
- package/dist/get-concurrency.d.ts.map +1 -0
- package/dist/get-concurrency.js.map +1 -0
- package/dist/get-extension-from-codec.d.ts +1 -1
- package/dist/get-extension-from-codec.d.ts.map +1 -0
- package/dist/get-extension-from-codec.js.map +1 -0
- package/dist/get-frame-to-render.d.ts +1 -1
- package/dist/get-frame-to-render.d.ts.map +1 -0
- package/dist/get-frame-to-render.js.map +1 -0
- package/dist/get-local-browser-executable.d.ts +2 -1
- package/dist/get-local-browser-executable.d.ts.map +1 -0
- package/dist/get-local-browser-executable.js.map +1 -0
- package/dist/get-port.d.ts.map +1 -0
- package/dist/get-port.js.map +1 -0
- package/dist/get-prores-profile-name.d.ts +2 -1
- package/dist/get-prores-profile-name.d.ts.map +1 -0
- package/dist/get-prores-profile-name.js.map +1 -0
- package/dist/get-video-info.d.ts +3 -8
- package/dist/get-video-info.js +7 -8
- package/dist/get-video-threads-flag.d.ts +1 -0
- package/dist/get-video-threads-flag.js +18 -0
- package/dist/image-format.d.ts +6 -1
- package/dist/image-format.d.ts.map +1 -0
- package/dist/image-format.js +25 -1
- package/dist/image-format.js.map +1 -0
- package/dist/index.d.ts +48 -9
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +71 -1
- package/dist/index.js.map +1 -0
- package/dist/is-audio-codec.d.ts +2 -0
- package/dist/is-audio-codec.js +7 -0
- package/dist/is-beyond-last-frame.d.ts +3 -2
- package/dist/is-beyond-last-frame.js +5 -5
- package/dist/is-serve-url.d.ts.map +1 -0
- package/dist/is-serve-url.js.map +1 -0
- package/dist/last-frame-from-video-cache.d.ts +5 -4
- package/dist/last-frame-from-video-cache.js +17 -17
- package/dist/legacy-webpack-config.d.ts.map +1 -0
- package/dist/legacy-webpack-config.js.map +1 -0
- package/dist/log-level.d.ts +4 -0
- package/dist/log-level.js +15 -0
- package/dist/make-assets-download-dir.d.ts.map +1 -0
- package/dist/make-assets-download-dir.js.map +1 -0
- package/dist/merge-audio-track.d.ts +3 -1
- package/dist/merge-audio-track.js +6 -4
- package/dist/normalize-serve-url.d.ts.map +1 -0
- package/dist/normalize-serve-url.js.map +1 -0
- package/dist/offthread-video-server.d.ts +5 -3
- package/dist/offthread-video-server.js +3 -2
- package/dist/open-browser.d.ts +1 -1
- package/dist/open-browser.d.ts.map +1 -0
- package/dist/open-browser.js +6 -5
- package/dist/open-browser.js.map +1 -0
- package/dist/overwrite.d.ts +1 -0
- package/dist/overwrite.js +4 -0
- package/dist/parse-browser-error-stack.d.ts.map +1 -0
- package/dist/parse-browser-error-stack.js.map +1 -0
- package/dist/parse-ffmpeg-progress.d.ts.map +1 -0
- package/dist/parse-ffmpeg-progress.js.map +1 -0
- package/dist/perf.d.ts +5 -0
- package/dist/perf.js +35 -0
- package/dist/pixel-format.d.ts +5 -0
- package/dist/pixel-format.js +26 -0
- package/dist/pool.d.ts.map +1 -0
- package/dist/pool.js.map +1 -0
- package/dist/prepare-server.d.ts +4 -3
- package/dist/prepare-server.d.ts.map +1 -0
- package/dist/prepare-server.js +3 -3
- package/dist/prepare-server.js.map +1 -0
- package/dist/preprocess-audio-track.d.ts +3 -1
- package/dist/preprocess-audio-track.js +3 -3
- package/dist/prespawn-ffmpeg.d.ts +5 -1
- package/dist/prespawn-ffmpeg.js +9 -6
- package/dist/prestitcher-memory-usage.d.ts +12 -0
- package/dist/prestitcher-memory-usage.js +30 -0
- package/dist/prores-profile.d.ts +5 -0
- package/dist/prores-profile.js +23 -0
- package/dist/provide-screenshot.d.ts +1 -1
- package/dist/provide-screenshot.d.ts.map +1 -0
- package/dist/provide-screenshot.js.map +1 -0
- package/dist/puppeteer-evaluate.d.ts.map +1 -0
- package/dist/puppeteer-evaluate.js.map +1 -0
- package/dist/puppeteer-screenshot.d.ts.map +1 -0
- package/dist/puppeteer-screenshot.js.map +1 -0
- package/dist/quality.d.ts +1 -0
- package/dist/quality.js +21 -0
- package/dist/render-frames.d.ts +10 -1
- package/dist/render-frames.js +22 -16
- package/dist/render-media.d.ts +13 -2
- package/dist/render-media.d.ts.map +1 -0
- package/dist/render-media.js +40 -14
- package/dist/render-media.js.map +1 -0
- package/dist/render-still.d.ts +9 -1
- package/dist/render-still.d.ts.map +1 -0
- package/dist/render-still.js +21 -11
- package/dist/render-still.js.map +1 -0
- package/dist/render.d.ts +45 -0
- package/dist/render.d.ts.map +1 -0
- package/dist/render.js +245 -0
- package/dist/render.js.map +1 -0
- package/dist/resolve-asset-src.d.ts.map +1 -0
- package/dist/resolve-asset-src.js.map +1 -0
- package/dist/sample-rate.d.ts.map +1 -0
- package/dist/sample-rate.js.map +1 -0
- package/dist/screenshot-dom-element.d.ts +1 -1
- package/dist/screenshot-dom-element.d.ts.map +1 -0
- package/dist/screenshot-dom-element.js.map +1 -0
- package/dist/screenshot-task.d.ts +1 -2
- package/dist/screenshot-task.d.ts.map +1 -0
- package/dist/screenshot-task.js +34 -19
- package/dist/screenshot-task.js.map +1 -0
- package/dist/seek-to-frame.d.ts.map +1 -0
- package/dist/seek-to-frame.js.map +1 -0
- package/dist/serve-static.d.ts +3 -2
- package/dist/serve-static.d.ts.map +1 -0
- package/dist/serve-static.js +3 -4
- package/dist/serve-static.js.map +1 -0
- package/dist/set-props-and-env.d.ts.map +1 -0
- package/dist/set-props-and-env.js +2 -2
- package/dist/set-props-and-env.js.map +1 -0
- package/dist/stitch-frames-to-video.d.ts +6 -1
- package/dist/stitch-frames-to-video.js +30 -43
- package/dist/stitcher.d.ts +32 -0
- package/dist/stitcher.d.ts.map +1 -0
- package/dist/stitcher.js +204 -0
- package/dist/stitcher.js.map +1 -0
- package/dist/stringify-ffmpeg-filter.d.ts.map +1 -0
- package/dist/stringify-ffmpeg-filter.js +2 -2
- package/dist/stringify-ffmpeg-filter.js.map +1 -0
- package/dist/symbolicate-stacktrace.d.ts.map +1 -0
- package/dist/symbolicate-stacktrace.js +3 -3
- package/dist/symbolicate-stacktrace.js.map +1 -0
- package/dist/tmp-dir.d.ts.map +1 -0
- package/dist/tmp-dir.js.map +1 -0
- package/dist/truthy.d.ts +3 -0
- package/dist/truthy.js +7 -0
- package/dist/types.d.ts +1 -1
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js.map +1 -0
- package/dist/validate-even-dimensions-with-codec.d.ts +1 -1
- package/dist/validate-even-dimensions-with-codec.d.ts.map +1 -0
- package/dist/validate-even-dimensions-with-codec.js +2 -2
- package/dist/validate-even-dimensions-with-codec.js.map +1 -0
- package/dist/validate-every-nth-frame.d.ts +1 -0
- package/dist/validate-every-nth-frame.js +21 -0
- package/dist/validate-ffmpeg.d.ts.map +1 -0
- package/dist/validate-ffmpeg.js +2 -3
- package/dist/validate-ffmpeg.js.map +1 -0
- package/dist/validate-frame.d.ts +1 -0
- package/dist/validate-frame.js +24 -0
- package/dist/validate-opengl-renderer.d.ts +5 -0
- package/dist/validate-opengl-renderer.js +15 -0
- package/dist/validate-output-filename.d.ts +1 -1
- package/dist/validate-puppeteer-timeout.d.ts.map +1 -0
- package/dist/validate-puppeteer-timeout.js.map +1 -0
- package/dist/validate-scale.d.ts.map +1 -0
- package/dist/validate-scale.js.map +1 -0
- package/package.json +3 -3
package/dist/crf.js
ADDED
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validateSelectedCrfAndCodecCombination = exports.getValidCrfRanges = exports.getDefaultCrfForCodec = void 0;
|
|
4
|
+
const is_audio_codec_1 = require("./is-audio-codec");
|
|
5
|
+
const getDefaultCrfForCodec = (codec) => {
|
|
6
|
+
if ((0, is_audio_codec_1.isAudioCodec)(codec)) {
|
|
7
|
+
return 0;
|
|
8
|
+
}
|
|
9
|
+
if (codec === 'h264' || codec === 'h264-mkv') {
|
|
10
|
+
return 18; // FFMPEG default 23
|
|
11
|
+
}
|
|
12
|
+
if (codec === 'h265' || codec === 'gif') {
|
|
13
|
+
return 23; // FFMPEG default 28
|
|
14
|
+
}
|
|
15
|
+
if (codec === 'vp8') {
|
|
16
|
+
return 9; // FFMPEG default 10
|
|
17
|
+
}
|
|
18
|
+
if (codec === 'vp9') {
|
|
19
|
+
return 28; // FFMPEG recommendation 31
|
|
20
|
+
}
|
|
21
|
+
if (codec === 'prores') {
|
|
22
|
+
return 0;
|
|
23
|
+
}
|
|
24
|
+
throw new TypeError(`Got unexpected codec "${codec}"`);
|
|
25
|
+
};
|
|
26
|
+
exports.getDefaultCrfForCodec = getDefaultCrfForCodec;
|
|
27
|
+
const getValidCrfRanges = (codec) => {
|
|
28
|
+
if ((0, is_audio_codec_1.isAudioCodec)(codec)) {
|
|
29
|
+
return [0, 0];
|
|
30
|
+
}
|
|
31
|
+
if (codec === 'prores') {
|
|
32
|
+
return [0, 0];
|
|
33
|
+
}
|
|
34
|
+
if (codec === 'h264' || codec === 'h264-mkv') {
|
|
35
|
+
return [1, 51];
|
|
36
|
+
}
|
|
37
|
+
if (codec === 'h265' || codec === 'gif') {
|
|
38
|
+
return [0, 51];
|
|
39
|
+
}
|
|
40
|
+
if (codec === 'vp8') {
|
|
41
|
+
return [4, 63];
|
|
42
|
+
}
|
|
43
|
+
if (codec === 'vp9') {
|
|
44
|
+
return [0, 63];
|
|
45
|
+
}
|
|
46
|
+
throw new TypeError(`Got unexpected codec "${codec}"`);
|
|
47
|
+
};
|
|
48
|
+
exports.getValidCrfRanges = getValidCrfRanges;
|
|
49
|
+
const validateSelectedCrfAndCodecCombination = (crf, codec) => {
|
|
50
|
+
if (crf === null) {
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
if (typeof crf !== 'number') {
|
|
54
|
+
throw new TypeError('Expected CRF to be a number, but is ' + JSON.stringify(crf));
|
|
55
|
+
}
|
|
56
|
+
const range = (0, exports.getValidCrfRanges)(codec);
|
|
57
|
+
if (crf === 0 && (codec === 'h264' || codec === 'h264-mkv')) {
|
|
58
|
+
throw new TypeError("Setting the CRF to 0 with a H264 codec is not supported anymore because of it's inconsistencies between platforms. Videos with CRF 0 cannot be played on iOS/macOS. 0 is a extreme value with inefficient settings which you probably want. Set CRF to a higher value to fix this error.");
|
|
59
|
+
}
|
|
60
|
+
if (crf < range[0] || crf > range[1]) {
|
|
61
|
+
throw new TypeError(`CRF must be between ${range[0]} and ${range[1]} for codec ${codec}. Passed: ${crf}`);
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
exports.validateSelectedCrfAndCodecCombination = validateSelectedCrfAndCodecCombination;
|
|
@@ -0,0 +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,sBACT,MAAM,WAAW,kBAAkB,CAAC,CAAC;;CAiCxD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
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 @@
|
|
|
1
|
+
{"version":3,"file":"delay-render-embedded-stack.d.ts","sourceRoot":"","sources":["../src/delay-render-embedded-stack.ts"],"names":[],"mappings":"AACA,OAAO,EAEN,wBAAwB,EACxB,MAAM,6BAA6B,CAAC;AAErC,eAAO,MAAM,6BAA6B,YAChC,MAAM,KACb,wBAAwB,EAAE,GAAG,IAY/B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delay-render-embedded-stack.js","sourceRoot":"","sources":["../src/delay-render-embedded-stack.ts"],"names":[],"mappings":";;;AAAA,uCAAmC;AACnC,2EAGqC;AAE9B,MAAM,6BAA6B,GAAG,CAC5C,OAAe,EACqB,EAAE;IACtC,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,oBAAS,CAAC,4BAA4B,CAAC,CAAC;IACtE,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;QACjB,OAAO,IAAI,CAAC;KACZ;IAED,MAAM,GAAG,GAAG,OAAO;SACjB,SAAS,CAAC,KAAK,GAAG,oBAAS,CAAC,4BAA4B,CAAC,MAAM,CAAC;SAChE,IAAI,EAAE,CAAC;IAET,MAAM,MAAM,GAAG,IAAA,sCAAU,EAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3C,OAAO,MAAM,CAAC;AACf,CAAC,CAAC;AAdW,QAAA,6BAA6B,iCAcxC"}
|
|
@@ -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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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"}
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
import type { DownloadMap } from './assets/download-map';
|
|
2
|
+
export declare const ensurePresentationTimestamps: (downloadMap: DownloadMap, src: string) => Promise<string>;
|
|
@@ -6,9 +6,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.ensurePresentationTimestamps = void 0;
|
|
7
7
|
const execa_1 = __importDefault(require("execa"));
|
|
8
8
|
const path_1 = __importDefault(require("path"));
|
|
9
|
-
const remotion_1 = require("remotion");
|
|
10
9
|
const guess_extension_for_media_1 = require("./guess-extension-for-media");
|
|
11
|
-
const
|
|
10
|
+
const truthy_1 = require("./truthy");
|
|
12
11
|
let callbacks = [];
|
|
13
12
|
const getTemporaryOutputName = async (src) => {
|
|
14
13
|
const parts = src.split(path_1.default.sep);
|
|
@@ -20,14 +19,14 @@ const getTemporaryOutputName = async (src) => {
|
|
|
20
19
|
return parts
|
|
21
20
|
.map((p, i) => {
|
|
22
21
|
if (i === parts.length - 1) {
|
|
23
|
-
return [`pts-${p}`, extraExtension].filter(
|
|
22
|
+
return [`pts-${p}`, extraExtension].filter(truthy_1.truthy).join('.');
|
|
24
23
|
}
|
|
25
24
|
return p;
|
|
26
25
|
})
|
|
27
26
|
.join(path_1.default.sep);
|
|
28
27
|
};
|
|
29
|
-
const ensurePresentationTimestamps = async (src) => {
|
|
30
|
-
const elem = ensureFileHasPresentationTimestamp[src];
|
|
28
|
+
const ensurePresentationTimestamps = async (downloadMap, src) => {
|
|
29
|
+
const elem = downloadMap.ensureFileHasPresentationTimestamp[src];
|
|
31
30
|
if ((elem === null || elem === void 0 ? void 0 : elem.type) === 'encoding') {
|
|
32
31
|
return new Promise((resolve) => {
|
|
33
32
|
callbacks.push({
|
|
@@ -39,7 +38,7 @@ const ensurePresentationTimestamps = async (src) => {
|
|
|
39
38
|
if ((elem === null || elem === void 0 ? void 0 : elem.type) === 'done') {
|
|
40
39
|
return elem.src;
|
|
41
40
|
}
|
|
42
|
-
ensureFileHasPresentationTimestamp[src] = { type: 'encoding' };
|
|
41
|
+
downloadMap.ensureFileHasPresentationTimestamp[src] = { type: 'encoding' };
|
|
43
42
|
// If there is no file extension for the video, then we need to tempoa
|
|
44
43
|
const output = await getTemporaryOutputName(src);
|
|
45
44
|
await (0, execa_1.default)('ffmpeg', [
|
|
@@ -61,7 +60,10 @@ const ensurePresentationTimestamps = async (src) => {
|
|
|
61
60
|
}
|
|
62
61
|
return true;
|
|
63
62
|
});
|
|
64
|
-
ensureFileHasPresentationTimestamp[src] = {
|
|
63
|
+
downloadMap.ensureFileHasPresentationTimestamp[src] = {
|
|
64
|
+
type: 'done',
|
|
65
|
+
src: output,
|
|
66
|
+
};
|
|
65
67
|
return output;
|
|
66
68
|
};
|
|
67
69
|
exports.ensurePresentationTimestamps = ensurePresentationTimestamps;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handle-javascript-exception.d.ts","sourceRoot":"","sources":["../../src/error-handling/handle-javascript-exception.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,IAAI,EAAW,MAAM,gBAAgB,CAAC;AAG1D,OAAO,EAAC,sBAAsB,EAAC,MAAM,2BAA2B,CAAC;AAGjE,qBAAa,mBAAoB,SAAQ,KAAK;IAC7C,uBAAuB,EAAE,sBAAsB,EAAE,GAAG,IAAI,CAAC;IACzD,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,EAAE,sBAAsB,EAAE,GAAG,IAAI,CAAC;gBAErC,EACX,OAAO,EACP,uBAAuB,EACvB,KAAK,EACL,IAAI,EACJ,eAAe,GACf,EAAE;QACF,OAAO,EAAE,MAAM,CAAC;QAChB,uBAAuB,EAAE,sBAAsB,EAAE,GAAG,IAAI,CAAC;QACzD,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;QACrB,IAAI,EAAE,MAAM,CAAC;QACb,eAAe,EAAE,sBAAsB,EAAE,GAAG,IAAI,CAAC;KACjD;CAOD;AAmBD,eAAO,MAAM,sBAAsB,YAAa,MAAM,WAOrD,CAAC;AAaF,eAAO,MAAM,yBAAyB;UAK/B,IAAI;WACH,MAAM,GAAG,IAAI;mBACL,KAAK,KAAK,IAAI;gBAmC7B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handle-javascript-exception.js","sourceRoot":"","sources":["../../src/error-handling/handle-javascript-exception.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"symbolicate-error.d.ts","sourceRoot":"","sources":["../../src/error-handling/symbolicate-error.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,mBAAmB,EAAC,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAC,oBAAoB,EAAC,MAAM,yBAAyB,CAAC;AAE7D,eAAO,MAAM,gBAAgB,yBACN,oBAAoB,KACxC,QAAQ,mBAAmB,CAgB7B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"symbolicate-error.js","sourceRoot":"","sources":["../../src/error-handling/symbolicate-error.ts"],"names":[],"mappings":";;;AAAA,sEAAgE;AAChE,+EAAkE;AAG3D,MAAM,gBAAgB,GAAG,KAAK,EACpC,oBAA0C,EACX,EAAE;IACjC,MAAM,EAAC,eAAe,EAAE,UAAU,EAAC,GAAG,oBAAoB,CAAC;IAC3D,MAAM,CAAC,eAAe,EAAE,iBAAiB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC9D,UAAU,CAAC,CAAC,CAAC,IAAA,8CAAqB,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI;QACrD,eAAe,CAAC,CAAC,CAAC,IAAA,8CAAqB,EAAC,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI;KAC/D,CAAC,CAAC;IAEH,MAAM,eAAe,GAAG,IAAI,iDAAmB,CAAC;QAC/C,OAAO,EAAE,oBAAoB,CAAC,OAAO;QACrC,uBAAuB,EAAE,eAAe;QACxC,KAAK,EAAE,oBAAoB,CAAC,KAAK;QACjC,IAAI,EAAE,oBAAoB,CAAC,IAAI;QAC/B,eAAe,EAAE,iBAAiB;KAClC,CAAC,CAAC;IAEH,OAAO,eAAe,CAAC;AACxB,CAAC,CAAC;AAlBW,QAAA,gBAAgB,oBAkB3B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"symbolicateable-error.d.ts","sourceRoot":"","sources":["../../src/error-handling/symbolicateable-error.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAC,wBAAwB,EAAC,MAAM,8BAA8B,CAAC;AAEtE,qBAAa,oBAAqB,SAAQ,KAAK;IAC9C,UAAU,EAAE,wBAAwB,EAAE,GAAG,IAAI,CAAC;IAC9C,eAAe,EAAE,wBAAwB,EAAE,GAAG,IAAI,CAAC;IACnD,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;gBAET,EACX,OAAO,EACP,KAAK,EACL,UAAU,EACV,KAAK,EACL,IAAI,GACJ,EAAE;QACF,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;QAC1B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;QACrB,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,wBAAwB,EAAE,GAAG,IAAI,CAAC;KAC9C;CAQD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"symbolicateable-error.js","sourceRoot":"","sources":["../../src/error-handling/symbolicateable-error.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,gFAA6E;AAG7E,MAAa,oBAAqB,SAAQ,KAAK;IAK9C,YAAY,EACX,OAAO,EACP,KAAK,EACL,UAAU,EACV,KAAK,EACL,IAAI,GAOJ;QACA,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,CAAC,CAAC,IAAA,2DAA6B,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5E,CAAC;CACD;AAzBD,oDAyBC"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { OffthreadVideoImageFormat } from 'remotion';
|
|
2
|
+
import type { DownloadMap } from './assets/download-map';
|
|
3
|
+
import type { FfmpegExecutable } from './ffmpeg-executable';
|
|
2
4
|
import type { LastFrameOptions } from './last-frame-from-video-cache';
|
|
3
5
|
export declare const getLastFrameOfVideo: (options: LastFrameOptions) => Promise<Buffer>;
|
|
4
6
|
declare type Options = {
|
|
@@ -7,6 +9,7 @@ declare type Options = {
|
|
|
7
9
|
ffmpegExecutable: FfmpegExecutable;
|
|
8
10
|
ffprobeExecutable: FfmpegExecutable;
|
|
9
11
|
imageFormat: OffthreadVideoImageFormat;
|
|
12
|
+
downloadMap: DownloadMap;
|
|
10
13
|
};
|
|
11
14
|
export declare const extractFrameFromVideo: (options: Options) => Promise<Buffer>;
|
|
12
15
|
export {};
|
|
@@ -5,7 +5,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.extractFrameFromVideo = exports.getLastFrameOfVideo = void 0;
|
|
7
7
|
const execa_1 = __importDefault(require("execa"));
|
|
8
|
-
const remotion_1 = require("remotion");
|
|
9
8
|
const get_video_stream_duration_1 = require("./assets/get-video-stream-duration");
|
|
10
9
|
const ensure_presentation_timestamp_1 = require("./ensure-presentation-timestamp");
|
|
11
10
|
const frame_to_ffmpeg_timestamp_1 = require("./frame-to-ffmpeg-timestamp");
|
|
@@ -13,6 +12,8 @@ const get_video_info_1 = require("./get-video-info");
|
|
|
13
12
|
const is_beyond_last_frame_1 = require("./is-beyond-last-frame");
|
|
14
13
|
const last_frame_from_video_cache_1 = require("./last-frame-from-video-cache");
|
|
15
14
|
const p_limit_1 = require("./p-limit");
|
|
15
|
+
const perf_1 = require("./perf");
|
|
16
|
+
const truthy_1 = require("./truthy");
|
|
16
17
|
const lastFrameLimit = (0, p_limit_1.pLimit)(1);
|
|
17
18
|
const mainLimit = (0, p_limit_1.pLimit)(5);
|
|
18
19
|
const determineVcodecFfmepgFlags = (vcodecFlag) => {
|
|
@@ -21,7 +22,7 @@ const determineVcodecFfmepgFlags = (vcodecFlag) => {
|
|
|
21
22
|
vcodecFlag === 'vp9' ? 'libvpx-vp9' : null,
|
|
22
23
|
vcodecFlag === 'vp8' ? '-vcodec' : null,
|
|
23
24
|
vcodecFlag === 'vp8' ? 'libvpx' : null,
|
|
24
|
-
].filter(
|
|
25
|
+
].filter(truthy_1.truthy);
|
|
25
26
|
};
|
|
26
27
|
const determineResizeParams = (needsResize) => {
|
|
27
28
|
if (needsResize === null) {
|
|
@@ -48,7 +49,7 @@ const getFrameOfVideoSlow = async ({ src, timestamp, ffmpegExecutable, imageForm
|
|
|
48
49
|
'image2pipe',
|
|
49
50
|
...determineResizeParams(needsResize),
|
|
50
51
|
'-',
|
|
51
|
-
].filter(
|
|
52
|
+
].filter(truthy_1.truthy);
|
|
52
53
|
const { stdout, stderr } = (0, execa_1.default)(ffmpegExecutable !== null && ffmpegExecutable !== void 0 ? ffmpegExecutable : 'ffmpeg', command);
|
|
53
54
|
if (!stderr) {
|
|
54
55
|
throw new Error('unexpectedly did not get stderr');
|
|
@@ -76,12 +77,12 @@ const getFrameOfVideoSlow = async ({ src, timestamp, ffmpegExecutable, imageForm
|
|
|
76
77
|
return stdoutBuffer;
|
|
77
78
|
};
|
|
78
79
|
const getLastFrameOfVideoFastUnlimited = async (options) => {
|
|
79
|
-
const { ffmpegExecutable, ffprobeExecutable, offset, src } = options;
|
|
80
|
+
const { ffmpegExecutable, ffprobeExecutable, offset, src, downloadMap } = options;
|
|
80
81
|
const fromCache = (0, last_frame_from_video_cache_1.getLastFrameFromCache)({ ...options, offset: 0 });
|
|
81
82
|
if (fromCache) {
|
|
82
83
|
return fromCache;
|
|
83
84
|
}
|
|
84
|
-
const { duration } = await (0, get_video_stream_duration_1.getVideoStreamDuration)(src, ffprobeExecutable);
|
|
85
|
+
const { duration, fps } = await (0, get_video_stream_duration_1.getVideoStreamDuration)(downloadMap, src, ffprobeExecutable);
|
|
85
86
|
if (duration === null) {
|
|
86
87
|
throw new Error(`Could not determine the duration of ${src} using FFMPEG. The file is not supported.`);
|
|
87
88
|
}
|
|
@@ -96,7 +97,7 @@ const getLastFrameOfVideoFastUnlimited = async (options) => {
|
|
|
96
97
|
});
|
|
97
98
|
return last;
|
|
98
99
|
}
|
|
99
|
-
const actualOffset = `${duration * 1000 - offset
|
|
100
|
+
const actualOffset = `${duration * 1000 - offset}ms`;
|
|
100
101
|
const { stdout, stderr } = (0, execa_1.default)(ffmpegExecutable !== null && ffmpegExecutable !== void 0 ? ffmpegExecutable : 'ffmpeg', [
|
|
101
102
|
'-ss',
|
|
102
103
|
actualOffset,
|
|
@@ -111,7 +112,7 @@ const getLastFrameOfVideoFastUnlimited = async (options) => {
|
|
|
111
112
|
'image2pipe',
|
|
112
113
|
...determineResizeParams(options.needsResize),
|
|
113
114
|
'-',
|
|
114
|
-
].filter(
|
|
115
|
+
].filter(truthy_1.truthy));
|
|
115
116
|
if (!stderr) {
|
|
116
117
|
throw new Error('unexpectedly did not get stderr');
|
|
117
118
|
}
|
|
@@ -141,12 +142,14 @@ const getLastFrameOfVideoFastUnlimited = async (options) => {
|
|
|
141
142
|
if (isEmpty) {
|
|
142
143
|
const unlimited = await getLastFrameOfVideoFastUnlimited({
|
|
143
144
|
ffmpegExecutable,
|
|
144
|
-
|
|
145
|
+
// Decrement in 10ms increments, or 1 frame (e.g. fps = 25 --> 40ms)
|
|
146
|
+
offset: offset + 1000 / (fps === null ? 10 : fps),
|
|
145
147
|
src,
|
|
146
148
|
ffprobeExecutable,
|
|
147
149
|
imageFormat: options.imageFormat,
|
|
148
150
|
specialVCodecForTransparency: options.specialVCodecForTransparency,
|
|
149
151
|
needsResize: options.needsResize,
|
|
152
|
+
downloadMap: options.downloadMap,
|
|
150
153
|
});
|
|
151
154
|
return unlimited;
|
|
152
155
|
}
|
|
@@ -158,11 +161,11 @@ const getLastFrameOfVideo = async (options) => {
|
|
|
158
161
|
return result;
|
|
159
162
|
};
|
|
160
163
|
exports.getLastFrameOfVideo = getLastFrameOfVideo;
|
|
161
|
-
const extractFrameFromVideoFn = async ({ time, ffmpegExecutable, ffprobeExecutable, imageFormat, ...options }) => {
|
|
164
|
+
const extractFrameFromVideoFn = async ({ time, ffmpegExecutable, ffprobeExecutable, imageFormat, downloadMap, ...options }) => {
|
|
162
165
|
// We make a new copy of the video only for video because the conversion may affect
|
|
163
166
|
// audio rendering, so we work with 2 different files
|
|
164
|
-
const src = await (0, ensure_presentation_timestamp_1.ensurePresentationTimestamps)(options.src);
|
|
165
|
-
const { specialVcodec, needsResize } = await (0, get_video_info_1.getVideoInfo)(src, ffprobeExecutable);
|
|
167
|
+
const src = await (0, ensure_presentation_timestamp_1.ensurePresentationTimestamps)(downloadMap, options.src);
|
|
168
|
+
const { specialVcodec, needsResize } = await (0, get_video_info_1.getVideoInfo)(downloadMap, src, ffprobeExecutable);
|
|
166
169
|
if (specialVcodec === 'vp8') {
|
|
167
170
|
return getFrameOfVideoSlow({
|
|
168
171
|
ffmpegExecutable,
|
|
@@ -173,7 +176,7 @@ const extractFrameFromVideoFn = async ({ time, ffmpegExecutable, ffprobeExecutab
|
|
|
173
176
|
needsResize,
|
|
174
177
|
});
|
|
175
178
|
}
|
|
176
|
-
if ((0, is_beyond_last_frame_1.isBeyondLastFrame)(src, time)) {
|
|
179
|
+
if ((0, is_beyond_last_frame_1.isBeyondLastFrame)(downloadMap, src, time)) {
|
|
177
180
|
const lastFrame = await (0, exports.getLastFrameOfVideo)({
|
|
178
181
|
ffmpegExecutable,
|
|
179
182
|
ffprobeExecutable,
|
|
@@ -182,6 +185,7 @@ const extractFrameFromVideoFn = async ({ time, ffmpegExecutable, ffprobeExecutab
|
|
|
182
185
|
imageFormat,
|
|
183
186
|
specialVCodecForTransparency: specialVcodec,
|
|
184
187
|
needsResize,
|
|
188
|
+
downloadMap,
|
|
185
189
|
});
|
|
186
190
|
return lastFrame;
|
|
187
191
|
}
|
|
@@ -200,7 +204,7 @@ const extractFrameFromVideoFn = async ({ time, ffmpegExecutable, ffprobeExecutab
|
|
|
200
204
|
imageFormat === 'jpeg' ? 'mjpeg' : 'png',
|
|
201
205
|
...determineResizeParams(needsResize),
|
|
202
206
|
'-',
|
|
203
|
-
].filter(
|
|
207
|
+
].filter(truthy_1.truthy), {
|
|
204
208
|
buffer: false,
|
|
205
209
|
});
|
|
206
210
|
if (!stderr) {
|
|
@@ -226,7 +230,7 @@ const extractFrameFromVideoFn = async ({ time, ffmpegExecutable, ffprobeExecutab
|
|
|
226
230
|
stdoutBuffer,
|
|
227
231
|
]);
|
|
228
232
|
if (stderrStr.includes('Output file is empty')) {
|
|
229
|
-
(0, is_beyond_last_frame_1.markAsBeyondLastFrame)(src, time);
|
|
233
|
+
(0, is_beyond_last_frame_1.markAsBeyondLastFrame)(downloadMap, src, time);
|
|
230
234
|
const last = await (0, exports.getLastFrameOfVideo)({
|
|
231
235
|
ffmpegExecutable,
|
|
232
236
|
ffprobeExecutable,
|
|
@@ -235,15 +239,16 @@ const extractFrameFromVideoFn = async ({ time, ffmpegExecutable, ffprobeExecutab
|
|
|
235
239
|
imageFormat,
|
|
236
240
|
specialVCodecForTransparency: specialVcodec,
|
|
237
241
|
needsResize,
|
|
242
|
+
downloadMap,
|
|
238
243
|
});
|
|
239
244
|
return last;
|
|
240
245
|
}
|
|
241
246
|
return stdOut;
|
|
242
247
|
};
|
|
243
248
|
const extractFrameFromVideo = async (options) => {
|
|
244
|
-
const perf =
|
|
249
|
+
const perf = (0, perf_1.startPerfMeasure)('extract-frame');
|
|
245
250
|
const res = await mainLimit(extractFrameFromVideoFn, options);
|
|
246
|
-
|
|
251
|
+
(0, perf_1.stopPerfMeasure)(perf);
|
|
247
252
|
return res;
|
|
248
253
|
};
|
|
249
254
|
exports.extractFrameFromVideo = extractFrameFromVideo;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare type FfmpegExecutable = string | null;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
import type { DownloadMap } from './assets/download-map';
|
|
2
|
+
export declare const makeFfmpegFilterFile: (complexFilter: string, downloadMap: DownloadMap) => Promise<{
|
|
2
3
|
file: string;
|
|
3
4
|
cleanup: () => void;
|
|
4
5
|
}>;
|
|
@@ -8,16 +8,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
8
8
|
exports.makeFfmpegFilterFile = void 0;
|
|
9
9
|
const fs_1 = __importDefault(require("fs"));
|
|
10
10
|
const path_1 = __importDefault(require("path"));
|
|
11
|
-
const
|
|
12
|
-
const
|
|
13
|
-
const
|
|
14
|
-
const tempPath = (0, tmp_dir_1.tmpDir)('remotion-complex-filter');
|
|
15
|
-
const filterFile = path_1.default.join(tempPath, 'complex-filter.txt');
|
|
11
|
+
const makeFfmpegFilterFile = async (complexFilter, downloadMap) => {
|
|
12
|
+
const random = Math.random().toString().replace('.', '');
|
|
13
|
+
const filterFile = path_1.default.join(downloadMap.complexFilter, 'complex-filter-' + random + '.txt');
|
|
16
14
|
await fs_1.default.promises.writeFile(filterFile, complexFilter);
|
|
17
15
|
return {
|
|
18
16
|
file: filterFile,
|
|
19
17
|
cleanup: () => {
|
|
20
|
-
|
|
18
|
+
fs_1.default.unlinkSync(filterFile);
|
|
21
19
|
},
|
|
22
20
|
};
|
|
23
21
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ffmpeg-flags.d.ts","sourceRoot":"","sources":["../src/ffmpeg-flags.ts"],"names":[],"mappings":"AAKA,oBAAY,aAAa,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;AAE5D,eAAO,MAAM,kBAAkB,YAAmB;IACjD,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC,oBAcA,CAAC;AAEF,eAAO,MAAM,gBAAgB;sBAKV,MAAM,GAAG,IAAI;aACtB,YAAY,GAAG,gBAAgB,GAAG,eAAe;cAChD,OAAO;sBAajB,CAAC;AAEF,eAAO,MAAM,kBAAkB,cAAe,MAAM,KAAG,aAStD,CAAC;AAEF,eAAO,MAAM,gBAAgB,YAAmB;IAC/C,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC,KAAG,QAAQ,aAAa,CAKxB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ffmpeg-flags.js","sourceRoot":"","sources":["../src/ffmpeg-flags.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,uDAA+C;AAE/C,IAAI,WAAW,GAAkB,IAAI,CAAC;AAI/B,MAAM,kBAAkB,GAAG,KAAK,EAAE,OAExC,EAAE,EAAE;;IACJ,IAAI,WAAW,KAAK,IAAI,EAAE;QACzB,OAAO,WAAW,CAAC;KACnB;IAED,MAAM,IAAI,GAAG,MAAM,IAAA,eAAK,EACvB,MAAA,OAAO,CAAC,gBAAgB,mCAAI,QAAQ,EACpC,CAAC,YAAY,CAAC,EACd;QACC,MAAM,EAAE,KAAK;KACb,CACD,CAAC;IACF,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC;IAC1B,OAAO,WAAW,CAAC;AACpB,CAAC,CAAC;AAhBW,QAAA,kBAAkB,sBAgB7B;AAEK,MAAM,gBAAgB,GAAG,KAAK,EAAE,EACtC,gBAAgB,EAChB,OAAO,EACP,QAAQ,GAKR,EAAE,EAAE;IACJ,IAAI,QAAQ,EAAE;QACb,4DAA4D;QAC5D,OAAO,IAAI,CAAC;KACZ;IAED,IAAI,CAAC,CAAC,MAAM,IAAA,8BAAY,EAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC,EAAE;QACtD,OAAO,KAAK,CAAC;KACb;IAED,MAAM,MAAM,GAAG,MAAM,IAAA,0BAAkB,EAAC,EAAC,gBAAgB,EAAC,CAAC,CAAC;IAC5D,OAAO,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;AACjC,CAAC,CAAC;AApBW,QAAA,gBAAgB,oBAoB3B;AAEK,MAAM,kBAAkB,GAAG,CAAC,SAAiB,EAAiB,EAAE;;IACtE,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAC5B,gDAAgD,CAChD,CAAC;IACF,IAAI,CAAC,KAAK,EAAE;QACX,OAAO,IAAI,CAAC;KACZ;IAED,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,MAAA,KAAK,CAAC,CAAC,CAAC,mCAAI,CAAC,CAAC,CAAC,CAAC;AACpE,CAAC,CAAC;AATW,QAAA,kBAAkB,sBAS7B;AAEK,MAAM,gBAAgB,GAAG,KAAK,EAAE,OAEtC,EAA0B,EAAE;IAC5B,MAAM,SAAS,GAAG,MAAM,IAAA,0BAAkB,EAAC;QAC1C,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;KAC1C,CAAC,CAAC;IACH,OAAO,IAAA,0BAAkB,EAAC,SAAS,CAAC,CAAC;AACtC,CAAC,CAAC;AAPW,QAAA,gBAAgB,oBAO3B"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validateFrameRange = void 0;
|
|
4
|
+
const validateFrameRange = (frameRange) => {
|
|
5
|
+
if (frameRange === null) {
|
|
6
|
+
return;
|
|
7
|
+
}
|
|
8
|
+
if (typeof frameRange === 'number') {
|
|
9
|
+
if (frameRange < 0) {
|
|
10
|
+
throw new TypeError('Frame must be a non-negative number, got ' + frameRange);
|
|
11
|
+
}
|
|
12
|
+
if (!Number.isFinite(frameRange)) {
|
|
13
|
+
throw new TypeError('Frame must be a finite number, got ' + frameRange);
|
|
14
|
+
}
|
|
15
|
+
if (!Number.isInteger(frameRange)) {
|
|
16
|
+
throw new Error(`Frame must be an integer, but got a float (${frameRange})`);
|
|
17
|
+
}
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
if (Array.isArray(frameRange)) {
|
|
21
|
+
if (frameRange.length !== 2) {
|
|
22
|
+
throw new TypeError('Frame range must be a tuple, got an array with length ' +
|
|
23
|
+
frameRange.length);
|
|
24
|
+
}
|
|
25
|
+
for (const value of frameRange) {
|
|
26
|
+
if (typeof value !== 'number') {
|
|
27
|
+
throw new Error(`Each value of frame range must be a number, but got ${typeof value} (${JSON.stringify(value)})`);
|
|
28
|
+
}
|
|
29
|
+
if (!Number.isFinite(value)) {
|
|
30
|
+
throw new TypeError('Each value of frame range must be finite, but got ' + value);
|
|
31
|
+
}
|
|
32
|
+
if (!Number.isInteger(value)) {
|
|
33
|
+
throw new Error(`Each value of frame range must be an integer, but got a float (${value})`);
|
|
34
|
+
}
|
|
35
|
+
if (value < 0) {
|
|
36
|
+
throw new Error(`Each value of frame range must be non-negative, but got ${value}`);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
const [first, second] = frameRange;
|
|
40
|
+
if (second < first) {
|
|
41
|
+
throw new Error('The second value of frame range must be not smaller than the first one, but got ' +
|
|
42
|
+
frameRange.join('-'));
|
|
43
|
+
}
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
throw new TypeError('Frame range must be a number or a tuple of numbers, but got object of type ' +
|
|
47
|
+
typeof frameRange);
|
|
48
|
+
};
|
|
49
|
+
exports.validateFrameRange = validateFrameRange;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import type { Codec } from '
|
|
1
|
+
import type { Codec } from './codec';
|
|
2
2
|
export declare const getAudioCodecName: (codec: Codec) => string | null;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-audio-codec-name.d.ts","sourceRoot":"","sources":["../src/get-audio-codec-name.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAY,MAAM,UAAU,CAAC;AAE1C,eAAO,MAAM,iBAAiB,UAAW,KAAK,KAAG,MAAM,GAAG,IA4BzD,CAAC"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getAudioCodecName = void 0;
|
|
4
|
-
const
|
|
4
|
+
const is_audio_codec_1 = require("./is-audio-codec");
|
|
5
5
|
const getAudioCodecName = (codec) => {
|
|
6
|
-
if (!
|
|
6
|
+
if (!(0, is_audio_codec_1.isAudioCodec)(codec)) {
|
|
7
7
|
// The mkv container supports WAV, but MP4 does only support
|
|
8
8
|
// AAC. Choose MKV codec for better quality because we can put in lossless audio
|
|
9
9
|
if (codec === 'h264-mkv') {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-audio-codec-name.js","sourceRoot":"","sources":["../src/get-audio-codec-name.ts"],"names":[],"mappings":";;;AAAA,uCAA0C;AAEnC,MAAM,iBAAiB,GAAG,CAAC,KAAY,EAAiB,EAAE;IAChE,IAAI,CAAC,oBAAS,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE;QACnC,4DAA4D;QAC5D,gFAAgF;QAChF,IAAI,KAAK,KAAK,UAAU,EAAE;YACzB,OAAO,WAAW,CAAC;SACnB;QAED,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,KAAK,EAAE;YACvC,OAAO,SAAS,CAAC;SACjB;QAED,OAAO,KAAK,CAAC;KACb;IAED,IAAI,KAAK,KAAK,KAAK,EAAE;QACpB,OAAO,KAAK,CAAC;KACb;IAED,IAAI,KAAK,KAAK,KAAK,EAAE;QACpB,OAAO,YAAY,CAAC;KACpB;IAED,IAAI,KAAK,KAAK,KAAK,EAAE;QACpB,OAAO,WAAW,CAAC;KACnB;IAED,OAAO,IAAI,CAAC;AACb,CAAC,CAAC;AA5BW,QAAA,iBAAiB,qBA4B5B"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { BrowserExecutable } from '
|
|
1
|
+
import type { BrowserExecutable } from './browser-executable';
|
|
2
2
|
import type { Browser } from './browser/Browser';
|
|
3
3
|
import type { Page } from './browser/BrowserPage';
|
|
4
4
|
import type { ChromiumOptions } from './open-browser';
|
|
@@ -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;AACtD,OAAO,EAAC,eAAe,EAAc,MAAM,gBAAgB,CAAC;AAE5D,eAAO,MAAM,mBAAmB;sBAKb,OAAO,GAAG,SAAS;uBAClB,iBAAiB,GAAG,IAAI;qBAC1B,eAAe;MAC7B,QAAQ;IACX,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,IAAI,EAAE,IAAI,CAAC;CACX,CA8BA,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getPageAndCleanupFn = void 0;
|
|
4
|
-
const
|
|
4
|
+
const browser_1 = require("./browser");
|
|
5
5
|
const open_browser_1 = require("./open-browser");
|
|
6
6
|
const getPageAndCleanupFn = async ({ passedInInstance, browserExecutable, chromiumOptions, }) => {
|
|
7
7
|
if (passedInInstance) {
|
|
@@ -17,7 +17,7 @@ const getPageAndCleanupFn = async ({ passedInInstance, browserExecutable, chromi
|
|
|
17
17
|
},
|
|
18
18
|
};
|
|
19
19
|
}
|
|
20
|
-
const browserInstance = await (0, open_browser_1.openBrowser)(
|
|
20
|
+
const browserInstance = await (0, open_browser_1.openBrowser)(browser_1.DEFAULT_BROWSER, {
|
|
21
21
|
browserExecutable,
|
|
22
22
|
chromiumOptions,
|
|
23
23
|
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-browser-instance.js","sourceRoot":"","sources":["../src/get-browser-instance.ts"],"names":[],"mappings":";;;AACA,uCAAsD;AACtD,iDAA4D;AAErD,MAAM,mBAAmB,GAAG,KAAK,EAAE,EACzC,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,GAKf,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;QACjB,eAAe;KACf,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;AAzCW,QAAA,mBAAmB,uBAyC9B"}
|
package/dist/get-codec-name.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import type { Codec } from '
|
|
1
|
+
import type { Codec } from './codec';
|
|
2
2
|
export declare const getCodecName: (codec: Codec) => string | null;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-codec-name.d.ts","sourceRoot":"","sources":["../src/get-codec-name.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAY,MAAM,UAAU,CAAC;AAE1C,eAAO,MAAM,YAAY,UAAW,KAAK,KAAG,MAAM,GAAG,IA0BpD,CAAC"}
|
package/dist/get-codec-name.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getCodecName = void 0;
|
|
4
|
-
const
|
|
4
|
+
const is_audio_codec_1 = require("./is-audio-codec");
|
|
5
5
|
const getCodecName = (codec) => {
|
|
6
|
-
if (
|
|
6
|
+
if ((0, is_audio_codec_1.isAudioCodec)(codec)) {
|
|
7
7
|
return null;
|
|
8
8
|
}
|
|
9
9
|
if (codec === 'h264' || codec === 'h264-mkv') {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-codec-name.js","sourceRoot":"","sources":["../src/get-codec-name.ts"],"names":[],"mappings":";;;AAAA,uCAA0C;AAEnC,MAAM,YAAY,GAAG,CAAC,KAAY,EAAiB,EAAE;IAC3D,IAAI,oBAAS,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE;QAClC,OAAO,IAAI,CAAC;KACZ;IAED,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,UAAU,EAAE;QAC7C,OAAO,SAAS,CAAC;KACjB;IAED,IAAI,KAAK,KAAK,MAAM,EAAE;QACrB,OAAO,SAAS,CAAC;KACjB;IAED,IAAI,KAAK,KAAK,KAAK,EAAE;QACpB,OAAO,QAAQ,CAAC;KAChB;IAED,IAAI,KAAK,KAAK,KAAK,EAAE;QACpB,OAAO,YAAY,CAAC;KACpB;IAED,IAAI,KAAK,KAAK,QAAQ,EAAE;QACvB,OAAO,WAAW,CAAC;KACnB;IAED,MAAM,IAAI,SAAS,CAAC,gCAAgC,KAAK,EAAE,CAAC,CAAC;AAC9D,CAAC,CAAC;AA1BW,QAAA,YAAY,gBA0BvB"}
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { TCompMetadata } from 'remotion';
|
|
2
|
+
import type { DownloadMap } from './assets/download-map';
|
|
3
|
+
import type { BrowserExecutable } from './browser-executable';
|
|
2
4
|
import type { BrowserLog } from './browser-log';
|
|
3
5
|
import type { Browser } from './browser/Browser';
|
|
6
|
+
import type { FfmpegExecutable } from './ffmpeg-executable';
|
|
4
7
|
import type { ChromiumOptions } from './open-browser';
|
|
5
8
|
declare type GetCompositionsConfig = {
|
|
6
9
|
inputProps?: object | null;
|
|
@@ -13,6 +16,10 @@ declare type GetCompositionsConfig = {
|
|
|
13
16
|
ffmpegExecutable?: FfmpegExecutable;
|
|
14
17
|
ffprobeExecutable?: FfmpegExecutable;
|
|
15
18
|
port?: number | null;
|
|
19
|
+
/**
|
|
20
|
+
* @deprecated Only for Remotion internal usage
|
|
21
|
+
*/
|
|
22
|
+
downloadMap?: DownloadMap;
|
|
16
23
|
};
|
|
17
24
|
export declare const getCompositions: (serveUrlOrWebpackUrl: string, config?: GetCompositionsConfig) => Promise<TCompMetadata[]>;
|
|
18
25
|
export {};
|
|
@@ -0,0 +1 @@
|
|
|
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;AAGzC,OAAO,EAAC,eAAe,EAAC,MAAM,gBAAgB,CAAC;AAM/C,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;IAC/B,eAAe,CAAC,EAAE,eAAe,CAAC;CAClC,CAAC;AAoDF,eAAO,MAAM,eAAe,yBACL,MAAM,yEA4B5B,CAAC"}
|