NeuralSheet Audio to MIDI transcription for Mac

Record or drop a track, pick the instruments, and NeuralSheet turns it into MIDI you can play back, mix, and drag straight into your DAW. Transcription runs entirely on your machine.

Download NeuralSheet v1.1.0

macOS 26, Apple silicon · 5.0 MB · Release notes

NeuralSheet transcribing a track: the waveform, the piano roll filling in, and the instrument mixer in the sidebar

What it does

Why a rewrite

NeuralSheet is a from-scratch Swift rewrite of NeuralNote by Damien Ronssin, built to fix the two things that held the original back on the Mac: audio latency and interface smoothness. It keeps NeuralNote's design, behaviour and transcription engine, and replaces the cross-platform C++/JUCE application layer with SwiftUI, AppKit and AVAudioEngine.

The transcription engine, muscriptor.cpp, is unchanged and linked as a static library.

Usage

  1. Get some audio. Press record (or r) and play, or drop a file on the waveform area. Choose your input and output devices in the Audio menu.
  2. Choose instruments. Use + in the sidebar to tick the instruments in the recording, or leave it on Automatic. Transcriptions are better when the model is told what to listen for.
  3. Transcribe. The first run downloads a model. Progress shows in the status bar; you can cancel at any time.
  4. Listen. Space plays and pauses. The ORIG / MIDI slider blends the source audio with the synthesized notes; each instrument has its own fader, mute and solo.
  5. Edit. ⌘2 opens the Edit tab. V selects, D draws, E erases; drag notes, or their ends; ⌥-drag duplicates; arrows nudge. Set the tempo and where bar 1 falls in the toolbar.
  6. Export. Drag the MIDI button onto a track in your DAW, or use Export to save a .mid file. The export tempo sets how seconds map to beats.

Space play/pause · ⇧Space go to start · r record · m mute · c centre the playhead · ⇧⌫ clear · ⌘+scroll or pinch to zoom the timeline · ⌘1/⌘2 tabs · ⌘Z undo · ⌘U quantize · ⌘A select all · ⌘-drag ignores snap

Models

MuScriptor comes in three sizes. NeuralSheet downloads them from DamRsn/muscriptor-gguf on Hugging Face into ~/Library/NeuralSheet/models (it also picks up models already in ~/Library/NeuralNote/models). Downloads resume if interrupted and are verified by SHA-256.

SizeDownloadSpeed on an M1 Pro (Metal)Notes
small209 MB~3.5× real timeFastest
medium618 MB~1.5× real timeRecommended
large2.7 GB~0.5× real timeBest quality

The model weights are not open source. Kyutai and Mirelo released them under CC BY-NC 4.0: they may only be used non-commercially. NeuralSheet's own code is Apache-2.0, which does not extend to the weights.

Playback uses the General MIDI synthesizer built into macOS, so no soundfont is bundled. It sounds different from NeuralNote's MuseScore soundfont.

Questions

Is NeuralSheet free?
Yes. The app is free and open source under Apache-2.0. The MuScriptor model weights it downloads are licensed CC BY-NC 4.0, which allows non-commercial use only.
Does it work offline?
Yes. Transcription runs on your Mac's GPU through Metal; audio never leaves your machine. The only network use is downloading a model the first time you transcribe, and checking for updates.
Which Macs does it run on?
macOS 26 or later on Apple silicon (M1 and newer). There is no Intel build.
What audio formats can I use?
Record from any input device, or load .wav, .aiff, .flac, .mp3 and .ogg files by dropping them on the window.
How accurate is the transcription?
NeuralSheet uses MuScriptor, a transformer model from Kyutai and Mirelo, in three sizes; the large model gives the best results at about half real time on an M1 Pro. Telling it which instruments are in the mix improves results, and the Edit tab lets you fix what it gets wrong.
How do I get the MIDI into my DAW?
Drag the MIDI button onto a track in your DAW, or export a .mid file with one track per instrument (drums on channel 10). The export tempo sets how seconds map to beats.
How is it different from NeuralNote?
NeuralSheet is a from-scratch Swift rewrite of NeuralNote for macOS only, keeping its design and transcription engine and replacing the JUCE application layer with SwiftUI, AppKit and AVAudioEngine for lower audio latency and smoother drawing. It is a standalone app; there is no AU or VST3 plugin.
Can I request a feature or report a bug?
Ideas and questions go to GitHub Discussions; reproduced bugs go to Issues using the template. Pull requests aren't accepted.

Build from source

macOS 26 on Apple silicon, Xcode 27, and CMake (brew install cmake) for the transcription engine. The first build fetches ggml.

git clone --recurse-submodules https://github.com/bring-shrubbery/neural-sheet.git
cd neural-sheet/app
xcodebuild -scheme NeuralSheet -configuration Release build

Or open app/NeuralSheet.xcodeproj in Xcode and run the NeuralSheet scheme. The README has the details, including the pure-Swift core package and its tests.

Contributing

NeuralSheet is developed by a small team working with AI coding agents that we run and supervise ourselves. Because of that:

CONTRIBUTING.md explains the reasoning and the details.

Credits

NeuralSheet started on 2026-09-17 as a rewrite of NeuralNote v2 at commit 20ca45a. Everything a user sees, and the audio and MIDI logic underneath, follows NeuralNote's design; the Swift code was written new against a detailed inventory of its behaviour, and the note scheduler, resampler, waveform peaks, MIDI writer and piano-roll geometry are ports of the original C++.

License

NeuralSheet's code is licensed under the Apache License 2.0, the same licence as NeuralNote. NOTICE records the origin of the work, and THIRD_PARTY_NOTICES.md lists every third-party component: muscriptor.cpp and ggml (MIT), PFFFT (BSD-style), stb_vorbis (public domain), and the Inter and JetBrains Mono typefaces (OFL 1.1).

The MuScriptor model weights are CC BY-NC 4.0, non-commercial use only, and are downloaded separately at run time.