The sky in your video knows where you are
Move across the field: you are a sound source too.
A plane overhead leaves a sliding tone in your audio. Its pitch drops as it passes, and the shape of that drop gives away its speed and the second it flew over you. Match two of them against public flight tracks and a clip can be placed on a map.
Doppler Scrub finds those tones and removes them, along with mains hum, on your own phone. Voices, birds, wind and room tone stay.
How a clip gets located
Three steps from a sound to a street
- 01
Record
A turboprop's blades pass 98 times a second. On the ground you hear 128 Hz as it comes in and 80 Hz as it leaves.
- 02
Measure
The two pitches give the speed:
f′ = f · c / (c + v). The steepest point of the slide is the moment it was closest. - 03
Match
ADS-B logs every aircraft's position, every second, in public. One pass gives a line on the map. Two passes 15 minutes apart give a point.
What changes in the audio
Drag to compare
Removed
- Aircraft and vehicle tonessliding, 60–6000 Hz
- Mains hum50 / 60 Hz + harmonics
- GPS and capture timefile metadata
Kept
- Voicespitch moves too fast to match
- Birds, wind, trafficbroadband or brief
- Fans and fridgessteady, local
Open source · MIT
Don't take our word for it
"Nothing is uploaded" is only worth something if you can check it. The whole scrub is one Python file of about 550 lines. The page runs that same file in your browser through Pyodide, and Mediabunny with the browser's own codecs handles the video. Read it, run it on your own clips, or make the detector better.
git clone https://github.com/danielcanton/doppler-scrub
python3 scrub.py clip.mp4 clean.mp4 --plot before_after.png