@remotion/renderer 4.0.0-lambda.3 → 4.0.0-newpaths.13
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/LICENSE.md +8 -8
- package/README.md +47 -0
- package/dist/assets/calculate-asset-positions.d.ts +2 -2
- package/dist/assets/calculate-asset-positions.js +1 -0
- package/dist/assets/calculate-atempo.d.ts +0 -0
- package/dist/assets/calculate-atempo.js +0 -0
- package/dist/assets/convert-assets-to-file-urls.d.ts +5 -4
- package/dist/assets/convert-assets-to-file-urls.js +2 -2
- package/dist/assets/download-and-map-assets-to-file.d.ts +16 -12
- package/dist/assets/download-and-map-assets-to-file.js +145 -65
- package/dist/assets/download-file.d.ts +13 -6
- package/dist/assets/download-file.js +64 -8
- package/dist/assets/download-map.d.ts +69 -0
- package/dist/assets/download-map.js +77 -0
- package/dist/assets/ffmpeg-volume-expression.d.ts +3 -3
- package/dist/assets/ffmpeg-volume-expression.js +6 -5
- package/dist/assets/flatten-volume-array.d.ts +1 -1
- package/dist/assets/flatten-volume-array.js +0 -0
- package/dist/assets/get-audio-channels.d.ts +3 -7
- package/dist/assets/get-audio-channels.js +8 -8
- package/dist/assets/get-video-stream-duration.d.ts +9 -0
- package/dist/assets/get-video-stream-duration.js +71 -0
- package/dist/assets/read-file.d.ts +0 -0
- package/dist/assets/read-file.js +2 -1
- package/dist/assets/round-volume-to-avoid-stack-overflow.d.ts +0 -0
- package/dist/assets/round-volume-to-avoid-stack-overflow.js +0 -0
- package/dist/assets/sanitize-filename.d.ts +0 -0
- package/dist/assets/sanitize-filename.js +0 -0
- package/dist/assets/sanitize-filepath.d.ts +0 -0
- package/dist/assets/sanitize-filepath.js +0 -0
- package/dist/assets/truncate-utf8-bytes.d.ts +0 -0
- package/dist/assets/truncate-utf8-bytes.js +0 -0
- package/dist/assets/types.d.ts +2 -1
- package/dist/assets/types.js +0 -0
- package/dist/browser/Browser.d.ts +13 -160
- package/dist/browser/Browser.js +19 -200
- package/dist/browser/BrowserConnector.d.ts +1 -8
- package/dist/browser/BrowserConnector.js +0 -32
- package/dist/browser/BrowserFetcher.d.ts +2 -1
- package/dist/browser/BrowserFetcher.js +27 -26
- package/dist/browser/{page.d.ts → BrowserPage.d.ts} +16 -14
- package/dist/browser/{page.js → BrowserPage.js} +24 -21
- package/dist/browser/BrowserRunner.d.ts +2 -5
- package/dist/browser/BrowserRunner.js +29 -72
- package/dist/browser/Connection.d.ts +7 -14
- package/dist/browser/Connection.js +6 -26
- package/dist/browser/ConsoleMessage.d.ts +4 -28
- package/dist/browser/ConsoleMessage.js +5 -32
- package/dist/browser/DOMWorld.d.ts +11 -8
- package/dist/browser/DOMWorld.js +20 -21
- package/dist/browser/Errors.d.ts +0 -0
- package/dist/browser/Errors.js +0 -0
- package/dist/browser/EvalTypes.d.ts +1 -1
- package/dist/browser/EvalTypes.js +0 -0
- package/dist/browser/EventEmitter.d.ts +1 -48
- package/dist/browser/EventEmitter.js +0 -49
- package/dist/browser/ExecutionContext.d.ts +8 -9
- package/dist/browser/ExecutionContext.js +0 -16
- package/dist/browser/FrameManager.d.ts +11 -16
- package/dist/browser/FrameManager.js +3 -22
- package/dist/browser/HTTPRequest.d.ts +4 -18
- package/dist/browser/HTTPRequest.js +3 -48
- package/dist/browser/HTTPResponse.d.ts +2 -81
- package/dist/browser/HTTPResponse.js +18 -173
- package/dist/browser/JSHandle.d.ts +7 -8
- package/dist/browser/JSHandle.js +0 -3
- package/dist/browser/LaunchOptions.d.ts +2 -86
- package/dist/browser/LaunchOptions.js +0 -0
- package/dist/browser/Launcher.d.ts +9 -3
- package/dist/browser/Launcher.js +13 -471
- package/dist/browser/LifecycleWatcher.d.ts +4 -4
- package/dist/browser/LifecycleWatcher.js +4 -17
- package/dist/browser/NetworkEventManager.d.ts +10 -12
- package/dist/browser/NetworkEventManager.js +0 -47
- package/dist/browser/NetworkManager.d.ts +3 -5
- package/dist/browser/NetworkManager.js +6 -59
- package/dist/browser/NodeWebSocketTransport.d.ts +10 -4
- package/dist/browser/NodeWebSocketTransport.js +4 -7
- package/dist/browser/Product.d.ts +0 -0
- package/dist/browser/Product.js +0 -0
- package/dist/browser/PuppeteerNode.d.ts +7 -59
- package/dist/browser/PuppeteerNode.js +5 -74
- package/dist/browser/PuppeteerViewport.d.ts +0 -0
- package/dist/browser/PuppeteerViewport.js +0 -0
- package/dist/browser/ScreenshotOptions.d.ts +0 -14
- package/dist/browser/ScreenshotOptions.js +0 -1
- package/dist/browser/Target.d.ts +8 -8
- package/dist/browser/Target.js +2 -2
- package/dist/browser/TaskQueue.d.ts +0 -0
- package/dist/browser/TaskQueue.js +0 -0
- package/dist/browser/TimeoutSettings.d.ts +1 -0
- package/dist/browser/TimeoutSettings.js +4 -4
- package/dist/browser/assert.d.ts +0 -20
- package/dist/browser/assert.js +0 -20
- package/dist/browser/create-browser-fetcher.d.ts +1 -1
- package/dist/browser/create-browser-fetcher.js +5 -68
- package/dist/browser/devtools-commands.d.ts +270 -0
- package/dist/browser/devtools-commands.js +2 -0
- package/dist/browser/devtools-types.d.ts +1126 -0
- package/dist/browser/devtools-types.js +2 -0
- package/dist/browser/get-download-destination.d.ts +0 -0
- package/dist/browser/get-download-destination.js +0 -0
- package/dist/browser/is-target-closed-err.d.ts +1 -0
- package/dist/browser/is-target-closed-err.js +9 -0
- package/dist/browser/mitt/index.d.ts +0 -0
- package/dist/browser/mitt/index.js +0 -0
- package/dist/browser/node.d.ts +0 -0
- package/dist/browser/node.js +0 -0
- package/dist/browser/revisions.d.ts +0 -1
- package/dist/browser/revisions.js +0 -1
- package/dist/browser/util.d.ts +8 -7
- package/dist/browser/util.js +11 -3
- package/dist/browser-executable.d.ts +1 -0
- package/dist/{assets/cleanup-assets.js → browser-executable.js} +0 -0
- package/dist/browser-log.d.ts +1 -1
- package/dist/browser-log.js +0 -0
- package/dist/browser.d.ts +2 -0
- package/dist/browser.js +4 -0
- package/dist/calculate-ffmpeg-filters.d.ts +1 -1
- package/dist/calculate-ffmpeg-filters.js +1 -0
- package/dist/calculate-sar-dar-pixels.d.ts +9 -0
- package/dist/calculate-sar-dar-pixels.js +19 -0
- package/dist/can-use-parallel-encoding.d.ts +1 -1
- package/dist/can-use-parallel-encoding.js +2 -2
- package/dist/check-apple-silicon.d.ts +1 -0
- package/dist/check-apple-silicon.js +55 -0
- package/dist/chunk.d.ts +0 -0
- package/dist/chunk.js +0 -0
- package/dist/client.d.ts +3 -0
- package/dist/client.js +7 -0
- package/dist/codec-supports-media.d.ts +8 -0
- package/dist/codec-supports-media.js +56 -0
- package/dist/codec.d.ts +4 -0
- package/dist/codec.js +16 -0
- package/dist/combine-videos.d.ts +9 -3
- package/dist/combine-videos.js +18 -10
- package/dist/compositor/compose.d.ts +13 -0
- package/dist/compositor/compose.js +47 -0
- package/dist/compositor/compositor.d.ts +12 -0
- package/dist/compositor/compositor.js +96 -0
- package/dist/compositor/get-executable-path.d.ts +1 -0
- package/dist/compositor/get-executable-path.js +47 -0
- package/dist/compositor/payloads.d.ts +41 -0
- package/dist/compositor/payloads.js +2 -0
- package/dist/compress-assets.d.ts +7 -0
- package/dist/compress-assets.js +25 -0
- package/dist/convert-number-of-gif-loops-to-ffmpeg.d.ts +1 -0
- package/dist/convert-number-of-gif-loops-to-ffmpeg.js +17 -0
- package/dist/convert-to-pcm.d.ts +3 -2
- package/dist/convert-to-pcm.js +3 -2
- package/dist/convert-to-positive-frame-index.d.ts +4 -0
- package/dist/convert-to-positive-frame-index.js +8 -0
- package/dist/create-ffmpeg-complex-filter.d.ts +3 -5
- package/dist/create-ffmpeg-complex-filter.js +2 -11
- package/dist/create-ffmpeg-merge-filter.d.ts +0 -0
- package/dist/create-ffmpeg-merge-filter.js +3 -3
- package/dist/create-silent-audio.d.ts +3 -2
- package/dist/create-silent-audio.js +3 -2
- package/dist/crf.d.ts +9 -0
- package/dist/crf.js +91 -0
- package/dist/cycle-browser-tabs.d.ts +2 -5
- package/dist/cycle-browser-tabs.js +5 -5
- package/dist/delay-render-embedded-stack.d.ts +1 -1
- package/dist/delay-render-embedded-stack.js +0 -0
- package/dist/delete-directory.d.ts +0 -0
- package/dist/delete-directory.js +0 -0
- package/dist/determine-resize-params.d.ts +1 -0
- package/dist/determine-resize-params.js +10 -0
- package/dist/determine-vcodec-ffmpeg-flags.d.ts +2 -0
- package/dist/determine-vcodec-ffmpeg-flags.js +13 -0
- package/dist/ensure-ffmpeg.d.ts +10 -0
- package/dist/ensure-ffmpeg.js +50 -0
- package/dist/ensure-frames-in-order.d.ts +1 -1
- package/dist/ensure-frames-in-order.js +3 -2
- package/dist/ensure-output-directory.d.ts +0 -0
- package/dist/ensure-output-directory.js +0 -0
- package/dist/ensure-presentation-timestamp.d.ts +15 -1
- package/dist/ensure-presentation-timestamp.js +54 -23
- package/dist/error-handling/handle-javascript-exception.d.ts +2 -2
- package/dist/error-handling/handle-javascript-exception.js +3 -4
- package/dist/error-handling/symbolicate-error.d.ts +1 -1
- package/dist/error-handling/symbolicate-error.js +0 -0
- package/dist/error-handling/symbolicateable-error.d.ts +1 -1
- package/dist/error-handling/symbolicateable-error.js +0 -0
- package/dist/extract-frame-from-video.d.ts +8 -2
- package/dist/extract-frame-from-video.js +85 -91
- 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 +20 -2
- package/dist/ffmpeg-flags.js +205 -9
- package/dist/ffmpeg-override.d.ts +4 -0
- package/dist/ffmpeg-override.js +2 -0
- package/dist/find-closest-package-json.d.ts +2 -0
- package/dist/find-closest-package-json.js +31 -0
- package/dist/frame-range.d.ts +2 -0
- package/dist/frame-range.js +49 -0
- package/dist/frame-to-ffmpeg-timestamp.d.ts +0 -0
- package/dist/frame-to-ffmpeg-timestamp.js +0 -0
- package/dist/get-audio-codec-name.d.ts +1 -1
- package/dist/get-audio-codec-name.js +2 -2
- package/dist/get-browser-instance.d.ts +4 -3
- package/dist/get-browser-instance.js +3 -3
- package/dist/get-can-extract-frames-fast.d.ts +10 -0
- package/dist/get-can-extract-frames-fast.js +67 -0
- package/dist/get-codec-name.d.ts +1 -1
- package/dist/get-codec-name.js +5 -2
- package/dist/get-compositions-from-bundle.d.ts +7 -0
- package/dist/get-compositions-from-bundle.js +55 -0
- package/dist/get-compositions.d.ts +11 -4
- package/dist/get-compositions.js +30 -11
- package/dist/get-concurrency.d.ts +1 -1
- package/dist/get-concurrency.js +8 -1
- package/dist/get-duration-from-frame-range.d.ts +1 -2
- package/dist/get-duration-from-frame-range.js +13 -9
- package/dist/get-extension-from-codec.d.ts +2 -2
- package/dist/get-extension-from-codec.js +8 -5
- package/dist/get-extension-of-filename.d.ts +1 -1
- package/dist/get-extension-of-filename.js +8 -1
- package/dist/get-frame-of-video-slow.d.ts +15 -0
- package/dist/get-frame-of-video-slow.js +72 -0
- package/dist/get-frame-padded-index.d.ts +14 -0
- package/dist/get-frame-padded-index.js +34 -0
- package/dist/get-frame-to-render.d.ts +1 -1
- package/dist/get-frame-to-render.js +0 -0
- package/dist/get-local-browser-executable.d.ts +2 -1
- package/dist/get-local-browser-executable.js +8 -8
- package/dist/get-port.d.ts +4 -1
- package/dist/get-port.js +13 -22
- package/dist/get-prores-profile-name.d.ts +2 -1
- package/dist/get-prores-profile-name.js +0 -0
- package/dist/get-video-info.d.ts +8 -0
- package/dist/get-video-info.js +59 -0
- package/dist/get-video-signals.d.ts +2 -0
- package/dist/get-video-signals.js +28 -0
- package/dist/get-video-threads-flag.d.ts +1 -0
- package/dist/get-video-threads-flag.js +18 -0
- package/dist/guess-extension-for-media.d.ts +5 -0
- package/dist/guess-extension-for-media.js +28 -0
- package/dist/image-format.d.ts +6 -1
- package/dist/image-format.js +28 -1
- package/dist/index.d.ts +97 -37
- package/dist/index.js +92 -17
- 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 +0 -0
- package/dist/is-serve-url.js +0 -0
- package/dist/last-frame-from-video-cache.d.ts +10 -2
- package/dist/last-frame-from-video-cache.js +23 -18
- package/dist/legacy-webpack-config.d.ts +0 -0
- package/dist/legacy-webpack-config.js +0 -0
- package/dist/locks.d.ts +7 -0
- package/dist/locks.js +44 -0
- package/dist/log-level.d.ts +4 -0
- package/dist/log-level.js +15 -0
- package/dist/make-cancel-signal.d.ts +7 -0
- package/dist/make-cancel-signal.js +20 -1
- package/dist/make-comp-manager-context.d.ts +2 -0
- package/dist/make-comp-manager-context.js +45 -0
- package/dist/make-timeline-context-value.d.ts +2 -0
- package/dist/make-timeline-context-value.js +20 -0
- package/dist/merge-audio-track.d.ts +4 -1
- package/dist/merge-audio-track.js +18 -7
- package/dist/mime-db.d.ts +6 -0
- package/dist/mime-db.js +8636 -0
- package/dist/mime-types.d.ts +3 -0
- package/dist/mime-types.js +94 -0
- package/dist/normalize-serve-url.d.ts +0 -0
- package/dist/normalize-serve-url.js +0 -0
- package/dist/offthread-video-server.d.ts +9 -5
- package/dist/offthread-video-server.js +30 -10
- package/dist/open-browser.d.ts +5 -3
- package/dist/open-browser.js +17 -26
- package/dist/overwrite.d.ts +1 -0
- package/dist/overwrite.js +4 -0
- package/dist/p-limit.d.ts +0 -0
- package/dist/p-limit.js +0 -0
- package/dist/parse-browser-error-stack.d.ts +0 -0
- package/dist/parse-browser-error-stack.js +0 -0
- package/dist/parse-ffmpeg-progress.d.ts +0 -0
- package/dist/parse-ffmpeg-progress.js +0 -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 +29 -0
- package/dist/pool.d.ts +0 -0
- package/dist/pool.js +0 -0
- package/dist/prepare-server.d.ts +7 -5
- package/dist/prepare-server.js +13 -5
- package/dist/preprocess-audio-track.d.ts +5 -2
- package/dist/preprocess-audio-track.js +5 -4
- package/dist/prespawn-ffmpeg.d.ts +10 -3
- package/dist/prespawn-ffmpeg.js +24 -16
- package/dist/prestitcher-memory-usage.d.ts +12 -0
- package/dist/prestitcher-memory-usage.js +30 -0
- package/dist/prores-profile.d.ts +8 -0
- package/dist/prores-profile.js +23 -0
- package/dist/provide-screenshot.d.ts +10 -5
- package/dist/provide-screenshot.js +4 -2
- package/dist/puppeteer-evaluate.d.ts +1 -1
- package/dist/puppeteer-evaluate.js +22 -15
- package/dist/puppeteer-screenshot.d.ts +13 -2
- package/dist/puppeteer-screenshot.js +11 -16
- package/dist/quality.d.ts +1 -0
- package/dist/quality.js +21 -0
- package/dist/redirect-status-codes.d.ts +1 -0
- package/dist/redirect-status-codes.js +6 -0
- package/dist/render-frames.d.ts +30 -12
- package/dist/render-frames.js +232 -138
- package/dist/render-media.d.ts +49 -12
- package/dist/render-media.js +152 -30
- package/dist/render-on-server.d.ts +3 -0
- package/dist/render-on-server.js +90 -0
- package/dist/render-still.d.ts +21 -9
- package/dist/render-still.js +75 -37
- package/dist/render-svg.d.ts +8 -0
- package/dist/render-svg.js +13 -0
- package/dist/render-video-layer.d.ts +9 -0
- package/dist/render-video-layer.js +23 -0
- package/dist/render-web-frame.d.ts +73 -0
- package/dist/render-web-frame.js +260 -0
- package/dist/replace-browser.d.ts +6 -0
- package/dist/replace-browser.js +47 -0
- package/dist/resolve-asset-src.d.ts +0 -0
- package/dist/resolve-asset-src.js +0 -0
- package/dist/sample-rate.d.ts +0 -0
- package/dist/sample-rate.js +0 -0
- package/dist/screenshot-dom-element.d.ts +12 -8
- package/dist/screenshot-dom-element.js +12 -7
- package/dist/screenshot-task.d.ts +14 -3
- package/dist/screenshot-task.js +55 -27
- package/dist/seek-to-frame.d.ts +3 -2
- package/dist/seek-to-frame.js +24 -3
- package/dist/serve-handler/index.d.ts +1 -1
- package/dist/serve-handler/index.js +6 -7
- package/dist/serve-handler/is-path-inside.d.ts +0 -0
- package/dist/serve-handler/is-path-inside.js +0 -0
- package/dist/serve-handler/range-parser.d.ts +0 -0
- package/dist/serve-handler/range-parser.js +0 -0
- package/dist/serve-static.d.ts +5 -3
- package/dist/serve-static.js +20 -4
- package/dist/set-props-and-env.d.ts +4 -2
- package/dist/set-props-and-env.js +41 -15
- package/dist/stitch-frames-to-video.d.ts +20 -7
- package/dist/stitch-frames-to-video.js +175 -59
- package/dist/stringify-ffmpeg-filter.d.ts +4 -3
- package/dist/stringify-ffmpeg-filter.js +15 -11
- package/dist/symbolicate-stacktrace.d.ts +1 -1
- package/dist/symbolicate-stacktrace.js +3 -3
- package/dist/take-frame-and-compose.d.ts +20 -0
- package/dist/take-frame-and-compose.js +96 -0
- package/dist/tmp-dir.d.ts +0 -0
- package/dist/tmp-dir.js +0 -0
- package/dist/truthy.d.ts +3 -0
- package/dist/truthy.js +7 -0
- package/dist/try-to-extract-frame-of-video-fast.d.ts +13 -0
- package/dist/try-to-extract-frame-of-video-fast.js +55 -0
- package/dist/types.d.ts +1 -1
- package/dist/types.js +0 -0
- package/dist/validate-concurrency.d.ts +1 -0
- package/dist/validate-concurrency.js +29 -0
- package/dist/validate-even-dimensions-with-codec.d.ts +1 -1
- package/dist/validate-even-dimensions-with-codec.js +2 -2
- package/dist/validate-every-nth-frame.d.ts +2 -0
- package/dist/validate-every-nth-frame.js +28 -0
- package/dist/validate-ffmpeg-override.d.ts +2 -0
- package/dist/validate-ffmpeg-override.js +12 -0
- package/dist/validate-ffmpeg.d.ts +7 -2
- package/dist/validate-ffmpeg.js +48 -44
- package/dist/validate-frame.d.ts +1 -0
- package/dist/validate-frame.js +24 -0
- package/dist/validate-number-of-gif-loops.d.ts +2 -0
- package/dist/validate-number-of-gif-loops.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-output-filename.js +5 -0
- package/dist/validate-puppeteer-timeout.d.ts +0 -0
- package/dist/validate-puppeteer-timeout.js +1 -1
- package/dist/validate-scale.d.ts +0 -0
- package/dist/validate-scale.js +0 -0
- package/dist/validate-videobitrate.d.ts +1 -0
- package/dist/validate-videobitrate.js +20 -0
- package/dist/wait-for-symbolication-error-to-be-done.d.ts +3 -0
- package/dist/wait-for-symbolication-error-to-be-done.js +8 -0
- package/dist/warn-about-ffmpeg-version.d.ts +5 -0
- package/dist/warn-about-ffmpeg-version.js +37 -0
- package/dist/ws/ws-types.d.ts +14 -0
- package/dist/ws/ws-types.js +11 -0
- package/package.json +30 -22
- package/types/ws/index.d.ts +509 -0
- package/.prettierrc.js +0 -14
- package/dist/assets/calculate-asset-positions.d.ts.map +0 -1
- package/dist/assets/calculate-asset-positions.js.map +0 -1
- package/dist/assets/calculate-atempo.d.ts.map +0 -1
- package/dist/assets/calculate-atempo.js.map +0 -1
- package/dist/assets/cleanup-assets.d.ts +0 -2
- package/dist/assets/convert-assets-to-file-urls.d.ts.map +0 -1
- package/dist/assets/convert-assets-to-file-urls.js.map +0 -1
- package/dist/assets/download-and-map-assets-to-file.d.ts.map +0 -1
- package/dist/assets/download-and-map-assets-to-file.js.map +0 -1
- package/dist/assets/download-file.d.ts.map +0 -1
- package/dist/assets/download-file.js.map +0 -1
- package/dist/assets/ffmpeg-volume-expression.d.ts.map +0 -1
- package/dist/assets/ffmpeg-volume-expression.js.map +0 -1
- package/dist/assets/flatten-volume-array.d.ts.map +0 -1
- package/dist/assets/flatten-volume-array.js.map +0 -1
- package/dist/assets/get-audio-channels.d.ts.map +0 -1
- package/dist/assets/get-audio-channels.js.map +0 -1
- package/dist/assets/read-file.d.ts.map +0 -1
- package/dist/assets/read-file.js.map +0 -1
- package/dist/assets/round-volume-to-avoid-stack-overflow.d.ts.map +0 -1
- package/dist/assets/round-volume-to-avoid-stack-overflow.js.map +0 -1
- package/dist/assets/sanitize-filename.d.ts.map +0 -1
- package/dist/assets/sanitize-filename.js.map +0 -1
- package/dist/assets/sanitize-filepath.d.ts.map +0 -1
- package/dist/assets/sanitize-filepath.js.map +0 -1
- package/dist/assets/truncate-utf8-bytes.d.ts.map +0 -1
- package/dist/assets/truncate-utf8-bytes.js.map +0 -1
- package/dist/assets/types.d.ts.map +0 -1
- package/dist/assets/types.js.map +0 -1
- package/dist/browser/Accessibility.d.ts +0 -175
- package/dist/browser/Accessibility.js +0 -423
- package/dist/browser/AriaQueryHandler.d.ts +0 -20
- package/dist/browser/AriaQueryHandler.js +0 -108
- package/dist/browser/ConnectionTransport.d.ts +0 -21
- package/dist/browser/ConnectionTransport.js +0 -17
- package/dist/browser/Coverage.d.ts +0 -180
- package/dist/browser/Coverage.js +0 -371
- package/dist/browser/Debug.d.ts +0 -19
- package/dist/browser/Debug.js +0 -42
- package/dist/browser/DeviceDescriptors.d.ts +0 -40
- package/dist/browser/DeviceDescriptors.js +0 -1407
- package/dist/browser/EmulationManager.d.ts +0 -7
- package/dist/browser/EmulationManager.js +0 -40
- package/dist/browser/FileChooser.d.ts +0 -56
- package/dist/browser/FileChooser.js +0 -86
- package/dist/browser/Input.d.ts +0 -355
- package/dist/browser/Input.js +0 -592
- package/dist/browser/NetworkConditions.d.ts +0 -26
- package/dist/browser/NetworkConditions.js +0 -33
- package/dist/browser/PDFOptions.d.ts +0 -165
- package/dist/browser/PDFOptions.js +0 -34
- package/dist/browser/PipeTransport.d.ts +0 -10
- package/dist/browser/PipeTransport.js +0 -86
- package/dist/browser/Puppeteer.d.ts +0 -35
- package/dist/browser/Puppeteer.js +0 -17
- package/dist/browser/QueryHandler.d.ts +0 -64
- package/dist/browser/QueryHandler.js +0 -183
- package/dist/browser/SecurityDetails.d.ts +0 -55
- package/dist/browser/SecurityDetails.js +0 -95
- package/dist/browser/Tracing.d.ts +0 -45
- package/dist/browser/Tracing.js +0 -136
- package/dist/browser/USKeyboardLayout.d.ts +0 -39
- package/dist/browser/USKeyboardLayout.js +0 -406
- package/dist/browser/WebWorker.d.ts +0 -96
- package/dist/browser/WebWorker.js +0 -122
- package/dist/browser/compat.d.ts +0 -2
- package/dist/browser/compat.js +0 -17
- package/dist/browser/dialog.d.ts +0 -70
- package/dist/browser/dialog.js +0 -114
- package/dist/browser/environment.d.ts +0 -16
- package/dist/browser/environment.js +0 -19
- package/dist/browser/fetch.d.ts +0 -16
- package/dist/browser/fetch.js +0 -46
- package/dist/browser/find-up.d.ts +0 -4
- package/dist/browser/find-up.js +0 -85
- package/dist/browser/pkg-dir.d.ts +0 -3
- package/dist/browser/pkg-dir.js +0 -13
- package/dist/browser-log.d.ts.map +0 -1
- package/dist/browser-log.js.map +0 -1
- package/dist/calculate-ffmpeg-filters.d.ts.map +0 -1
- package/dist/calculate-ffmpeg-filters.js.map +0 -1
- package/dist/can-use-parallel-encoding.d.ts.map +0 -1
- package/dist/can-use-parallel-encoding.js.map +0 -1
- package/dist/chunk.d.ts.map +0 -1
- package/dist/chunk.js.map +0 -1
- package/dist/combine-videos.d.ts.map +0 -1
- package/dist/combine-videos.js.map +0 -1
- package/dist/convert-to-pcm.d.ts.map +0 -1
- package/dist/convert-to-pcm.js.map +0 -1
- package/dist/create-ffmpeg-complex-filter.d.ts.map +0 -1
- package/dist/create-ffmpeg-complex-filter.js.map +0 -1
- package/dist/create-ffmpeg-merge-filter.d.ts.map +0 -1
- package/dist/create-ffmpeg-merge-filter.js.map +0 -1
- package/dist/create-silent-audio.d.ts.map +0 -1
- package/dist/create-silent-audio.js.map +0 -1
- package/dist/cycle-browser-tabs.d.ts.map +0 -1
- package/dist/cycle-browser-tabs.js.map +0 -1
- package/dist/delay-render-embedded-stack.d.ts.map +0 -1
- package/dist/delay-render-embedded-stack.js.map +0 -1
- package/dist/delete-directory.d.ts.map +0 -1
- package/dist/delete-directory.js.map +0 -1
- package/dist/ensure-frames-in-order.d.ts.map +0 -1
- package/dist/ensure-frames-in-order.js.map +0 -1
- package/dist/ensure-output-directory.d.ts.map +0 -1
- package/dist/ensure-output-directory.js.map +0 -1
- package/dist/error-handling/handle-javascript-exception.d.ts.map +0 -1
- package/dist/error-handling/handle-javascript-exception.js.map +0 -1
- package/dist/error-handling/symbolicate-error.d.ts.map +0 -1
- package/dist/error-handling/symbolicate-error.js.map +0 -1
- package/dist/error-handling/symbolicateable-error.d.ts.map +0 -1
- package/dist/error-handling/symbolicateable-error.js.map +0 -1
- package/dist/ffmpeg-filter-file.d.ts.map +0 -1
- package/dist/ffmpeg-filter-file.js.map +0 -1
- package/dist/ffmpeg-flags.d.ts.map +0 -1
- package/dist/ffmpeg-flags.js.map +0 -1
- package/dist/get-audio-codec-name.d.ts.map +0 -1
- package/dist/get-audio-codec-name.js.map +0 -1
- package/dist/get-browser-instance.d.ts.map +0 -1
- package/dist/get-browser-instance.js.map +0 -1
- package/dist/get-codec-name.d.ts.map +0 -1
- package/dist/get-codec-name.js.map +0 -1
- package/dist/get-compositions.d.ts.map +0 -1
- package/dist/get-compositions.js.map +0 -1
- package/dist/get-concurrency.d.ts.map +0 -1
- package/dist/get-concurrency.js.map +0 -1
- package/dist/get-duration-from-frame-range.d.ts.map +0 -1
- package/dist/get-duration-from-frame-range.js.map +0 -1
- package/dist/get-duration-of-asset.d.ts +0 -7
- package/dist/get-duration-of-asset.js +0 -36
- package/dist/get-extension-from-codec.d.ts.map +0 -1
- package/dist/get-extension-from-codec.js.map +0 -1
- package/dist/get-frame-to-render.d.ts.map +0 -1
- package/dist/get-frame-to-render.js.map +0 -1
- package/dist/get-local-browser-executable.d.ts.map +0 -1
- package/dist/get-local-browser-executable.js.map +0 -1
- package/dist/get-port.d.ts.map +0 -1
- package/dist/get-port.js.map +0 -1
- package/dist/get-prores-profile-name.d.ts.map +0 -1
- package/dist/get-prores-profile-name.js.map +0 -1
- package/dist/image-format.d.ts.map +0 -1
- package/dist/image-format.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/is-serve-url.d.ts.map +0 -1
- package/dist/is-serve-url.js.map +0 -1
- package/dist/legacy-webpack-config.d.ts.map +0 -1
- package/dist/legacy-webpack-config.js.map +0 -1
- package/dist/make-assets-download-dir.d.ts +0 -1
- package/dist/make-assets-download-dir.d.ts.map +0 -1
- package/dist/make-assets-download-dir.js +0 -13
- package/dist/make-assets-download-dir.js.map +0 -1
- package/dist/merge-audio-track.d.ts.map +0 -1
- package/dist/merge-audio-track.js.map +0 -1
- package/dist/normalize-serve-url.d.ts.map +0 -1
- package/dist/normalize-serve-url.js.map +0 -1
- package/dist/open-browser.d.ts.map +0 -1
- package/dist/open-browser.js.map +0 -1
- package/dist/p-limit.d.ts.map +0 -1
- package/dist/p-limit.js.map +0 -1
- package/dist/parse-browser-error-stack.d.ts.map +0 -1
- package/dist/parse-browser-error-stack.js.map +0 -1
- package/dist/parse-ffmpeg-progress.d.ts.map +0 -1
- package/dist/parse-ffmpeg-progress.js.map +0 -1
- package/dist/pool.d.ts.map +0 -1
- package/dist/pool.js.map +0 -1
- package/dist/prepare-server.d.ts.map +0 -1
- package/dist/prepare-server.js.map +0 -1
- package/dist/preprocess-audio-track.d.ts.map +0 -1
- package/dist/preprocess-audio-track.js.map +0 -1
- package/dist/prespawn-ffmpeg.d.ts.map +0 -1
- package/dist/prespawn-ffmpeg.js.map +0 -1
- package/dist/provide-screenshot.d.ts.map +0 -1
- package/dist/provide-screenshot.js.map +0 -1
- package/dist/puppeteer-evaluate.d.ts.map +0 -1
- package/dist/puppeteer-evaluate.js.map +0 -1
- package/dist/puppeteer-screenshot.d.ts.map +0 -1
- package/dist/puppeteer-screenshot.js.map +0 -1
- package/dist/render-frames.d.ts.map +0 -1
- package/dist/render-frames.js.map +0 -1
- package/dist/render-media.d.ts.map +0 -1
- package/dist/render-media.js.map +0 -1
- package/dist/render-still.d.ts.map +0 -1
- package/dist/render-still.js.map +0 -1
- package/dist/resolve-asset-src.d.ts.map +0 -1
- package/dist/resolve-asset-src.js.map +0 -1
- package/dist/sample-rate.d.ts.map +0 -1
- package/dist/sample-rate.js.map +0 -1
- package/dist/screenshot-dom-element.d.ts.map +0 -1
- package/dist/screenshot-dom-element.js.map +0 -1
- package/dist/screenshot-task.d.ts.map +0 -1
- package/dist/screenshot-task.js.map +0 -1
- package/dist/seek-to-frame.d.ts.map +0 -1
- package/dist/seek-to-frame.js.map +0 -1
- package/dist/serve-handler/glob-slash.d.ts +0 -1
- package/dist/serve-handler/glob-slash.js +0 -12
- package/dist/serve-static.d.ts.map +0 -1
- package/dist/serve-static.js.map +0 -1
- package/dist/set-props-and-env.d.ts.map +0 -1
- package/dist/set-props-and-env.js.map +0 -1
- package/dist/stitch-frames-to-video.d.ts.map +0 -1
- package/dist/stitch-frames-to-video.js.map +0 -1
- package/dist/stringify-ffmpeg-filter.d.ts.map +0 -1
- package/dist/stringify-ffmpeg-filter.js.map +0 -1
- package/dist/symbolicate-stacktrace.d.ts.map +0 -1
- package/dist/symbolicate-stacktrace.js.map +0 -1
- package/dist/tmp-dir.d.ts.map +0 -1
- package/dist/tmp-dir.js.map +0 -1
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js.map +0 -1
- package/dist/validate-even-dimensions-with-codec.d.ts.map +0 -1
- package/dist/validate-even-dimensions-with-codec.js.map +0 -1
- package/dist/validate-ffmpeg.d.ts.map +0 -1
- package/dist/validate-ffmpeg.js.map +0 -1
- package/dist/validate-fps-for-gif.d.ts +0 -2
- package/dist/validate-fps-for-gif.js +0 -9
- package/dist/validate-puppeteer-timeout.d.ts.map +0 -1
- package/dist/validate-puppeteer-timeout.js.map +0 -1
- package/dist/validate-scale.d.ts.map +0 -1
- package/dist/validate-scale.js.map +0 -1
- package/tsconfig.json +0 -10
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
exports.cleanDownloadMap = exports.makeDownloadMap = void 0;
|
|
30
|
+
const fs_1 = __importStar(require("fs"));
|
|
31
|
+
const path_1 = __importDefault(require("path"));
|
|
32
|
+
const delete_directory_1 = require("../delete-directory");
|
|
33
|
+
const tmp_dir_1 = require("../tmp-dir");
|
|
34
|
+
const makeAndReturn = (dir, name) => {
|
|
35
|
+
const p = path_1.default.join(dir, name);
|
|
36
|
+
(0, fs_1.mkdirSync)(p);
|
|
37
|
+
return p;
|
|
38
|
+
};
|
|
39
|
+
const packageJsonPath = path_1.default.join(__dirname, '..', '..', 'package.json');
|
|
40
|
+
const packageJson = fs_1.default.existsSync(packageJsonPath)
|
|
41
|
+
? JSON.parse(fs_1.default.readFileSync(packageJsonPath, 'utf-8'))
|
|
42
|
+
: null;
|
|
43
|
+
const makeDownloadMap = () => {
|
|
44
|
+
const dir = (0, tmp_dir_1.tmpDir)(packageJson
|
|
45
|
+
? `remotion-v${packageJson.version.replace(/\./g, '-')}-assets`
|
|
46
|
+
: 'remotion-assets');
|
|
47
|
+
return {
|
|
48
|
+
isDownloadingMap: {},
|
|
49
|
+
hasBeenDownloadedMap: {},
|
|
50
|
+
listeners: {},
|
|
51
|
+
lastFrameMap: {},
|
|
52
|
+
isBeyondLastFrameMap: {},
|
|
53
|
+
ensureFileHasPresentationTimestamp: {},
|
|
54
|
+
isVp9VideoCache: {},
|
|
55
|
+
videoDurationResultCache: {},
|
|
56
|
+
durationOfAssetCache: {},
|
|
57
|
+
id: String(Math.random()),
|
|
58
|
+
assetDir: dir,
|
|
59
|
+
downloadDir: makeAndReturn(dir, 'remotion-assets-dir'),
|
|
60
|
+
complexFilter: makeAndReturn(dir, 'remotion-complex-filter'),
|
|
61
|
+
preEncode: makeAndReturn(dir, 'pre-encode'),
|
|
62
|
+
audioMixing: makeAndReturn(dir, 'remotion-audio-mixing'),
|
|
63
|
+
audioPreprocessing: makeAndReturn(dir, 'remotion-audio-preprocessing'),
|
|
64
|
+
stitchFrames: makeAndReturn(dir, 'remotion-stitch-temp-dir'),
|
|
65
|
+
compositingDir: makeAndReturn(dir, 'remotion-compositing-temp-dir'),
|
|
66
|
+
compositorCache: {},
|
|
67
|
+
};
|
|
68
|
+
};
|
|
69
|
+
exports.makeDownloadMap = makeDownloadMap;
|
|
70
|
+
const cleanDownloadMap = async (downloadMap) => {
|
|
71
|
+
await (0, delete_directory_1.deleteDirectory)(downloadMap.downloadDir);
|
|
72
|
+
await (0, delete_directory_1.deleteDirectory)(downloadMap.complexFilter);
|
|
73
|
+
await (0, delete_directory_1.deleteDirectory)(downloadMap.compositingDir);
|
|
74
|
+
// Assets dir must be last since the others are contained
|
|
75
|
+
await (0, delete_directory_1.deleteDirectory)(downloadMap.assetDir);
|
|
76
|
+
};
|
|
77
|
+
exports.cleanDownloadMap = cleanDownloadMap;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { AssetVolume } from './types';
|
|
1
|
+
import type { AssetVolume } from './types';
|
|
2
2
|
declare type FfmpegEval = 'once' | 'frame';
|
|
3
3
|
declare type FfmpegVolumeExpression = {
|
|
4
4
|
eval: FfmpegEval;
|
|
5
5
|
value: string;
|
|
6
6
|
};
|
|
7
|
-
export declare const ffmpegVolumeExpression: ({ volume,
|
|
7
|
+
export declare const ffmpegVolumeExpression: ({ volume, fps, trimLeft, allowAmplificationDuringRender, }: {
|
|
8
8
|
volume: AssetVolume;
|
|
9
|
-
startInVideo: number;
|
|
10
9
|
trimLeft: number;
|
|
11
10
|
fps: number;
|
|
11
|
+
allowAmplificationDuringRender: boolean;
|
|
12
12
|
}) => FfmpegVolumeExpression;
|
|
13
13
|
export {};
|
|
@@ -43,21 +43,22 @@ const ffmpegBuildVolumeExpression = (arr, delay, fps) => {
|
|
|
43
43
|
const [volume, frames] = first;
|
|
44
44
|
return ffmpegIfOrElse(ffmpegIsOneOfFrames({ frames, trimLeft: delay, fps }), String(volume), ffmpegBuildVolumeExpression(rest, delay, fps));
|
|
45
45
|
};
|
|
46
|
-
const ffmpegVolumeExpression = ({ volume,
|
|
46
|
+
const ffmpegVolumeExpression = ({ volume, fps, trimLeft, allowAmplificationDuringRender, }) => {
|
|
47
|
+
const maxVolume = allowAmplificationDuringRender ? Infinity : 1;
|
|
47
48
|
// If it's a static volume, we return it and tell
|
|
48
49
|
// FFMPEG it only has to evaluate it once
|
|
49
50
|
if (typeof volume === 'number') {
|
|
50
51
|
return {
|
|
51
52
|
eval: 'once',
|
|
52
|
-
value: String(Math.min(
|
|
53
|
+
value: String(Math.min(maxVolume, volume)),
|
|
53
54
|
};
|
|
54
55
|
}
|
|
55
56
|
if ([...new Set(volume)].length === 1) {
|
|
56
57
|
return (0, exports.ffmpegVolumeExpression)({
|
|
57
58
|
volume: volume[0],
|
|
58
|
-
startInVideo,
|
|
59
59
|
fps,
|
|
60
60
|
trimLeft,
|
|
61
|
+
allowAmplificationDuringRender,
|
|
61
62
|
});
|
|
62
63
|
}
|
|
63
64
|
// A 1 sec video with frames 0-29 would mean that
|
|
@@ -72,11 +73,11 @@ const ffmpegVolumeExpression = ({ volume, startInVideo, fps, trimLeft, }) => {
|
|
|
72
73
|
const volumeMap = {};
|
|
73
74
|
paddedVolume.forEach((baseVolume, frame) => {
|
|
74
75
|
// Adjust volume based on how many other tracks have not yet finished
|
|
75
|
-
const actualVolume = (0, round_volume_to_avoid_stack_overflow_1.roundVolumeToAvoidStackOverflow)(Math.min(
|
|
76
|
+
const actualVolume = (0, round_volume_to_avoid_stack_overflow_1.roundVolumeToAvoidStackOverflow)(Math.min(maxVolume, baseVolume));
|
|
76
77
|
if (!volumeMap[actualVolume]) {
|
|
77
78
|
volumeMap[actualVolume] = [];
|
|
78
79
|
}
|
|
79
|
-
volumeMap[actualVolume].push(frame
|
|
80
|
+
volumeMap[actualVolume].push(frame);
|
|
80
81
|
});
|
|
81
82
|
// Sort the map so that the most common volume is last
|
|
82
83
|
// this is going to be the else statement so the expression is short
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { AssetVolume, MediaAsset } from './types';
|
|
1
|
+
import type { AssetVolume, MediaAsset } from './types';
|
|
2
2
|
export declare const flattenVolumeArray: (volume: AssetVolume) => AssetVolume;
|
|
3
3
|
export declare const convertAssetToFlattenedVolume: (asset: MediaAsset) => MediaAsset;
|
|
File without changes
|
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
import { FfmpegExecutable } from '
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
duration: number | null;
|
|
5
|
-
};
|
|
6
|
-
export declare const getAudioChannelsAndDuration: (src: string, ffprobeExecutable: FfmpegExecutable) => Promise<Result>;
|
|
7
|
-
export {};
|
|
1
|
+
import type { FfmpegExecutable } from '../ffmpeg-executable';
|
|
2
|
+
import type { AudioChannelsAndDurationResultCache, DownloadMap } from './download-map';
|
|
3
|
+
export declare const getAudioChannelsAndDuration: (downloadMap: DownloadMap, src: string, ffprobeExecutable: FfmpegExecutable, remotionRoot: string) => Promise<AudioChannelsAndDurationResultCache>;
|
|
@@ -5,12 +5,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.getAudioChannelsAndDuration = void 0;
|
|
7
7
|
const execa_1 = __importDefault(require("execa"));
|
|
8
|
+
const ffmpeg_flags_1 = require("../ffmpeg-flags");
|
|
8
9
|
const p_limit_1 = require("../p-limit");
|
|
9
|
-
const durationOfAssetCache = {};
|
|
10
10
|
const limit = (0, p_limit_1.pLimit)(1);
|
|
11
|
-
async function getAudioChannelsAndDurationUnlimited(src, ffprobeExecutable) {
|
|
12
|
-
if (durationOfAssetCache[src]) {
|
|
13
|
-
return durationOfAssetCache[src];
|
|
11
|
+
async function getAudioChannelsAndDurationUnlimited(downloadMap, src, ffprobeExecutable, remotionRoot) {
|
|
12
|
+
if (downloadMap.durationOfAssetCache[src]) {
|
|
13
|
+
return downloadMap.durationOfAssetCache[src];
|
|
14
14
|
}
|
|
15
15
|
const args = [
|
|
16
16
|
['-v', 'error'],
|
|
@@ -20,17 +20,17 @@ async function getAudioChannelsAndDurationUnlimited(src, ffprobeExecutable) {
|
|
|
20
20
|
]
|
|
21
21
|
.reduce((acc, val) => acc.concat(val), [])
|
|
22
22
|
.filter(Boolean);
|
|
23
|
-
const task = await (0, execa_1.default)(
|
|
23
|
+
const task = await (0, execa_1.default)(await (0, ffmpeg_flags_1.getExecutableBinary)(ffprobeExecutable, remotionRoot, 'ffprobe'), args);
|
|
24
24
|
const channels = task.stdout.match(/channels=([0-9]+)/);
|
|
25
25
|
const duration = task.stdout.match(/duration=([0-9.]+)/);
|
|
26
26
|
const result = {
|
|
27
27
|
channels: channels ? parseInt(channels[1], 10) : 0,
|
|
28
28
|
duration: duration ? parseFloat(duration[1]) : null,
|
|
29
29
|
};
|
|
30
|
-
durationOfAssetCache[src] = result;
|
|
30
|
+
downloadMap.durationOfAssetCache[src] = result;
|
|
31
31
|
return result;
|
|
32
32
|
}
|
|
33
|
-
const getAudioChannelsAndDuration = (src, ffprobeExecutable) => {
|
|
34
|
-
return limit(() => getAudioChannelsAndDurationUnlimited(src, ffprobeExecutable));
|
|
33
|
+
const getAudioChannelsAndDuration = (downloadMap, src, ffprobeExecutable, remotionRoot) => {
|
|
34
|
+
return limit(() => getAudioChannelsAndDurationUnlimited(downloadMap, src, ffprobeExecutable, remotionRoot));
|
|
35
35
|
};
|
|
36
36
|
exports.getAudioChannelsAndDuration = getAudioChannelsAndDuration;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { FfmpegExecutable } from '../ffmpeg-executable';
|
|
2
|
+
import type { DownloadMap, VideoDurationResult } from './download-map';
|
|
3
|
+
export declare const parseVideoStreamDuration: (stdout: string) => VideoDurationResult;
|
|
4
|
+
export declare function getVideoStreamDurationwithoutCache({ src, ffprobeExecutable, remotionRoot, }: {
|
|
5
|
+
src: string;
|
|
6
|
+
ffprobeExecutable: FfmpegExecutable;
|
|
7
|
+
remotionRoot: string;
|
|
8
|
+
}): Promise<VideoDurationResult>;
|
|
9
|
+
export declare const getVideoStreamDuration: (downloadMap: DownloadMap, src: string, ffprobeExecutable: FfmpegExecutable, remotionRoot: string) => Promise<VideoDurationResult>;
|
|
@@ -0,0 +1,71 @@
|
|
|
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.getVideoStreamDuration = exports.getVideoStreamDurationwithoutCache = exports.parseVideoStreamDuration = void 0;
|
|
7
|
+
const execa_1 = __importDefault(require("execa"));
|
|
8
|
+
const ffmpeg_flags_1 = require("../ffmpeg-flags");
|
|
9
|
+
const p_limit_1 = require("../p-limit");
|
|
10
|
+
const limit = (0, p_limit_1.pLimit)(1);
|
|
11
|
+
const parseAlternativeDuration = (stdout) => {
|
|
12
|
+
const webmDuration = stdout.match(/TAG:DURATION=([0-9.]+):([0-9.]+):([0-9.]+)/);
|
|
13
|
+
if (!webmDuration) {
|
|
14
|
+
return null;
|
|
15
|
+
}
|
|
16
|
+
const [, hours, minutes, seconds] = webmDuration;
|
|
17
|
+
const hoursAsNumber = Number(hours);
|
|
18
|
+
if (Number.isNaN(hoursAsNumber)) {
|
|
19
|
+
return null;
|
|
20
|
+
}
|
|
21
|
+
const minutesAsNumber = Number(minutes);
|
|
22
|
+
if (Number.isNaN(minutesAsNumber)) {
|
|
23
|
+
return null;
|
|
24
|
+
}
|
|
25
|
+
const secondsAsNumber = Number(seconds);
|
|
26
|
+
if (Number.isNaN(secondsAsNumber)) {
|
|
27
|
+
return null;
|
|
28
|
+
}
|
|
29
|
+
return secondsAsNumber + minutesAsNumber * 60 + hoursAsNumber * 3600;
|
|
30
|
+
};
|
|
31
|
+
const parseVideoStreamDuration = (stdout) => {
|
|
32
|
+
const duration = stdout.match(/duration=([0-9.]+)/);
|
|
33
|
+
const alternativeDuration = parseAlternativeDuration(stdout);
|
|
34
|
+
const fps = stdout.match(/r_frame_rate=([0-9.]+)\/([0-9.]+)/);
|
|
35
|
+
const result = {
|
|
36
|
+
duration: duration ? parseFloat(duration[1]) : alternativeDuration,
|
|
37
|
+
fps: fps ? parseInt(fps[1], 10) / parseInt(fps[2], 10) : null,
|
|
38
|
+
};
|
|
39
|
+
return result;
|
|
40
|
+
};
|
|
41
|
+
exports.parseVideoStreamDuration = parseVideoStreamDuration;
|
|
42
|
+
async function getVideoStreamDurationwithoutCache({ src, ffprobeExecutable, remotionRoot, }) {
|
|
43
|
+
const args = [
|
|
44
|
+
['-v', 'error'],
|
|
45
|
+
['-select_streams', 'v:0'],
|
|
46
|
+
['-show_entries', 'stream'],
|
|
47
|
+
[src],
|
|
48
|
+
]
|
|
49
|
+
.reduce((acc, val) => acc.concat(val), [])
|
|
50
|
+
.filter(Boolean);
|
|
51
|
+
const task = await (0, execa_1.default)(await (0, ffmpeg_flags_1.getExecutableBinary)(ffprobeExecutable, remotionRoot, 'ffprobe'), args);
|
|
52
|
+
const result = (0, exports.parseVideoStreamDuration)(task.stdout);
|
|
53
|
+
return result;
|
|
54
|
+
}
|
|
55
|
+
exports.getVideoStreamDurationwithoutCache = getVideoStreamDurationwithoutCache;
|
|
56
|
+
async function getVideoStreamDurationUnlimited(downloadMap, src, ffprobeExecutable, remotionRoot) {
|
|
57
|
+
if (downloadMap.videoDurationResultCache[src]) {
|
|
58
|
+
return downloadMap.videoDurationResultCache[src];
|
|
59
|
+
}
|
|
60
|
+
const result = await getVideoStreamDurationwithoutCache({
|
|
61
|
+
src,
|
|
62
|
+
ffprobeExecutable,
|
|
63
|
+
remotionRoot,
|
|
64
|
+
});
|
|
65
|
+
downloadMap.videoDurationResultCache[src] = result;
|
|
66
|
+
return result;
|
|
67
|
+
}
|
|
68
|
+
const getVideoStreamDuration = (downloadMap, src, ffprobeExecutable, remotionRoot) => {
|
|
69
|
+
return limit(() => getVideoStreamDurationUnlimited(downloadMap, src, ffprobeExecutable, remotionRoot));
|
|
70
|
+
};
|
|
71
|
+
exports.getVideoStreamDuration = getVideoStreamDuration;
|
|
File without changes
|
package/dist/assets/read-file.js
CHANGED
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.readFile = void 0;
|
|
7
7
|
const http_1 = __importDefault(require("http"));
|
|
8
8
|
const https_1 = __importDefault(require("https"));
|
|
9
|
+
const redirect_status_codes_1 = require("../redirect-status-codes");
|
|
9
10
|
const getClient = (url) => {
|
|
10
11
|
if (url.startsWith('https://')) {
|
|
11
12
|
return https_1.default.get;
|
|
@@ -29,7 +30,7 @@ const readFile = async (url, redirectsSoFar = 0) => {
|
|
|
29
30
|
throw new Error(`Too many redirects while downloading ${url}`);
|
|
30
31
|
}
|
|
31
32
|
const file = await readFileWithoutRedirect(url);
|
|
32
|
-
if (
|
|
33
|
+
if (redirect_status_codes_1.redirectStatusCodes.includes(file.statusCode)) {
|
|
33
34
|
if (!file.headers.location) {
|
|
34
35
|
throw new Error(`Received a status code ${file.statusCode} but no "Location" header while calling ${file.headers.location}`);
|
|
35
36
|
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/dist/assets/types.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { TAsset } from 'remotion';
|
|
1
|
+
import type { TAsset } from 'remotion';
|
|
2
2
|
export declare type UnsafeAsset = Omit<TAsset, 'frame' | 'id' | 'volume' | 'mediaFrame'> & {
|
|
3
3
|
startInVideo: number;
|
|
4
4
|
duration: number | null;
|
|
@@ -6,6 +6,7 @@ export declare type UnsafeAsset = Omit<TAsset, 'frame' | 'id' | 'volume' | 'medi
|
|
|
6
6
|
volume: number[];
|
|
7
7
|
id: string;
|
|
8
8
|
playbackRate: number;
|
|
9
|
+
allowAmplificationDuringRender: boolean;
|
|
9
10
|
};
|
|
10
11
|
export declare type AssetVolume = number | number[];
|
|
11
12
|
export declare type MediaAsset = Omit<UnsafeAsset, 'duration' | 'volume'> & {
|
package/dist/assets/types.js
CHANGED
|
File without changes
|
|
@@ -13,165 +13,40 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
|
|
17
|
-
import {
|
|
18
|
-
import { Connection } from './Connection';
|
|
16
|
+
import type { Page } from './BrowserPage';
|
|
17
|
+
import type { Connection } from './Connection';
|
|
19
18
|
import { EventEmitter } from './EventEmitter';
|
|
20
|
-
import {
|
|
21
|
-
import { Viewport } from './PuppeteerViewport';
|
|
19
|
+
import type { Viewport } from './PuppeteerViewport';
|
|
22
20
|
import { Target } from './Target';
|
|
23
|
-
interface BrowserContextOptions {
|
|
24
|
-
/**
|
|
25
|
-
* Proxy server with optional port to use for all requests.
|
|
26
|
-
* Username and password can be set in `Page.authenticate`.
|
|
27
|
-
*/
|
|
28
|
-
proxyServer?: string;
|
|
29
|
-
/**
|
|
30
|
-
* Bypass the proxy for the given semi-colon-separated list of hosts.
|
|
31
|
-
*/
|
|
32
|
-
proxyBypassList?: string[];
|
|
33
|
-
}
|
|
34
21
|
declare type BrowserCloseCallback = () => Promise<void> | void;
|
|
35
22
|
interface WaitForTargetOptions {
|
|
36
|
-
/**
|
|
37
|
-
* Maximum wait time in milliseconds. Pass `0` to disable the timeout.
|
|
38
|
-
* @defaultValue 30 seconds.
|
|
39
|
-
*/
|
|
40
23
|
timeout?: number;
|
|
41
24
|
}
|
|
25
|
+
export declare const enum BrowserEmittedEvents {
|
|
26
|
+
TargetChanged = "targetchanged",
|
|
27
|
+
TargetCreated = "targetcreated",
|
|
28
|
+
Closed = "closed",
|
|
29
|
+
ClosedSilent = "closed-silent"
|
|
30
|
+
}
|
|
42
31
|
export declare class Browser extends EventEmitter {
|
|
43
32
|
#private;
|
|
44
|
-
static _create({ connection, contextIds, defaultViewport,
|
|
33
|
+
static _create({ connection, contextIds, defaultViewport, closeCallback, }: {
|
|
45
34
|
connection: Connection;
|
|
46
35
|
contextIds: string[];
|
|
47
36
|
defaultViewport: Viewport;
|
|
48
|
-
process?: ChildProcess;
|
|
49
37
|
closeCallback?: BrowserCloseCallback;
|
|
50
38
|
}): Promise<Browser>;
|
|
39
|
+
connection: Connection;
|
|
51
40
|
get _targets(): Map<string, Target>;
|
|
52
|
-
constructor(connection: Connection, contextIds: string[], defaultViewport: Viewport,
|
|
53
|
-
/**
|
|
54
|
-
* The spawned browser process. Returns `null` if the browser instance was created with
|
|
55
|
-
* {@link Puppeteer.connect}.
|
|
56
|
-
*/
|
|
57
|
-
process(): ChildProcess | null;
|
|
58
|
-
/**
|
|
59
|
-
* Creates a new incognito browser context. This won't share cookies/cache with other
|
|
60
|
-
* browser contexts.
|
|
61
|
-
*
|
|
62
|
-
* @example
|
|
63
|
-
* ```js
|
|
64
|
-
* (async () => {
|
|
65
|
-
* const browser = await puppeteer.launch();
|
|
66
|
-
* // Create a new incognito browser context.
|
|
67
|
-
* const context = await browser.createIncognitoBrowserContext();
|
|
68
|
-
* // Create a new page in a pristine context.
|
|
69
|
-
* const page = await context.newPage();
|
|
70
|
-
* // Do stuff
|
|
71
|
-
* await page.goto('https://example.com');
|
|
72
|
-
* })();
|
|
73
|
-
* ```
|
|
74
|
-
*/
|
|
75
|
-
createIncognitoBrowserContext(options?: BrowserContextOptions): Promise<BrowserContext>;
|
|
76
|
-
/**
|
|
77
|
-
* Returns an array of all open browser contexts. In a newly created browser, this will
|
|
78
|
-
* return a single instance of {@link BrowserContext}.
|
|
79
|
-
*/
|
|
41
|
+
constructor(connection: Connection, contextIds: string[], defaultViewport: Viewport, closeCallback?: BrowserCloseCallback);
|
|
80
42
|
browserContexts(): BrowserContext[];
|
|
81
|
-
/**
|
|
82
|
-
* Returns the default browser context. The default browser context cannot be closed.
|
|
83
|
-
*/
|
|
84
|
-
defaultBrowserContext(): BrowserContext;
|
|
85
|
-
_disposeContext(contextId?: string): Promise<void>;
|
|
86
|
-
/**
|
|
87
|
-
* The browser websocket endpoint which can be used as an argument to
|
|
88
|
-
* {@link Puppeteer.connect}.
|
|
89
|
-
*
|
|
90
|
-
* @returns The Browser websocket url.
|
|
91
|
-
*
|
|
92
|
-
* @remarks
|
|
93
|
-
*
|
|
94
|
-
* The format is `ws://${host}:${port}/devtools/browser/<id>`.
|
|
95
|
-
*
|
|
96
|
-
* You can find the `webSocketDebuggerUrl` from `http://${host}:${port}/json/version`.
|
|
97
|
-
* Learn more about the
|
|
98
|
-
* {@link https://chromedevtools.github.io/devtools-protocol | devtools protocol} and
|
|
99
|
-
* the {@link
|
|
100
|
-
* https://chromedevtools.github.io/devtools-protocol/#how-do-i-access-the-browser-target
|
|
101
|
-
* | browser endpoint}.
|
|
102
|
-
*/
|
|
103
|
-
wsEndpoint(): string;
|
|
104
|
-
/**
|
|
105
|
-
* Promise which resolves to a new {@link Page} object. The Page is created in
|
|
106
|
-
* a default browser context.
|
|
107
|
-
*/
|
|
108
43
|
newPage(): Promise<Page>;
|
|
109
44
|
_createPageInContext(contextId?: string): Promise<Page>;
|
|
110
|
-
/**
|
|
111
|
-
* All active targets inside the Browser. In case of multiple browser contexts, returns
|
|
112
|
-
* an array with all the targets in all browser contexts.
|
|
113
|
-
*/
|
|
114
45
|
targets(): Target[];
|
|
115
|
-
/**
|
|
116
|
-
* The target associated with the browser.
|
|
117
|
-
*/
|
|
118
|
-
target(): Target;
|
|
119
|
-
/**
|
|
120
|
-
* Searches for a target in all browser contexts.
|
|
121
|
-
*
|
|
122
|
-
* @param predicate - A function to be run for every target.
|
|
123
|
-
* @returns The first target found that matches the `predicate` function.
|
|
124
|
-
*
|
|
125
|
-
* @example
|
|
126
|
-
*
|
|
127
|
-
* An example of finding a target for a page opened via `window.open`:
|
|
128
|
-
* ```js
|
|
129
|
-
* await page.evaluate(() => window.open('https://www.example.com/'));
|
|
130
|
-
* const newWindowTarget = await browser.waitForTarget(target => target.url() === 'https://www.example.com/');
|
|
131
|
-
* ```
|
|
132
|
-
*/
|
|
133
46
|
waitForTarget(predicate: (x: Target) => boolean | Promise<boolean>, options?: WaitForTargetOptions): Promise<Target>;
|
|
134
|
-
/**
|
|
135
|
-
* An array of all open pages inside the Browser.
|
|
136
|
-
*
|
|
137
|
-
* @remarks
|
|
138
|
-
*
|
|
139
|
-
* In case of multiple browser contexts, returns an array with all the pages in all
|
|
140
|
-
* browser contexts. Non-visible pages, such as `"background_page"`, will not be listed
|
|
141
|
-
* here. You can find them using {@link Target.page}.
|
|
142
|
-
*/
|
|
143
47
|
pages(): Promise<Page[]>;
|
|
144
|
-
|
|
145
|
-
* A string representing the browser name and version.
|
|
146
|
-
*
|
|
147
|
-
* @remarks
|
|
148
|
-
*
|
|
149
|
-
* For headless Chromium, this is similar to `HeadlessChrome/61.0.3153.0`. For
|
|
150
|
-
* non-headless, this is similar to `Chrome/61.0.3153.0`.
|
|
151
|
-
*
|
|
152
|
-
* The format of browser.version() might change with future releases of Chromium.
|
|
153
|
-
*/
|
|
154
|
-
version(): Promise<string>;
|
|
155
|
-
/**
|
|
156
|
-
* The browser's original user agent. Pages can override the browser user agent with
|
|
157
|
-
* {@link Page.setUserAgent}.
|
|
158
|
-
*/
|
|
159
|
-
userAgent(): Promise<string>;
|
|
160
|
-
/**
|
|
161
|
-
* Closes Chromium and all of its pages (if any were opened). The {@link Browser} object
|
|
162
|
-
* itself is considered to be disposed and cannot be used anymore.
|
|
163
|
-
*/
|
|
164
|
-
close(): Promise<void>;
|
|
165
|
-
/**
|
|
166
|
-
* Disconnects Puppeteer from the browser, but leaves the Chromium process running.
|
|
167
|
-
* After calling `disconnect`, the {@link Browser} object is considered disposed and
|
|
168
|
-
* cannot be used anymore.
|
|
169
|
-
*/
|
|
48
|
+
close(silent: boolean): Promise<void>;
|
|
170
49
|
disconnect(): void;
|
|
171
|
-
/**
|
|
172
|
-
* Indicates that the browser is connected.
|
|
173
|
-
*/
|
|
174
|
-
isConnected(): boolean;
|
|
175
50
|
}
|
|
176
51
|
export declare class BrowserContext extends EventEmitter {
|
|
177
52
|
#private;
|
|
@@ -181,29 +56,7 @@ export declare class BrowserContext extends EventEmitter {
|
|
|
181
56
|
timeout?: number;
|
|
182
57
|
}): Promise<Target>;
|
|
183
58
|
pages(): Promise<Page[]>;
|
|
184
|
-
/**
|
|
185
|
-
* Returns whether BrowserContext is incognito.
|
|
186
|
-
* The default browser context is the only non-incognito browser context.
|
|
187
|
-
*
|
|
188
|
-
* @remarks
|
|
189
|
-
* The default browser context cannot be closed.
|
|
190
|
-
*/
|
|
191
|
-
isIncognito(): boolean;
|
|
192
|
-
/**
|
|
193
|
-
* Creates a new page in the browser context.
|
|
194
|
-
*/
|
|
195
59
|
newPage(): Promise<Page>;
|
|
196
|
-
/**
|
|
197
|
-
* The browser this browser context belongs to.
|
|
198
|
-
*/
|
|
199
60
|
browser(): Browser;
|
|
200
|
-
/**
|
|
201
|
-
* Closes the browser context. All the targets that belong to the browser context
|
|
202
|
-
* will be closed.
|
|
203
|
-
*
|
|
204
|
-
* @remarks
|
|
205
|
-
* Only incognito browser contexts can be closed.
|
|
206
|
-
*/
|
|
207
|
-
close(): Promise<void>;
|
|
208
61
|
}
|
|
209
62
|
export {};
|