@signalsandsorcery/plugin-sdk 2.24.1 → 2.25.1
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/index.d.mts +34 -2
- package/dist/index.d.ts +34 -2
- package/dist/index.js +22 -1
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +21 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -2473,6 +2473,25 @@ function parseCrossfadePairs(sceneData) {
|
|
|
2473
2473
|
}
|
|
2474
2474
|
return pairs;
|
|
2475
2475
|
}
|
|
2476
|
+
var FADE_FLOOR_DB = -80;
|
|
2477
|
+
function gainToDb(gain) {
|
|
2478
|
+
return gain <= 1e-4 ? FADE_FLOOR_DB : Math.max(FADE_FLOOR_DB, 20 * Math.log10(gain));
|
|
2479
|
+
}
|
|
2480
|
+
function buildCrossfadeVolumeCurves(bars, bpm, sliderPos, steps = 32) {
|
|
2481
|
+
const durationSeconds = bars * 4 * 60 / Math.max(1, bpm);
|
|
2482
|
+
const s = Math.min(0.98, Math.max(0.02, sliderPos));
|
|
2483
|
+
const round = (n) => Math.round(n * 1e3) / 1e3;
|
|
2484
|
+
const origin = [];
|
|
2485
|
+
const target = [];
|
|
2486
|
+
for (let i = 0; i <= steps; i++) {
|
|
2487
|
+
const x = i / steps;
|
|
2488
|
+
const time = round(x * durationSeconds);
|
|
2489
|
+
const theta = x <= s ? x / s * (Math.PI / 4) : Math.PI / 4 + (x - s) / (1 - s) * (Math.PI / 4);
|
|
2490
|
+
origin.push({ time, db: Math.round(gainToDb(Math.cos(theta)) * 100) / 100 });
|
|
2491
|
+
target.push({ time, db: Math.round(gainToDb(Math.sin(theta)) * 100) / 100 });
|
|
2492
|
+
}
|
|
2493
|
+
return { origin, target };
|
|
2494
|
+
}
|
|
2476
2495
|
|
|
2477
2496
|
// src/crossfade-inpaint.ts
|
|
2478
2497
|
var PITCH_NAMES = ["C", "C#", "D", "D#", "E", "F", "F#", "G", "G#", "A", "A#", "B"];
|
|
@@ -3764,7 +3783,7 @@ function useTrackReorder({
|
|
|
3764
3783
|
}
|
|
3765
3784
|
|
|
3766
3785
|
// src/constants/sdk-version.ts
|
|
3767
|
-
var PLUGIN_SDK_VERSION = "2.
|
|
3786
|
+
var PLUGIN_SDK_VERSION = "2.25.0";
|
|
3768
3787
|
|
|
3769
3788
|
// src/utils/format-concurrent-tracks.ts
|
|
3770
3789
|
function formatConcurrentTracks(ctx) {
|
|
@@ -3950,6 +3969,7 @@ export {
|
|
|
3950
3969
|
analyzeWavPeak,
|
|
3951
3970
|
asCrossfadeMeta,
|
|
3952
3971
|
buildCrossfadeInpaintPrompt,
|
|
3972
|
+
buildCrossfadeVolumeCurves,
|
|
3953
3973
|
calculateTimeBasedTarget,
|
|
3954
3974
|
cellToPx,
|
|
3955
3975
|
centerScrollTop,
|