Package-level declarations
Types
Host side of the uapmd addin system (uapmd 0.5.6). An addin is a package that attaches itself to named extension points a host publishes; ARA support is one such addin.
uapmd_anchor_origin_t: which end of the anchor the offset is measured from.
Mirrors uapmd_app_project_result_t.
Mirrors remidy::AudioBusRole.
Stable document identity of one clip.
Mirrors uapmd_clip_audio_events_result_t.
A clip detached from the document: the payload shared by an undo entry and a clipboard entry. Fragments obtained from TimelineFacade.captureClipFragment must be closed; those borrowed from a TrackFragment need not be.
Groups several commands into one named history step.
Minimal format manager – exposes available plugin formats by name.
Marker for a MIDI 2.0 function device (no public C API beyond retrieval).
One audio bus of a graph node — remidy::AudioBusConfiguration.
One end of a graph connection.
One node of a track graph: uapmd_graph::AudioGraphNode plus the remidy::PluginAudioBuses facade it exposes.
Marker for a platform MIDI I/O device handle.
uapmd::MidiRecorder — captures live MIDI input into a selected clip.
Stable document identity of one plug-in node. A runtime instance id is not usable in history: removing and restoring a plug-in produces a new one.
Mirrors uapmd_plugin_instance_result_t.
Lifecycle manager for a single plugin's instantiation process. Created per (format, pluginId) pair via createPluginInstancing.
A project file made loadable. .uapmdz archives are unpacked to a temporary directory; a plain .uapmd resolves to itself. Close it after loading to remove any temporary files.
Translation between the persistent identities a history step carries and the runtime indexes the engine works with. Not thread safe; call on the model thread only.
The undoable edits a project supports. Use TimelineFacade for reading the document and for changes that are not user edits; use this for anything a user could undo.
Progress of a slow plug-in scan, mirroring AppModel::SlowScanProgressState.
A tempo change on the master track; uapmd_tempo_point_t.
A time-signature change on the master track; uapmd_time_signature_point_t.
Which parts of a captured track are applied when it is attached.
A track detached from the document. Unlike a clip, a track owns live plug-in instances, so both capturing and attaching one are asynchronous.
uapmd_app::TransportController. Owned by the AppModel.
The Emscripten-compiled uapmd-c-api module. Call initUapmdWasm to initialize before using any functions.
Mirrors uapmd_ump_events_result_t.
Thread-affine asynchronous project history. Its methods are called on the model thread; completions may arrive on any thread.
Functions
A reader that yields silence, for clips with no source file.
A reader that yields silence, for clips with no source file.
A reader that yields silence, for clips with no source file.
A reader that yields silence, for clips with no source file.
A reader that yields silence, for clips with no source file.
A reader that yields silence, for clips with no source file.
Offers a file written into MEMFS to the user. Returns false when nothing was written there — a render that failed, say — so the caller can say so rather than trigger an empty download.
Extracts a .uapmdz archive into destDir (which must not already exist). Returns the path of the extracted .uapmd project file, or null on failure. Call removeExtractedArchive when the project has been loaded.
Initialize the uapmd JS module from an Emscripten factory function.
Initialize the uapmd Wasm module from an Emscripten factory Promise. Typically called once at app startup:
Creates the process-wide AppModel. Install an event loop first (see the note on AppModel). Calling it twice replaces the previous instance.
Creates the process-wide AppModel. Install an event loop first (see the note on AppModel). Calling it twice replaces the previous instance.
True when path is a packed project (.uapmdz) rather than a bare .uapmd.
Opens the browser's file picker through uapmd's Emscripten document provider, which creates a hidden <input type=file>, copies the chosen file into MEMFS and hands back a path the engine can open (DocumentProviderEmscripten.cpp:93).
Unpacks a .uapmdz archive (or passes a .uapmd through) before loading.
Unpacks a .uapmdz archive (or passes a .uapmd through) before loading.
Unpacks a .uapmdz archive (or passes a .uapmd through) before loading.
Unpacks a .uapmdz archive (or passes a .uapmd through) before loading.
Unpacks a .uapmdz archive (or passes a .uapmd through) before loading.
Unpacks a .uapmdz archive (or passes a .uapmd through) before loading.
Saves the project the way uapmd-app does (MainWindow::handleSaveProject): ask the provider for a save handle, then hand it to the app model, which packs the project tree into a .uapmdz and writes it through the provider — a download, in a browser. Writing to a path cannot replace this: a saved project is a directory, so a single-file write would deliver only its manifest.
Remote scanning needs a launchable process; this platform has none.
Points remote plug-in scanning at a standalone scanner executable.
Remote scanning needs a launchable process; this platform has none.
Points remote plug-in scanning at a standalone scanner executable.
Remote scanning needs a launchable process; this platform has none.
Remote scanning needs a launchable process; this platform has none.
Drives pending picks; the provider completes them from its own tick.
Reports null on success, or the engine's message on failure.
The C callback takes uapmd_plugin_instance_result_t by value, which Emscripten passes as a pointer. Layout on wasm32: int32 id @0, char* name @4, char* err @8.
uapmd_app_project_result_t by value = a pointer. wasm32: bool @0, char* @4.
Hands the first handle's address on, so the save can use it without copying.
The C callback takes uapmd_undo_result_t by value, i.e. as a pointer.