Expand description
The outputs of a stem: layers.json, spectrogram.png and the final
notes.mid from analyze, and the first notes.mid from notes.
analyze decodes the stem, refines its tempo, reads the note list if
one is given or else runs the notes step, reads the pitch layer, runs
the stem estimators and the descriptors, maps the pitch, voices and
envelope groups to the synth’s suggested edits, rewrites the note list
with the layers into the final notes, and writes the three files into
the output folder.
notes refines the tempo, transcribes the stem and writes its notes
into the same folder. The schema of layers.json is committed as
schemas/layers.schema.json.
Re-exports§
pub use spectrogram::Spectrogram;
Modules§
- spectrogram
- The spectrogram image: two log-frequency panels of a 10 s passage.
Structs§
- Analysis
- What
analyzefound and wrote. - Analyze
Request - What
analyzereads and where it writes. - Notes
Report - What
notesfound and wrote. - Notes
Request - What
notesreads and where it writes.
Enums§
- Analyze
Error - An analysis that failed.
- Guarded
- The file of another stem that stopped a run, and what
--forcedoes to it.
Constants§
- LAYERS_
FILE - The report file name.
- NOTES_
FILE - The notes file name.
- SCHEMA
- The schema name and version that
layers.jsondeclares. - SPECTROGRAM_
FILE - The spectrogram file name.
Functions§
- analyze
- Analyses a stem and writes
layers.json,spectrogram.pngand, when the stem has notes, the finalnotes.midinto the output folder, creating it. - analyze_
with analyzewith a given mapper for the suggested edits, such as a test mapper. Without one, or for a synth without a registry, everysuggested_editsandunrepresentablelist is empty.- layers_
json - Renders the report of a stem as pretty-printed JSON with a final newline. The same stem always gives the same bytes.
- notes
- Transcribes a stem and writes
notes.midinto the output folder, creating it.