@nodetool-ai/video-nodes 0.8.1 → 0.8.3
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/README.md +12 -0
- package/dist/.nodetool-build-stamp +1 -1
- package/dist/nodes/easeCurve.d.ts +52 -0
- package/dist/nodes/easeCurve.d.ts.map +1 -0
- package/dist/nodes/easeCurve.js +108 -0
- package/dist/nodes/easeCurve.js.map +1 -0
- package/dist/nodes/ffmpeg-helpers.d.ts +4 -0
- package/dist/nodes/ffmpeg-helpers.d.ts.map +1 -1
- package/dist/nodes/ffmpeg-helpers.js +18 -2
- package/dist/nodes/ffmpeg-helpers.js.map +1 -1
- package/dist/nodes/script.d.ts.map +1 -1
- package/dist/nodes/script.js +42 -16
- package/dist/nodes/script.js.map +1 -1
- package/dist/nodes/storyboard.d.ts +36 -7
- package/dist/nodes/storyboard.d.ts.map +1 -1
- package/dist/nodes/storyboard.js +222 -70
- package/dist/nodes/storyboard.js.map +1 -1
- package/dist/nodes/timeline/compositeRender.d.ts +17 -1
- package/dist/nodes/timeline/compositeRender.d.ts.map +1 -1
- package/dist/nodes/timeline/compositeRender.js +127 -104
- package/dist/nodes/timeline/compositeRender.js.map +1 -1
- package/dist/nodes/timeline/rawFrames.d.ts +10 -0
- package/dist/nodes/timeline/rawFrames.d.ts.map +1 -1
- package/dist/nodes/timeline/rawFrames.js +88 -4
- package/dist/nodes/timeline/rawFrames.js.map +1 -1
- package/dist/nodes/timeline.d.ts +1 -10
- package/dist/nodes/timeline.d.ts.map +1 -1
- package/dist/nodes/timeline.js +189 -68
- package/dist/nodes/timeline.js.map +1 -1
- package/dist/nodes/video.d.ts +22 -5
- package/dist/nodes/video.d.ts.map +1 -1
- package/dist/nodes/video.js +141 -4
- package/dist/nodes/video.js.map +1 -1
- package/package.json +10 -10
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rawFrames.js","sourceRoot":"","sources":["../../../src/nodes/timeline/rawFrames.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"rawFrames.js","sourceRoot":"","sources":["../../../src/nodes/timeline/rawFrames.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,KAAK,EAAuC,MAAM,oBAAoB,CAAC;AAChF,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAGlD,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE1D,OAAO,EACL,kBAAkB,EAClB,UAAU,EACV,WAAW,EACZ,MAAM,sBAAsB,CAAC;AAa9B;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAC,MAAe,EAAE,MAAe;IACxD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CACpB,CAAC,EACD,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,EACxC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAC3C,CAAC;IACF,OAAO;QACL,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC;QACpD,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC;KACvD,CAAC;AACJ,CAAC;AAED,6EAA6E;AAC7E,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,QAAgB;IACnD,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,WAAW,CAAC;QACnC,IAAI;QACJ,OAAO;QACP,iBAAiB;QACjB,KAAK;QACL,eAAe;QACf,qBAAqB;QACrB,KAAK;QACL,aAAa;QACb,QAAQ;KACT,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IACjD,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/D,CAAC;AAED,oEAAoE;AACpE,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,QAAgB;IACxD,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,WAAW,CAAC;QACnC,IAAI;QACJ,OAAO;QACP,iBAAiB;QACjB,KAAK;QACL,eAAe;QACf,uBAAuB;QACvB,KAAK;QACL,oCAAoC;QACpC,QAAQ;KACT,CAAC,CAAC;IACH,MAAM,CAAC,SAAS,EAAE,WAAW,GAAG,GAAG,CAAC,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAChE,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;IACrD,sEAAsE;IACtE,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,WAAW,CAAC,IAAc;IACjC,OAAO,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;AACpE,CAAC;AAED,oFAAoF;AACpF,SAAS,aAAa,CAAC,MAAgB;IACrC,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;QAClC,0EAA0E;QAC1E,oCAAoC;QACpC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACnB,IAAI,MAAM,CAAC,MAAM,GAAG,EAAE;YAAE,MAAM,CAAC,KAAK,EAAE,CAAC;IACzC,CAAC,CAAC,CAAC;IACH,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;AAC7D,CAAC;AAED,6DAA6D;AAC7D,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,QAAgB,EAChB,IAAa;IAEb,MAAM,KAAK,GAAG,WAAW,CAAC;QACxB,IAAI;QACJ,OAAO;QACP,IAAI;QACJ,QAAQ;QACR,KAAK;QACL,SAAS,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE;QACpC,WAAW;QACX,GAAG;QACH,IAAI;QACJ,UAAU;QACV,UAAU;QACV,MAAM;QACN,QAAQ;KACT,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC3C,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAE/D,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC1C,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAA4B,EAAE,EAAE,CACjD,MAAM,CACJ,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CACnE,CACF,CAAC;QACF,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CACzB,IAAI,KAAK,CAAC;YACR,CAAC,CAAC,OAAO,EAAE;YACX,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,kCAAkC,MAAM,EAAE,EAAE,CAAC,CAAC,CACpE,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IAC9C,IAAI,IAAI,CAAC,MAAM,GAAG,QAAQ,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CACb,mBAAmB,IAAI,CAAC,MAAM,gBAAgB,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,oBAAoB,QAAQ,GAAG,CACvG,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC;AACvD,CAAC;AAED,kFAAkF;AAClF,KAAK,UAAU,SAAS,CAAC,QAAgB;IACvC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IACzC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACjE,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QACjF,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrE,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,YAAY,CAAC,QAAgB,EAAE,MAAe;IAC3D,IAAI,KAA4C,CAAC;IACjD,IAAI,CAAC;QACH,KAAK,GAAG,MAAM,SAAS,CAAC,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IACpD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,2BAA2B,QAAQ,KAAM,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACtF,CAAC;IACD,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CAAC,2BAA2B,QAAQ,kBAAkB,CAAC,CAAC;IACzE,CAAC;IACD,MAAM,IAAI,GAAG,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,CAAC;IAC7E,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACtD,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACzC,OAAO,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACxD,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACrE,OAAO,EAAE,IAAI,EAAE,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC;AAC1F,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,QAAgB,EAChB,MAAe;IAEf,IAAI,MAAM,SAAS,CAAC,QAAQ,CAAC;QAAE,OAAO,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACrE,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC5C,OAAO,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,QAAQ,EAAE,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC1E,CAAC;AAgBD,oEAAoE;AACpE,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAe3B;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAClC,IAA6B;IAE7B,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IACtD,MAAM,OAAO,GAAG;QACd,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,cAAc,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI;QAC1C,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,GAAG,EAAE;QACzC,SAAS,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE;QACpC,aAAa;KACd,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;IAEzC,MAAM,KAAK,GAAG,WAAW,CAAC;QACxB,IAAI;QACJ,OAAO;QACP,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAClD,IAAI;QACJ,QAAQ;QACR,KAAK;QACL,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;QACjB,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5D,IAAI;QACJ,UAAU;QACV,UAAU;QACV,MAAM;QACN,QAAQ;KACT,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAE3C,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IAChD,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACzD,IAAI,UAAU,GAAiB,IAAI,CAAC;IACpC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAA4B,EAAE,EAAE;QACjD,UAAU;YACR,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACrE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;IACH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;QACzB,IAAI,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YAChD,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,iCAAiC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC;QACtE,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,IAAI,GAAsB,IAAI,CAAC;IAEnC,OAAO;QACL,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,KAAK,CAAC,OAAO,CAAC,KAAa;YACzB,IAAI,UAAU;gBAAE,MAAM,UAAU,CAAC;YACjC,OAAO,SAAS,IAAI,KAAK,EAAE,CAAC;gBAC1B,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;gBAClC,SAAS,IAAI,CAAC,CAAC;gBACf,IAAI,CAAC,KAAK;oBAAE,OAAO,IAAI,CAAC;gBACxB,IAAI,GAAG,KAAK,CAAC;YACf,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,KAAK;YACH,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxB,CAAC;KACF,CAAC;AACJ,CAAC;AAsBD;;;;GAIG;AACH,MAAM,qBAAqB,GAAG,MAAM,CAAC;AAErC,iFAAiF;AACjF,KAAK,UAAU,mBAAmB,CAAC,QAAgB,EAAE,GAAW,EAAE,MAAmB;IACnF,IAAI,MAAM,CAAC,OAAO;QAAE,OAAO,KAAK,CAAC;IACjC,MAAM,MAAM,GAAG,MAAM,IAAI,OAAO,CAAgB,CAAC,OAAO,EAAE,EAAE;QAC1D,MAAM,KAAK,GAAG,KAAK,CAAC,SAAS,EAAE;YAC7B,IAAI,EAAE,OAAO,EAAE,iBAAiB,EAAE,KAAK;YACvC,eAAe,EAAE,iBAAiB,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ;SAC/D,EAAE,EAAE,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC5C,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,MAAM,MAAM,GAAG,CAAC,KAAoB,EAAQ,EAAE;YAC5C,IAAI,OAAO;gBAAE,OAAO;YACpB,OAAO,GAAG,IAAI,CAAC;YACf,YAAY,CAAC,QAAQ,CAAC,CAAC;YACvB,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAC5C,OAAO,CAAC,KAAK,CAAC,CAAC;QACjB,CAAC,CAAC;QACF,MAAM,MAAM,GAAG,GAAS,EAAE;YACxB,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACtB,MAAM,CAAC,IAAI,CAAC,CAAC;QACf,CAAC,CAAC;QACF,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;QAC3D,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACzD,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;YACxC,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC;YACtB,IAAI,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,EAAE,CAAC;gBAC5B,MAAM,EAAE,CAAC;YACX,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrB,CAAC;QACH,CAAC,CAAC,CAAC;QACH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QACtC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAChG,IAAI,MAAM,CAAC,OAAO;YAAE,MAAM,EAAE,CAAC;IAC/B,CAAC,CAAC,CAAC;IACH,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAClC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACvD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IACnF,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC;IAC1C,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;QAC5C,MAAM,QAAQ,GAAG,KAAK,GAAG,GAAG,CAAC;QAC7B,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;QAC3D,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,QAAQ,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,eAAe,CAAC,CAAC,GAAG,QAAQ;YAAE,OAAO,KAAK,CAAC;IACrG,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAWrC;IACC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IACrC,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IAChD,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,IAAI,GAAG,GAAG,IAAI,GAAG,IAAI,CAAC;IAC3D,MAAM,eAAe,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC;IACjD,yEAAyE;IACzE,oCAAoC;IACpC,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CACvC,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,UAAU,CAAC,EAClC,IAAI,CAAC,KAAK,CAAC,CAAC,eAAe,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAC/C,CAAC,CAAC;IACH,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,YAAY,GAAG,CAAC,CAAC,CAAC;IACtB,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,IAAI,aAAa,GAAiB,EAAE,CAAC;IACrC,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,IAAI,MAAM,GAA4B,IAAI,CAAC;IAC3C,IAAI,IAAI,GAA6B,IAAI,CAAC;IAC1C,IAAI,cAAc,GAAkB,IAAI,CAAC;IACzC,IAAI,SAAS,GAAsB,IAAI,CAAC;IACxC,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;IAC9C,MAAM,WAAW,GAAG,mBAAmB,CACrC,QAAQ,EACR,GAAG,EACH,eAAe,CAAC,MAAM,CACvB,CAAC;IAEF,MAAM,MAAM,GAAG,CAAC,GAAW,EAAoB,EAAE,CAC/C,oBAAoB,CAAC;QACnB,QAAQ;QACR,IAAI;QACJ,GAAG;QACH,QAAQ,EAAE,GAAG;QACb,KAAK,EAAE,CAAC;QACR,cAAc,EAAE,IAAI,CAAC,cAAc;KACpC,CAAC,CAAC;IACL,MAAM,aAAa,GAAG,CAAC,GAAW,EAAoB,EAAE;QACtD,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,OAAO,IAAI,CAAC,CAAC;QACf,CAAC;QACD,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QACrB,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IAEF,OAAO;QACL,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,IAAI,OAAO;YACT,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,IAAI,kBAAkB;YACpB,OAAO,aAAa,CAAC,MAAM,GAAG,UAAU,CAAC;QAC3C,CAAC;QACD,KAAK,CAAC,gBAAgB,CAAC,GAAW;YAChC,IAAI,MAAM;gBAAE,OAAO,IAAI,CAAC;YACxB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YAChC,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC;YAClC,IAAI,MAAM;gBAAE,OAAO,IAAI,CAAC;YACxB,MAAM,QAAQ,GAAG,MAAM,GAAG,GAAG,CAAC;YAC9B,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACzC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,WAAW,CAAC,IAAI,IAAI,CAAC;YACzD,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;gBACzB,oEAAoE;gBACpE,sEAAsE;gBACtE,IAAI,MAAM,GAAG,MAAM,CAAC;gBACpB,IAAI,IAAI,KAAK,MAAM,IAAI,cAAc,KAAK,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;oBAC5D,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;oBAC/B,IAAI,GAAG,MAAM,CAAC;oBACd,cAAc,GAAG,MAAM,CAAC;oBACxB,aAAa,GAAG,EAAE,CAAC;oBACnB,YAAY,GAAG,CAAC,CAAC,CAAC;gBACpB,CAAC;gBACD,IAAI,KAAK,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBACpC,IAAI,CAAC,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;oBACzB,kEAAkE;oBAClE,mEAAmE;oBACnE,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;oBAC1B,KAAK,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;gBACxD,CAAC;gBACD,IAAI,MAAM;oBAAE,OAAO,IAAI,CAAC;gBACxB,IAAI,KAAK;oBAAE,SAAS,GAAG,KAAK,CAAC;gBAC7B,OAAO,KAAK,IAAI,SAAS,CAAC;YAC5B,CAAC;YACD,IAAI,IAAI,KAAK,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;gBACjC,aAAa,CAAC,WAAW,GAAG,GAAG,CAAC,CAAC;gBACjC,IAAI,GAAG,QAAQ,CAAC;gBAChB,WAAW,GAAG,WAAW,CAAC;gBAC1B,YAAY,GAAG,CAAC,CAAC,CAAC;gBAClB,aAAa,GAAG,EAAE,CAAC;gBACnB,cAAc,GAAG,IAAI,CAAC;YACxB,CAAC;YACD,IAAI,KAAK,GAAG,WAAW,GAAG,WAAW,CAAC;YACtC,IAAI,KAAK,IAAI,CAAC,IAAI,KAAK,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC;gBAC/C,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC;gBAC3C,IAAI,KAAK;oBAAE,SAAS,GAAG,KAAK,CAAC;gBAC7B,OAAO,KAAK,CAAC;YACf,CAAC;YACD,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,YAAY,EAAE,CAAC;gBACtC,kEAAkE;gBAClE,sEAAsE;gBACtE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,WAAW,GAAG,CAAC,CAAC,CAAC;gBACtD,aAAa,GAAG,EAAE,CAAC;gBACnB,IAAI,MAAM;oBAAE,OAAO,IAAI,CAAC;gBACxB,WAAW,GAAG,WAAW,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;gBACxC,YAAY,GAAG,CAAC,CAAC,CAAC;gBAClB,MAAM,GAAG,aAAa,CAAC,WAAW,GAAG,GAAG,CAAC,CAAC;gBAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC/B,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;oBACtC,IAAI,MAAM,IAAI,CAAC,KAAK;wBAAE,OAAO,IAAI,CAAC;oBAClC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC1B,YAAY,GAAG,CAAC,CAAC;gBACnB,CAAC;gBACD,KAAK,GAAG,WAAW,GAAG,WAAW,CAAC;YACpC,CAAC;YACD,IAAI,KAAK,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC;gBACjC,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC;gBAC3C,IAAI,KAAK;oBAAE,SAAS,GAAG,KAAK,CAAC;gBAC7B,OAAO,KAAK,CAAC;YACf,CAAC;YACD,aAAa,GAAG,EAAE,CAAC;YACnB,MAAM,MAAM,GAAG,MAAM,CAAC;YACtB,IAAI,CAAC,MAAM;gBAAE,OAAO,IAAI,CAAC;YACzB,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAC1C,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;YAC7C,IAAI,KAAK;gBAAE,SAAS,GAAG,KAAK,CAAC;YAC7B,OAAO,KAAK,CAAC;QACf,CAAC;QACD,KAAK;YACH,MAAM,GAAG,IAAI,CAAC;YACd,aAAa,GAAG,EAAE,CAAC;YACnB,eAAe,CAAC,KAAK,EAAE,CAAC;YACxB,MAAM,EAAE,KAAK,EAAE,CAAC;QAClB,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,WAAW;IAUI,MAAM;IACN,UAAU;IAVrB,MAAM,GAAa,EAAE,CAAC;IACtB,QAAQ,GAAG,CAAC,CAAC;IACb,OAAO,GAAgD,IAAI,CAAC;IAC5D,OAAO,GAAiB,IAAI,CAAC;IAC7B,aAAa,GAAoC,IAAI,CAAC;IACtD,KAAK,GAAG,KAAK,CAAC;IACd,MAAM,GAAG,KAAK,CAAC;IAEvB,YACmB,MAAgB,EAChB,UAAkB;sBADlB,MAAM;0BACN,UAAU;QAE3B,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;YAClC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACxB,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,MAAM,CAAC;YAC9B,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,IAAI,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,GAAG,gBAAgB,EAAE,CAAC;gBACvD,MAAM,CAAC,KAAK,EAAE,CAAC;YACjB,CAAC;QACH,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;YACpB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;YAClB,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAY,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACzD,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC;IACnC,CAAC;IAED,IAAI;QACF,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACtD,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC1B,IAAI,KAAK;YAAE,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC5D,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACrB,OAAO,IAAI,OAAO,CAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACxD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;YACvB,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC;QAC9B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,CAAC,KAAY;QACf,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC;QAClC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC;IAClB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QAClB,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;IAC5B,CAAC;IAEO,KAAK;QACX,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO;QAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC1B,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;YAC7B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;YAC1B,OAAO,CAAC,KAAK,CAAC,CAAC;YACf,OAAO;QACT,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;YAC7B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;YAC1B,OAAO,CAAC,IAAI,CAAC,CAAC;QAChB,CAAC;IACH,CAAC;IAED,uEAAuE;IAC/D,IAAI;QACV,IAAI,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU;YAAE,OAAO,IAAI,CAAC;QACjD,MAAM,MAAM,GACV,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzE,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAClD,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC9C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC;QAC5B,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,GAAG,gBAAgB,EAAE,CAAC;YACxD,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACvB,CAAC;QACD,OAAO,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;CACF;AAUD;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,OAAe;IACpD,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,CAAC,cAAc,EAAE,WAAW,CAAC,EAAE;YACjE,SAAS,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI;SAC3B,CAAC,CAAC;QACH,0EAA0E;QAC1E,+DAA+D;QAC/D,OAAO,MAAM;aACV,KAAK,CAAC,IAAI,CAAC;aACX,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC;IAC7D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB;IAChC,OAAO;QACL,MAAM;QACN,SAAS;QACT,SAAS;QACT,UAAU;QACV,UAAU;QACV,SAAS;QACT,KAAK;QACL,2CAA2C;QAC3C,aAAa;QACb,OAAO;QACP,kBAAkB;QAClB,OAAO;QACP,YAAY;QACZ,OAAO;KACR,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAOhC;IACC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAC7C,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,kBAAkB,EAAE,CAAC;IAC7D,MAAM,KAAK,GAAG,WAAW,CAAC;QACxB,IAAI;QACJ,IAAI;QACJ,OAAO;QACP,IAAI;QACJ,UAAU;QACV,UAAU;QACV,MAAM;QACN,IAAI;QACJ,GAAG,KAAK,IAAI,MAAM,EAAE;QACpB,IAAI;QACJ,MAAM,CAAC,GAAG,CAAC;QACX,IAAI;QACJ,QAAQ;QACR,GAAG,WAAW;QACd,OAAO;KACR,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC3C,4EAA4E;IAC5E,qBAAqB;IACrB,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;IAEtB,IAAI,OAAO,GAAiB,IAAI,CAAC;IACjC,MAAM,aAAa,GAAG,IAAI,GAAG,EAA0B,CAAC;IACxD,MAAM,IAAI,GAAG,CAAC,KAAY,EAAQ,EAAE;QAClC,IAAI,OAAO;YAAE,OAAO;QACpB,OAAO,GAAG,KAAK,CAAC;QAChB,KAAK,MAAM,MAAM,IAAI,aAAa;YAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAClD,aAAa,CAAC,KAAK,EAAE,CAAC;IACxB,CAAC,CAAC;IACF,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAA4B,EAAE,EAAE;QACjD,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;IACH,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC9B,MAAM,MAAM,GAAG,IAAI,OAAO,CAAgB,CAAC,OAAO,EAAE,EAAE,CACpD,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;QACzB,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;YACf,IAAI,CAAC,IAAI,KAAK,CAAC,yCAAyC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC;QACvE,CAAC;aAAM,IAAI,aAAa,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC,CAAC;QAClE,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC;IAChB,CAAC,CAAC,CACH,CAAC;IAEF,OAAO;QACL,KAAK,CAAC,KAAK,CAAC,IAAgB;YAC1B,IAAI,OAAO;gBAAE,MAAM,OAAO,CAAC;YAC3B,MAAM,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;YACzF,IAAI,CAAC,EAAE,EAAE,CAAC;gBACR,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;oBAC1C,MAAM,aAAa,GAAG,CAAC,KAAY,EAAQ,EAAE;wBAC3C,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;wBAClC,aAAa,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;wBACpC,MAAM,CAAC,KAAK,CAAC,CAAC;oBAChB,CAAC,CAAC;oBACF,MAAM,OAAO,GAAG,GAAS,EAAE;wBACzB,aAAa,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;wBACpC,OAAO,EAAE,CAAC;oBACZ,CAAC,CAAC;oBACF,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;oBACjC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;oBACnC,IAAI,OAAO;wBAAE,aAAa,CAAC,OAAO,CAAC,CAAC;gBACtC,CAAC,CAAC,CAAC;YACL,CAAC;YACD,IAAI,OAAO;gBAAE,MAAM,OAAO,CAAC;QAC7B,CAAC;QACD,KAAK,CAAC,MAAM;YACV,IAAI,OAAO;gBAAE,MAAM,OAAO,CAAC;YAC3B,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;YAClB,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC;YAC1B,IAAI,OAAO;gBAAE,MAAM,OAAO,CAAC;YAC3B,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,yCAAyC,MAAM,EAAE,EAAE,CAAC,CAAC;YACvE,CAAC;QACH,CAAC;QACD,KAAK;YACH,IAAI,CAAC,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC,CAAC;YAC3C,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACtB,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxB,CAAC;KACF,CAAC;AACJ,CAAC"}
|
package/dist/nodes/timeline.d.ts
CHANGED
|
@@ -29,16 +29,7 @@ import type { DocumentRef, TimelineRef, VideoRef } from "@nodetool-ai/protocol";
|
|
|
29
29
|
import type { ProcessingContext } from "@nodetool-ai/runtime";
|
|
30
30
|
import { type TimelineSequence } from "@nodetool-ai/timeline";
|
|
31
31
|
import { type ResolvedTimelineOutput } from "./timeline/outputFormats.js";
|
|
32
|
-
/**
|
|
33
|
-
* linkIds of audio-track clips that are the detached audio representation of a
|
|
34
|
-
* video clip. The mere presence of such a clip means the linked video's own
|
|
35
|
-
* muxed audio must be suppressed (the editor mutes the video element; audio
|
|
36
|
-
* comes only from audio-track clips). This is intentionally NOT gated on
|
|
37
|
-
* mute/hidden — those govern whether the audio clip is mixed in, not whether
|
|
38
|
-
* the video's embedded audio resurfaces. If the user deletes the audio clip,
|
|
39
|
-
* the store auto-unlinks the lone survivor, clearing the video's linkId, so the
|
|
40
|
-
* video's audio returns on its own.
|
|
41
|
-
*/
|
|
32
|
+
/** The detached-audio linkIds of a sequence; see the shared rule. */
|
|
42
33
|
export declare function extractedAudioLinkIds(seq: TimelineSequence): Set<string>;
|
|
43
34
|
/** Add the sequence's audible tracks and embedded video audio to a composited video. */
|
|
44
35
|
export declare function mixCompositedTimelineAudio(opts: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timeline.d.ts","sourceRoot":"","sources":["../../src/nodes/timeline.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAAE,QAAQ,EAAQ,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAChF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE9D,OAAO,
|
|
1
|
+
{"version":3,"file":"timeline.d.ts","sourceRoot":"","sources":["../../src/nodes/timeline.ts"],"names":[],"mappings":"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"}
|
package/dist/nodes/timeline.js
CHANGED
|
@@ -32,13 +32,13 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
32
32
|
};
|
|
33
33
|
import { BaseNode, prop } from "@nodetool-ai/node-sdk";
|
|
34
34
|
import { loadMediaRefBytes } from "@nodetool-ai/runtime";
|
|
35
|
-
import { createTimeOrderedUuid, DEFAULT_MIDI_INSTRUMENT, encodeWavPcm16, ffmpegFadeCurve, fillTimelineText, resolveClipFades, retargetSequence, hasTimeRemap, sourceRate, makeClip, makeSequence, makeTrack, renderMidiClip, resolveTempo, timeRemapAudioSegments } from "@nodetool-ai/timeline";
|
|
35
|
+
import { computeModel3DBakeHash, createTimeOrderedUuid, DEFAULT_MIDI_INSTRUMENT, effectiveAssetId, extractedAudioLinkIds as sharedExtractedAudioLinkIds, soundTrackSoloed, videoClipsWithOwnAudio, encodeWavPcm16, ffmpegFadeCurve, fillTimelineText, resolveClipFades, retargetSequence, hasTimeRemap, sourceRate, makeClip, makeSequence, makeTrack, renderMidiClip, loadSamplerSamples, resolveTempo, timeRemapAudioSegments } from "@nodetool-ai/timeline";
|
|
36
36
|
import { tagAsNode, tagAsServer } from "@nodetool-ai/nodes-utils";
|
|
37
37
|
import { promises as fs } from "node:fs";
|
|
38
38
|
import os from "node:os";
|
|
39
39
|
import path from "node:path";
|
|
40
|
-
import { AssetFiles } from "./timeline/assetFiles.js";
|
|
41
|
-
import { execFfmpeg, execFfprobe, ffprobeDuration, FFMPEG_MAX_BUFFER, MissingBinaryError } from "./ffmpeg-helpers.js";
|
|
40
|
+
import { AssetFiles, assetFileName } from "./timeline/assetFiles.js";
|
|
41
|
+
import { atempoChain, execFfmpeg, execFfprobe, ffprobeDuration, FFMPEG_MAX_BUFFER, MissingBinaryError } from "./ffmpeg-helpers.js";
|
|
42
42
|
import { CompositorUnavailableError, renderTimelineComposited } from "./timeline/compositeRender.js";
|
|
43
43
|
import { ALPHA_OUTPUT_FORMATS, MissingEncoderError, resolveTimelineOutput, TIMELINE_OUTPUT_FORMATS } from "./timeline/outputFormats.js";
|
|
44
44
|
import { ffmpegHasEncoder } from "./timeline/rawFrames.js";
|
|
@@ -101,16 +101,20 @@ function renderableVideoClips(seq) {
|
|
|
101
101
|
/**
|
|
102
102
|
* Clips the mix draws from: audio-track clips backed by an asset, and midi
|
|
103
103
|
* clips, whose sound is rendered from the notes they carry rather than fetched
|
|
104
|
-
* (they have no `currentAssetId` at all).
|
|
104
|
+
* (they have no `currentAssetId` at all). An audio clip sounds under the same
|
|
105
|
+
* status rule its picture would be drawn under (`effectiveAssetId`).
|
|
105
106
|
*/
|
|
106
107
|
function mixableAudioClips(seq) {
|
|
107
108
|
const tracks = trackById(seq.tracks);
|
|
109
|
+
const hasSolo = soundTrackSoloed(seq.tracks);
|
|
108
110
|
return seq.clips
|
|
109
111
|
.filter((clip) => {
|
|
110
112
|
const track = tracks.get(clip.trackId);
|
|
111
113
|
if (!track || track.muted === true || clip.muted || clip.hidden) {
|
|
112
114
|
return false;
|
|
113
115
|
}
|
|
116
|
+
if (hasSolo && !track.solo)
|
|
117
|
+
return false;
|
|
114
118
|
if (clip.durationMs <= 0)
|
|
115
119
|
return false;
|
|
116
120
|
if (track.type === "midi") {
|
|
@@ -118,32 +122,13 @@ function mixableAudioClips(seq) {
|
|
|
118
122
|
}
|
|
119
123
|
return (track.type === "audio" &&
|
|
120
124
|
clip.mediaType === "audio" &&
|
|
121
|
-
!!clip
|
|
125
|
+
!!effectiveAssetId(clip));
|
|
122
126
|
})
|
|
123
127
|
.sort((a, b) => a.startMs - b.startMs);
|
|
124
128
|
}
|
|
125
|
-
/**
|
|
126
|
-
* linkIds of audio-track clips that are the detached audio representation of a
|
|
127
|
-
* video clip. The mere presence of such a clip means the linked video's own
|
|
128
|
-
* muxed audio must be suppressed (the editor mutes the video element; audio
|
|
129
|
-
* comes only from audio-track clips). This is intentionally NOT gated on
|
|
130
|
-
* mute/hidden — those govern whether the audio clip is mixed in, not whether
|
|
131
|
-
* the video's embedded audio resurfaces. If the user deletes the audio clip,
|
|
132
|
-
* the store auto-unlinks the lone survivor, clearing the video's linkId, so the
|
|
133
|
-
* video's audio returns on its own.
|
|
134
|
-
*/
|
|
129
|
+
/** The detached-audio linkIds of a sequence; see the shared rule. */
|
|
135
130
|
export function extractedAudioLinkIds(seq) {
|
|
136
|
-
|
|
137
|
-
const ids = new Set();
|
|
138
|
-
for (const clip of seq.clips) {
|
|
139
|
-
const track = tracks.get(clip.trackId);
|
|
140
|
-
if (track?.type === "audio" &&
|
|
141
|
-
clip.mediaType === "audio" &&
|
|
142
|
-
isNonEmptyString(clip.linkId)) {
|
|
143
|
-
ids.add(clip.linkId);
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
return ids;
|
|
131
|
+
return sharedExtractedAudioLinkIds(seq.clips, seq.tracks);
|
|
147
132
|
}
|
|
148
133
|
/** Scale + letterbox to the sequence frame, normalize fps and pixel format. */
|
|
149
134
|
function segmentVideoFilter(width, height, fps) {
|
|
@@ -234,25 +219,11 @@ async function encodeSegment(opts) {
|
|
|
234
219
|
/**
|
|
235
220
|
* Clips whose embedded audio the composited path must mix in itself: the
|
|
236
221
|
* rough cut carried a video clip's audio through its segment, but a
|
|
237
|
-
* frame-by-frame composite has no audio at all.
|
|
238
|
-
*
|
|
239
|
-
* {@link extractedAudioLinkIds}) are left out.
|
|
222
|
+
* frame-by-frame composite has no audio at all. The preview and browser
|
|
223
|
+
* export pick the same clips through `videoClipsWithOwnAudio`.
|
|
240
224
|
*/
|
|
241
225
|
function embeddedAudioClips(seq) {
|
|
242
|
-
|
|
243
|
-
const suppressed = extractedAudioLinkIds(seq);
|
|
244
|
-
return seq.clips
|
|
245
|
-
.filter((clip) => {
|
|
246
|
-
const track = tracks.get(clip.trackId);
|
|
247
|
-
return ((track?.type === "video" || track?.type === "overlay") &&
|
|
248
|
-
track.muted !== true &&
|
|
249
|
-
!clip.muted &&
|
|
250
|
-
clip.mediaType === "video" &&
|
|
251
|
-
!!clip.currentAssetId &&
|
|
252
|
-
clip.durationMs > 0 &&
|
|
253
|
-
!(isString(clip.linkId) && suppressed.has(clip.linkId)));
|
|
254
|
-
})
|
|
255
|
-
.sort((a, b) => a.startMs - b.startMs);
|
|
226
|
+
return videoClipsWithOwnAudio(seq.clips, seq.tracks).sort((a, b) => a.startMs - b.startMs);
|
|
256
227
|
}
|
|
257
228
|
/** Seconds, at millisecond resolution, for an ffmpeg filter argument. */
|
|
258
229
|
function ffSeconds(ms) {
|
|
@@ -309,21 +280,6 @@ function audioClipFilter(clip, inputIndex, label) {
|
|
|
309
280
|
steps.push(`adelay=${delay}|${delay}`);
|
|
310
281
|
return `[${inputIndex}:a]${steps.join(",")}[${label}]`;
|
|
311
282
|
}
|
|
312
|
-
/** `rate` as atempo factors, each inside the filter's own 0.5–2 range. */
|
|
313
|
-
function atempoChain(rate) {
|
|
314
|
-
const factors = [];
|
|
315
|
-
let remaining = rate;
|
|
316
|
-
while (remaining > 2) {
|
|
317
|
-
factors.push("2");
|
|
318
|
-
remaining /= 2;
|
|
319
|
-
}
|
|
320
|
-
while (remaining < 0.5) {
|
|
321
|
-
factors.push("0.5");
|
|
322
|
-
remaining *= 2;
|
|
323
|
-
}
|
|
324
|
-
factors.push(String(Number(remaining.toFixed(6))));
|
|
325
|
-
return factors;
|
|
326
|
-
}
|
|
327
283
|
/**
|
|
328
284
|
* One constant-rate stretch of a time-remapped clip: trim the source span the
|
|
329
285
|
* curve names, retime it to the stretch's timeline length, apply the clip's
|
|
@@ -347,7 +303,96 @@ function audioRemapSegmentFilter(clip, segment, inputIndex, label) {
|
|
|
347
303
|
steps.push(`adelay=${delay}|${delay}`);
|
|
348
304
|
return `[${inputIndex}:a]${steps.join(",")}[${label}]`;
|
|
349
305
|
}
|
|
350
|
-
/**
|
|
306
|
+
/** Clamp for an ffmpeg option that refuses values outside its range. */
|
|
307
|
+
function clampTo(value, min, max) {
|
|
308
|
+
return Math.min(max, Math.max(min, value));
|
|
309
|
+
}
|
|
310
|
+
/** Sample rate a track's effect chain runs at, the mix's own `-ar`. */
|
|
311
|
+
const EFFECT_SAMPLE_RATE = 48000;
|
|
312
|
+
/** A biquad frequency ffmpeg accepts, held below Nyquist as Web Audio holds it. */
|
|
313
|
+
function biquadHz(frequency) {
|
|
314
|
+
return clampTo(frequency, 1, EFFECT_SAMPLE_RATE / 2 - 1);
|
|
315
|
+
}
|
|
316
|
+
/**
|
|
317
|
+
* Web Audio's compressor adds makeup gain of its own: the gain that brings a
|
|
318
|
+
* full-scale input back to full scale, raised to the power 0.6. ffmpeg's
|
|
319
|
+
* `acompressor` adds none, so it is computed here from the curve at 0 dBFS
|
|
320
|
+
* with a quadratic soft knee, which is close to but not exactly the spec's.
|
|
321
|
+
*/
|
|
322
|
+
function compressorMakeupGain(e) {
|
|
323
|
+
const threshold = clampTo(e.thresholdDb, -100, 0);
|
|
324
|
+
const ratio = clampTo(e.ratio, 1, 20);
|
|
325
|
+
const knee = clampTo(e.kneeDb, 0, 40);
|
|
326
|
+
const over = -threshold;
|
|
327
|
+
let gainDb;
|
|
328
|
+
if (2 * over < -knee) {
|
|
329
|
+
gainDb = 0;
|
|
330
|
+
}
|
|
331
|
+
else if (2 * Math.abs(over) <= knee) {
|
|
332
|
+
gainDb = ((1 / ratio - 1) * (over + knee / 2) ** 2) / (2 * Math.max(knee, 1e-6));
|
|
333
|
+
}
|
|
334
|
+
else {
|
|
335
|
+
gainDb = threshold + over / ratio;
|
|
336
|
+
}
|
|
337
|
+
return clampTo(Math.pow(10, (-gainDb * 0.6) / 20), 1, 64);
|
|
338
|
+
}
|
|
339
|
+
/**
|
|
340
|
+
* ffmpeg steps for one enabled effect, matching the Web Audio node
|
|
341
|
+
* `AudioGraph.buildEffectUnit` builds for the preview. The shelves use Web
|
|
342
|
+
* Audio's fixed slope of 1, a lowpass/highpass Q is in dB as it is there, and
|
|
343
|
+
* a bandpass Q is linear. The compressor detects peaks; its knee is capped at
|
|
344
|
+
* the 18 dB `acompressor` allows.
|
|
345
|
+
*/
|
|
346
|
+
function audioEffectSteps(effect) {
|
|
347
|
+
switch (effect.type) {
|
|
348
|
+
case "gain":
|
|
349
|
+
return [`volume=${effect.gainDb}dB`];
|
|
350
|
+
case "eq3":
|
|
351
|
+
return [
|
|
352
|
+
`lowshelf=f=${biquadHz(effect.lowFreq)}:g=${effect.lowGainDb}:t=s:w=1`,
|
|
353
|
+
`equalizer=f=${biquadHz(effect.midFreq)}:t=q:w=${Math.max(0.0001, effect.midQ)}:g=${effect.midGainDb}`,
|
|
354
|
+
`highshelf=f=${biquadHz(effect.highFreq)}:g=${effect.highGainDb}:t=s:w=1`
|
|
355
|
+
];
|
|
356
|
+
case "filter": {
|
|
357
|
+
const q = effect.mode === "bandpass"
|
|
358
|
+
? Math.max(0.0001, effect.q)
|
|
359
|
+
: Math.max(0.0001, Math.pow(10, effect.q / 20));
|
|
360
|
+
return [`${effect.mode}=f=${biquadHz(effect.frequency)}:t=q:w=${q}`];
|
|
361
|
+
}
|
|
362
|
+
case "compressor":
|
|
363
|
+
return [
|
|
364
|
+
"acompressor=" +
|
|
365
|
+
[
|
|
366
|
+
`threshold=${clampTo(Math.pow(10, effect.thresholdDb / 20), 0.000976563, 1)}`,
|
|
367
|
+
`ratio=${clampTo(effect.ratio, 1, 20)}`,
|
|
368
|
+
`attack=${clampTo(effect.attackMs, 0.01, 2000)}`,
|
|
369
|
+
`release=${clampTo(effect.releaseMs, 0.01, 9000)}`,
|
|
370
|
+
`knee=${clampTo(Math.pow(10, effect.kneeDb / 20), 1, 8)}`,
|
|
371
|
+
`makeup=${compressorMakeupGain(effect)}`,
|
|
372
|
+
"detection=peak"
|
|
373
|
+
].join(":")
|
|
374
|
+
];
|
|
375
|
+
default:
|
|
376
|
+
return [];
|
|
377
|
+
}
|
|
378
|
+
}
|
|
379
|
+
/**
|
|
380
|
+
* The DSP chain of a track, in array order. Only audio and midi tracks carry
|
|
381
|
+
* one, as in the preview, where `AudioGraph.updateTracks` applies effects to
|
|
382
|
+
* those tracks alone.
|
|
383
|
+
*/
|
|
384
|
+
function trackEffectSteps(track) {
|
|
385
|
+
if (!track || (track.type !== "audio" && track.type !== "midi"))
|
|
386
|
+
return [];
|
|
387
|
+
const steps = (track.effects ?? [])
|
|
388
|
+
.filter((effect) => effect.enabled)
|
|
389
|
+
.flatMap(audioEffectSteps);
|
|
390
|
+
return steps.length > 0 ? [`aresample=${EFFECT_SAMPLE_RATE}`, ...steps] : [];
|
|
391
|
+
}
|
|
392
|
+
/**
|
|
393
|
+
* Anything that draws: media, titles, shapes, a caption riding a clip, or a 3D
|
|
394
|
+
* clip whose bake still matches it (a live one draws only in the editor).
|
|
395
|
+
*/
|
|
351
396
|
function hasRenderableVisual(seq) {
|
|
352
397
|
const tracks = trackById(seq.tracks);
|
|
353
398
|
return seq.clips.some((clip) => {
|
|
@@ -362,7 +407,14 @@ function hasRenderableVisual(seq) {
|
|
|
362
407
|
return !!clip.textStyle;
|
|
363
408
|
if (clip.mediaType === "shape")
|
|
364
409
|
return !!clip.shapeStyle;
|
|
365
|
-
|
|
410
|
+
if (clip.mediaType === "model3d") {
|
|
411
|
+
const bake = clip.model3dStyle?.bake;
|
|
412
|
+
return (bake !== undefined &&
|
|
413
|
+
computeModel3DBakeHash(clip, seq) === bake.dependencyHash);
|
|
414
|
+
}
|
|
415
|
+
return ((clip.mediaType === "video" ||
|
|
416
|
+
clip.mediaType === "image" ||
|
|
417
|
+
clip.mediaType === "overlay") &&
|
|
366
418
|
!!clip.currentAssetId);
|
|
367
419
|
});
|
|
368
420
|
}
|
|
@@ -387,11 +439,16 @@ const MIDI_SAMPLE_RATE = 48000;
|
|
|
387
439
|
*/
|
|
388
440
|
class MidiFiles {
|
|
389
441
|
workDir;
|
|
442
|
+
resolveAssetPath;
|
|
443
|
+
signal;
|
|
390
444
|
files = new Map();
|
|
391
445
|
tracks;
|
|
446
|
+
samples = new Map();
|
|
392
447
|
bpm;
|
|
393
|
-
constructor(workDir, seq) {
|
|
448
|
+
constructor(workDir, seq, resolveAssetPath, signal) {
|
|
394
449
|
this.workDir = workDir;
|
|
450
|
+
this.resolveAssetPath = resolveAssetPath;
|
|
451
|
+
this.signal = signal;
|
|
395
452
|
this.tracks = trackById(seq.tracks);
|
|
396
453
|
this.bpm = resolveTempo(seq).bpm;
|
|
397
454
|
}
|
|
@@ -403,12 +460,42 @@ class MidiFiles {
|
|
|
403
460
|
}
|
|
404
461
|
return pending;
|
|
405
462
|
}
|
|
463
|
+
loadSample(id) {
|
|
464
|
+
let pending = this.samples.get(id);
|
|
465
|
+
if (!pending) {
|
|
466
|
+
pending = (async () => {
|
|
467
|
+
const source = await this.resolveAssetPath(id);
|
|
468
|
+
if (!source)
|
|
469
|
+
throw new Error(`Sample unavailable: ${id}`);
|
|
470
|
+
const file = path.join(this.workDir, `sample_${assetFileName(id)}.f32`);
|
|
471
|
+
const probe = await execFfprobe(["-v", "error", "-select_streams", "a:0", "-show_entries", "stream=channels", "-of", "default=noprint_wrappers=1:nokey=1", source], { signal: this.signal });
|
|
472
|
+
const channels = Number(probe.stdout.trim());
|
|
473
|
+
if (!Number.isInteger(channels) || channels < 1 || channels > 32) {
|
|
474
|
+
throw new Error("Sampler recordings must contain between 1 and 32 audio channels");
|
|
475
|
+
}
|
|
476
|
+
// Match the browser's arithmetic mean. FFmpeg's default stereo downmix adds 3 dB.
|
|
477
|
+
const downmix = `pan=mono|c0=${Array.from({ length: channels }, (_, i) => `${1 / channels}*c${i}`).join("+")}`;
|
|
478
|
+
// Decode one extra frame to distinguish an overlong recording from a valid one.
|
|
479
|
+
await execFfmpeg(["-y", "-i", source, "-map", "0:a:0", "-vn", "-t", "60.001", "-af", downmix, "-ar", String(MIDI_SAMPLE_RATE), "-f", "f32le", file], { signal: this.signal });
|
|
480
|
+
const bytes = await fs.readFile(file);
|
|
481
|
+
if (bytes.length > 60 * MIDI_SAMPLE_RATE * 4)
|
|
482
|
+
throw new Error("Sampler recordings must be 60 seconds or shorter. Trim this asset first.");
|
|
483
|
+
const samples = new Float32Array(bytes.length / 4);
|
|
484
|
+
for (let i = 0; i < samples.length; i++)
|
|
485
|
+
samples[i] = bytes.readFloatLE(i * 4);
|
|
486
|
+
return { samples, sampleRate: MIDI_SAMPLE_RATE };
|
|
487
|
+
})();
|
|
488
|
+
this.samples.set(id, pending);
|
|
489
|
+
}
|
|
490
|
+
return pending;
|
|
491
|
+
}
|
|
406
492
|
async write(clip) {
|
|
407
493
|
// The instrument belongs to the track, not the clip.
|
|
408
494
|
const instrument = this.tracks.get(clip.trackId)?.instrument ?? DEFAULT_MIDI_INSTRUMENT;
|
|
409
495
|
const mono = renderMidiClip({
|
|
410
496
|
clip,
|
|
411
497
|
bpm: this.bpm,
|
|
498
|
+
samples: await loadSamplerSamples(instrument, id => this.loadSample(id)),
|
|
412
499
|
instrument,
|
|
413
500
|
sampleRate: MIDI_SAMPLE_RATE
|
|
414
501
|
});
|
|
@@ -514,10 +601,21 @@ async function renderRoughCut(opts) {
|
|
|
514
601
|
* WebM track, which is why `audioCodec` is passed rather than assumed.
|
|
515
602
|
*/
|
|
516
603
|
async function mixAudioInto(opts) {
|
|
517
|
-
const { basePath, clips, baseHasAudio, assets, midi, workDir, extension, audioCodec } = opts;
|
|
604
|
+
const { basePath, clips, tracks, baseHasAudio, assets, midi, workDir, extension, audioCodec } = opts;
|
|
518
605
|
const inputs = ["-i", basePath];
|
|
519
606
|
const filters = [];
|
|
520
607
|
const labels = [];
|
|
608
|
+
// Each clip's stream(s), grouped by track so a track's effect chain runs
|
|
609
|
+
// over the sum of its clips, as the preview's chain does.
|
|
610
|
+
const trackLabels = new Map();
|
|
611
|
+
const labelsOf = (clip) => {
|
|
612
|
+
let list = trackLabels.get(clip.trackId);
|
|
613
|
+
if (!list) {
|
|
614
|
+
list = [];
|
|
615
|
+
trackLabels.set(clip.trackId, list);
|
|
616
|
+
}
|
|
617
|
+
return list;
|
|
618
|
+
};
|
|
521
619
|
let inputIndex = 1;
|
|
522
620
|
for (const [i, clip] of clips.entries()) {
|
|
523
621
|
const audioPath = await audioSourcePath(clip, assets, midi);
|
|
@@ -534,7 +632,7 @@ async function mixAudioInto(opts) {
|
|
|
534
632
|
inputs.push("-i", audioPath);
|
|
535
633
|
const label = `a${i}`;
|
|
536
634
|
filters.push(audioClipFilter(clip, inputIndex, label));
|
|
537
|
-
|
|
635
|
+
labelsOf(clip).push(`[${label}]`);
|
|
538
636
|
inputIndex += 1;
|
|
539
637
|
continue;
|
|
540
638
|
}
|
|
@@ -566,10 +664,24 @@ async function mixAudioInto(opts) {
|
|
|
566
664
|
]
|
|
567
665
|
: clipFadeSteps(clip, clip.startMs);
|
|
568
666
|
filters.push(`${segmentLabels.join("")}${steps.join(",")}[${faded}]`);
|
|
569
|
-
|
|
667
|
+
labelsOf(clip).push(`[${faded}]`);
|
|
668
|
+
continue;
|
|
669
|
+
}
|
|
670
|
+
labelsOf(clip).push(...segmentLabels);
|
|
671
|
+
}
|
|
672
|
+
const byTrack = trackById(tracks);
|
|
673
|
+
for (const [trackId, streams] of trackLabels) {
|
|
674
|
+
const steps = trackEffectSteps(byTrack.get(trackId));
|
|
675
|
+
if (steps.length === 0) {
|
|
676
|
+
labels.push(...streams);
|
|
570
677
|
continue;
|
|
571
678
|
}
|
|
572
|
-
|
|
679
|
+
const label = `t${filters.length}`;
|
|
680
|
+
const head = streams.length > 1
|
|
681
|
+
? [`amix=inputs=${streams.length}:duration=longest:normalize=0`]
|
|
682
|
+
: [];
|
|
683
|
+
filters.push(`${streams.join("")}${[...head, ...steps].join(",")}[${label}]`);
|
|
684
|
+
labels.push(`[${label}]`);
|
|
573
685
|
}
|
|
574
686
|
if (labels.length === 0)
|
|
575
687
|
return basePath;
|
|
@@ -613,9 +725,10 @@ export async function mixCompositedTimelineAudio(opts) {
|
|
|
613
725
|
return mixAudioInto({
|
|
614
726
|
basePath,
|
|
615
727
|
clips,
|
|
728
|
+
tracks: sequence.tracks,
|
|
616
729
|
baseHasAudio: false,
|
|
617
730
|
assets: { path: resolveAssetPath },
|
|
618
|
-
midi: new MidiFiles(workDir, sequence),
|
|
731
|
+
midi: new MidiFiles(workDir, sequence, resolveAssetPath),
|
|
619
732
|
workDir,
|
|
620
733
|
extension: output.extension,
|
|
621
734
|
audioCodec: output.audioCodec ?? "aac"
|
|
@@ -721,14 +834,14 @@ export class RenderTimelineNode extends BaseNode {
|
|
|
721
834
|
const workDir = await fs.mkdtemp(path.join(os.tmpdir(), "nodetool-timeline-"));
|
|
722
835
|
try {
|
|
723
836
|
const assets = new AssetFiles(workDir, ctx);
|
|
724
|
-
const midi = new MidiFiles(workDir, seq);
|
|
837
|
+
const midi = new MidiFiles(workDir, seq, id => assets.path(id), ctx.signal);
|
|
725
838
|
let basePath;
|
|
726
839
|
let baseHasAudio;
|
|
727
840
|
let audioToMix;
|
|
728
841
|
let renderMode;
|
|
729
842
|
try {
|
|
730
843
|
basePath = path.join(workDir, `composited.${output.extension}`);
|
|
731
|
-
const
|
|
844
|
+
const result = await renderTimelineComposited({
|
|
732
845
|
sequence: seq,
|
|
733
846
|
width,
|
|
734
847
|
height,
|
|
@@ -740,9 +853,16 @@ export class RenderTimelineNode extends BaseNode {
|
|
|
740
853
|
onProgress: this.progressReporter(ctx),
|
|
741
854
|
signal: ctx.signal
|
|
742
855
|
});
|
|
856
|
+
const { skippedClips, fontsUnavailable } = result;
|
|
857
|
+
if (result.complete === false) {
|
|
858
|
+
throw new Error(`Timeline export is incomplete: ${result.diagnostics.map((item) => `${item.clipId} (${item.startMs}–${item.endMs}ms): ${item.detail}`).join("; ")}`);
|
|
859
|
+
}
|
|
743
860
|
for (const name of skippedClips) {
|
|
744
861
|
this.log(ctx, `Clip "${name}" was skipped — its media could not be decoded`, "warning");
|
|
745
862
|
}
|
|
863
|
+
for (const family of fontsUnavailable) {
|
|
864
|
+
this.log(ctx, `Font "${family}" could not be resolved from Google Fonts — drawn in the fallback face`, "warning");
|
|
865
|
+
}
|
|
746
866
|
renderMode = "composited";
|
|
747
867
|
// A composite carries no sound: every audible clip is mixed in below,
|
|
748
868
|
// including the audio muxed into video clips.
|
|
@@ -812,6 +932,7 @@ export class RenderTimelineNode extends BaseNode {
|
|
|
812
932
|
? await mixAudioInto({
|
|
813
933
|
basePath,
|
|
814
934
|
clips: audioToMix,
|
|
935
|
+
tracks: seq.tracks,
|
|
815
936
|
baseHasAudio,
|
|
816
937
|
assets,
|
|
817
938
|
midi,
|