1. A method comprising, by one or more computer systems: capturing ambient audio data from a sensor of a client device; performing waveform analysis on the ambient audio data; generating a fingerprint for the captured audio data; transmitting the fingerprint, and a self-determined location, to a server; receiving, from the server, location information of the current location of the client device; and augmenting the self-determined location of the client device with the received location information.