DropWave is in closed beta. Join the beta to get the builds.
3.1.0
A new key engine. DropWave now listens for the notes actually being played, bass line included, instead of judging the overall colour of the sound. It no longer lands a fifth away from the real key, the mistake key finders are known for. More →
Key changes. When a song modulates, a strip under the waveform shows each section's key and where it starts.
The beat grid, drawn on the waveform, with the first beat of every bar marked.
Check it by ear. Click on beats plays a metronome locked to the detected grid, along with the track. Hear key plays the key's chord, tuned to the track.
Half / As detected / Double for every track, used in the table, the file names and the export.
Search in the toolbar, in both views: name, key or Camelot code.
Smoother. Switching between one file and the table no longer jumps, Space plays and pauses from launch, and the window is more compact.
3.0.2
Restart asks first, installs the update, and reopens DropWave with the files you had open.
3.0.1
The update bar floats in the window when there's no sidebar, and What's new shows the full notes.
3.0.0
DropWave V2. Rebuilt from scratch as a native app for macOS 26 or later: key and Camelot, tempo to two decimal places, tuning, loudness and true peak, each with confidence and a runner-up; the Camelot wheel; whole folders in a sortable table with CSV export and undoable filename tagging; playback; and updates that download in the background and install when you click Restart.
# DropWave 2
2.1.5
The confidence bands mean something now, and they are the headline because they were the one thing in DropWave nobody could stand behind.
They are counted, not calculated. Until now the band came out of a formula that weighed a winning score against a runner-up. It was reasonable and it was never measured, and the docs said so in as many words. DropWave now reads your file many times over instead of once — different parts of it, weighed up in different ways — and the band is simply how many of those readings agreed. Under each one it prints the count: 37 of 39 looks agreed. That is a fact about your file rather than a number you have to take on faith.
They were checked against real music, and they hold. A track played faster is a track in a known different key at a known different tempo — so a reading can be tested on ordinary music without anybody having to label it first. Over eight hundred real tracks, readings marked High followed that shift far more often than readings marked Medium or Unsure, and the band edges were set from where the measurements actually separate rather than from where they looked right. Full detail on what that does and does not prove is in what the bands mean.
Treat Medium as no opinion is unchanged advice — but for tempo it is now the measured advice rather than the cautious one. On tempo, Medium and Unsure came out close enough together that only High is doing real work, and pretending otherwise would be the same mistake this release exists to fix.
Everything got faster anyway. Reading a file well over a hundred times instead of once costs nothing: the tempo stage was spending most of its time clearing a scratch buffer it did not need to clear. Analysis is still about 40 ms per file.
The tempo reading is franker about half-time. When every disagreement about a tempo is really a disagreement about metrical level — 87 against 174 — the plugin says so and names both, instead of reporting the pulse as unsure.
The plugin shows you what it is hearing. While the transport runs there is now a live trace of the signal actually arriving on that channel, and the middle of the Camelot wheel counts up the audio captured so far. Inserting it on the wrong bus used to look exactly like inserting it on the right one until the reading came back.
2.1.4
Downloading is gone, the plugin has been rebuilt, and a folder of files is now something you can actually work from.
The Download tab has been removed. It worked, and it is still going. It was the one part of DropWave that could not be part of a product anybody pays for — the payment processors that handle software sales prohibit anything that pulls media off a site against its terms, and building a business on a clause somebody else enforces is not a plan. It has been set aside rather than deleted, and if it comes back it comes back as a separate free tool rather than as a tab in the analyzer.
Three things follow from that, and they are the reason it is worth the loss:
- DropWave is 6.2 MB, down from 43 MB. The download helper was 36 MB of the app you were installing to read a key.
- Nothing in DropWave connects to the internet. The strong version of that sentence — the one this site made through 2.1.1 and had to narrow in 2.1.2 — is true again. It is also no longer just a promise: neither the app nor the plugin carries permission to open a connection, so macOS refuses on their behalf.
- The plugin cannot reach your files either. It had read-write access to one folder, for downloads. That is gone. It reads the audio the host hands it and can do nothing else.
The plugin has been rebuilt. It is a wider, darker panel with its own look rather than one borrowed from whatever your system accent colour happens to be, and the layout no longer rearranges itself twice on the way to an answer: the wheel sits in the same place from the moment the window opens and simply lights up when there is a key. It now shows the confidence band on the key as well as the tempo, prints tempo to two decimal places, names the three codes that mix with yours, and draws how full the two-minute capture buffer is. Nothing changed in what it hears — same key, same tempo, same engine.
A folder is now a table you can work from. Dropping a pack already gave you a list in 2.1.3; it now gives you loudness and true peak per file alongside key, Camelot and tempo, and you can sort by any column — the Camelot column sorts round the wheel (1A, 1B, 2A …) rather than alphabetically, so neighbouring keys land next to each other — filter it, and export it as a CSV file as well as to the clipboard. Both exports write exactly what the table is showing.
And it can write the key and tempo into your filenames. Rename… shows you every change before it moves anything, skips files that already carry the tag, and refuses any rename that would overwrite something. Running it twice replaces the tag rather than adding a second one. It renames only — it never opens the audio.
A folder is read about 3.7× faster. Files are now read four at a time rather than one. The old code said concurrency would not help because analysis is limited by memory rather than by cores; timed over 504 files that turned out to be half right — four at a time is 3.7× quicker for the same total CPU, while eight at a time really is slower, which is what the original note had in mind. Four is also the number that keeps memory sane, since a decoded eight-minute stereo file is well over 100 MB.
And it tells you how long it will take. A bar and a time, both weighted by file size rather than file count — a pack of four hundred one-shots and six long stems does not progress evenly, and a bar that races to 90% and then stops is worse than none. The estimate stays quiet until it has read enough to be worth printing, and it says what the run actually took when it finishes.
Fixed: closing a file from a run threw the whole run away. Clicking a row to look at one file and then closing it called the same "start again" that the drop zone does, so the table you were reading a second ago was gone and four hundred files had to be read again. Closing a file opened from a run now returns to the run. Ending a run is its own deliberate act, and it asks first.
Fixed: a capped run invented a number. A drop of more than five hundred files said "501 files — reading the first 500" whether you had dropped 501 or nine thousand, because the walk stops one past the cap. It now says "more than 500".
Still don't trust the confidence bands. Not calibrated; "Medium" means "no opinion". That has not changed and is the next thing being worked on.
2.1.3
A fix release for downloads. Everything below was broken in 2.1.2, and the first one was broken badly enough that most people will have hit it.
Fixed: the second download always failed. DropWave does the groundwork for a download before you have pasted anything, which is what makes a paste start work immediately — and that groundwork is used up by the first link. It was never redone. So the second link you pasted failed, and the message you got described machinery rather than anything about your link. In the app it took a cancelled or failed download to trigger it; in the plugin, which never changes tabs, it meant one download per window. Cancelling, failing and finishing all prime the next one now.
Fixed: titles containing | were cut short. "Artist - Track | Official Video" arrived as "Artist - Track", and the length, bitrate and codec shown during the transfer were wrong along with it — the save name DropWave pre-filled was the cut-short one, so this quietly renamed files. The pipe is a house style on YouTube, so this was not rare.
Fixed: format and quality were not actually shared with the plugin. 2.1.2 said they were. A plugin runs sandboxed and was keeping its own copy, so choosing WAV in the app got you M4A on a channel. It is one setting now, in one place both can read, and neither has to be restarted to notice a change.
Fixed: a failed download left work running. The transfer was told to stop only by having its working folder deleted underneath it.
Fixed: links pasted without https:// were refused. Copying youtube.com/watch?v=… straight out of the address bar works now.
Fixed: a rate limit was reported as an age restriction. "Sign in to confirm you're not a bot" means the site has decided your connection has asked too often — the video is fine and waiting works. DropWave said the video was age-restricted, which sends you looking for an account setting that would not have helped.
Ultra offers a way out. When Ultra fetches a stream macOS has no decoder for, the file is still saved under its own honest name — and the window now keeps it, shows it in Finder, copies its path, and offers one click to fetch the same link again at High. 2.1.2 said all this in a message that vanished after two seconds and took the file's location with it.
A folder at a time. Drop a folder, or several files, and DropWave reads them in turn into a table — file, key, Camelot, tempo — that fills top to bottom as it goes. Any row opens the full reading, and Copy table puts the lot on the clipboard as tab-separated text a spreadsheet will open. Nested folders are walked, so a sample pack organised by instrument works as dropped. Nothing is written to your files. Before this, a multi-file drop analysed the first and apologised for the rest.
When a site changes, DropWave says so. Video sites change how they hand out media on no schedule, and when one does, every link starts failing at once on a build that worked the day before. That is not a broken link and it is not worth reporting as one — so a failure with that shape now says the site has changed since this build was made, and names the month. There is still no update check and there is not going to be one.
Also fixed: a download primed in the background that died before it was used could leave the app waiting on "Finding the audio…" indefinitely, or take the app down with it on the next paste; a .aac or .mov download asked to be saved as M4A was renamed rather than converted, which is the same category of mistake as the 2.1.1 bug below; and a second batch of metadata from one link could open a second Save dialog on top of the first.
2.1.2
Downloading was removed in 2.1.4. The two entries below describe what 2.1.2 shipped and are kept as a record. Nothing here is current behaviour — DropWave cannot fetch audio from a link and has no network access.
Downloads. Pressing 2 and pasting a link brought the audio down on its own, into the analyzer with the key and BPM already measured — a three-minute track in about three seconds. Nothing to install; everything a download needed shipped inside the app, which is why DropWave was 43 MB for three releases. It asked where to save while the transfer was still running, so choosing a folder cost nothing.
Format and quality. Saved as M4A, WAV, AIFF or FLAC, at Low, Normal, High or Ultra. All four containers were written by macOS itself, so nothing extra shipped to support them. The tiers decided which rendition to ask the source for, and DropWave showed which one it actually picked while the download ran.
Fixed: a downloaded file that would not play. The saved file was named .m4a regardless of what had arrived, so a video with no AAC stream produced an Opus/WebM file wearing the wrong extension — it saved without complaint and then refused to open, in DropWave and everywhere else. The name now comes from the file, and three of the four quality tiers prefer AAC so it rarely comes up at all. The same fix landed in the Windows build.
The plugin no longer has an Analyze button. It works the key and tempo out on its own: the first reading appears after about eight seconds of audio and sharpens as you keep playing. The old two-minute progress bar was the size of a buffer, not a requirement, and everyone reasonably read it as one. More →
Fixed: the plugin captured silence. Most DAWs push silence through every insert while the transport is stopped, and the plugin kept all of it. Leave it open on a paused session and the buffer filled with digital zero while the readout said it had everything it needed — which is the single biggest reason the plugin could sit there and tell you nothing useful. Silence is now ignored entirely.
The plugin hears a track in pieces. Play the intro, jump to the drop, play that, and those count as two independent looks at the material rather than one stretch with a splice through the middle — the same thing DropWave does to a file, where it takes three windows from three places in the arrangement. The reading says what it is standing on: "24 s from 2 regions".
The plugin asks before it listens. Nothing is captured until you say yes, enforced where the audio arrives rather than in the window.
A link field in the plugin. Paste a link on the channel you are working on and the audio comes down without leaving the session. Then analyse it, reveal it in Finder, copy its path — or play it out of that channel, so you hear the reference in the mix you are already in. It gives the channel back the moment you stop.
2.1.1
The plugin. DropWave now runs inside your DAW. DropWave Analyzer ships inside the app — launch it once and the plugin is installed — and reads whichever channel you insert it on. Press Analyze and it reports the key, the Camelot position and, where there is a pulse to find, the tempo. It passes audio through untouched. More →
The Camelot wheel is drawn in the result. All 24 positions as a ring, your key filled, the three keys that mix with it lit in place. Previously the result carried the code alone.
Files with no extension open. Analysis used to be refused before the file was ever looked at, so a bounce straight out of a DAW could be turned away. What decodes now decides what decodes.
Multi-file drops say what they did. Dropping twelve files used to analyse one with no sign the other eleven existed. It now says "Analysing 1 of 12".
Playback no longer swallows the Space key when there is no file loaded.
Finder's Open With now offers DropWave for video files, which had always worked when dragged in.
2.0
Rebuilt native. DropWave 2 shares no code with version 1. It went from around 200 MB with a pile of dependencies to a few megabytes with none, and from a cold start you could feel to a result that is there before you let go of the mouse.
Six readings instead of eleven. A spectral centroid, a sample rate Finder already shows, and an "energy" score on a made-up scale all came out. What went in was true peak in dBTP and loudness in LUFS, both to ITU‑R BS.1770‑4 — real units, defined by a published standard, comparable against anything else that implements it.
Confidence bands, with the alternative named when a call was close.
Tuning measured rather than assumed, and reported in cents — so detuned and pitch-shifted material resolves correctly.
Tempo to two decimal places.