Library
Library holds full songs. Import a MIDI (.mid) or MusicXML (.musicxml, .xml, .mxl) file with Import, by dropping it on the list, or with Import file on a catalogue entry, which links to the composer’s official store. MuseScore exports both formats; PDF scores are not supported yet. One time signature per piece is supported. Rhythms are written on sixteenths or, in simple meters, triplet eighths, chosen per beat; finer values such as 32nds and sextuplets are rounded onto them. MusicXML keeps the written staves; a two-track MIDI file maps its lower track to the left hand, and other MIDI files split at middle C. The browser keeps songs and plays in its local SQLite database. Open a song and press Space: the cursor waits for each note or chord, and if your last three attacks match another passage it moves there. Sections of eight bars (four in short pieces) are coloured by recent first-try accuracy; click one to jump. ▶ previews from the cursor. Pausing or finishing saves the play; the list shows plays, recent and best first-try accuracy, how much of the piece you have covered, and when you last played it. Song plays do not award XP yet.
Editing a song
Section titled “Editing a song”Transcriptions can get the tempo, meter, key or bar lines wrong, or mishear notes. Open a song and choose Edit to see the whole score with a toolbar. Tempo rewrites the playing speed without moving any written note; Meter and Key change the time and key signatures; Bar lines ◀ ▶ move every bar line a step (an eighth in /8 meters, otherwise a quarter) earlier or later, for when the downbeat is in the wrong place. Click a note to select it: Delete removes it, ↑/↓ move it a semitone (with ⇧, an octave) and ←/→ select the previous or next note. Double-click a staff to add a note at that line or space and moment, spelled from the key signature and lasting until the next note on that staff (at most a beat). Undo (or ⌘Z) steps back, Cancel discards the changes, Save keeps them, and Revert to transcription restores the original, which is kept from the first edit on. Plays are tied to the notes they were played against: retiming, rebarring or rekeying keeps a song’s play history, while adding, removing or repitching notes starts a fresh one, and reverting brings the original’s plays back.
Recording import
Section titled “Recording import”Choose Import audio to select a recording, or Record audio to capture one with your microphone. Confirm that you own the recording or have the rights holder’s permission to transcribe it, and that the score is for your own practice. The app downloads its models on first use and shows download progress. Transcription and score writing then run on your device; audio is not uploaded or saved. The resulting song is saved in your local Library, where you can listen, practise and edit it.
In desktop Chrome or Edge, choose From YouTube link, enter a link and title, and confirm your rights. When prompted, choose the YouTube tab and keep Also share tab audio checked. Play the video, then stop sharing or choose Stop and write score. The app records the shared tab on your device; it does not download or upload its audio. Capture happens in real time: a four-minute video takes four minutes to capture, followed by transcription. Capture stops automatically after 15 minutes. On phones, tablets, Safari, and Firefox, use Audio file or play the video aloud and use Record audio instead.
The browser can import WAV and common compressed formats including MP3, M4A/AAC, FLAC and WebM/Opus when the browser supports the codec. Transkun 2.0 finds piano notes; Eric Fithian’s score model, based on MIDI2ScoreTransformer by Beyer and Dai, writes the notation. Solo piano works best. Transcriptions can have errors, so use Edit to correct the result. The score model is licensed CC BY-NC-SA 4.0; see credits. The performance page records measured import times and the devices still to test.
From YouTube in the Mac app
Section titled “From YouTube in the Mac app”From YouTube turns a single video of up to 15 minutes into a Library song. Before anything is downloaded, you confirm that you own the recording or have the rights holder’s permission to transcribe it, and that the score is for your own practice. yt-dlp downloads only the audio into a temporary folder under .cache/youtube, deleted as soon as it is decoded with the bundled ffmpeg (from imageio-ffmpeg, independent of Homebrew); downloading may conflict with YouTube’s terms, so use it for personal practice. Transkun 2.0 (Yan & Duan, 2024; shipped with its checkpoint in the transkun package) transcribes the audio on the Mac GPU at about 5% of real time. On synthetic renders of ASAP performances it found 99% of note onsets against 93% for the live microphone model; on a real recording the two agreed on 93% of notes, so the gain on real audio is smaller than the synthetic figure. It passes key-down durations, without the sustain pedal, to MIDI2ScoreTransformer (Beyer & Dai, ISMIR 2024) writes the score: bar lines, rhythm, key, and which hand plays each note. On the ASAP test pieces its onset error is 15.6% versus 47.9% for MuseScore’s MIDI import. It runs on the CPU, about 50× faster than real time on an M4 Pro (MPS is roughly 60× slower for its step-by-step decoding), in a separate environment under .cache/m2st that uv run --frozen piano-duet setup installs with pinned versions and a checksummed checkpoint. The repository has no licence file; it is used locally for personal practice. The score uses the meter covering most bars, with bar lines aligned after a pickup, and a tempo measured from the performance. Solo piano recordings work best.