@opendaw/studio-adapters 0.0.79 → 0.0.81

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.
Files changed (43) hide show
  1. package/dist/BoxAdapters.d.ts +2 -1
  2. package/dist/BoxAdapters.d.ts.map +1 -1
  3. package/dist/BoxAdapters.js +3 -0
  4. package/dist/DeviceAdapter.d.ts +2 -0
  5. package/dist/DeviceAdapter.d.ts.map +1 -1
  6. package/dist/DeviceBox.d.ts.map +1 -1
  7. package/dist/DeviceBox.js +3 -8
  8. package/dist/EngineProcessorAttachment.d.ts +1 -0
  9. package/dist/EngineProcessorAttachment.d.ts.map +1 -1
  10. package/dist/EngineStateSchema.d.ts +3 -0
  11. package/dist/EngineStateSchema.d.ts.map +1 -1
  12. package/dist/EngineStateSchema.js +5 -1
  13. package/dist/VaryingTempoMap.d.ts +3 -2
  14. package/dist/VaryingTempoMap.d.ts.map +1 -1
  15. package/dist/VaryingTempoMap.js +99 -28
  16. package/dist/devices/audio-effects/NeuralAmpDeviceBoxAdapter.d.ts +5 -2
  17. package/dist/devices/audio-effects/NeuralAmpDeviceBoxAdapter.d.ts.map +1 -1
  18. package/dist/devices/audio-effects/NeuralAmpDeviceBoxAdapter.js +16 -1
  19. package/dist/devices/instruments/Playfield/PlayfieldSampleBoxAdapter.d.ts.map +1 -1
  20. package/dist/devices/instruments/Playfield/PlayfieldSampleBoxAdapter.js +3 -3
  21. package/dist/index.d.ts +3 -0
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +3 -0
  24. package/dist/nam/NeuralAmpModelBoxAdapter.d.ts +17 -0
  25. package/dist/nam/NeuralAmpModelBoxAdapter.d.ts.map +1 -0
  26. package/dist/nam/NeuralAmpModelBoxAdapter.js +30 -0
  27. package/dist/project/ProjectUtils.d.ts.map +1 -1
  28. package/dist/project/ProjectUtils.js +39 -44
  29. package/dist/protocols.d.ts +5 -0
  30. package/dist/protocols.d.ts.map +1 -1
  31. package/dist/timeline/TrackBoxAdapter.d.ts +2 -2
  32. package/dist/timeline/TrackBoxAdapter.d.ts.map +1 -1
  33. package/dist/timeline/TrackBoxAdapter.js +36 -30
  34. package/dist/timeline/event/SelectableValueEvent.d.ts +5 -0
  35. package/dist/timeline/event/SelectableValueEvent.d.ts.map +1 -0
  36. package/dist/timeline/event/SelectableValueEvent.js +1 -0
  37. package/dist/timeline/region/AudioRegionBoxAdapter.d.ts +2 -0
  38. package/dist/timeline/region/AudioRegionBoxAdapter.d.ts.map +1 -1
  39. package/dist/timeline/region/AudioRegionBoxAdapter.js +16 -3
  40. package/dist/timeline/region/FadingAdapter.d.ts +19 -0
  41. package/dist/timeline/region/FadingAdapter.d.ts.map +1 -0
  42. package/dist/timeline/region/FadingAdapter.js +41 -0
  43. package/package.json +38 -38
@@ -1,4 +1,4 @@
1
- import { AssertType, Class, Terminable } from "@opendaw/lib-std";
1
+ import { AssertType, Class, Option, Terminable } from "@opendaw/lib-std";
2
2
  import { Box } from "@opendaw/lib-box";
3
3
  import { BoxAdaptersContext } from "./BoxAdaptersContext";
4
4
  import { BoxAdapter } from "./BoxAdapter";
@@ -7,5 +7,6 @@ export declare class BoxAdapters implements Terminable {
7
7
  constructor(context: BoxAdaptersContext);
8
8
  terminate(): void;
9
9
  adapterFor<BOX extends Box, T extends BoxAdapter>(box: BOX, checkType: Class<T> | AssertType<T>): T;
10
+ optAdapter(box: Box): Option<BoxAdapter>;
10
11
  }
11
12
  //# sourceMappingURL=BoxAdapters.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BoxAdapters.d.ts","sourceRoot":"","sources":["../src/BoxAdapters.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,UAAU,EACV,KAAK,EAKL,UAAU,EAEb,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAC,GAAG,EAAS,MAAM,kBAAkB,CAAA;AAqG5C,OAAO,EAAC,kBAAkB,EAAC,MAAM,sBAAsB,CAAA;AACvD,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAA;AAuBvC,qBAAa,WAAY,YAAW,UAAU;;gBAO9B,OAAO,EAAE,kBAAkB;IAkBvC,SAAS,IAAI,IAAI;IAMjB,UAAU,CAAC,GAAG,SAAS,GAAG,EAAE,CAAC,SAAS,UAAU,EAAE,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC;CAiFtG"}
1
+ {"version":3,"file":"BoxAdapters.d.ts","sourceRoot":"","sources":["../src/BoxAdapters.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,UAAU,EACV,KAAK,EAEL,MAAM,EAIN,UAAU,EAEb,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAC,GAAG,EAAS,MAAM,kBAAkB,CAAA;AAsG5C,OAAO,EAAC,kBAAkB,EAAC,MAAM,sBAAsB,CAAA;AACvD,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAA;AAwBvC,qBAAa,WAAY,YAAW,UAAU;;gBAO9B,OAAO,EAAE,kBAAkB;IAkBvC,SAAS,IAAI,IAAI;IAMjB,UAAU,CAAC,GAAG,SAAS,GAAG,EAAE,CAAC,SAAS,UAAU,EAAE,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC;IAkBnG,UAAU,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC;CAkE3C"}
@@ -65,6 +65,7 @@ import { VelocityDeviceBoxAdapter } from "./devices/midi-effects/VelocityDeviceB
65
65
  import { TidalDeviceBoxAdapter } from "./devices/audio-effects/TidalDeviceBoxAdapter";
66
66
  import { DattorroReverbDeviceBoxAdapter } from "./devices/audio-effects/DattorroReverbDeviceBoxAdapter";
67
67
  import { NeuralAmpDeviceBoxAdapter } from "./devices/audio-effects/NeuralAmpDeviceBoxAdapter";
68
+ import { NeuralAmpModelBoxAdapter } from "./nam/NeuralAmpModelBoxAdapter";
68
69
  import { AudioPitchStretchBoxAdapter } from "./audio/AudioPitchStretchBoxAdapter";
69
70
  import { TransientMarkerBoxAdapter } from "./audio/TransientMarkerBoxAdapter";
70
71
  import { WarpMarkerBoxAdapter } from "./audio/WarpMarkerBoxAdapter";
@@ -114,6 +115,7 @@ export class BoxAdapters {
114
115
  }
115
116
  return panic("Unknown checkType method");
116
117
  }
118
+ optAdapter(box) { return __classPrivateFieldGet(this, _BoxAdapters_adapters, "f").opt(box.address.uuid); }
117
119
  }
