Skip to main content

Module report

Module report 

Source
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 analyze found and wrote.
AnalyzeRequest
What analyze reads and where it writes.
NotesReport
What notes found and wrote.
NotesRequest
What notes reads and where it writes.

Enums§

AnalyzeError
An analysis that failed.
Guarded
The file of another stem that stopped a run, and what --force does to it.

Constants§

LAYERS_FILE
The report file name.
NOTES_FILE
The notes file name.
SCHEMA
The schema name and version that layers.json declares.
SPECTROGRAM_FILE
The spectrogram file name.

Functions§

analyze
Analyses a stem and writes layers.json, spectrogram.png and, when the stem has notes, the final notes.mid into the output folder, creating it.
analyze_with
analyze with a given mapper for the suggested edits, such as a test mapper. Without one, or for a synth without a registry, every suggested_edits and unrepresentable list 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.mid into the output folder, creating it.