# xtc screenshots The complete gallery was refreshed after Phases 100–105 on 2026-11-06, including MIDI preferences/import, the sample editor, creative workflows and real installed VST3 insert chains. The gallery captures are actual rendered application windows and menus on a 1440 × 960 virtual X11 screen. The promotional `overview.png` is a designed composite of cropped, proportionally scaled captures with added headings; the other captures have no mockups, compositing or image edits. ![xtc promotional overview: arrangement, piano roll, mixer and modular effects](overview.png) Regenerate the 2400 × 1800 promotional overview after refreshing the gallery: ```sh python3 tools/create_promotional_overview.py ``` This optional image composition script requires Pillow, Fontconfig (`fc-match`) and DejaVu Sans. It uses `sequencer-loop.png`, `piano-roll-velocity.png`, `mixer-playing.png` and `track-inserts-vst3.png`; no application UI is fabricated. The full screenshot capture target replaces `overview.png` with a raw capture, so run the composition script afterwards to restore the promotional version. The temporary demonstration project starts from `examples/projects/modern-session.xtc`, adding Intro/Verse/Chorus/Outro markers, a routed music bus and gain automation. Editing results use the real control APIs and GUI history/preparation paths. Original projects, media and user configuration are not overwritten. Black margins are the virtual desktop; floating views show the actual detached windows together. ## MIDI devices, defaults and file exchange (Phases 100–105) - [Open MIDI input dropdown with real host devices](preferences-midi-input-devices.png) - [MIDI source/destination preferences and channel defaults](preferences-midi.png) - [Device setup and MIDI defaults help](preferences-midi-help.png) - [File menu with MIDI import and selected-clip export](midi-file-menu.png) - [An exported clip reimported into a new arrangement](midi-import-arrangement.png) - [The imported notes and velocities in the piano roll](midi-import-piano-roll.png) These captures use real file export/import and the real preferences schema. No hardware device names or connected devices are fabricated; blank port defaults mean no automatic connection. Actual device choices depend on host JACK/PipeWire exposure. Configuration paths are disabled in captures to preserve user settings. See [MIDI workflows and limits](../docs/MIDI_WORKFLOWS.md). Reproduce these five captures with `XTC_CAPTURE_MIDI_ONLY=1 make BUILD_DIR=build/audio-editor screenshots`. The open input dropdown was captured after the device-label lifetime fix. It shows actual host sources, including UMC204HD, USB MIDI, Oxygen Pro 25 and BLE MIDI ports. No route is selected and user preferences are preserved. Reproduce just this image with real MIDI sources exposed by JACK/PipeWire: `XTC_CAPTURE_MIDI_INPUT_ONLY=1 make BUILD_DIR=build/audio-editor screenshots`. The capture fails explicitly if the host exposes no input sources. ## Creative workflows (Phases 90–99) Four real captures show the current transport Tap button, insert meters and creative controls; the rest of the gallery also reflects the current UI. - [Dub Echo template in the insert graph](creative-dub-rack.png) - [Rack actions: bulk edits, comparison and chain clipboard](creative-rack-actions.png) - [Chord strumming controls](creative-strum-dialog.png) - [Strummed chord notes in the piano roll](creative-strum-result.png) Reproduce only these captures with `XTC_CAPTURE_CREATIVE_ONLY=1 make BUILD_DIR=build/audio-editor screenshots`. The rack shows the actual template and idle meter; no live peak readings are fabricated. See [creative workflow limits](../docs/CREATIVE_WORKFLOWS.md). ## Compact workspace and installed VST3 effects (Phases 80–89) - [Compact sequencer workspace](compact-workspace.png) - [Create dropdown over the sequencer](create-track-menu.png) - [ZamEQ2 → ZamAutoSat → ZamDelay on the Keys track](track-inserts-vst3.png) - [Verified VST3 identity and adapter capabilities](track-insert-vst3-identity.png) - [Parallel wet/dry branches in the actual insert graph](track-inserts-parallel.png) The three VST3 effects are installed on this host under `/usr/lib/vst3`, loaded through the real host and prepared in the track's chain. These are host graph and identity views; native plugin editor windows are not available. The identity view explicitly reports default configuration and absent parameter controls. Long graphs scroll horizontally. See [TRACK_INSERTS.md](../docs/TRACK_INSERTS.md) for precise compatibility limits. ## New arrangement and composition workflows | Phase | Feature | Captures | | --- | --- | --- | | 58 | Persistent named arrangement markers | [Ruler](arrangement-markers.png), [marker editor](marker-edit.png) | | 59 | Section navigation and looping | [Current section loop](section-navigation.png) | | 60 | Ripple time insertion/removal | [Controls](ripple-time.png), [inserted gap](ripple-result.png) | | 61 | Complete track duplication | [Independent layered track](track-duplication.png) | | 62 | Nondestructive MIDI splitting | [Split clip](midi-split.png) | | 63 | MIDI clip consolidation | [Consolidated clip](midi-consolidation.png) | | 64 | Seeded MIDI humanization | [Timing, velocity and seed](midi-humanize.png) | | 65 | Chord construction | [Intervals](midi-chord-builder.png), [generated notes](midi-chords-result.png) | | 66 | Offline arpeggio generation | [Step, gate and direction](midi-arpeggio.png), [written pattern](midi-arpeggio-result.png) | | 67 | Audio peak normalization | [Target dBFS](audio-normalization.png), [normalized clip](audio-normalization-result.png) | | 68 | Portable media collection | [New destination folder](project-collection.png) | Collection is also executed by the capture tool into its temporary directory; the screenshot shows its destination prompt, not a file browser or progress UI. See [COMPOSITION_WORKFLOWS.md](../docs/COMPOSITION_WORKFLOWS.md) for precise behavior, limits and commands. The screenshots illustrate implemented workflows; they do not establish feature parity with other DAWs. ## Audio source editor (Phases 69–79) - [Frame selection, waveform, statistics and processing controls](sample-editor.png) - [Detected source attacks and clip slicing controls](sample-transients.png) These captures show the actual modal editor with the repository pluck WAV. Processing is staged locally; Save full copy and relink applies it to the project. See [AUDIO_EDITOR.md](../docs/AUDIO_EDITOR.md) for limits and frame/tick rounding. ## Refreshed application views All pre-existing images below were recaptured. Mixer playback meters come from real JACK callbacks. The minimum-size capture uses a 1220 × 720 main window; the scrolled view adds twelve tracks. Audio views import the repository's `original-pluck.wav` and apply clip gain/fades. The older descriptor/control views use repository test fixtures. The track-insert views below use real installed host VST3 binaries. Internal instrument menus and delay/reverb editors show the real available devices and controls. The command palette uses the current application action list. - [Sequencer loop](sequencer-loop.png) - [Mixer automation](mixer-automation.png) - [Modular graph](modular-graph.png) - [Piano roll velocity](piano-roll-velocity.png) - [Sequencer audio waveform](sequencer-audio-waveform.png) - [Preferences audio](preferences-audio.png) - [Preferences plugins](preferences-plugins.png) - [Preferences interface](preferences-interface.png) - [Preferences editing](preferences-editing.png) - [Preferences project defaults](preferences-project_defaults.png) - [Preferences transport](preferences-transport.png) - [Plugin library](plugin-library.png) - [Plugin descriptors](plugin-descriptors.png) - [Plugin controls](plugin-controls.png) - [Midi controller mapping](midi-controller-mapping.png) - [Loop range](loop-range.png) - [About](about.png) - [Audio clip properties](audio-clip-properties.png) - [Clap instrument descriptors](clap-instrument-descriptors.png) - [Vst2 instrument descriptors](vst2-instrument-descriptors.png) - [Vst3 instrument descriptors](vst3-instrument-descriptors.png) - [Mixer playing](mixer-playing.png) - [Mixer minimum size](mixer-minimum-size.png) - [Mixer scrolled session](mixer-scrolled-session.png) - [Commands](commands.png) - [Internal instruments](internal-instruments.png) - [Internal delay](internal-delay.png) - [Internal reverb](internal-reverb.png) - [Detached transport with BPM and loop settings](transport-detached.png) - [Detached mixer](mixer-detached.png) - [Workspace with transport and mixer detached](workspace-detached.png) - [Detached sequencer](sequencer-detached.png) - [Detached modular graph](graph-detached.png) Detach panels from the View menu; close a floating window or use its Dock button to return it to the main window. ## Reproduce the gallery From the repository root, run: ```sh make BUILD_DIR=build/next-daw screenshots ``` This optional documentation target requires the existing FLTK/JACK build prerequisites, a running JACK server, Xvfb (`xvfb-run`), ImageMagick (`import`) and `xdotool`. It builds the repository plugin fixtures, runs [the capture tool](../tools/capture_screenshots.cpp), and replaces the gallery PNGs. All demonstration edits and collection outputs use an automatically removed temporary directory; no preferences are saved. It neither installs dependencies nor starts/reconfigures the audio server. Set `XTC_CAPTURE_SAMPLE_ONLY=1` for the capture tool (or the make target) to write only the two sample-editor images while retaining the existing gallery. To reproduce the host captures where those Zam bundles are installed: ```sh XTC_CAPTURE_HOST_VST3=1 xvfb-run -a -s '-screen 0 1440x960x24' \ ./build/audio-editor/capture_screenshots "$PWD/screenshots" ``` Run `make BUILD_DIR=build/audio-editor screenshots` first to build the tool and refresh the full fixture/demo gallery. All captures use temporary projects and preserve user settings and original media.