Source-linked AI summary
LayerIt: Towards a Framework for Time-Aligned, Composable Music Visualizations
Fernando Azeredo, António Sá Pinto
TL;DR
LayerIt addresses the difficulty of relating notation to physical-time analysis by composing independent layers with a score on a shared performance-time axis. Its beat-tracking demonstration makes metrical disagreement readable against both notation and performed timing.
Problem
Music notation, symbolic encodings, and recordings use different coordinate systems, while visualizations often leave score and physical time separate for users to reconcile.
Source: §1 · p. 1Method
Results
In a challenging beat-tracking example, most downbeats are correctly placed, but many false positives, including quaver onsets taken as beats, show that metre is misread.
Source: §3 · p. 2Takeaways & Limitations
Putting tracker output, signal representations, and notation on one aligned axis makes metrical divergence interpretable against the score and performed timing.
Source: §3 · p. 2, §4 · p. 2LayerIt depends on an MEI score and externally computed alignment, inherits errors in both, and rasterized dense fields cannot be restyled like vector components.
Source: §4 · p. 2
Abstract
from arXiv · showhide
Music information retrieval often relates signal-derived, algorithmic, and symbolic information across different coordinate systems. Existing visualizations typically leave notation separate from physical time, while composites that combine them are assembled by hand. We present LayerIt, an open-source Python library for composing independent representations with notation on a shared performance-time axis. Given a score warped into performance time and a note-level alignment, LayerIt emits a single SVG that preserves the score's MEI structure and keeps added components identifiable and restylable. We demonstrate this through a challenging beat-tracking analysis, in which tracker output, signal representations, and notation can be inspected together to locate metrical disagreement and other errors against both notated structure and performed time.
1. INTRODUCTION
Music representations use different coordinate systems, making their alignment important to music information retrieval and digital musicology. LayerIt addresses the visualization gap by placing notation and additional information on a shared performance-time axis.
- Notation, symbolic encodings, and recordings use spatial, abstract musical, and physical-time coordinates, so aligning them is central to music information retrieval and digital musicology.Alignment algorithms also balance accuracy, computational cost, and robustness across different matching domains and feature types.Source: §1 · p. 1
- Existing visualizations link score elements to physical-time instants but leave users to bridge the score and timeline mentally.Some tools use drawn connectors or a moving score cursor; related modelling addresses reusable representation across graphical, logical, and physical domains.Source: §1 · p. 1
- A score laid out in performance time can remain readable as notation while serving as an index into physical time.That shared axis can also carry waveforms, feature curves, and time-aligned information such as estimated beats and metre.Source: §1 · p. 1
- LayerIt provides a programmatic, reproducible way to compose independently generated layers with a score on that shared axis.It merges the components into one visualization and supports adding, combining, or removing layers in Python.Source: §1 · p. 1
2. THE LAYERIT FRAMEWORK
LayerIt composes panels around a score warped into performance time, using a note-level alignment supplied to the library. Its representation interface supports varied data layers while retaining identifiable, restylable SVG components.
- A LayerIt figure stacks panels on one performance-time axis, using an audio recording, a score already warped by ScoreWarp, a note-level onset alignment, and additional representations.LayerIt consumes the alignment rather than computing it, and emits a single SVG document.Source: §2 · pp. 1–2
- The score’s span in seconds and pixel length determine the only scale factor; layers convert native units to seconds as needed.Horizontal placement follows from the scale, while vertical placement follows from the composition.Source: §2 · p. 2
- Representations load and validate data, then draw it into Matplotlib Axes; ten implementations use four shapes: Curve, Events, Intervals, and Field.An optional method lets a representation emit its own SVG group, and representations do not handle alignment.Source: §2 · p. 2
- LayerIt copies the score into the composite to preserve its MEI identifiers and hierarchy, while added components receive named, distinguishable SVG groups.Vector shapes remain selectable and restylable; Field content is embedded as a raster image.Source: §2 · p. 2
3. DEMONSTRATION
The demonstration combines a score, recording, and beat-tracker output for a challenging performance. Read together, the layers expose metrical errors and connect them to the score and performed timing.
- The demonstration uses the first six bars of Pires’s Clair de Lune performance, its aligned MEI score, and Beat This! beat and downbeat activations and estimates.The abridged script that produces Figure 1 requires five statements.Source: §3 · p. 2
- Most downbeats are correctly placed, but numerous false positives, including quaver onsets classified as beats, reveal a misread metrical structure.The example combines compound triple metre in 9/8 with highly expressive playing; the score’s warped spacing shows beat stretching and compression.Source: §3 · p. 2, Figure 1 · p. 2
- The aligned notation gives false positives a musical address—the bar and figure—so they can be found in the score and heard in the recording.A signal-derived view alone shows only where the errors fall.Source: §3 · p. 2
4. CONCLUSION
LayerIt places beat-tracking output, signal evidence, and notation on a shared performance-time axis, making metrical disagreements visible against both notated structure and performed time. Its use depends on MEI scores and externally computed alignments, with additional limits from warped layouts and rasterized fields.
4. CONCLUSION
- LayerIt aligns tracker output, signal evidence, and notation so metrical structure can be compared against the score and performed timing.Beat tracking illustrates a broader use: relating algorithmic or signal-derived output to notated structure in performance time.Source: §4 · p. 2
- The framework depends on MEI scores and externally computed alignments, inheriting errors in both; warped layouts may also introduce artefacts absent from conventional engraving.Dense time–frequency or pitch fields are rasterized and cannot be restyled like vector components.Source: §4 · p. 2
- LayerIt currently reads the onset-level format consumed by ScoreWarp; Sync Toolbox or Time to Align! integration remains an open direction.Sync Toolbox integration could add automatic synchronization, while Time to Align! could retain provenance and domain information absent from an onset list.Source: §4 · p. 2
- Aligned symbolic structure and signal-based evidence may support interactive annotation workflows that a divided view makes difficult.Source: §4 · p. 2