Geolocation by aeroplane sound Doppler shift

GM4AJK

Senior Member.
For those MBers that like the geolocation exercises here's a rather fancy technique I just saw on a YouTube video:

External Quote:
This video examines the amount of location information carried by inaudible background sounds, using the Doppler effect to locate a reference recording within ~100m, and only needing (in some cases) less 1-min of audio. This video raises awareness of these capabilities and closes by discussing preventative measures one could take.

Methodology: Aircraft position, altitude, and velocity data were sourced from ADS-B data and filtered in Python using ICAO type-code classification for propeller vs jet types. For each candidate location on a 200m grid, the closest point of approach (CPA) and sound propagation delay were computed from 3D slant distance, using a digital elevation model (DEM).

Doppler curve spectrogram measurements constrained each event's velocity and CPA slant distance. Candidates were then filtered by the 920-second offset between two flyovers, plus a silence constraint. The exact Doppler curve each candidate would hear was modelled, using emission-time radial velocity from interpolated ADS-B data.

Modelled doppler curves were scored against the observed spectrogram using a locked two-event scoring method. This corrected for measurement error on CPA time & fundamental frequency, while preserving the purely physics-derived temporal offset between the two events.

The pipeline was repeated again for a single 1-min clip of known time, US-wide search, and again, successfully scored the true location 1st.

Lastly, preventative measures were assessed, including rationale behind why common signal processing fixes fail (high-pass filtering, drowning out, and phone call compression/noise reduction).

This video is an educational demonstration of acoustics, signal processing, and data analysis using publicly available data. No code or tools are being released.

That last comment, "No code or tools are being released"... sounds very much like a challenge ;)


 
It's a cool "I wish I had thought of that" idea. And I think it would be pretty easy for an AI agent to implement once the idea is described. I'll let it have a bash at putting it in Sitrec.
That would be interesting and useful.

Additionally, remember all those "New Jersey Drone" videos? Well, using this technique would probably allow for much better evidence, when matched with the flight, that it's actually a plane, as it's said to be.
 
It's already done the basic spectral analysis (sitrec already had one), and identified flyover curves.

1793664700679.png
 
Attached is the AI's discussion of how the Sitrec implementation of colsto's idea works.

Codex GPT-6-Astra Ultra, used about 20% of a week's tokens, so it nominally cost $10.

Its time breakdown

Session time breakdown

Recorded work spans approximately 8 hours 2 minutes, from 15:40 to 23:42 PST on November 2, through completion of the illustrated guide. This includes pauses and overlapping work; it is not continuous computation.

Approximate elapsed time by phase
  • 15:40–16:45 — 1h 05m: Studying the source material, obtaining data, and developing the initial addon and spectrogram.
  • 16:45–18:12 — 1h 27m: Archive searches, audio measurements, and initial location attempts.
  • 18:12–22:34 — 4h 22m: Multiple-agent review, accuracy investigation, browser delays, and testing.
  • 22:34–23:22 — 48m: Correcting the brightness scoring, optimizing performance, completing the successful countrywide search, and producing output images and the infographic.
  • 23:22–23:42 — 20m: Committing the implementation and private records, creating the illustrated guide, and interaction gaps.

Measured long-running jobs
  • Original coarse search: 15m 15s
  • Corrected coarse search and terrain refinement: 18m 24s
  • Browser single-flyover search: 9m 36s
  • Countrywide run before a cache-related crash: about 5m
  • Final successful countrywide search: 10m 07s
  • Full test suite: 31m 01s

These main jobs total approximately 89 minutes. Additional recorded preparation, validation, and a stopped baseline run account for roughly another 11 minutes. This is an incomplete inventory, and some jobs overlapped other work.

Main avoidable detours
  • Initially optimizing trace error instead of spectrogram brightness.
  • A manually measured trace following interference.
  • Measurement bounds that were too restrictive.
  • A cache-key collision that forced a search restart.

Builds generally took only 3–4 seconds. I cannot reliably divide the remaining elapsed time into coding, reasoning, user interaction, and idle time.
 

Attachments

So what are the practical requirements for this?

The audio has to be fairly clean and obviously the original audio track (although it not matching given details would be a tell that the audio was replaced.)

