Check a take against its notes
doseedo_check_takeMEASURE a take instead of guessing: give the audio (a render_midi take URL, any recording) and the notes it should play — notes[] + bpm (and tempo_map) or a midi_url — and get back how many written notes were heard at the right pitch and time (recall / precision / f1, octave errors, the first missed notes with their beats), the timing error in ms, loudness (integrated LUFS, peak dBFS, clipped share), any stretch where a note was written but nothing sounds, and a verdict (good / check / bad) with reasons in plain words. doseedo_render_midi results already carry this per take (takes[].check) when the part was given as notes. Method: an independent note transcriber (basic-pitch) — dense chords and very fast runs read less reliably; use it as a screen, and listen to anything marked check. Synchronous (~3–15 s), CPU, no credits. Cancel: not applicable — the result is returned in the submit response; the job is already finished.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| bpm | No | Tempo of the notes (or tempo_map). | |
| notes | No | The notes the take should play, in beats from bar 1 (the rows you sent doseedo_render_midi). | |
| midi_url | No | Alternative to notes: the part as a Standard MIDI File (≤ 2 MiB). | |
| audio_key | No | R2 ingest key of an uploaded audio file (from doseedo_get_upload_url / POST /api/upload/r2/ingest-url; starts with "ingest/"). Alternative to audio_url. | |
| audio_url | No | The take: a doseedo result URL as returned, or any public https URL. | |
| tempo_map | No | Tempo changes [{beat, bpm}]. | |
| instrument | No | The instrument (a drum/percussion name switches to onset-only matching). | |
| time_signature | No | Meter (default 4/4). | |
| idempotency_key | No | Optional. Any unique string for THIS request (e.g. a UUID). Re-sending the same call with the same key after a timeout returns the same job instead of starting a second one. | |
| onset_tolerance_ms | No | How far a heard onset may be from the written one and still count (default 50). |