• v0.0.5 39e22df620

    MixApp 0.0.5 Stable

    andriiuok released this 2026-09-29 23:09:21 +00:00 | 91 commits to main since this release

    MixApp 0.0.5

    This is the complete Windows x64 update since 0.0.4. It combines the timeline, playback, analysis, project-safety, and build work listed below. The installer is signed for the existing in-app updater.

    Timeline and editing

    • Added bounded Undo/Redo for clip placement, movement, trimming, cutting, automation, tempo markers, and transitions. Save state and project replacement reset history correctly; File menu actions and keyboard shortcuts show availability.
    • Improved timeline drag, trim, snap, cut, transition interval, waveform, ruler, zoom, overview, and long-mix navigation feedback. The playhead now follows the audible playback position.
    • Added clearer automation editing, Playlist transition controls, keyboard clip selection, and accessible dialog focus behavior.
    • Preserved automation and exact clip IDs through trim, cut, project snapshots, and atomic Playlist/Timeline edits.

    Playback, synchronization, and export

    • Reduced work in the realtime audio path with active-clip rendering, immutable render snapshots, streamed three-band EQ, bounded maintenance, and safer producer/ring-buffer lifetimes.
    • Improved tempo/beat mapping and Rubber Band synchronization, including phase correction and stable behavior across render blocks.
    • Fixed playback faults involving automation snapshot data, seek epochs, output recovery, and the stalled timeline position indicator.
    • Separated offline export state from preview, added an explicit peak/clipping policy, and smoothed audio boundaries.

    Library, projects, and responsiveness

    • Staged library analysis and canonical PCM preparation so tracks become usable without blocking unrelated UI work. Added source/sync readiness and clearer progress or failure feedback.
    • Added cancellation and lifecycle handling for import, analysis, export, and other background jobs.
    • Strengthened project recovery, exit safety, cache ownership, media relinking, and stale-result protection.
    • Fixed application input and resize freezes; bounded waveform work and Pixi resources; added renderer recovery, visual tokens, and better small-window/DPI behavior.

    Build and distribution

    • Pinned Node, pnpm, Rust, Windows Python wheels, FFmpeg, Rubber Band, and eight downbeat model files. Builds now verify a source/resource manifest and reject a stale staged engine.
    • The installed app exposes matching UI/engine/protocol/project-schema and native/model identity in diagnostics. The Windows package includes the downbeat models for offline use.
    • The bundled madmom model weights are licensed CC BY-NC-SA 4.0. This release is for noncommercial use only. The model rights and attribution are in THIRD-PARTY-NOTICES.md and the installed licenses/ directory.

    Upgrade notes and known limits

    • Existing projects remain supported; source music files are not changed. Disposable caches may be regenerated after upgrading.
    • Install the Windows x64 installer directly or use the signed in-app update from 0.0.4. There is no Linux installer in this release.
    • Automated release checks still include nine previously known Python fixture/stdio errors and eight UI source-pattern assertions. These are not reported as passing tests.

    Commit-by-commit changelog since 0.0.4

    The entries below retain the original commit subjects so that every repository change included in this release can be traced.

    • fcc23d1 Defer MixApp 0.0.4 updater manifest until release upload
    • b2cc34d Publish MixApp 0.0.4 updater manifest
    • b6dd448 Record MixApp 0.0.4 publication
    • c374e0c Fix playlist and transition automation
    • edb63a3 Restrict renderer to intersecting timeline clips
    • 4b8f219 Make playback producer lifecycle generation-safe
    • 2163f71 Publish coherent engine telemetry snapshots
    • 7679d00 Establish domain mutation commit contract
    • c204fa1 Stage library analysis before engine commit
    • 0499608 Prepare canonical PCM independently of analysis
    • 2e922df Skip neutral automation during rendering
    • b17b50b Vectorize automation source time mapping
    • 6c536e5 Stream realtime three band EQ
    • f6fb2e5 Fix waveform cache retry lifecycle
    • 40fd2a7 Decouple transport from timeline redraw
    • 3d380bd Schedule revision-aware frontend refreshes
    • 6f6d14c Reconcile mutation timeouts and trim jobs
    • f12d1b1 Add scoped playback readiness feedback
    • b531659 Publish immutable realtime render snapshots
    • d54ed6c Isolate offline export render state
    • 76a403c Ignore stale automation reads during project changes
    • 6dccd32 Restore UI responsiveness under timeline load
    • 78c47fd Polish workspace status and diagnostics
    • 6eb984f Refine Timeline header and edit toolbar
    • 8dd355c Add long-mix timeline navigation
    • 716add9 Improve timeline direct manipulation feedback
    • 151a91e Visualize timeline transition intervals
    • 7c4897b Improve automation editing feedback
    • e163007 Improve Library discovery and status
    • 56212b7 Clarify Playlist transition controls
    • 1225f9b Fix empty timeline UI responsiveness
    • ce6efda Fix native window resize restoration
    • 83dded1 Remove global pointer interception
    • 96dd637 Fix WebView input and resize routing
    • 0eeca8c Stop Timeline resize feedback loop
    • 16c3393 Fixes for Unrespinsible UI
    • a2ee59d Preserve automation through trim and project snapshots
    • f63b770 Make playlist and timeline edits atomic
    • 3dbe63c Fix exact seek positioning and atomic playback epochs
    • b965d84 Run bounded engine maintenance and handle playback termination
    • de7982d Guard playback session resources and recover output failures
    • bd7b676 Replace project signatures with explicit revision commits
    • 8e4be96 Fix automation points in playback render snapshots
    • c326d60 Fix timeline playhead redraw during playback
    • f81bb1e Unify IPC mutation outcomes and job identities
    • 11724f9 Coordinate cache ownership and safe clearing
    • c300234 Make media jobs cancellable and bound engine shutdown
    • 16a5551 Protect project restore and make exit recovery safe
    • 6a9123a Consolidate musical timing contract across timeline and renderer
    • 41ec944 Stabilize realtime stretch control across render partitions
    • 7c8fe2a Align realtime EQ with bypass and export timing
    • 3c49bae Bound audio callback work and expose audible playhead timing
    • 1ec122e Add explicit export peak policy and smooth audio boundaries
    • 5148559 Expose source and sync readiness in library and playback
    • 6c30f3e Complete Phase 17 controller workflows and job feedback
    • af87a2f Complete Phase 18 modal focus and keyboard editing
    • fb80580 Bound waveform reads and release timeline resources
    • ae05e09 Unify timeline visuals and recover Pixi renderer
    • 658034e Add bounded undo and redo for project edits
    • 7b8e3d0 Pin build inputs and verify packaged engine identity
    Downloads