How does the music recognition work?
Section titled “How does the music recognition work?”Listening Post hears what you hear. Every minute, it quickly uses the microphone to check for playing music; when it detects a song (using Apple's ShazamKit), it'll verify the recognition a few seconds later. If it's successful in that, the recognized track is saved to its internal database.
Then, it continues to …
Enriching recognized tracks
Section titled “Enriching recognized tracks”Track enrichment is the process of adding extra metadata to a song after Shazam identifies it. When Listening Post recognizes a track, Apple's Music catalog provides basic information like artist, title, album, and release year.
After that, per-channel enrichment kicks in for enabled channels: for example, ListenBrainz gets MusicBrainz recording IDs, Spotify gets Spotify data, Last.fm provides direct links to the track's Last.fm page, and Deezer provides its own track URL and ID. Each source is only queried when its corresponding channel is enabled and configured. That means that if you haven't set up Last.fm, the app won't bother asking Last.fm for data.
Enrichment happens asynchronously in the background after a track is recognized, once per unique track (not per recognition!), so repeat plays of the same song don't trigger redundant lookups. If an enrichment request fails, the system retries a few times before giving up.
Once a track is enriched and good to go, it's added to an outbox queue, waiting for the end of the so-called …
Publication delay
Section titled “Publication delay”When a track is recognized, it gets added to a queue for each enabled channel. The app waits for the configured publish delay (default: 5 mins) before sending tracks to any channel — this gives you time to skip false positives (or tell the app to forget particularly awful songs) before they're recorded anywhere. If publishing fails for a particular channel, the track stays in the queue for retry.
After the delay, the track is sent to the channels you've configured.
Track actions
Section titled “Track actions”Global actions are actions like Like, Unlike, and Forget track. When you like a track, and have remote channels enabled (Last.fm and/or ListenBrainz), then this info will be relayed to those channels, meaning your like will propagate to Last.fm or ListenBrainz.
Then there are so-called channel track actions which only become available when a channel is enabled, and is properly configured, and the track is fully recognized and enriched.
For example, once you've enabled the Last.fm channel, and have authenticated the app there, and the track is ready to go, then the channel's track actions will let you open the track on the site, let you copy the track's link to your clipboard: