Add AquaSynth live session close command
This commit is contained in:
parent
50ed85ae41
commit
0da43b9439
10 changed files with 155 additions and 13 deletions
|
|
@ -13,10 +13,11 @@ architecture. It is a reference ledger for
|
|||
`cultnet-stream`, and `cultnet-daemon` as local CultNet command surfaces.
|
||||
- `src/AquaSynth.Faust/AquaSynthDaemonService.cs`: the service owns
|
||||
`patch.compile`, `instrument.sample`, bounded `instrument.stream`,
|
||||
`instrument.open`, `instrument.control`, and `instrument.block` execution. It
|
||||
writes compile/session/render/stream/live/operator witnesses, keeps native
|
||||
streaming patch instances for live sessions, and emits CultMesh-compatible
|
||||
stream descriptors and packet receipts.
|
||||
`instrument.open`, `instrument.control`, `instrument.block`, and
|
||||
`instrument.close` execution. It writes compile/session/render/stream/live/
|
||||
operator witnesses, keeps native streaming patch instances for live sessions,
|
||||
releases live sessions without deleting compiled patch witnesses, and emits
|
||||
CultMesh-compatible stream descriptors and packet receipts.
|
||||
- `src/AquaSynth.Faust/AquaSynthCultNetDaemon.cs`: local CultNet database host
|
||||
and command watcher. Typed command documents enter the database; typed
|
||||
receipts and provider state come back out.
|
||||
|
|
|
|||
|
|
@ -112,11 +112,12 @@ AquaSynth is the current synth example. AquaSynth owns patch parsing, Faust
|
|||
emission, native compilation, compiled instrument sessions, sample rendering,
|
||||
bounded stream receipts, live streaming sessions, and synth-control state. A
|
||||
client can send `instrument.sample`, `instrument.stream`, `instrument.open`,
|
||||
`instrument.control`, or `instrument.block` as typed command state through the
|
||||
local CultNet database. AquaSynth compiles or opens the instrument, keeps the
|
||||
native streaming patch instance, applies controls, writes sample/block artifacts
|
||||
and receipts, and publishes the result. The client consumes the capability; it
|
||||
does not become the synth.
|
||||
`instrument.control`, `instrument.block`, or `instrument.close` as typed command
|
||||
state through the local CultNet database. AquaSynth compiles or opens the
|
||||
instrument, keeps the native streaming patch instance, applies controls,
|
||||
releases live sessions, writes sample/block artifacts and receipts, and
|
||||
publishes the result. The client consumes the capability; it does not become
|
||||
the synth.
|
||||
|
||||
That lets one AquaSynth daemon sit on this machine or another machine in the
|
||||
Verse and serve multiple apps. The same engine can support Fensalir, Eve
|
||||
|
|
|
|||
|
|
@ -80,6 +80,10 @@ binary lifetime, live instrument handles, control sessions, and sampled outputs.
|
|||
return an instrument handle.
|
||||
- `instrument.open`: allocate or attach to a compiled instrument session.
|
||||
- `instrument.control`: set one or more stable semantic controls.
|
||||
- `instrument.block`: process one fixed block through an open live instrument
|
||||
session and return the block receipt/artifact reference.
|
||||
- `instrument.close`: release an open live instrument session without deleting
|
||||
the compiled instrument product.
|
||||
- `instrument.sample`: sample a live or offline instrument output.
|
||||
- `instrument.stream`: compile/open a streaming instrument session, apply
|
||||
block-indexed automation controls, publish CultMesh-compatible audio/control
|
||||
|
|
@ -108,6 +112,11 @@ invent a separate truth for compiled products or control state.
|
|||
per-block controls, publishes CultMesh `Audio` and `Tensor` descriptors inside
|
||||
the service, writes block `.f32` packet bodies, and commits one typed stream
|
||||
receipt.
|
||||
- `daemon` and `cultnet-daemon` also accept `instrument.open`,
|
||||
`instrument.control`, `instrument.block`, and `instrument.close` envelopes.
|
||||
These live commands keep and release service-owned native streaming patch
|
||||
instances; closing a live session does not delete the reusable compiled patch
|
||||
witness.
|
||||
- `cultnet-host`: starts a local CultNet host/database for AquaSynth command and
|
||||
receipt documents, publishes `aquasynth.cultnet_provider.v1`, and watches
|
||||
typed command records until the process is stopped.
|
||||
|
|
|
|||
Loading…
Reference in a new issue