Fitted automatically, shown as cyan rails. Click an event to zoom in.
Event 1
Event 2
Speed sets the size of the drop. Distance sets how sharply it drops.
3 SEARCH
MODEL
CHECK
Settings changed since this search ran.
4 WHAT THE SEARCH FOUND
Run the search to see the ranked results here.
Searching: ,
Best point per flight pair. Click a row to inspect it.
#
FLIGHTS
EV 1
EV 2
TOTAL
OFF BY
True spot:
SCORES
HOW THE SEARCH NARROWED
Flyover Geolocation
A simulated microphone somewhere in a 30 km square made a recording. You don't know where or when. Faint propeller aircraft in that recording, matched against a log of every flight, can usually find the spot.
Everything here is synthetic. The page never asks for or uses your microphone.
Look at the curves. The spectrogram at the bottom shows the recording. Two aircraft passed overhead, and each left a falling tone with harmonics above it. The page has already fitted both.
Run the search. It narrows 22,500 points on the map to a ranked list of flight pairs.
Check the answer. Click a result to zoom in, then reveal the true spot.
What you're looking at
Cyan rails are the fitted curve. The recording's curve should run between them.
Blue and pink are event 1 and event 2. They mark each event's flight on the map and the selected result's modeled curves on the spectrogram.
Orange to yellow on the map is how well each point scored.
How it works
Each curve is a measurement. The size of the frequency drop gives the aircraft's speed, how sharply it drops gives its distance at closest approach, and the curve's center gives the moment it passed.
The log narrows the map. Keep points that would have heard two flights the right time apart, at the right speeds and distances, with nothing else close by in between.
Real tracks score what's left. Each remaining point is scored by modeling the curve each flight's logged track would have made there and laying it on the recording.
Sound takes time to travel. The model uses where each aircraft was when the sound left it, not when it arrived. Switch the model to Heard time and compare the scores.
Things to try
Real tracks. The video's filters assume a straight pass. The Real tracks check uses each flight's logged track instead, turns included. It finds the true spot more often and takes longer.
Fit by hand. Open Adjust the fit and try scenario 98 with the Speed & distance check. The automatic fit reads event 1 at about half its real speed. Match the flat levels before and after the drop, then the steepness, and search again.
Add noise or pick a random scenario.
The world is synthetic. It has terrain, two airfields, 80 flights over two hours with an ADS-B log, and a simulated microphone at an unknown spot whose recording is synthesized from each aircraft's motion and buried in hiss, wind, hum, cars, and jets. It's built with WildflowerJS. Two stores run the long jobs in tick(dt), about 12 ms per frame, on the main thread.