Chapter 5
Projects
Session state and project files #
A working session includes the score, tracks, clips, devices, tuning, automation and editor state. In standalone, quitting preserves the processor session so the app can reopen it. A named library project is a separate deliberate save. Keep library versions for work you want to retain.
In a hosted instance, the DAW saves the DonutStudio processor state inside its own project. Use the host save command. The DonutStudio plug-in does not own the standalone project library.
Library and versions #
Open the standalone project manager to browse categories and projects. Projects are ordered by their last modification time. Double-click a project heading to load its current version. Expand a project and single-click a version row to load that version. Recent entries provide another route back to saved work.
For a project opened at its current library version, Save overwrites that version. Save Version creates the next numbered version and makes the new version current. Save As New creates a separate named project with an initial version. In the Save / Export menu, these commands are called Save Project, Save Project Version and Save As New Project....
Saving edits to an older opened version is under review in this draft. Use Save Version or Save As New before editing an older version so you keep a separate saved result.
The browser can delete a version after confirmation. It refuses to delete an active version with unsaved changes and tells you to save the work as a new version first. Deleting a saved version removes that file. Recovery snapshots are not the version history.
Delete a whole project with the browser's delete control on the project heading, or by right-clicking the heading for the same action. Confirmation lists the project before anything is removed. Deleting a project removes its folder and every saved version together. The browser refuses to delete the project you currently have open.
Files opened outside the library #
Open From Disk in the project browser and Open Project From Disk... in Load / Import accept files outside the library. A successful replacement import stops the previous preview transport. It becomes unsaved work unless the file is a recognized library version.
Use Save As New to bring an external project or bundled example into your library. Ordinary Save is not a general overwrite command for every imported file. Export DonutStudio Project writes a separate .arbit file through a file chooser.
Draft: when the project manager finds earlier .arbit files outside the library, it can offer Move All to Library, Leave as-is and Don't ask again. Native verification is pending.
Move All to Library copies the found files into Imported and leaves the original files in place. Files that cannot be added remain listed for retry. Leave as-is dismisses the prompt for now. Don't ask again turns off this migration prompt.
The scan checks selected folders and is not a search of every project folder. Open From Disk remains the separate route for choosing a file directly.
Replacing unsaved work #
Opening another project, importing replacement content and starting a new project go through the unsaved-changes prompt. Save attempts to save your edits before continuing; Discard continues without that save; Cancel keeps the current work open.
If you have no named library project, Save opens Save As New. Cancelling that save also cancels the pending replacement. Draft: failure handling for named-library saves is incomplete. A library update can fail without cancelling the pending replacement. Save a separate copy before replacing important work.
Import and export #
Load / Import in standalone includes Import DonutStudio Project, Import DAWProject, Import MIDI File, Import JI File, Import Scala Tuning and Audio to MIDI.... Hosted instances offer the instance-safe Import menu rather than standalone project commands. Audio to MIDI... appears with the Per-Note Audio add-on.
MIDI import creates one project track for each channel that contains notes. It uses the first program change per channel and applies Bank Select MSB only (channel 10 is assigned bank 128); Bank Select LSB and later program changes are not retained. Review the resulting tracks and instruments after import.
A system .mid or .midi file dropped on the editor uses the MIDI project-replacement import, including when dropped over Piano Roll. It does not place notes at the drop point. In standalone, choose Import MIDI in the Project Browser and select a .mid or .midi file.
Save / Export offers project and interchange export separately from media rendering. Use the matching file type for what you need to transfer. A MIDI file does not replace a DonutStudio project backup.
MIDI import reads tempo events into both the Tempo Map and Tempo automation lane, and time-signature events into the Time Signature map. MIDI export writes the current Tempo and Time Signature maps.
If a .ji import is rejected, the current notes, links and tracks remain unchanged, and the existing Undo and Redo history remains usable. This rejection behavior has been checked in the Linux standalone app. Windows and macOS remain unverified for this draft.
- .arbit is the native DonutStudio project format. Export DonutStudio Project writes a separate project file in standalone.
- MIDI import accepts .mid and .midi. MIDI export is note and performance exchange rather than a complete save of devices, media, workspace and project structure.
- JI import and export exchange the app's tuning data in .ji files. Scala import accepts .scl scales and .kbm keyboard maps.
- DAWProject import and export use .dawproject. Imported third-party devices can need resolution. Use Migrate Devices... when the imported project contains unavailable devices.
- Export Audio... is a standalone render. Export Video... is offered when video clips exist and the runtime supports video export. Publishing is a separate Pro workflow.
Media and missing devices #
Keep the media used by a project available when moving it. Do not assume an interchange file installs third-party plug-ins, soundfonts or optional models on the destination machine. Native 3D-model imports also need a saved library project so the app has a project asset location.
Some audio-clip imports and enabled Per-Note Audio sample routes copy their source into a project-specific ImportedSamples folder in DonutStudio's data directory. These files are stored separately from the project file. If copying fails, the project keeps the original path. Keep that source available until reopening confirms the clip or sample loads. Per-Note Audio authoring still follows its existing add-on and Pro requirements.
A missing hosted instrument or effect can retain its saved device state while remaining unavailable. Use the migration/resolution workflow to choose a compatible installed device. Confirm the sound and parameters before saving over a working version.
Autosave and recovery #
The app writes recovery snapshots separately from library version files and retains a bounded set of recent snapshots. Recovery is intended for recovering a session; it does not create a named project version for each edit.
Open Settings > System > Recovery and choose Restore from backup.... The selector lists snapshots newest first with their timestamps, note counts and link counts. Select a snapshot, then Restore. Cancel leaves the session as it is. If no valid snapshots exist, the app reports No recovery snapshots found.
Restoring replaces session content. Save a version of useful current work before choosing Restore. After recovery, inspect the score, clips and devices, then use Save As New or Save Version to retain the recovered result. Snapshot restoration supports Undo, but it is not a substitute for a retained project version.