Skip to content

Changelog

Changes per version. For detailed feature docs, see Objects and the API reference.

Unreleased / Beta

v0.1.0 is still in development and not released. Details may change. Display and behavior can vary with the MIDI content and the AviUtl2 environment.

v0.1.0 (in development, unreleased)

The first full version, in development. Adds the visualization objects, MIDI sharing/sync, and the external API.

Info display & graphs

  • Added Text / Marker / Lyric event display
  • Added MIDI Text Scroll (time-axis scrolling of Marker / Lyric / Text, with up/down direction)
  • Added text alignment (Align: left / center / right)
  • Added NPS / Polyphony / BPM / Notes / Notes Density graphs (MIDI Graph)
  • Added graph Full / Window scope and the Y Range setting
  • Improved graph Y-axis (value=0 at the bottom; constant values no longer stick to the top)

Keyboard & piano roll

  • Added MIDI Keyboard (Low/High Key range, 16-channel stack, orientation/style)
  • Added MIDI Piano Roll (vertical fall / right-to-left)
  • Added the GPU version MIDI Piano Roll GPU
  • Added the 3D perspective MIDI Piano Roll 3D (fixed camera, uniform box notes, 3D keyboard with press animation, 128-key auto scale, overlap resolution)
  • Added a grand-staff score view MIDI Score (currently excluded)
  • Unified layering to "newer note in front" and made simultaneous notes deterministic (no flicker)
  • Occlusion of fully hidden older same-pitch notes to keep Black MIDI light (CPU / GPU)

Colors, sharing & time axis

  • Added channel colors to MIDI Source (Ch 1 ColorCh 16 Color), shared by keyboard/rolls
  • Added sharing of the parsed MIDI analysis across objects
  • Added timeline sync (Shared objects follow MIDI Source's placement)
  • Added time-axis modes Time (sec) / Beat (musical) to the piano rolls and Text Scroll
  • Made the visible window (note speed) configurable down to 0.01

External integration & docs

  • Added an external plugin C ABI (MidiInfo_GetAPI) exposing BPM, time signature, bars, note spans, channel colors, shared playback time, and more over a stable C ABI. Includes a sample plugin
  • Added a documentation site (VitePress)

Loading, foundations & fixes

  • Moved MIDI loading to the background with a progress window
  • Optimized tick→seconds via binary search (beat conversion uses cumulative beats too)
  • Fixed seconds calculation with duplicate tempos (notes count no longer stalls)
  • Adopted the create_image_resource("object", ...) rendering path
  • Switched font selection to a font picker dialog (fixed it not applying)

v0.0.1

Initial prototype.

  • Loads a MIDI file and shows info via a template string
  • Tokens: Time / TotalTime / Notes / TotalNotes / Bars / TotalBars / Beat / TimeSignature / BPM / NPS / Polyphony
  • Font selection, text color, transparent RGBA rendering
  • Zero padding / comma separators / auto digit alignment