hyperframes 0.8.145 → 0.8.147
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-B6OUH46W.js → add-5CNUY3EW.js} +15 -15
- package/dist/{animatedGifPrep-MIWRDJIO.js → animatedGifPrep-ZID2XJRQ.js} +10 -10
- package/dist/{asset-XJ2B2PU3.js → asset-TFEENZ7K.js} +2 -2
- package/dist/{assetCataloger-A5ZLSCMZ.js → assetCataloger-GX4B55VB.js} +4 -4
- package/dist/{auth-5HOVCZMV.js → auth-EJVZW6C3.js} +2 -2
- package/dist/{autoUpdate-WVNL5K3D.js → autoUpdate-MBNEZ2U4.js} +2 -2
- package/dist/{backgroundChecks-IGF54SFH.js → backgroundChecks-DNW5NPTY.js} +3 -3
- package/dist/backgroundChecksWorker.js +3 -3
- package/dist/{batchRender-T6JEGCQV.js → batchRender-T7S2CGJE.js} +5 -5
- package/dist/{beats-37T6Y6QP.js → beats-STXBGN6Z.js} +16 -16
- package/dist/{benchmark-ZVVLOWPP.js → benchmark-AC6IGEQP.js} +12 -12
- package/dist/{browser-4SSJOLH4.js → browser-FB5AK32T.js} +5 -5
- package/dist/{bundleWithLocalizedFonts-XWK423QP.js → bundleWithLocalizedFonts-HSCWGCFO.js} +2 -2
- package/dist/{capture-KZXOPBMO.js → capture-I24MXH3Y.js} +13 -13
- package/dist/{capture-2SF7YP57.js → capture-VEIVUHWB.js} +2 -2
- package/dist/{catalog-NLD4A2C6.js → catalog-JRC4VTTI.js} +15 -15
- package/dist/{catch-up-4BSRN6IR.js → catch-up-NTCK7Z3G.js} +6 -6
- package/dist/{check-IA44QQWM.js → check-7M7W4LPN.js} +38 -38
- package/dist/{checkBrowser-VM35KZMW.js → checkBrowser-2YRVCAYB.js} +118 -61
- package/dist/{chunk-OTHDVXOJ.js → chunk-2IDHEEAN.js} +3 -3
- package/dist/{chunk-VHFEMFYL.js → chunk-3BETQ4XI.js} +3 -3
- package/dist/{chunk-3KU3PFDW.js → chunk-3BYMCR4O.js} +85 -75
- package/dist/{chunk-FXJJCPPB.js → chunk-3HSWLZ6S.js} +1 -1
- package/dist/{chunk-ZF7SXQJ7.js → chunk-3PPO64IB.js} +2 -2
- package/dist/{chunk-PLR7Z6TC.js → chunk-3YUFN37G.js} +1 -1
- package/dist/{chunk-GRY3PN3K.js → chunk-4YVMMRHR.js} +2 -2
- package/dist/{chunk-ICKDMTLA.js → chunk-55RZG5SQ.js} +2 -2
- package/dist/{chunk-3IBMBNYY.js → chunk-5OKZLMQK.js} +10 -10
- package/dist/{chunk-DIRJ322I.js → chunk-66SAATRI.js} +3 -3
- package/dist/{chunk-GMAJB2P6.js → chunk-6BSIQJPW.js} +1 -1
- package/dist/{chunk-4QWD6JYN.js → chunk-6WD636E5.js} +3 -3
- package/dist/{chunk-5WVW7P23.js → chunk-A72OAGNB.js} +6 -6
- package/dist/{chunk-XBX4QJP7.js → chunk-AFIATIKS.js} +1 -1
- package/dist/{chunk-G75ENCEZ.js → chunk-AIJS74LG.js} +3 -3
- package/dist/{chunk-FBCULCAL.js → chunk-AL2YEVOT.js} +1 -1
- package/dist/{chunk-GEMJYBRU.js → chunk-B45OFFOQ.js} +2 -2
- package/dist/{chunk-VRW6EBHV.js → chunk-BAKPN2D2.js} +101 -94
- package/dist/{chunk-HB7FJOY4.js → chunk-BPUFVVSH.js} +1 -1
- package/dist/{chunk-BIAC7IJT.js → chunk-DDNS2674.js} +1 -1
- package/dist/{chunk-QFSCCQIR.js → chunk-DMKI64EZ.js} +1 -1
- package/dist/{chunk-EPE2HRJK.js → chunk-DYWSCPCR.js} +69 -64
- package/dist/{chunk-ZIYZ77MR.js → chunk-EGO6Z24R.js} +3 -3
- package/dist/{chunk-KC5XXX3X.js → chunk-EOOEC32M.js} +1 -1
- package/dist/{chunk-XIHCMVMG.js → chunk-FDL4HV44.js} +2 -2
- package/dist/{chunk-QZ3AZTXI.js → chunk-FJWEYVEM.js} +42 -16
- package/dist/{chunk-PUGIRFPX.js → chunk-FMNVTKX2.js} +4 -4
- package/dist/{chunk-IHTRYDFN.js → chunk-H7B6JSHI.js} +1 -1
- package/dist/{chunk-T42U2W2R.js → chunk-IXLUTE6N.js} +1 -1
- package/dist/{chunk-FDT6KQV4.js → chunk-JBQJKC23.js} +2 -2
- package/dist/{chunk-IEIJRMLZ.js → chunk-JDB65PPT.js} +62 -63
- package/dist/{chunk-UXO2L7HJ.js → chunk-JF5L5SQ6.js} +278 -65
- package/dist/{chunk-USDEMXXL.js → chunk-JYVGYKXG.js} +1 -1
- package/dist/{chunk-R42WWQVB.js → chunk-KPJMBC4K.js} +2 -2
- package/dist/{chunk-MAYCCGMQ.js → chunk-KVGDFUVO.js} +1 -1
- package/dist/{chunk-CFUXNBWH.js → chunk-LE7T4ML7.js} +1 -1
- package/dist/{chunk-MQZVBHEY.js → chunk-LFNQDTSH.js} +1 -1
- package/dist/{chunk-KIFHYXPB.js → chunk-MOL32UKR.js} +45 -11
- package/dist/{chunk-6LGNTUZN.js → chunk-N53FLAMZ.js} +7 -7
- package/dist/{chunk-ADF3X6GM.js → chunk-P6HELLPU.js} +2 -2
- package/dist/{chunk-5NRXZGKK.js → chunk-POKK6XXU.js} +9 -9
- package/dist/{chunk-GBGJ7A3D.js → chunk-QHRPB2JQ.js} +6 -6
- package/dist/{chunk-BFACGEII.js → chunk-QTTDKWSM.js} +2 -2
- package/dist/{chunk-U5QY7KTN.js → chunk-SEABQTBP.js} +11 -8
- package/dist/{chunk-ZEUONDQG.js → chunk-SYUGVPYH.js} +1 -1
- package/dist/{chunk-PJ3HDUCY.js → chunk-VAS6HQX3.js} +39 -9
- package/dist/{chunk-GQJZORQP.js → chunk-XBSPQ52S.js} +1 -1
- package/dist/{chunk-4ORLNTET.js → chunk-XOJDBRNF.js} +1 -1
- package/dist/{chunk-LAFJSYDL.js → chunk-XVIYZU3D.js} +1 -1
- package/dist/{chunk-OB5MJR4W.js → chunk-YCGU3UNU.js} +1 -1
- package/dist/{chunk-GXJEGZL2.js → chunk-Z5C4LEAD.js} +17 -18
- package/dist/chunk-Z6FLHIDV.js +3795 -0
- package/dist/{chunk-DDIVWXN7.js → chunk-ZFN6GQU4.js} +4 -4
- package/dist/{chunk-QLSM7K5S.js → chunk-ZLL72U3I.js} +2 -2
- package/dist/{chunk-ZSVUAVMT.js → chunk-ZQXNL5DL.js} +5 -5
- package/dist/{chunk-DWUKJQTO.js → chunk-ZVZSFDW3.js} +2 -2
- package/dist/{clean-RDKJB5FK.js → clean-3RY3Y2GX.js} +23 -23
- package/dist/cli.js +52 -52
- package/dist/{cloud-QVPVVNCW.js → cloud-MLPBFCVE.js} +4 -4
- package/dist/{cloudrun-3RE2UCQG.js → cloudrun-NQF5KFQI.js} +6 -6
- package/dist/{compare-LEDOY7MO.js → compare-6EZX2754.js} +32 -32
- package/dist/{compiler-F54OZZPM.js → compiler-ACCPOZMQ.js} +6 -6
- package/dist/{component-N42M67WY.js → component-F5PQHP6A.js} +3 -3
- package/dist/{compositions-VB2J2LZI.js → compositions-AUHWSI2H.js} +15 -15
- package/dist/{delete-Q6RWMJ4Z.js → delete-VUF4SHHJ.js} +2 -2
- package/dist/{deterministicFonts-U2BIMGPG.js → deterministicFonts-C5JQLCTS.js} +2 -2
- package/dist/{dist-Q4BI5A73.js → dist-GPDOV3IQ.js} +4 -4
- package/dist/{dist-KDJTFJHA.js → dist-HUMFCJ6T.js} +3 -3
- package/dist/{doctor-JMMUHDRV.js → doctor-3XHCA5JM.js} +15 -15
- package/dist/{events-RGUAHIBW.js → events-FKOIB3R3.js} +5 -5
- package/dist/{events-6ZBSIBE5.js → events-TIU72LZM.js} +4 -4
- package/dist/{feedback-FIID6MZW.js → feedback-V6VATYBE.js} +10 -10
- package/dist/{ffmpeg-T5SH2EFJ.js → ffmpeg-5V4FP3R6.js} +2 -2
- package/dist/{figma-BL3JJC36.js → figma-YBJM2VGE.js} +3 -3
- package/dist/fontLocalizeCli.js +14 -14
- package/dist/{get-P46GS7S6.js → get-3YVCGZBX.js} +2 -2
- package/dist/{gpuPolicy-AQ2BPLBK.js → gpuPolicy-ZOUG66M7.js} +10 -10
- package/dist/{grade-compare-GDCWU7ZZ.js → grade-compare-MYXIRKQI.js} +33 -33
- package/dist/{help-HJR3RWFG.js → help-WFZ2SUUR.js} +2 -2
- package/dist/{history-GGO5AWJB.js → history-HWPRJFR5.js} +49 -22
- package/dist/hyperframe-runtime.js +214 -68
- package/dist/hyperframe.manifest.json +1 -1
- package/dist/hyperframe.runtime.iife.js +214 -68
- package/dist/hyperframes-player.global.js +4 -5
- package/dist/hyperframes-slideshow.global.js +3 -4
- package/dist/{info-3GFWUBJC.js → info-WJDTQ4OZ.js} +11 -11
- package/dist/{init-36OPU2ZG.js → init-EXHDN7RO.js} +31 -31
- package/dist/{inspect-F2HEL5ON.js → inspect-EAOLZOMQ.js} +33 -33
- package/dist/{installer-NI6P6GC4.js → installer-LZ4X5TZZ.js} +6 -6
- package/dist/{keyframes-7OY3LMAZ.js → keyframes-FSZYNEDN.js} +8 -8
- package/dist/{lambda-6GJIWNJ3.js → lambda-3GAKHMC3.js} +7 -7
- package/dist/{layout-FTMLNL5A.js → layout-M2TQ2CIX.js} +33 -33
- package/dist/{lint-U6POHUON.js → lint-7C5UPTNQ.js} +11 -11
- package/dist/{lintProject-UBZ3TDHU.js → lintProject-SSEXWCH6.js} +3 -3
- package/dist/{list-IP5KI5Q2.js → list-GU5KBZ73.js} +2 -2
- package/dist/{login-4VWTVPHG.js → login-ZL2NYBIZ.js} +4 -4
- package/dist/{manager-YKMHR6LN.js → manager-5ORDVWJB.js} +3 -3
- package/dist/{media-treatment-XGV44AGV.js → media-treatment-QC3TAHVU.js} +82 -54
- package/dist/{models-UCXB6UR5.js → models-A54I4QR5.js} +14 -14
- package/dist/{motionShot-WPVNBXKA.js → motionShot-ZXPK562F.js} +35 -29
- package/dist/{normalize-audio-TYJ3UEHO.js → normalize-audio-CAP3DAE6.js} +10 -10
- package/dist/{open-HENOLVB2.js → open-GUSBNMDB.js} +6 -6
- package/dist/{parakeetRunner-VFQ6WFTD.js → parakeetRunner-GCCH72CO.js} +14 -14
- package/dist/{pipeline-6WPSC3H4.js → pipeline-SCJ2MWYH.js} +11 -11
- package/dist/{play-OI53WNUM.js → play-FP2QLMGM.js} +26 -26
- package/dist/{preflight-B4AFK3RG.js → preflight-ONF5AJNO.js} +5 -5
- package/dist/{present-NGMEQ4NO.js → present-H5SA4APW.js} +23 -23
- package/dist/{preview-VT2HWRWZ.js → preview-ATPVKA6K.js} +57 -26
- package/dist/{producer-7TYEAUF7.js → producer-VBYUC27R.js} +1 -1
- package/dist/{projectConfig-B2AF5DXY.js → projectConfig-SBRMQZGG.js} +8 -8
- package/dist/{publication-2PANQVC6.js → publication-5BQICRZO.js} +4 -4
- package/dist/{publish-O5OL42BG.js → publish-XDUZA3E3.js} +27 -26
- package/dist/{remove-background-T2JM6UVP.js → remove-background-GA6F7JZW.js} +12 -12
- package/dist/{render-Z253WHBK.js → render-KUVZFNQD.js} +27 -27
- package/dist/{render-W7OFXDOJ.js → render-PCFO45RK.js} +5 -5
- package/dist/{render-OLPKOJRU.js → render-XCYXFZTL.js} +12 -12
- package/dist/{render-batch-46IIBFKL.js → render-batch-7R2NRNVJ.js} +5 -5
- package/dist/{renderCancellation-QTZOCDJ2.js → renderCancellation-NIXEWRAO.js} +10 -10
- package/dist/renderSetupWorker.js +3 -3
- package/dist/{resolver-J2PL5FVJ.js → resolver-C4FPX72I.js} +6 -6
- package/dist/{sherpa-ZF42V3RN.js → sherpa-IQY52XU6.js} +14 -14
- package/dist/skills/media-use/references/media-treatments.md +5 -1
- package/dist/{skills-ACDOO3PX.js → skills-JSSAEKUW.js} +7 -7
- package/dist/{skillsUpdateCheck-L5OXVVPU.js → skillsUpdateCheck-XE5E2K2F.js} +3 -3
- package/dist/{slideshow-4OJEPWNZ.js → slideshow-YTWATJRT.js} +1 -1
- package/dist/{snapshot-UUVNZOW5.js → snapshot-QMQOE2DD.js} +34 -34
- package/dist/{src-BSLKXEGX.js → src-2GMPFYHL.js} +11 -9
- package/dist/{src-KS3AWFGT.js → src-R55QLGWI.js} +13 -13
- package/dist/{staticProjectServer-2TTVGPQH.js → staticProjectServer-YH2RHYKW.js} +20 -20
- package/dist/{status-LXPGSSKY.js → status-PTKNQD2E.js} +2 -2
- package/dist/studio/assets/{hyperframes-player-DZ5JrMDg.js → hyperframes-player-_eMxRXF_.js} +3 -3
- package/dist/studio/assets/{index-BqFRhNZa.js → index-6okhHdnH.js} +1 -1
- package/dist/studio/assets/{index-BOs6C0aZ.js → index-CEq9KmY2.js} +1 -1
- package/dist/studio/assets/{index-D8W0a0Z9.js → index-bXzd7tvF.js} +135 -135
- package/dist/studio/index.html +1 -1
- package/dist/{studio-api-WYWF7XRC.js → studio-api-T2TS2CHL.js} +16 -14
- package/dist/{studioServer-3FG4YTP7.js → studioServer-Q4MT44LT.js} +50 -50
- package/dist/{system-OQLOGGPJ.js → system-OXRG57F2.js} +2 -2
- package/dist/{telemetry-PAOOB4T4.js → telemetry-V5JYZDS4.js} +5 -5
- package/dist/{timeline-JIIJKKPC.js → timeline-KTCTOKF5.js} +34 -25
- package/dist/{tokens-3QRAM75Z.js → tokens-ZHREZPK6.js} +2 -2
- package/dist/{transcribe-QSBP5MUG.js → transcribe-4QDEWCE6.js} +12 -12
- package/dist/{transcribe-SZB6UMXE.js → transcribe-CRAV4FU3.js} +13 -13
- package/dist/{updateCheck-V3DSB26K.js → updateCheck-E7RMSK3E.js} +2 -2
- package/dist/{upgrade-L5GISOEV.js → upgrade-27PFTDCV.js} +2 -2
- package/dist/{urlDownloader-52FERT4X.js → urlDownloader-EAF6PLUP.js} +9 -9
- package/dist/{validate-HVVLX7KO.js → validate-OKNFDBMG.js} +27 -27
- package/dist/{video-MEOWRMFG.js → video-IEVS4FIH.js} +10 -10
- package/package.json +3 -2
- package/dist/chunk-AUWHD7RA.js +0 -3753
- package/dist/studio/chunk-6JY3MTIX.js +0 -1204
- package/dist/studio/chunk-EEXSYY5F.js +0 -190
- package/dist/studio/chunk-NZPJUZKT.js +0 -1538
- package/dist/studio/chunk-PZ5AY32C.js +0 -10
- package/dist/studio/chunk-TP6D3U37.js +0 -845
- package/dist/studio/chunk-Y2OHHNM2.js +0 -970
- package/dist/studio/domEditingLayers-PTP2ICGM.js +0 -47
- package/dist/studio/index.css +0 -165
- package/dist/studio/index.d.ts +0 -4318
- package/dist/studio/index.js +0 -100952
- package/dist/studio/player.d.ts +0 -30
- package/dist/studio/player.js +0 -10
- package/dist/studio/styles/tailwind-preset.d.ts +0 -39
- package/dist/studio/styles/tailwind-preset.js +0 -50
- package/dist/studio/styles.css +0 -1
- package/dist/studio/ui.d.ts +0 -297
- package/dist/studio/ui.js +0 -66
|
@@ -58,7 +58,7 @@ function getCgroupMemoryLimitMb() {
|
|
|
58
58
|
_cachedCgroupLimitMb = parseCgroupLimitMb(v2Content, v1Content);
|
|
59
59
|
if (_cachedCgroupLimitMb !== null) {
|
|
60
60
|
console.warn(
|
|
61
|
-
`[SystemMemory] cgroup memory limit detected: ${_cachedCgroupLimitMb} MiB
|
|
61
|
+
`[SystemMemory] cgroup memory limit detected: ${_cachedCgroupLimitMb} MiB. It governs memory-adaptive render behaviour instead of host RAM.`
|
|
62
62
|
);
|
|
63
63
|
}
|
|
64
64
|
return _cachedCgroupLimitMb;
|
|
@@ -16,10 +16,10 @@ import {
|
|
|
16
16
|
import {
|
|
17
17
|
formatVariableValidationIssue,
|
|
18
18
|
validateVariables
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-BAKPN2D2.js";
|
|
20
20
|
import {
|
|
21
21
|
extractCompositionMetadata
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-LFNQDTSH.js";
|
|
23
23
|
import {
|
|
24
24
|
c
|
|
25
25
|
} from "./chunk-ZTZA4UWZ.js";
|
|
@@ -4357,7 +4357,7 @@ function buildAspectMismatch(compositionWidth, compositionHeight, outputResoluti
|
|
|
4357
4357
|
compositionHeight,
|
|
4358
4358
|
outputResolution
|
|
4359
4359
|
);
|
|
4360
|
-
const suggestion = suggestedResolution ? ` The composition is ${describeOrientation(compositionWidth, compositionHeight)}
|
|
4360
|
+
const suggestion = suggestedResolution ? ` The composition is ${describeOrientation(compositionWidth, compositionHeight)}, so use --resolution ${suggestedResolution} instead.` : ` Pick a preset whose orientation matches, or omit --resolution to render at the composition's native dimensions.`;
|
|
4361
4361
|
return {
|
|
4362
4362
|
ok: false,
|
|
4363
4363
|
kind: "aspect-mismatch",
|
|
@@ -9,11 +9,11 @@ import {
|
|
|
9
9
|
formatPreviewProxyBox,
|
|
10
10
|
hdrToSdrToneMapFilter,
|
|
11
11
|
parseFirstFrameColour
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-BAKPN2D2.js";
|
|
13
13
|
import {
|
|
14
14
|
decodeAuthoredAttribute,
|
|
15
15
|
scanHtmlOpeningTags
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-LFNQDTSH.js";
|
|
17
17
|
import {
|
|
18
18
|
mkdirWithinProject,
|
|
19
19
|
realProjectRoot,
|
|
@@ -27,12 +27,12 @@ import {
|
|
|
27
27
|
} from "./chunk-IWFLMU2N.js";
|
|
28
28
|
import {
|
|
29
29
|
findFfBinary
|
|
30
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-VAS6HQX3.js";
|
|
31
31
|
import {
|
|
32
32
|
rewriteAssetPath
|
|
33
33
|
} from "./chunk-BSQ7XANM.js";
|
|
34
34
|
|
|
35
|
-
// ../studio-server/dist/chunk-
|
|
35
|
+
// ../studio-server/dist/chunk-EJC7TX3O.js
|
|
36
36
|
import { statSync } from "fs";
|
|
37
37
|
import { sep } from "path";
|
|
38
38
|
import { execFile } from "child_process";
|
|
@@ -336,7 +336,7 @@ async function scanProjectMediaCodecMap(projectDir, htmlSources, options = {}) {
|
|
|
336
336
|
return map;
|
|
337
337
|
}
|
|
338
338
|
|
|
339
|
-
// ../studio-server/dist/chunk-
|
|
339
|
+
// ../studio-server/dist/chunk-XKBQOQFZ.js
|
|
340
340
|
import { spawn } from "child_process";
|
|
341
341
|
import { createHash, randomUUID } from "crypto";
|
|
342
342
|
import { existsSync as existsSync2, renameSync, statSync as statSync2, unlinkSync as unlinkSync2, utimesSync } from "fs";
|
|
@@ -466,8 +466,9 @@ var ProxyTranscodeError = class extends Error {
|
|
|
466
466
|
}
|
|
467
467
|
};
|
|
468
468
|
var FfmpegUnavailableError = class extends ProxyTranscodeError {
|
|
469
|
-
constructor() {
|
|
470
|
-
super(
|
|
469
|
+
constructor(message = "ffmpeg binary not found", stderrTail = "") {
|
|
470
|
+
super(message, null, stderrTail);
|
|
471
|
+
this.name = "FfmpegUnavailableError";
|
|
471
472
|
}
|
|
472
473
|
};
|
|
473
474
|
var FfmpegMissingFilterError = class extends ProxyTranscodeError {
|
|
@@ -665,6 +666,13 @@ function proxyScaleFilter(box) {
|
|
|
665
666
|
const side = (d) => `min(trunc(${d}/2)*2\\,ceil(${d}*${factor}/2)*2)`;
|
|
666
667
|
return `scale=${side("iw")}:${side("ih")}`;
|
|
667
668
|
}
|
|
669
|
+
var STDERR_ERROR_LINE = /error|invalid|denied|no space|not found|unknown/i;
|
|
670
|
+
function stderrReason(stderrTail) {
|
|
671
|
+
const lines = stderrTail.split("\n").map((line2) => line2.trim()).filter(Boolean);
|
|
672
|
+
const errorLines = lines.filter((line2) => STDERR_ERROR_LINE.test(line2));
|
|
673
|
+
const line = errorLines.at(-1) ?? lines.at(-1);
|
|
674
|
+
return line ? `: ${line.replace(/[.!]+$/, "")}` : "";
|
|
675
|
+
}
|
|
668
676
|
async function runFfmpeg(sourcePath, outputPath, variant, box) {
|
|
669
677
|
const metadata = await probeMediaMetadata(sourcePath);
|
|
670
678
|
const ffmpegPath = findFfBinary("ffmpeg", { configuredMustExist: true });
|
|
@@ -747,7 +755,7 @@ async function runFfmpeg(sourcePath, outputPath, variant, box) {
|
|
|
747
755
|
stderrTail = (stderrTail + chunk.toString()).slice(-STDERR_TAIL_MAX_CHARS);
|
|
748
756
|
});
|
|
749
757
|
proc.on("error", (err) => {
|
|
750
|
-
reject(new
|
|
758
|
+
reject(new FfmpegUnavailableError(`failed to spawn ffmpeg: ${err.message}`, stderrTail));
|
|
751
759
|
});
|
|
752
760
|
proc.on("close", (code, signal) => {
|
|
753
761
|
if (code === 0) {
|
|
@@ -761,7 +769,13 @@ async function runFfmpeg(sourcePath, outputPath, variant, box) {
|
|
|
761
769
|
)
|
|
762
770
|
);
|
|
763
771
|
} else {
|
|
764
|
-
reject(
|
|
772
|
+
reject(
|
|
773
|
+
new ProxyTranscodeError(
|
|
774
|
+
`ffmpeg exited with code ${code}${stderrReason(stderrTail)}`,
|
|
775
|
+
code,
|
|
776
|
+
stderrTail
|
|
777
|
+
)
|
|
778
|
+
);
|
|
765
779
|
}
|
|
766
780
|
});
|
|
767
781
|
});
|
|
@@ -837,6 +851,25 @@ async function resolveProxy(projectDir, absoluteSourcePath, variant = "h264", bo
|
|
|
837
851
|
if (options.priority) prioritize(entry.job);
|
|
838
852
|
return joinJob(entry.promise, entry.job, options.signal);
|
|
839
853
|
}
|
|
854
|
+
async function resolveProxies(projectDir, sources) {
|
|
855
|
+
const results = [];
|
|
856
|
+
let next = 0;
|
|
857
|
+
const worker = async () => {
|
|
858
|
+
for (let index = next++; index < sources.length; index = next++) {
|
|
859
|
+
const { sourcePath, variant } = sources[index];
|
|
860
|
+
results[index] = await waitForProxy(
|
|
861
|
+
resolveProxy(projectDir, sourcePath, variant),
|
|
862
|
+
TRANSCODE_TIMEOUT_MS
|
|
863
|
+
).then(
|
|
864
|
+
(value) => ({ status: "fulfilled", value }),
|
|
865
|
+
(reason) => ({ status: "rejected", reason })
|
|
866
|
+
);
|
|
867
|
+
}
|
|
868
|
+
};
|
|
869
|
+
const workers = Math.min(MAX_CONCURRENT_TRANSCODES, sources.length);
|
|
870
|
+
await Promise.all(Array.from({ length: workers }, worker));
|
|
871
|
+
return results;
|
|
872
|
+
}
|
|
840
873
|
function joinJob(promise, job, signal) {
|
|
841
874
|
job.callers++;
|
|
842
875
|
if (!signal) return promise;
|
|
@@ -866,12 +899,13 @@ export {
|
|
|
866
899
|
cleanupProxyCache,
|
|
867
900
|
PROXY_PARAMS_VERSION,
|
|
868
901
|
CACHE_DIR_NAME,
|
|
869
|
-
TRANSCODE_TIMEOUT_MS,
|
|
870
902
|
PROXY_PENDING_RETRY_AFTER_SECONDS,
|
|
871
903
|
ProxyTranscodeError,
|
|
904
|
+
FfmpegUnavailableError,
|
|
872
905
|
ProxyCapacityError,
|
|
873
906
|
ProxyWaitTimeoutError,
|
|
874
907
|
waitForProxy,
|
|
875
908
|
proxyActivityMark,
|
|
876
|
-
resolveProxy
|
|
909
|
+
resolveProxy,
|
|
910
|
+
resolveProxies
|
|
877
911
|
};
|
|
@@ -7,29 +7,29 @@ var __dirname = __hf_dirname(__filename);
|
|
|
7
7
|
import {
|
|
8
8
|
RegistryCompatibilityError,
|
|
9
9
|
gateRegistryItemsCompatibility
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-6BSIQJPW.js";
|
|
11
11
|
import {
|
|
12
12
|
DEFAULT_PROJECT_CONFIG,
|
|
13
13
|
createProjectConfig,
|
|
14
14
|
loadProjectConfig,
|
|
15
15
|
projectConfigPath,
|
|
16
16
|
recordProjectRegistryItems
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-LE7T4ML7.js";
|
|
18
18
|
import {
|
|
19
19
|
resolveItemWithDependencies,
|
|
20
20
|
resolveItemsByTag
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-DDNS2674.js";
|
|
22
22
|
import {
|
|
23
23
|
InvalidVariableValuesError,
|
|
24
24
|
prepareItem,
|
|
25
25
|
publishItem
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-FDL4HV44.js";
|
|
27
27
|
import {
|
|
28
28
|
DEFAULT_REGISTRY_URL
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-XVIYZU3D.js";
|
|
30
30
|
import {
|
|
31
31
|
trackRegistryItemAdded
|
|
32
|
-
} from "./chunk-
|
|
32
|
+
} from "./chunk-55RZG5SQ.js";
|
|
33
33
|
import {
|
|
34
34
|
defineCommand
|
|
35
35
|
} from "./chunk-S3S4TGEH.js";
|
|
@@ -38,7 +38,7 @@ import {
|
|
|
38
38
|
} from "./chunk-PBN6GBJE.js";
|
|
39
39
|
import {
|
|
40
40
|
ITEM_TYPE_DIRS
|
|
41
|
-
} from "./chunk-
|
|
41
|
+
} from "./chunk-BAKPN2D2.js";
|
|
42
42
|
import {
|
|
43
43
|
isProjectRootMissing,
|
|
44
44
|
realpath
|
|
@@ -7,7 +7,7 @@ var __dirname = __hf_dirname(__filename);
|
|
|
7
7
|
import {
|
|
8
8
|
resolveConfig,
|
|
9
9
|
usesSoftwareWebGpu
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-JF5L5SQ6.js";
|
|
11
11
|
|
|
12
12
|
// src/browser/gpuPolicy.ts
|
|
13
13
|
function resolveLocalBrowserGpuMode(browserGpuArg, envMode = process.env.PRODUCER_BROWSER_GPU_MODE) {
|
|
@@ -17,7 +17,7 @@ function resolveLocalBrowserGpuMode(browserGpuArg, envMode = process.env.PRODUCE
|
|
|
17
17
|
return "auto";
|
|
18
18
|
}
|
|
19
19
|
async function resolveCaptureBrowserGpuMode(requestedMode, chromePath) {
|
|
20
|
-
const { resolveBrowserGpuMode } = await import("./src-
|
|
20
|
+
const { resolveBrowserGpuMode } = await import("./src-2GMPFYHL.js");
|
|
21
21
|
return resolveBrowserGpuMode(requestedMode, { chromePath });
|
|
22
22
|
}
|
|
23
23
|
function resolveLocalWebGpu(browserGpuMode, requiresWebGpu) {
|
|
@@ -6,24 +6,24 @@ var __filename = __hf_fileURLToPath(import.meta.url);
|
|
|
6
6
|
var __dirname = __hf_dirname(__filename);
|
|
7
7
|
import {
|
|
8
8
|
serveStaticProjectHtml
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-EGO6Z24R.js";
|
|
10
10
|
import {
|
|
11
11
|
resolveProject
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-AFIATIKS.js";
|
|
13
13
|
import {
|
|
14
14
|
AUDIT_SEEK_OPTIONS,
|
|
15
15
|
installPageFunctionGuard,
|
|
16
16
|
seekCompositionTimeline,
|
|
17
17
|
waitForCompositionFonts,
|
|
18
18
|
waitForRuntimeReady
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-SEABQTBP.js";
|
|
20
20
|
import {
|
|
21
21
|
launchManagedBrowser,
|
|
22
22
|
resolveManagedGpuMode
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-XOJDBRNF.js";
|
|
24
24
|
import {
|
|
25
25
|
resolveDiagnosticNavigationTimeoutMs
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-3HSWLZ6S.js";
|
|
27
27
|
import {
|
|
28
28
|
defineCommand
|
|
29
29
|
} from "./chunk-S3S4TGEH.js";
|
|
@@ -34,7 +34,7 @@ import {
|
|
|
34
34
|
import {
|
|
35
35
|
printDeprecationNotice,
|
|
36
36
|
withMeta
|
|
37
|
-
} from "./chunk-
|
|
37
|
+
} from "./chunk-3YUFN37G.js";
|
|
38
38
|
import {
|
|
39
39
|
normalizeErrorMessage
|
|
40
40
|
} from "./chunk-KNU5COPB.js";
|
|
@@ -707,7 +707,7 @@ async function collectTweenBoundaries(page) {
|
|
|
707
707
|
});
|
|
708
708
|
}
|
|
709
709
|
async function bundleProjectHtml(projectDir) {
|
|
710
|
-
const { bundleToSingleHtml } = await import("./compiler-
|
|
710
|
+
const { bundleToSingleHtml } = await import("./compiler-ACCPOZMQ.js");
|
|
711
711
|
return bundleToSingleHtml(projectDir);
|
|
712
712
|
}
|
|
713
713
|
async function alignViewportToComposition(page, url) {
|
|
@@ -729,13 +729,13 @@ async function alignViewportToComposition(page, url) {
|
|
|
729
729
|
async function runLayoutAudit(projectDir, opts) {
|
|
730
730
|
const { ensureBrowser } = await import("./manager-BPSR6D3V.js");
|
|
731
731
|
const puppeteer = await import("puppeteer-core");
|
|
732
|
-
const { buildChromeArgs } = await import("./src-
|
|
732
|
+
const { buildChromeArgs } = await import("./src-2GMPFYHL.js");
|
|
733
733
|
const {
|
|
734
734
|
assertWebGpuAdapterAvailable,
|
|
735
735
|
compositionRequiresWebGpu,
|
|
736
736
|
resolveLocalBrowserGpuMode,
|
|
737
737
|
resolveLocalWebGpu
|
|
738
|
-
} = await import("./gpuPolicy-
|
|
738
|
+
} = await import("./gpuPolicy-ZOUG66M7.js");
|
|
739
739
|
const html = await bundleProjectHtml(projectDir);
|
|
740
740
|
const server = await serveStaticProjectHtml(
|
|
741
741
|
projectDir,
|
|
@@ -20,30 +20,30 @@ import {
|
|
|
20
20
|
} from "./chunk-3DKN5WKL.js";
|
|
21
21
|
import {
|
|
22
22
|
runEnvironmentChecks
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-66SAATRI.js";
|
|
24
24
|
import {
|
|
25
25
|
getAvailableMemoryMb,
|
|
26
26
|
getFreeDiskMb,
|
|
27
27
|
getShmSizeMb,
|
|
28
28
|
getSystemMeta
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-XBSPQ52S.js";
|
|
30
30
|
import {
|
|
31
31
|
defineCommand
|
|
32
32
|
} from "./chunk-S3S4TGEH.js";
|
|
33
33
|
import {
|
|
34
34
|
resolveExtractCacheDir
|
|
35
|
-
} from "./chunk-
|
|
35
|
+
} from "./chunk-JF5L5SQ6.js";
|
|
36
36
|
import {
|
|
37
37
|
getUpdateMeta,
|
|
38
38
|
withMeta
|
|
39
|
-
} from "./chunk-
|
|
39
|
+
} from "./chunk-3YUFN37G.js";
|
|
40
40
|
import {
|
|
41
41
|
CONFIG_PATH,
|
|
42
42
|
withFileLock
|
|
43
43
|
} from "./chunk-XUXGIA7H.js";
|
|
44
44
|
import {
|
|
45
45
|
VERSION
|
|
46
|
-
} from "./chunk-
|
|
46
|
+
} from "./chunk-QTTDKWSM.js";
|
|
47
47
|
import {
|
|
48
48
|
normalizeErrorMessage
|
|
49
49
|
} from "./chunk-KNU5COPB.js";
|
|
@@ -232,7 +232,7 @@ function checkEnvironment() {
|
|
|
232
232
|
return { ok: true, detail: parts.join(" \xB7 ") };
|
|
233
233
|
}
|
|
234
234
|
async function checkWhisper() {
|
|
235
|
-
const { findWhisper, getInstallInstructions } = await import("./manager-
|
|
235
|
+
const { findWhisper, getInstallInstructions } = await import("./manager-5ORDVWJB.js");
|
|
236
236
|
const result = findWhisper();
|
|
237
237
|
if (result) {
|
|
238
238
|
return { ok: true, detail: result.executablePath };
|
|
@@ -6,8 +6,8 @@ var __filename = __hf_fileURLToPath(import.meta.url);
|
|
|
6
6
|
var __dirname = __hf_dirname(__filename);
|
|
7
7
|
|
|
8
8
|
// src/version.ts
|
|
9
|
-
var VERSION = true ? "0.8.
|
|
10
|
-
var PRODUCER_VERSION = true ? "0.8.
|
|
9
|
+
var VERSION = true ? "0.8.147" : "0.0.0-dev";
|
|
10
|
+
var PRODUCER_VERSION = true ? "0.8.147" : "0.0.0-dev";
|
|
11
11
|
|
|
12
12
|
export {
|
|
13
13
|
VERSION,
|
|
@@ -10,19 +10,19 @@ import {
|
|
|
10
10
|
import {
|
|
11
11
|
launchManagedBrowser,
|
|
12
12
|
resolveManagedGpuMode
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-XOJDBRNF.js";
|
|
14
14
|
import {
|
|
15
15
|
resolveDiagnosticNavigationTimeoutMs,
|
|
16
16
|
windowsChromeCrashRemediation
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-3HSWLZ6S.js";
|
|
18
18
|
import {
|
|
19
19
|
resolveLocalBrowserGpuMode,
|
|
20
20
|
resolveLocalWebGpu
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-P6HELLPU.js";
|
|
22
22
|
import {
|
|
23
23
|
assertWebGpuAdapterAvailable,
|
|
24
24
|
compositionRequiresWebGpu
|
|
25
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-JF5L5SQ6.js";
|
|
26
26
|
import {
|
|
27
27
|
normalizeErrorMessage
|
|
28
28
|
} from "./chunk-KNU5COPB.js";
|
|
@@ -52,7 +52,7 @@ function resolveCliChromeGpuMode(envMode = process.env.PRODUCER_BROWSER_GPU_MODE
|
|
|
52
52
|
return resolveLocalBrowserGpuMode(void 0, envMode);
|
|
53
53
|
}
|
|
54
54
|
function compositionRuntimeReadyInBrowser() {
|
|
55
|
-
return Boolean(Reflect.get(window, "__renderReady"));
|
|
55
|
+
return Boolean(Reflect.get(window, "__renderReady")) || typeof Reflect.get(window, "__hfStartupError") === "string";
|
|
56
56
|
}
|
|
57
57
|
function shaderTransitionsReadyInBrowser() {
|
|
58
58
|
function shaderTransitionRegistryReady() {
|
|
@@ -75,8 +75,11 @@ function shaderTransitionsReadyInBrowser() {
|
|
|
75
75
|
}
|
|
76
76
|
return shaderTransitionRegistryReady() ?? shaderLoadingOverlayReady();
|
|
77
77
|
}
|
|
78
|
-
function waitForRuntimeReady(page, timeoutMs) {
|
|
79
|
-
|
|
78
|
+
async function waitForRuntimeReady(page, timeoutMs) {
|
|
79
|
+
const settled = await page.waitForFunction(compositionRuntimeReadyInBrowser, { timeout: timeoutMs }).then(() => true).catch(() => false);
|
|
80
|
+
const startupError = await page.evaluate(() => Reflect.get(window, "__hfStartupError")).catch(() => void 0);
|
|
81
|
+
if (typeof startupError === "string") throw new Error(startupError);
|
|
82
|
+
return settled;
|
|
80
83
|
}
|
|
81
84
|
async function waitForCompositionSettle(page, options) {
|
|
82
85
|
const runtimeReady = await waitForRuntimeReady(page, options.renderReadyTimeoutMs);
|
|
@@ -104,7 +107,7 @@ async function openSettledCompositionPage(html, url, options) {
|
|
|
104
107
|
const { ensureBrowser, findSystemBrowser } = await import("./manager-BPSR6D3V.js");
|
|
105
108
|
const browser = await ensureBrowser();
|
|
106
109
|
const puppeteer = await import("puppeteer-core");
|
|
107
|
-
const { buildChromeArgs } = await import("./src-
|
|
110
|
+
const { buildChromeArgs } = await import("./src-2GMPFYHL.js");
|
|
108
111
|
const requestedGpuMode = options.browserGpuMode ?? resolveCliChromeGpuMode();
|
|
109
112
|
const requiresWebGpu = compositionRequiresWebGpu(html);
|
|
110
113
|
let softwareWebGpu = false;
|
|
@@ -8,7 +8,8 @@ var __dirname = __hf_dirname(__filename);
|
|
|
8
8
|
// ../parsers/dist/ffBinaries.js
|
|
9
9
|
import { execFileSync } from "child_process";
|
|
10
10
|
import { accessSync, constants, existsSync } from "fs";
|
|
11
|
-
import {
|
|
11
|
+
import { createRequire } from "module";
|
|
12
|
+
import { delimiter, dirname, join, resolve } from "path";
|
|
12
13
|
var FFMPEG_PATH_ENV = "HYPERFRAMES_FFMPEG_PATH";
|
|
13
14
|
var FFPROBE_PATH_ENV = "HYPERFRAMES_FFPROBE_PATH";
|
|
14
15
|
var ENV_BY_NAME = {
|
|
@@ -16,6 +17,8 @@ var ENV_BY_NAME = {
|
|
|
16
17
|
ffprobe: FFPROBE_PATH_ENV
|
|
17
18
|
};
|
|
18
19
|
var pathLookupCache = /* @__PURE__ */ new Map();
|
|
20
|
+
var MISS_TTL_MS = 5e3;
|
|
21
|
+
var lastMissAt = /* @__PURE__ */ new Map();
|
|
19
22
|
function candidateFileName(candidate) {
|
|
20
23
|
return candidate.split(/[\\/]/).at(-1)?.toLowerCase() ?? candidate.toLowerCase();
|
|
21
24
|
}
|
|
@@ -56,20 +59,36 @@ function scanPath(name) {
|
|
|
56
59
|
return chooseBestPathCandidate(name, candidates);
|
|
57
60
|
}
|
|
58
61
|
var COMMON_BIN_DIRS = process.platform === "win32" ? [] : ["/opt/homebrew/bin", "/usr/local/bin", "/usr/bin", "/bin", "/snap/bin"];
|
|
59
|
-
function
|
|
62
|
+
function findInCommonDirsOrInstallerPackage(name) {
|
|
60
63
|
for (const dir of COMMON_BIN_DIRS) {
|
|
61
64
|
const candidate = `${dir}/${name}`;
|
|
62
65
|
if (existsSync(candidate)) return candidate;
|
|
63
66
|
}
|
|
64
|
-
return
|
|
67
|
+
return findInInstallerPackage(name);
|
|
68
|
+
}
|
|
69
|
+
function binaryFileName(name) {
|
|
70
|
+
return process.platform === "win32" ? `${name}.exe` : name;
|
|
65
71
|
}
|
|
66
72
|
function findInProjectLocalBin(name) {
|
|
67
|
-
const
|
|
68
|
-
const candidate = resolve(".hyperframes", "bin", `${name}${extension}`);
|
|
73
|
+
const candidate = resolve(".hyperframes", "bin", binaryFileName(name));
|
|
69
74
|
return existsSync(candidate) ? candidate : void 0;
|
|
70
75
|
}
|
|
71
|
-
function
|
|
72
|
-
|
|
76
|
+
function tryResolve(fromFile, request) {
|
|
77
|
+
try {
|
|
78
|
+
return createRequire(fromFile).resolve(request);
|
|
79
|
+
} catch {
|
|
80
|
+
return void 0;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
function findInInstallerPackage(name) {
|
|
84
|
+
const project = resolve("package.json");
|
|
85
|
+
const platformManifest = `@${name}-installer/${process.platform}-${process.arch}/package.json`;
|
|
86
|
+
const installer = tryResolve(project, `@${name}-installer/${name}/package.json`);
|
|
87
|
+
const manifest = (installer && tryResolve(installer, platformManifest)) ?? tryResolve(project, platformManifest);
|
|
88
|
+
const candidate = manifest && join(dirname(manifest), binaryFileName(name));
|
|
89
|
+
return candidate && isExecutablePathCandidate(candidate) ? candidate : void 0;
|
|
90
|
+
}
|
|
91
|
+
function searchSystem(name) {
|
|
73
92
|
let found;
|
|
74
93
|
if (process.platform === "win32") {
|
|
75
94
|
found = scanPath(name);
|
|
@@ -87,8 +106,19 @@ function lookupOnSystem(name) {
|
|
|
87
106
|
}
|
|
88
107
|
}
|
|
89
108
|
found ??= findInProjectLocalBin(name);
|
|
90
|
-
found ??=
|
|
91
|
-
|
|
109
|
+
found ??= findInCommonDirsOrInstallerPackage(name);
|
|
110
|
+
return found;
|
|
111
|
+
}
|
|
112
|
+
function lookupOnSystem(name) {
|
|
113
|
+
const cached = pathLookupCache.get(name);
|
|
114
|
+
if (cached) return cached;
|
|
115
|
+
if (Date.now() - (lastMissAt.get(name) ?? -Infinity) < MISS_TTL_MS) return void 0;
|
|
116
|
+
const found = searchSystem(name);
|
|
117
|
+
if (!found) {
|
|
118
|
+
lastMissAt.set(name, Date.now());
|
|
119
|
+
return void 0;
|
|
120
|
+
}
|
|
121
|
+
const resolved = resolve(found);
|
|
92
122
|
pathLookupCache.set(name, resolved);
|
|
93
123
|
return resolved;
|
|
94
124
|
}
|
|
@@ -6,7 +6,7 @@ var __filename = __hf_fileURLToPath(import.meta.url);
|
|
|
6
6
|
var __dirname = __hf_dirname(__filename);
|
|
7
7
|
import {
|
|
8
8
|
resolveCaptureBrowserGpuMode
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-P6HELLPU.js";
|
|
10
10
|
import {
|
|
11
11
|
requestCliExit
|
|
12
12
|
} from "./chunk-PBN6GBJE.js";
|