You have to know the date and a fairly broad approx location, I guess the more data you have to narrow the parameters the quicker it is to run? In his example he has the whole of the USA, but if you knew it was say New Jersey it might be a quicker process.

Also is the reverse possible, knowing the location and the approximate date (say within 30 days) but using the flight data over a longer period to narrow down a day and time?

A lot of cases will have approx location and approx date.
 
This discussion reminds me of something I remember reading about it being possible to find the time of recordings by matching fluctuations in the mains electricity "hum". I'm sure it's been used in court to prove the date and time of video or audio recordings. Let me search...

This article is from 2012, so it's not a new thing:

https://www.bbc.co.uk/news/science-environment-20629671

External Quote:

Comparing the unique pattern of the frequencies on an audio recording with a database that has been logging these changes for 24 hours a day, 365 days a year provides a digital watermark: a date and time stamp on the recording.

Philip Harrison, from JP French Associates, another forensic audio laboratory that has been logging the hum for several years, says: "Even if [the hum] is picked up at a very low level that you cannot hear, we can extract this information."

It is a technique known as Electric Network Frequency (ENF) analysis, and it is helping forensic scientists to separate genuine, unedited recordings from those that have been tampered with.

Dr Harrison said: "We can extract [the hum] and compare it with the database - if it is a continuous recording, it will all match up nicely.
Looks like there is an open source tool that uses ENF, but I haven't got time now to dig into it.

Combining the two could be quite a powerful geolocation tool.
 
You have to know the date

Four years ago, Tom Scott did a video about extracting the date and time of an audio recording based on variations in the mains "hum" in the background.

External Quote:
Electrical Network Frequency analysis, ENF analysis, matches background hum against power grid logs. I talked to one of the researchers who works on it, and also set them a challenge.
 
Also is the reverse possible, knowing the location and the approximate date (say within 30 days) but using the flight data over a longer period to narrow down a day and time?

A lot of cases will have approx location and approx date.
Yeah, it would just take more processing time to search a wider data set. You probably get more false positives.
 
IIrc I read about a similar technique years ago, in Science or Nature. I can't remember exactly but it was called something like "acoustic light vision", background sounds being paralled to background illumination in normal sight. But I can find no pertinent references searching for 'acoustic light'.

Impressive job @Mick West !
 
Does anyone have a video or audio file that they think would be a good test case.

I'll record one here and see if it works with that.
 
Does anyone have a video or audio file that they think would be a good test case.
Surely we have already identified New Jersey drones right here on MB as test cases?

It's not that difficult to copy it, but any hurdle added lessen the amount of time it'll get abused. And you don't want Sitrec being cited in the news as the tool used by a killer to locate his victim.
Security by obscurity. There will likely be a ton of tools to do this by the end of next week. The best @Mick West can do is hold off on releasing it in Sitrec for a while.
 
IIrc I read about a similar technique years ago, in Science or Nature.
There are similar techniques out there. Some fields more esoteric than others I guess.

https://arxiv.org/html/2505.18726v1

External Quote:

Abstract

Can we determine someone's geographic location purely from the sounds they hear? Are acoustic signals enough to localize within a country, state, or even city? We tackle the challenge of global-scale audio geolocation, formalize the problem, and conduct an in-depth analysis with wildlife audio from the iNatSounds dataset. Adopting a vision-inspired approach, we convert audio recordings to spectrograms and benchmark existing image geolocation techniques. We hypothesize that species vocalizations offer strong geolocation cues due to their defined geographic ranges and propose an approach that integrates species range prediction with retrieval-based geolocation. We further evaluate whether geolocation improves when analyzing species-rich recordings or when aggregating across spatiotemporal neighborhoods. Finally, we introduce case studies from movies to explore multimodal geolocation using both audio and visual content. Our work highlights the advantages of integrating audio and visual cues, and sets the stage for future research in audio geolocation.
The aircraft doppler work is very interesting. I use a spectrograph based app 'Merlin' which captures real-time audio and pattern matches bird song for species ID. I've observed airborne doppler signals but nothing that I couldn't hear myself. Will have to look closer!

I'm wondering what the compute requirements would be to 'pre-compile', for each day, what all of the predicted flight line doppler signals would be for all points on, say, a country wide 100m grid from all of the ADBS data.
 
Back
Top