118
120
  _BoxAdapters_context = new WeakMap(), _BoxAdapters_adapters = new WeakMap(), _BoxAdapters_deleted = new WeakMap(), _BoxAdapters_terminable = new WeakMap(), _BoxAdapters_instances = new WeakSet(), _BoxAdapters_create = function _BoxAdapters_create(unknownBox) {
119
121
  return asDefined(unknownBox.accept({
@@ -151,6 +153,7 @@ _BoxAdapters_context = new WeakMap(), _BoxAdapters_adapters = new WeakMap(), _Bo
151
153
  visitModuleMultiplierBox: (box) => new ModuleMultiplierAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
152
154
  visitNanoDeviceBox: (box) => new NanoDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
153
155
  visitNeuralAmpDeviceBox: (box) => new NeuralAmpDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
156
+ visitNeuralAmpModelBox: (box) => new NeuralAmpModelBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
154
157
  visitNoteClipBox: (box) => new NoteClipBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
155
158
  visitNoteEventBox: (box) => new NoteEventBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
156
159
  visitNoteEventCollectionBox: (box) => new NoteEventCollectionBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
@@ -37,8 +37,10 @@ export interface InstrumentDeviceBoxAdapter extends DeviceBoxAdapter, LabeledAud
37
37
  export interface DeviceHost extends BoxAdapter, LabeledAudioOutputsOwner {
38
38
  readonly class: "device-host";
39
39
  get midiEffects(): IndexedBoxAdapterCollection<MidiEffectDeviceAdapter, Pointers.MIDIEffectHost>;
40
+ get midiEffectsField(): Field<Pointers.MIDIEffectHost>;
40
41
  get inputAdapter(): Option<AudioUnitInputAdapter>;
41
42
  get audioEffects(): IndexedBoxAdapterCollection<AudioEffectDeviceAdapter, Pointers.AudioEffectHost>;
43
+ get audioEffectsField(): Field<Pointers.AudioEffectHost>;
42
44
  get inputField(): Field<Pointers.InstrumentHost | Pointers.AudioOutput>;
43
45
  get tracksField(): Field<Pointers.TrackCollection>;
44
46
  get minimizedField(): BooleanField;
@@ -1 +1 @@
1
- {"version":3,"file":"DeviceAdapter.d.ts","sourceRoot":"","sources":["../src/DeviceAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DeviceAdapter.d.ts","sourceRoot":"","sources":["../src/DeviceAdapter.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"DeviceBox.d.ts","sourceRoot":"","sources":["../src/DeviceBox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAC,YAAY,EAAE,GAAG,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAA;AACzF,OAAO,EAA0B,KAAK,EAAQ,MAAM,kBAAkB,CAAA;AAEtE,MAAM,MAAM,SAAS,GAAG;IACpB,IAAI,EAAE,YAAY,CAAA;IAClB,KAAK,EAAE,WAAW,CAAA;IAClB,OAAO,EAAE,YAAY,CAAA;IACrB,SAAS,EAAE,YAAY,CAAA;CAC1B,GAAG,GAAG,CAAA;AAEP,MAAM,MAAM,mBAAmB,GAAG;IAC9B,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAA;CAC9C,GAAG,SAAS,CAAA;AAEb,MAAM,MAAM,eAAe,GAAG;IAC1B,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAA;IACtE,KAAK,EAAE,UAAU,CAAA;CACpB,GAAG,SAAS,CAAA;AAEb,yBAAiB,cAAc,CAAC;IACrB,MAAM,WAAW,GAAI,KAAK,GAAG,KAAG,GAAG,IAAI,SAIqB,CAAA;IAE5D,MAAM,qBAAqB,GAAI,KAAK,GAAG,KAAG,GAAG,IAAI,mBACgB,CAAA;IAEjE,MAAM,iBAAiB,GAAI,KAAK,GAAG,KAAG,GAAG,IAAI,eAEuD,CAAA;IAEpG,MAAM,eAAe,GAAI,KAAK,KAAK,CAAC,GAAG,CAAC,KAAG,YAEyB,CAAA;IACpE,MAAM,gBAAgB,GAAI,KAAK,KAAK,CAAC,GAAG,CAAC,KAAG,WAE0B,CAAA;IACtE,MAAM,kBAAkB,GAAI,KAAK,KAAK,CAAC,GAAG,CAAC,KAAG,YAE4B,CAAA;IAC1E,MAAM,oBAAoB,GAAI,KAAK,KAAK,CAAC,GAAG,CAAC,KAAG,YAE8B,CAAA;IAC9E,MAAM,gBAAgB,GAAI,KAAK,KAAK,CAAC,GAAG,CAAC,KAAG,UAE0B,CAAA;CAChF"}
1
+ {"version":3,"file":"DeviceBox.d.ts","sourceRoot":"","sources":["../src/DeviceBox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAC,YAAY,EAAE,GAAG,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAA;AACzF,OAAO,EAA0B,KAAK,EAAQ,MAAM,kBAAkB,CAAA;AAEtE,MAAM,MAAM,SAAS,GAAG;IACpB,IAAI,EAAE,YAAY,CAAA;IAClB,KAAK,EAAE,WAAW,CAAA;IAClB,OAAO,EAAE,YAAY,CAAA;IACrB,SAAS,EAAE,YAAY,CAAA;CAC1B,GAAG,GAAG,CAAA;AAEP,MAAM,MAAM,mBAAmB,GAAG;IAC9B,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAA;CAC9C,GAAG,SAAS,CAAA;AAEb,MAAM,MAAM,eAAe,GAAG;IAC1B,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAA;IACtE,KAAK,EAAE,UAAU,CAAA;CACpB,GAAG,SAAS,CAAA;AAEb,yBAAiB,cAAc,CAAC;IACrB,MAAM,WAAW,GAAI,KAAK,GAAG,KAAG,GAAG,IAAI,SAAuC,CAAA;IAC9E,MAAM,qBAAqB,GAAI,KAAK,GAAG,KAAG,GAAG,IAAI,mBACI,CAAA;IACrD,MAAM,iBAAiB,GAAI,KAAK,GAAG,KAAG,GAAG,IAAI,eACqD,CAAA;IAClG,MAAM,eAAe,GAAI,KAAK,KAAK,CAAC,GAAG,CAAC,KAAG,YAEyB,CAAA;IACpE,MAAM,gBAAgB,GAAI,KAAK,KAAK,CAAC,GAAG,CAAC,KAAG,WAE0B,CAAA;IACtE,MAAM,kBAAkB,GAAI,KAAK,KAAK,CAAC,GAAG,CAAC,KAAG,YAE4B,CAAA;IAC1E,MAAM,oBAAoB,GAAI,KAAK,KAAK,CAAC,GAAG,CAAC,KAAG,YAE8B,CAAA;IAC9E,MAAM,gBAAgB,GAAI,KAAK,KAAK,CAAC,GAAG,CAAC,KAAG,UAE0B,CAAA;CAChF"}
package/dist/DeviceBox.js CHANGED
@@ -1,15 +1,10 @@
1
- import { Pointers } from "@opendaw/studio-enums";
2
1
  import { BooleanField, Int32Field, PointerField, StringField } from "@opendaw/lib-box";
3
2
  import { isDefined, isInstanceOf, panic } from "@opendaw/lib-std";
4
3
  export var DeviceBoxUtils;
5
4
  (function (DeviceBoxUtils) {
6
- DeviceBoxUtils.isDeviceBox = (box) => "host" in box && isInstanceOf(box.host, PointerField) &&
7
- "label" in box && isInstanceOf(box.label, StringField) &&
8
- "enabled" in box && isInstanceOf(box.enabled, BooleanField) &&
9
- "minimized" in box && isInstanceOf(box.minimized, BooleanField);
10
- DeviceBoxUtils.isInstrumentDeviceBox = (box) => DeviceBoxUtils.isDeviceBox(box) && box.host.pointerType === Pointers.InstrumentHost;
11
- DeviceBoxUtils.isEffectDeviceBox = (box) => DeviceBoxUtils.isDeviceBox(box) && "index" in box && isInstanceOf(box.index, Int32Field) &&
12
- (box.host.pointerType === Pointers.MIDIEffectHost || box.host.pointerType === Pointers.AudioEffectHost);
5
+ DeviceBoxUtils.isDeviceBox = (box) => box.tags.type === "device";
6
+ DeviceBoxUtils.isInstrumentDeviceBox = (box) => DeviceBoxUtils.isDeviceBox(box) && box.tags.deviceType === "instrument";
7
+ DeviceBoxUtils.isEffectDeviceBox = (box) => DeviceBoxUtils.isDeviceBox(box) && (box.tags.deviceType === "audio-effect" || box.tags.deviceType === "midi-effect");
13
8
  DeviceBoxUtils.lookupHostField = (box) => isDefined(box) && "host" in box && isInstanceOf(box.host, PointerField)
14
9
  ? box.host : panic(`Could not find 'host' field in '${box?.name}'`);
15
10
  DeviceBoxUtils.lookupLabelField = (box) => isDefined(box) && "label" in box && isInstanceOf(box.label, StringField)
@@ -3,6 +3,7 @@ export type ProcessorOptions = {};
3
3
  export type EngineProcessorAttachment = {
4
4
  syncStreamBuffer: SharedArrayBuffer;
5
5
  controlFlagsBuffer: SharedArrayBuffer;
6
+ hrClockBuffer: SharedArrayBuffer;
6
7
  project: ArrayBufferLike;
7
8
  exportConfiguration?: ExportStemsConfiguration;
8
9
  options?: ProcessorOptions;
@@ -1 +1 @@
1
- {"version":3,"file":"EngineProcessorAttachment.d.ts","sourceRoot":"","sources":["../src/EngineProcessorAttachment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAE,MAAM,EAAC,MAAM,kBAAkB,CAAA;AAE5C,MAAM,MAAM,gBAAgB,GAAG,EAAE,CAAA;AAGjC,MAAM,MAAM,yBAAyB,GAAG;IACpC,gBAAgB,EAAE,iBAAiB,CAAA;IACnC,kBAAkB,EAAE,iBAAiB,CAAA;IACrC,OAAO,EAAE,eAAe,CAAA;IACxB,mBAAmB,CAAC,EAAE,wBAAwB,CAAA;IAC9C,OAAO,CAAC,EAAE,gBAAgB,CAAA;CAC7B,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IAClC,mBAAmB,EAAE,OAAO,CAAA;IAC5B,YAAY,EAAE,OAAO,CAAA;IACrB,QAAQ,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAA;AAE9E,yBAAiB,wBAAwB,CAAC;IAC/B,MAAM,UAAU,GAAI,QAAQ,MAAM,CAAC,wBAAwB,CAAC,KAAG,GAIhE,CAAA;IAEC,MAAM,gBAAgB,GAAI,MAAM,MAAM,KAAG,MAA4D,CAAA;IAErG,MAAM,0BAA0B,GAAI,eAAe,wBAAwB,KAAG,IAiBpF,CAAA;CACJ"}
1
+ {"version":3,"file":"EngineProcessorAttachment.d.ts","sourceRoot":"","sources":["../src/EngineProcessorAttachment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAE,MAAM,EAAC,MAAM,kBAAkB,CAAA;AAE5C,MAAM,MAAM,gBAAgB,GAAG,EAAE,CAAA;AAGjC,MAAM,MAAM,yBAAyB,GAAG;IACpC,gBAAgB,EAAE,iBAAiB,CAAA;IACnC,kBAAkB,EAAE,iBAAiB,CAAA;IACrC,aAAa,EAAE,iBAAiB,CAAA;IAChC,OAAO,EAAE,eAAe,CAAA;IACxB,mBAAmB,CAAC,EAAE,wBAAwB,CAAA;IAC9C,OAAO,CAAC,EAAE,gBAAgB,CAAA;CAC7B,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IAClC,mBAAmB,EAAE,OAAO,CAAA;IAC5B,YAAY,EAAE,OAAO,CAAA;IACrB,QAAQ,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAA;AAE9E,yBAAiB,wBAAwB,CAAC;IAC/B,MAAM,UAAU,GAAI,QAAQ,MAAM,CAAC,wBAAwB,CAAC,KAAG,GAIhE,CAAA;IAEC,MAAM,gBAAgB,GAAI,MAAM,MAAM,KAAG,MAA4D,CAAA;IAErG,MAAM,0BAA0B,GAAI,eAAe,wBAAwB,KAAG,IAiBpF,CAAA;CACJ"}
@@ -1,4 +1,5 @@
1
1
  import { Schema } from "@opendaw/lib-std";
2
+ export declare const PERF_BUFFER_SIZE = 512;
2
3
  export declare const EngineStateSchema: () => Schema.IO<{
3
4
  position: number;
4
5
  bpm: number;
@@ -7,6 +8,8 @@ export declare const EngineStateSchema: () => Schema.IO<{
7
8
  isPlaying: boolean;
8
9
  isCountingIn: boolean;
9
10
  isRecording: boolean;
11
+ perfIndex: number;
12
+ perfBuffer: Float32Array<ArrayBufferLike>;
10
13
  }>;
11
14
  export type EngineState = ReturnType<typeof EngineStateSchema>["object"];
12
15
  //# sourceMappingURL=EngineStateSchema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"EngineStateSchema.d.ts","sourceRoot":"","sources":["../src/EngineStateSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,kBAAkB,CAAA;AAEvC,eAAO,MAAM,iBAAiB;;;;;;;;EAQ5B,CAAA;AAEF,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC,QAAQ,CAAC,CAAA"}
1
+ {"version":3,"file":"EngineStateSchema.d.ts","sourceRoot":"","sources":["../src/EngineStateSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,kBAAkB,CAAA;AAGvC,eAAO,MAAM,gBAAgB,MAAM,CAAA;AAEnC,eAAO,MAAM,iBAAiB;;;;;;;;;;EAU5B,CAAA;AAEF,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC,QAAQ,CAAC,CAAA"}
@@ -1,4 +1,6 @@
1
1
  import { Schema } from "@opendaw/lib-std";
2
+ // Ring buffer size: ~1 second at 48kHz = 375 blocks, use 512 (power of 2)
3
+ export const PERF_BUFFER_SIZE = 512;
2
4
  export const EngineStateSchema = Schema.createBuilder({
3
5
  position: Schema.float,
4
6
  bpm: Schema.float,
@@ -6,5 +8,7 @@ export const EngineStateSchema = Schema.createBuilder({
6
8
  countInBeatsRemaining: Schema.float,
7
9
  isPlaying: Schema.bool,
8
10
  isCountingIn: Schema.bool,
9
- isRecording: Schema.bool
11
+ isRecording: Schema.bool,
12
+ perfIndex: Schema.int32,
13
+ perfBuffer: Schema.floats(PERF_BUFFER_SIZE)
10
14
  });
@@ -1,13 +1,14 @@
1
1
  import { bpm, ppqn, seconds, TempoMap } from "@opendaw/lib-dsp";
2
- import { Observer, Subscription } from "@opendaw/lib-std";
2
+ import { Observer, Subscription, Terminable } from "@opendaw/lib-std";
3
3
  import { TimelineBoxAdapter } from "./timeline/TimelineBoxAdapter";
4
4
  /**
5
5
  * TempoMap implementation that handles varying tempo (tempo automation).
6
6
  * Steps through at TempoChangeGrid intervals to match BlockRenderer behavior.
7
7
  */
8
- export declare class VaryingTempoMap implements TempoMap {
8
+ export declare class VaryingTempoMap implements TempoMap, Terminable {
9
9
  #private;
10
10
  constructor(adapter: TimelineBoxAdapter);
11
+ terminate(): void;
11
12
  getTempoAt(position: ppqn): bpm;
12
13
  ppqnToSeconds(position: ppqn): seconds;
13
14
  secondsToPPQN(time: seconds): ppqn;
@@ -1 +1 @@
1
- {"version":3,"file":"VaryingTempoMap.d.ts","sourceRoot":"","sources":["../src/VaryingTempoMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAE,IAAI,EAAQ,OAAO,EAAmB,QAAQ,EAAC,MAAM,kBAAkB,CAAA;AACpF,OAAO,EAAC,QAAQ,EAAgB,YAAY,EAAa,MAAM,kBAAkB,CAAA;AACjF,OAAO,EAAC,kBAAkB,EAAC,MAAM,+BAA+B,CAAA;AAEhE;;;GAGG;AACH,qBAAa,eAAgB,YAAW,QAAQ;;gBAGhC,OAAO,EAAE,kBAAkB;IAIvC,UAAU,CAAC,QAAQ,EAAE,IAAI,GAAG,GAAG;IAQ/B,aAAa,CAAC,QAAQ,EAAE,IAAI,GAAG,OAAO;IAOtC,aAAa,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IA+BlC,iBAAiB,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,GAAG,OAAO;IAwBxD,cAAc,CAAC,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,GAAG,IAAI;IAQ9D,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,YAAY;CAQxD"}
1
+ {"version":3,"file":"VaryingTempoMap.d.ts","sourceRoot":"","sources":["../src/VaryingTempoMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAE,IAAI,EAAQ,OAAO,EAAmB,QAAQ,EAAC,MAAM,kBAAkB,CAAA;AACpF,OAAO,EAGH,QAAQ,EAER,YAAY,EACZ,UAAU,EAEb,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAC,kBAAkB,EAAC,MAAM,+BAA+B,CAAA;AAIhE;;;GAGG;AACH,qBAAa,eAAgB,YAAW,QAAQ,EAAE,UAAU;;gBAM5C,OAAO,EAAE,kBAAkB;IAQvC,SAAS,IAAI,IAAI;IAkCjB,UAAU,CAAC,QAAQ,EAAE,IAAI,GAAG,GAAG;IAQ/B,aAAa,CAAC,QAAQ,EAAE,IAAI,GAAG,OAAO;IAwCtC,aAAa,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IA6ClC,iBAAiB,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,GAAG,OAAO;IAKxD,cAAc,CAAC,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,GAAG,IAAI;IAO9D,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,YAAY;CAQxD"}
@@ -9,9 +9,9 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
9
9
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
10
10
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
11
11
  };
12
- var _VaryingTempoMap_instances, _VaryingTempoMap_adapter, _VaryingTempoMap_absoluteSecondsToPPQN;
12
+ var _VaryingTempoMap_instances, _VaryingTempoMap_terminator, _VaryingTempoMap_adapter, _VaryingTempoMap_ppqnCache, _VaryingTempoMap_secondsCache, _VaryingTempoMap_rebuildCache, _VaryingTempoMap_ppqnToSecondsPositive, _VaryingTempoMap_absoluteSecondsToPPQN;
13
13
  import { PPQN, TempoChangeGrid } from "@opendaw/lib-dsp";
14
- import { quantizeCeil, Terminator } from "@opendaw/lib-std";
14
+ import { BinarySearch, NumberComparator, quantizeCeil, Terminator } from "@opendaw/lib-std";
15
15
  /**
16
16
  * TempoMap implementation that handles varying tempo (tempo automation).
17
17
  * Steps through at TempoChangeGrid intervals to match BlockRenderer behavior.
@@ -19,8 +19,15 @@ import { quantizeCeil, Terminator } from "@opendaw/lib-std";
19
19
  export class VaryingTempoMap {
20
20
  constructor(adapter) {
21
21
  _VaryingTempoMap_instances.add(this);
22
+ _VaryingTempoMap_terminator.set(this, new Terminator());
22
23
  _VaryingTempoMap_adapter.set(this, void 0);
24
+ _VaryingTempoMap_ppqnCache.set(this, []);
25
+ _VaryingTempoMap_secondsCache.set(this, []);
23
26
  __classPrivateFieldSet(this, _VaryingTempoMap_adapter, adapter, "f");
27
+ __classPrivateFieldGet(this, _VaryingTempoMap_terminator, "f").ownAll(adapter.box.bpm.subscribe(() => __classPrivateFieldGet(this, _VaryingTempoMap_instances, "m", _VaryingTempoMap_rebuildCache).call(this)), adapter.catchupAndSubscribeTempoAutomation(() => __classPrivateFieldGet(this, _VaryingTempoMap_instances, "m", _VaryingTempoMap_rebuildCache).call(this)));
28
+ }
29
+ terminate() {
30
+ __classPrivateFieldGet(this, _VaryingTempoMap_terminator, "f").terminate();
24
31
  }
25
32
  getTempoAt(position) {
26
33
  const storageBpm = __classPrivateFieldGet(this, _VaryingTempoMap_adapter, "f").box.bpm.getValue();
@@ -28,9 +35,9 @@ export class VaryingTempoMap {
28
35
  }
29
36
  ppqnToSeconds(position) {
30
37
  if (position < 0) {
31
- return -this.intervalToSeconds(position, 0);
38
+ return -__classPrivateFieldGet(this, _VaryingTempoMap_instances, "m", _VaryingTempoMap_ppqnToSecondsPositive).call(this, -position);
32
39
  }
33
- return this.intervalToSeconds(0, position);
40
+ return __classPrivateFieldGet(this, _VaryingTempoMap_instances, "m", _VaryingTempoMap_ppqnToSecondsPositive).call(this, position);
34
41
  }
35
42
  secondsToPPQN(time) {
36
43
  return __classPrivateFieldGet(this, _VaryingTempoMap_instances, "m", _VaryingTempoMap_absoluteSecondsToPPQN).call(this, time);
@@ -39,32 +46,12 @@ export class VaryingTempoMap {
39
46
  if (fromPPQN >= toPPQN) {
40
47
  return 0.0;
41
48
  }
42
- const storageBpm = __classPrivateFieldGet(this, _VaryingTempoMap_adapter, "f").box.bpm.getValue();
43
- const tempoEvents = __classPrivateFieldGet(this, _VaryingTempoMap_adapter, "f").tempoTrackEvents;
44
- if (tempoEvents.isEmpty()) {
45
- return PPQN.pulsesToSeconds(toPPQN - fromPPQN, storageBpm);
46
- }
47
- const collection = tempoEvents.unwrap();
48
- if (collection.events.isEmpty()) {
49
- return PPQN.pulsesToSeconds(toPPQN - fromPPQN, storageBpm);
50
- }
51
- let totalSeconds = 0.0;
52
- let currentPPQN = fromPPQN;
53
- while (currentPPQN < toPPQN) {
54
- const currentBpm = collection.valueAt(currentPPQN, storageBpm);
55
- const nextGrid = quantizeCeil(currentPPQN, TempoChangeGrid);
56
- const segmentEnd = nextGrid <= currentPPQN ? nextGrid + TempoChangeGrid : nextGrid;
57
- const actualEnd = Math.min(segmentEnd, toPPQN);
58
- totalSeconds += PPQN.pulsesToSeconds(actualEnd - currentPPQN, currentBpm);
59
- currentPPQN = actualEnd;
60
- }
61
- return totalSeconds;
49
+ return __classPrivateFieldGet(this, _VaryingTempoMap_instances, "m", _VaryingTempoMap_ppqnToSecondsPositive).call(this, toPPQN) - __classPrivateFieldGet(this, _VaryingTempoMap_instances, "m", _VaryingTempoMap_ppqnToSecondsPositive).call(this, fromPPQN);
62
50
  }
63
51
  intervalToPPQN(fromSeconds, toSeconds) {
64
52
  if (fromSeconds >= toSeconds) {
65
53
  return 0.0;
66
54
  }
67
- // Find PPQN positions for both absolute times, return the difference
68
55
  const fromPPQN = __classPrivateFieldGet(this, _VaryingTempoMap_instances, "m", _VaryingTempoMap_absoluteSecondsToPPQN).call(this, fromSeconds);
69
56
  const toPPQN = __classPrivateFieldGet(this, _VaryingTempoMap_instances, "m", _VaryingTempoMap_absoluteSecondsToPPQN).call(this, toSeconds);
70
57
  return toPPQN - fromPPQN;
@@ -75,7 +62,78 @@ export class VaryingTempoMap {
75
62
  return terminator;
76
63
  }
77
64
  }
78
- _VaryingTempoMap_adapter = new WeakMap(), _VaryingTempoMap_instances = new WeakSet(), _VaryingTempoMap_absoluteSecondsToPPQN = function _VaryingTempoMap_absoluteSecondsToPPQN(targetSeconds) {
65
+ _VaryingTempoMap_terminator = new WeakMap(), _VaryingTempoMap_adapter = new WeakMap(), _VaryingTempoMap_ppqnCache = new WeakMap(), _VaryingTempoMap_secondsCache = new WeakMap(), _VaryingTempoMap_instances = new WeakSet(), _VaryingTempoMap_rebuildCache = function _VaryingTempoMap_rebuildCache() {
66
+ __classPrivateFieldGet(this, _VaryingTempoMap_ppqnCache, "f").length = 0;
67
+ __classPrivateFieldGet(this, _VaryingTempoMap_secondsCache, "f").length = 0;
68
+ const tempoEvents = __classPrivateFieldGet(this, _VaryingTempoMap_adapter, "f").tempoTrackEvents;
69
+ if (tempoEvents.isEmpty()) {
70
+ return;
71
+ }
72
+ const collection = tempoEvents.unwrap();
73
+ if (collection.events.isEmpty()) {
74
+ return;
75
+ }
76
+ const events = collection.events.asArray();
77
+ const storageBpm = __classPrivateFieldGet(this, _VaryingTempoMap_adapter, "f").box.bpm.getValue();
78
+ const entries = [{ ppqn: 0, seconds: 0, bpm: collection.valueAt(0, storageBpm) }];
79
+ let accumulatedSeconds = 0.0;
80
+ let currentPPQN = 0.0;
81
+ for (const event of events) {
82
+ const eventPosition = event.position;
83
+ if (eventPosition <= currentPPQN) {
84
+ continue;
85
+ }
86
+ while (currentPPQN < eventPosition) {
87
+ const currentBpm = collection.valueAt(currentPPQN, storageBpm);
88
+ const nextGrid = quantizeCeil(currentPPQN, TempoChangeGrid);
89
+ const segmentEnd = nextGrid <= currentPPQN ? nextGrid + TempoChangeGrid : nextGrid;
90
+ const actualEnd = Math.min(segmentEnd, eventPosition);
91
+ accumulatedSeconds += PPQN.pulsesToSeconds(actualEnd - currentPPQN, currentBpm);
92
+ currentPPQN = actualEnd;
93
+ }
94
+ entries.push({ ppqn: eventPosition, seconds: accumulatedSeconds, bpm: collection.valueAt(eventPosition, storageBpm) });
95
+ }
96
+ __classPrivateFieldGet(this, _VaryingTempoMap_ppqnCache, "f").push(...entries);
97
+ const sortedBySeconds = entries.slice().sort((a, b) => a.seconds - b.seconds);
98
+ __classPrivateFieldGet(this, _VaryingTempoMap_secondsCache, "f").push(...sortedBySeconds);
99
+ }, _VaryingTempoMap_ppqnToSecondsPositive = function _VaryingTempoMap_ppqnToSecondsPositive(position) {
100
+ if (position <= 0) {
101
+ return 0.0;
102
+ }
103
+ const storageBpm = __classPrivateFieldGet(this, _VaryingTempoMap_adapter, "f").box.bpm.getValue();
104
+ const tempoEvents = __classPrivateFieldGet(this, _VaryingTempoMap_adapter, "f").tempoTrackEvents;
105
+ if (tempoEvents.isEmpty()) {
106
+ return PPQN.pulsesToSeconds(position, storageBpm);
107
+ }
108
+ const collection = tempoEvents.unwrap();
109
+ if (collection.events.isEmpty()) {
110
+ return PPQN.pulsesToSeconds(position, storageBpm);
111
+ }
112
+ let startPPQN = 0.0;
113
+ let startSeconds = 0.0;
114
+ if (__classPrivateFieldGet(this, _VaryingTempoMap_ppqnCache, "f").length > 0) {
115
+ const index = BinarySearch.rightMostMapped(__classPrivateFieldGet(this, _VaryingTempoMap_ppqnCache, "f"), position, NumberComparator, (entry) => entry.ppqn);
116
+ if (index >= 0) {
117
+ const entry = __classPrivateFieldGet(this, _VaryingTempoMap_ppqnCache, "f")[index];
118
+ startPPQN = entry.ppqn;
119
+ startSeconds = entry.seconds;
120
+ if (index === __classPrivateFieldGet(this, _VaryingTempoMap_ppqnCache, "f").length - 1) {
121
+ return startSeconds + PPQN.pulsesToSeconds(position - startPPQN, entry.bpm);
122
+ }
123
+ }
124
+ }
125
+ let accumulatedSeconds = startSeconds;
126
+ let currentPPQN = startPPQN;
127
+ while (currentPPQN < position) {
128
+ const currentBpm = collection.valueAt(currentPPQN, storageBpm);
129
+ const nextGrid = quantizeCeil(currentPPQN, TempoChangeGrid);
130
+ const segmentEnd = nextGrid <= currentPPQN ? nextGrid + TempoChangeGrid : nextGrid;
131
+ const actualEnd = Math.min(segmentEnd, position);
132
+ accumulatedSeconds += PPQN.pulsesToSeconds(actualEnd - currentPPQN, currentBpm);
133
+ currentPPQN = actualEnd;
134
+ }
135
+ return accumulatedSeconds;
136
+ }, _VaryingTempoMap_absoluteSecondsToPPQN = function _VaryingTempoMap_absoluteSecondsToPPQN(targetSeconds) {
79
137
  if (targetSeconds <= 0) {
80
138
  return 0.0;
81
139
  }
@@ -88,8 +146,21 @@ _VaryingTempoMap_adapter = new WeakMap(), _VaryingTempoMap_instances = new WeakS
88
146
  if (collection.events.isEmpty()) {
89
147
  return PPQN.secondsToPulses(targetSeconds, storageBpm);
90
148
  }
91
- let accumulatedSeconds = 0.0;
92
- let accumulatedPPQN = 0.0;
149
+ let startPPQN = 0.0;
150
+ let startSeconds = 0.0;
151
+ if (__classPrivateFieldGet(this, _VaryingTempoMap_secondsCache, "f").length > 0) {
152
+ const index = BinarySearch.rightMostMapped(__classPrivateFieldGet(this, _VaryingTempoMap_secondsCache, "f"), targetSeconds, NumberComparator, (entry) => entry.seconds);
153
+ if (index >= 0) {
154
+ const entry = __classPrivateFieldGet(this, _VaryingTempoMap_secondsCache, "f")[index];
155
+ startPPQN = entry.ppqn;
156
+ startSeconds = entry.seconds;
157
+ if (index === __classPrivateFieldGet(this, _VaryingTempoMap_secondsCache, "f").length - 1) {
158
+ return startPPQN + PPQN.secondsToPulses(targetSeconds - startSeconds, entry.bpm);
159
+ }
160
+ }
161
+ }
162
+ let accumulatedSeconds = startSeconds;
163
+ let accumulatedPPQN = startPPQN;
93
164
  while (accumulatedSeconds < targetSeconds) {
94
165
  const currentBpm = collection.valueAt(accumulatedPPQN, storageBpm);
95
166
  const nextGrid = quantizeCeil(accumulatedPPQN, TempoChangeGrid);
@@ -1,11 +1,12 @@
1
1
  import { NeuralAmpDeviceBox } from "@opendaw/studio-boxes";
2
- import { UUID } from "@opendaw/lib-std";
2
+ import { Option, UUID } from "@opendaw/lib-std";
3
3
  import { Address, BooleanField, Int32Field, PointerField, StringField } from "@opendaw/lib-box";
4
4
  import { Pointers } from "@opendaw/studio-enums";
5
5
  import { AudioEffectDeviceAdapter, DeviceHost } from "../../DeviceAdapter";
6
6
  import { LabeledAudioOutput } from "../../LabeledAudioOutputsOwner";
7
7
  import { BoxAdaptersContext } from "../../BoxAdaptersContext";
8
8
  import { AudioUnitBoxAdapter } from "../../audio-unit/AudioUnitBoxAdapter";
9
+ import { NeuralAmpModelBoxAdapter } from "../../nam/NeuralAmpModelBoxAdapter";
9
10
  export declare class NeuralAmpDeviceBoxAdapter implements AudioEffectDeviceAdapter {
10
11
  #private;
11
12
  readonly type = "audio-effect";
@@ -25,9 +26,11 @@ export declare class NeuralAmpDeviceBoxAdapter implements AudioEffectDeviceAdapt
25
26
  get enabledField(): BooleanField;
26
27
  get minimizedField(): BooleanField;
27
28
  get host(): PointerField<Pointers.AudioEffectHost>;
28
- get modelJsonField(): StringField;
29
+ get modelField(): PointerField<Pointers.NeuralAmpModel>;
29
30
  get monoField(): BooleanField;
30
31
  get spectrum(): Address;
32
+ getModelAdapter(): Option<NeuralAmpModelBoxAdapter>;
33
+ getModelJson(): string;
31
34
  deviceHost(): DeviceHost;
32
35
  audioUnitBoxAdapter(): AudioUnitBoxAdapter;
33
36
  labeledAudioOutputs(): Iterable<LabeledAudioOutput>;
@@ -1 +1 @@
1
- {"version":3,"file":"NeuralAmpDeviceBoxAdapter.d.ts","sourceRoot":"","sources":["../../../src/devices/audio-effects/NeuralAmpDeviceBoxAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,kBAAkB,EAAC,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAwB,IAAI,EAAe,MAAM,kBAAkB,CAAA;AAC1E,OAAO,EAAC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAA;AAC7F,OAAO,EAAC,QAAQ,EAAC,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAC,wBAAwB,EAAE,UAAU,EAAU,MAAM,qBAAqB,CAAA;AACjF,OAAO,EAAC,kBAAkB,EAAC,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAC,kBAAkB,EAAC,MAAM,0BAA0B,CAAA;AAG3D,OAAO,EAAC,mBAAmB,EAAC,MAAM,sCAAsC,CAAA;AAExE,qBAAa,yBAA0B,YAAW,wBAAwB;;IACtE,QAAQ,CAAC,IAAI,kBAAiB;IAC9B,QAAQ,CAAC,OAAO,WAAU;IAC1B,QAAQ,CAAC,SAAS,sCAA6B;IAM/C,QAAQ,CAAC,cAAc;;;;MAAA;gBAEX,OAAO,EAAE,kBAAkB,EAAE,GAAG,EAAE,kBAAkB;IAOhE,IAAI,GAAG,IAAI,kBAAkB,CAAmB;IAChD,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,CAAgC;IACtD,IAAI,OAAO,IAAI,OAAO,CAA2B;IACjD,IAAI,UAAU,IAAI,UAAU,CAAyB;IACrD,IAAI,UAAU,IAAI,WAAW,CAAyB;IACtD,IAAI,YAAY,IAAI,YAAY,CAA2B;IAC3D,IAAI,cAAc,IAAI,YAAY,CAA6B;IAC/D,IAAI,IAAI,IAAI,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAwB;IAC1E,IAAI,cAAc,IAAI,WAAW,CAA6B;IAC9D,IAAI,SAAS,IAAI,YAAY,CAAwB;IACrD,IAAI,QAAQ,IAAI,OAAO,CAAyC;IAEhE,UAAU,IAAI,UAAU;IAKxB,mBAAmB,IAAI,mBAAmB;IAExC,mBAAmB,IAAI,QAAQ,CAAC,kBAAkB,CAAC;IAIrD,SAAS,IAAI,IAAI;CAmBpB"}
1
+ {"version":3,"file":"NeuralAmpDeviceBoxAdapter.d.ts","sourceRoot":"","sources":["../../../src/devices/audio-effects/NeuralAmpDeviceBoxAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,kBAAkB,EAAoB,MAAM,uBAAuB,CAAA;AAC3E,OAAO,EAAC,MAAM,EAAiB,IAAI,EAAe,MAAM,kBAAkB,CAAA;AAC1E,OAAO,EAAC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAA;AAC7F,OAAO,EAAC,QAAQ,EAAC,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAC,wBAAwB,EAAE,UAAU,EAAU,MAAM,qBAAqB,CAAA;AACjF,OAAO,EAAC,kBAAkB,EAAC,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAC,kBAAkB,EAAC,MAAM,0BAA0B,CAAA;AAG3D,OAAO,EAAC,mBAAmB,EAAC,MAAM,sCAAsC,CAAA;AACxE,OAAO,EAAC,wBAAwB,EAAC,MAAM,oCAAoC,CAAA;AAE3E,qBAAa,yBAA0B,YAAW,wBAAwB;;IACtE,QAAQ,CAAC,IAAI,kBAAiB;IAC9B,QAAQ,CAAC,OAAO,WAAU;IAC1B,QAAQ,CAAC,SAAS,sCAA6B;IAM/C,QAAQ,CAAC,cAAc;;;;MAAA;gBAEX,OAAO,EAAE,kBAAkB,EAAE,GAAG,EAAE,kBAAkB;IAOhE,IAAI,GAAG,IAAI,kBAAkB,CAAmB;IAChD,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,CAAgC;IACtD,IAAI,OAAO,IAAI,OAAO,CAA2B;IACjD,IAAI,UAAU,IAAI,UAAU,CAAyB;IACrD,IAAI,UAAU,IAAI,WAAW,CAAyB;IACtD,IAAI,YAAY,IAAI,YAAY,CAA2B;IAC3D,IAAI,cAAc,IAAI,YAAY,CAA6B;IAC/D,IAAI,IAAI,IAAI,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAwB;IAC1E,IAAI,UAAU,IAAI,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAyB;IAChF,IAAI,SAAS,IAAI,YAAY,CAAwB;IACrD,IAAI,QAAQ,IAAI,OAAO,CAAyC;IAEhE,eAAe,IAAI,MAAM,CAAC,wBAAwB,CAAC;IAMnD,YAAY,IAAI,MAAM;IAQtB,UAAU,IAAI,UAAU;IAKxB,mBAAmB,IAAI,mBAAmB;IAExC,mBAAmB,IAAI,QAAQ,CAAC,kBAAkB,CAAC;IAIrD,SAAS,IAAI,IAAI;CAmBpB"}
@@ -14,6 +14,7 @@ import { Option, StringMapping, ValueMapping } from "@opendaw/lib-std";
14
14
  import { Devices } from "../../DeviceAdapter";
15
15
  import { DeviceManualUrls } from "../../DeviceManualUrls";
16
16
  import { ParameterAdapterSet } from "../../ParameterAdapterSet";
17
+ import { NeuralAmpModelBoxAdapter } from "../../nam/NeuralAmpModelBoxAdapter";
17
18
  export class NeuralAmpDeviceBoxAdapter {
18
19
  constructor(context, box) {
19
20
  _NeuralAmpDeviceBoxAdapter_instances.add(this);
@@ -36,9 +37,23 @@ export class NeuralAmpDeviceBoxAdapter {
36
37
  get enabledField() { return __classPrivateFieldGet(this, _NeuralAmpDeviceBoxAdapter_box, "f").enabled; }
37
38
  get minimizedField() { return __classPrivateFieldGet(this, _NeuralAmpDeviceBoxAdapter_box, "f").minimized; }
38
39
  get host() { return __classPrivateFieldGet(this, _NeuralAmpDeviceBoxAdapter_box, "f").host; }
39
- get modelJsonField() { return __classPrivateFieldGet(this, _NeuralAmpDeviceBoxAdapter_box, "f").modelJson; }
40
+ get modelField() { return __classPrivateFieldGet(this, _NeuralAmpDeviceBoxAdapter_box, "f").model; }
40
41
  get monoField() { return __classPrivateFieldGet(this, _NeuralAmpDeviceBoxAdapter_box, "f").mono; }
41
42
  get spectrum() { return __classPrivateFieldGet(this, _NeuralAmpDeviceBoxAdapter_box, "f").address.append(0xFFF); }
43
+ getModelAdapter() {
44
+ const target = __classPrivateFieldGet(this, _NeuralAmpDeviceBoxAdapter_box, "f").model.targetVertex;
45
+ if (target.isEmpty()) {
46
+ return Option.None;
47
+ }
48
+ return Option.wrap(__classPrivateFieldGet(this, _NeuralAmpDeviceBoxAdapter_context, "f").boxAdapters.adapterFor(target.unwrap().box, NeuralAmpModelBoxAdapter));
49
+ }
50
+ getModelJson() {
51
+ const modelAdapter = this.getModelAdapter();
52
+ if (modelAdapter.nonEmpty()) {
53
+ return modelAdapter.unwrap().getModelJson();
54
+ }
55
+ return __classPrivateFieldGet(this, _NeuralAmpDeviceBoxAdapter_box, "f").modelJson.getValue();
56
+ }
42
57
  deviceHost() {
43
58
  return __classPrivateFieldGet(this, _NeuralAmpDeviceBoxAdapter_context, "f").boxAdapters
44
59
  .adapterFor(__classPrivateFieldGet(this, _NeuralAmpDeviceBoxAdapter_box, "f").host.targetVertex.unwrap("no device-host").box, Devices.isHost);
@@ -1 +1 @@
1
- {"version":3,"file":"PlayfieldSampleBoxAdapter.d.ts","sourceRoot":"","sources":["../../../../src/devices/instruments/Playfield/PlayfieldSampleBoxAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PlayfieldSampleBoxAdapter.d.ts","sourceRoot":"","sources":["../../../../src/devices/instruments/Playfield/PlayfieldSampleBoxAdapter.ts"],"names":[],"mappings":"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"}
@@ -11,8 +11,8 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
11
11
  };
12
12
  var _PlayfieldSampleBoxAdapter_instances, _PlayfieldSampleBoxAdapter_terminator, _PlayfieldSampleBoxAdapter_context, _PlayfieldSampleBoxAdapter_box, _PlayfieldSampleBoxAdapter_midiEffects, _PlayfieldSampleBoxAdapter_audioEffects, _PlayfieldSampleBoxAdapter_parametric, _PlayfieldSampleBoxAdapter_file, _PlayfieldSampleBoxAdapter_wrapParameters;
13
13
  import { Pointers } from "@opendaw/studio-enums";
14
- import { PlayfieldSampleBox } from "@opendaw/studio-boxes";
15
- import { Option, StringMapping, Terminator, UUID, ValueMapping } from "@opendaw/lib-std";
14
+ import { AudioFileBox, PlayfieldSampleBox } from "@opendaw/studio-boxes";
15
+ import { asInstanceOf, Option, StringMapping, Terminator, UUID, ValueMapping } from "@opendaw/lib-std";
16
16
  import { Devices } from "../../../DeviceAdapter";
17
17
  import { IndexedBoxAdapterCollection } from "../../../IndexedBoxAdapterCollection";
18
18
  import { ParameterAdapterSet } from "../../../ParameterAdapterSet";
@@ -103,7 +103,7 @@ export class PlayfieldSampleBoxAdapter {
103
103
  get audioEffects() {
104
104
  return __classPrivateFieldGet(this, _PlayfieldSampleBoxAdapter_audioEffects, "f");
105
105
  }
106
- get labelField() { return __classPrivateFieldGet(this, _PlayfieldSampleBoxAdapter_box, "f").label; }
106
+ get labelField() { return asInstanceOf(__classPrivateFieldGet(this, _PlayfieldSampleBoxAdapter_box, "f").file.targetVertex.unwrap().box, AudioFileBox).fileName; }
107
107
  get enabledField() { return __classPrivateFieldGet(this, _PlayfieldSampleBoxAdapter_box, "f").enabled; }
108
108
  get minimizedField() { return __classPrivateFieldGet(this, _PlayfieldSampleBoxAdapter_box, "f").minimized; }
109
109
  device() {
package/dist/index.d.ts CHANGED
@@ -102,6 +102,7 @@ export * from "./modular/modules/delay";
102
102
  export * from "./modular/modules/gain";
103
103
  export * from "./modular/modules/multiplier";
104
104
  export * from "./modular/user-interface";
105
+ export * from "./nam/NeuralAmpModelBoxAdapter";
105
106
  export * from "./offline-renderer";
106
107
  export * from "./preset/PresetDecoder";
107
108
  export * from "./preset/PresetEncoder";
@@ -147,8 +148,10 @@ export * from "./timeline/collection/NoteEventCollectionBoxAdapter";
147
148
  export * from "./timeline/collection/ValueEventCollectionBoxAdapter";
148
149
  export * from "./timeline/event/InterpolationFieldAdapter";
149
150
  export * from "./timeline/event/NoteEventBoxAdapter";
151
+ export * from "./timeline/event/SelectableValueEvent";
150
152
  export * from "./timeline/event/ValueEventBoxAdapter";
151
153
  export * from "./timeline/region/AudioRegionBoxAdapter";
154
+ export * from "./timeline/region/FadingAdapter";
152
155
  export * from "./timeline/region/MutableRegion";
153
156
  export * from "./timeline/region/NoteRegionBoxAdapter";
154
157
  export * from "./timeline/region/ValueRegionBoxAdapter";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -104,6 +104,7 @@ export * from "./modular/modules/delay";
104
104
  export * from "./modular/modules/gain";
105
105
  export * from "./modular/modules/multiplier";
106
106
  export * from "./modular/user-interface";
107
+ export * from "./nam/NeuralAmpModelBoxAdapter";
107
108
  export * from "./offline-renderer";
108
109
  export * from "./preset/PresetDecoder";
109
110
  export * from "./preset/PresetEncoder";
@@ -149,8 +150,10 @@ export * from "./timeline/collection/NoteEventCollectionBoxAdapter";
149
150
  export * from "./timeline/collection/ValueEventCollectionBoxAdapter";
150
151
  export * from "./timeline/event/InterpolationFieldAdapter";
151
152
  export * from "./timeline/event/NoteEventBoxAdapter";
153
+ export * from "./timeline/event/SelectableValueEvent";
152
154
  export * from "./timeline/event/ValueEventBoxAdapter";
153
155
  export * from "./timeline/region/AudioRegionBoxAdapter";
156
+ export * from "./timeline/region/FadingAdapter";
154
157
  export * from "./timeline/region/MutableRegion";
155
158
  export * from "./timeline/region/NoteRegionBoxAdapter";
156
159
  export * from "./timeline/region/ValueRegionBoxAdapter";
@@ -0,0 +1,17 @@
1
+ import { NeuralAmpModelBox } from "@opendaw/studio-boxes";
2
+ import { UUID } from "@opendaw/lib-std";
3
+ import { Address, StringField } from "@opendaw/lib-box";
4
+ import { BoxAdaptersContext } from "../BoxAdaptersContext";
5
+ import { BoxAdapter } from "../BoxAdapter";
6
+ export declare class NeuralAmpModelBoxAdapter implements BoxAdapter {
7
+ #private;
8
+ constructor(context: BoxAdaptersContext, box: NeuralAmpModelBox);
9
+ get box(): NeuralAmpModelBox;
10
+ get uuid(): UUID.Bytes;
11
+ get address(): Address;
12
+ get labelField(): StringField;
13
+ get modelField(): StringField;
14
+ getModelJson(): string;
15
+ terminate(): void;
16
+ }
17
+ //# sourceMappingURL=NeuralAmpModelBoxAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NeuralAmpModelBoxAdapter.d.ts","sourceRoot":"","sources":["../../src/nam/NeuralAmpModelBoxAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,iBAAiB,EAAC,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAC,IAAI,EAAC,MAAM,kBAAkB,CAAA;AACrC,OAAO,EAAC,OAAO,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAA;AACrD,OAAO,EAAC,kBAAkB,EAAC,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAA;AAExC,qBAAa,wBAAyB,YAAW,UAAU;;gBAI3C,OAAO,EAAE,kBAAkB,EAAE,GAAG,EAAE,iBAAiB;IAK/D,IAAI,GAAG,IAAI,iBAAiB,CAAmB;IAC/C,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,CAAgC;IACtD,IAAI,OAAO,IAAI,OAAO,CAA2B;IACjD,IAAI,UAAU,IAAI,WAAW,CAAyB;IACtD,IAAI,UAAU,IAAI,WAAW,CAAyB;IAEtD,YAAY,IAAI,MAAM;IAItB,SAAS,IAAI,IAAI;CACpB"}
@@ -0,0 +1,30 @@
1
+ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
2
+ if (kind === "m") throw new TypeError("Private method is not writable");
3
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
4
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
5
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
6
+ };
7
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
8
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
9
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
10
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
11
+ };
12
+ var _NeuralAmpModelBoxAdapter_context, _NeuralAmpModelBoxAdapter_box;
13
+ export class NeuralAmpModelBoxAdapter {
14
+ constructor(context, box) {
15
+ _NeuralAmpModelBoxAdapter_context.set(this, void 0);
16
+ _NeuralAmpModelBoxAdapter_box.set(this, void 0);
17
+ __classPrivateFieldSet(this, _NeuralAmpModelBoxAdapter_context, context, "f");
18
+ __classPrivateFieldSet(this, _NeuralAmpModelBoxAdapter_box, box, "f");
19
+ }
20
+ get box() { return __classPrivateFieldGet(this, _NeuralAmpModelBoxAdapter_box, "f"); }
21
+ get uuid() { return __classPrivateFieldGet(this, _NeuralAmpModelBoxAdapter_box, "f").address.uuid; }
22
+ get address() { return __classPrivateFieldGet(this, _NeuralAmpModelBoxAdapter_box, "f").address; }
23
+ get labelField() { return __classPrivateFieldGet(this, _NeuralAmpModelBoxAdapter_box, "f").label; }
24
+ get modelField() { return __classPrivateFieldGet(this, _NeuralAmpModelBoxAdapter_box, "f").model; }
25
+ getModelJson() {
26
+ return __classPrivateFieldGet(this, _NeuralAmpModelBoxAdapter_box, "f").model.getValue();
27
+ }
28
+ terminate() { }
29
+ }
30
+ _NeuralAmpModelBoxAdapter_context = new WeakMap(), _NeuralAmpModelBoxAdapter_box = new WeakMap();
@@ -1 +1 @@
1
- {"version":3,"file":"ProjectUtils.d.ts","sourceRoot":"","sources":["../../src/project/ProjectUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,kBAAkB,CAAA;AAcrC,OAAO,EAEH,YAAY,EASf,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EAAC,eAAe,EAAC,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAC,YAAY,EAAgB,MAAM,WAAW,CAAA;AAGrD,yBAAiB,YAAY,CAAC;IASnB,MAAM,iBAAiB,GAAI,gBAAgB,aAAa,CAAC,YAAY,CAAC,EAC3C,4DAAwD,eAAe,EACvE,UAAS;QACL,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,eAAe,CAAC,EAAE,OAAO,CAAC;KACxB,KAClC,aAAa,CAAC,YAAY,CA6B/B,CAAA;IAEM,MAAM,cAAc,GAAI,aAAa,aAAa,CAAC,YAAY,CAAC,EACxC,4DAAwD,eAAe,EACvE,iBAAgB,IAAU,KAAG,IA8C3D,CAAA;CAoGJ"}
1
+ {"version":3,"file":"ProjectUtils.d.ts","sourceRoot":"","sources":["../../src/project/ProjectUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,kBAAkB,CAAA;AAarC,OAAO,EAAC,YAAY,EAAmD,MAAM,uBAAuB,CAAA;AAEpG,OAAO,EAAC,eAAe,EAAC,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAC,YAAY,EAAgB,MAAM,WAAW,CAAA;AAGrD,yBAAiB,YAAY,CAAC;IAUnB,MAAM,iBAAiB,GAAI,gBAAgB,aAAa,CAAC,YAAY,CAAC,EAC3C,4DAAwD,eAAe,EACvE,UAAS;QACL,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,eAAe,CAAC,EAAE,OAAO,CAAC;KACxB,KAClC,aAAa,CAAC,YAAY,CAyB/B,CAAA;IAEM,MAAM,cAAc,GAAI,aAAa,aAAa,CAAC,YAAY,CAAC,EACxC,4DAAwD,eAAe,EACvE,iBAAgB,IAAU,KAAG,IA+C3D,CAAA;CA6FJ"}