SongKong uses a small memory footprint however many files you load it with, and there is no limit on how many songs you can fix, it starts fixing songs immediately - it doesn't need to wait for all songs to be loaded.
SongKong integrates closely with MusicBrainz and Discogs. SongKong uses the Albunack Server, a dedicated server that is regularly updated with the complete MusicBrainz and Discogs databases, but because it is optimized for SongKong matches are far quicker and more accurate. SongKong is a companion product to the award winning Jaikoz and uses similar matching methods to ensure the best possible match.
Firstly songs are grouped, usually by folder as usually a folder represents a single album, but SongKong can also identify multi-disc albums that may be stored as one folder per disc, when a folder represents songs from a single artist over many albums, or a random set of songs - in these cases SongKong groups by metadata as well by folder.
If folder appears to represents a single album we create an AlbunackDiscId based on track order and track length. This is similar to a freedb lookup but is more accurate, does not require the original CD and is looking up a MusicBrainz release not a freedb release. We then do a lookup based on this id and try to get a good match, if we succeed we then use the linked Discogs release or search for a Discogs release.
If no match could be found we create Acoustid Fingerprints for each song in the group, this allows songs to be matched based on the actual music not just the metadata. SongKong attempts to match each grouping of songs to albums rather than just match individual songs like some tagger software
We then compare the group of songs to the MusicBrainz albums using both the Acoustid and the songs metadata and try to find a release (such as an album) that they can all be matched to. If we get a good match we then update the songs metadata such as artist name, song title and catalogue no, in fact SongKong can update over one hundred different fields. If we get a match to a MusicBrainz album it may contain a link to a release on the Discogs from where we can get more metadata.
If we cannot actually match the group of songs to an album but we can match individual songs to MusicBrainz recordings using Acoustids we then update the song details without updating any release specific information.
If we are unable to match to an individual MusicBrainz recording but Acoustid does contain user submitted metadata and we currently have no metadata for the song then we use this to add basic artist, title,album details.
If we have not yet matched the songs to Discogs, we then search for a matching Discogs album for the grouping.
If a match has been found we save the songs, renaming from metadata if the option is enabled. If we still don't find a match it is probable the song doesn't exist in either database and we leave the songs untouched
If at this stage we've yet to find a match we can also try and match individual songs to MusicBrainz and guess the best release from the limited information available, but this stage is not done by default.
We then save any changes made, renaming files form their new metadata if the option has been selected by user.
Finally we generate a report showing exactly what has been matched, and what metadata has been modified for any of the modified songs
This is essentially how matching works in SongKong however there are various options you use to modify this.
The majority of customers should not need to change many options, but there are a number of options to fine-tune the way SongKong works. The Restore Defaults returns options for this profile to the factory settings, equivalent to the initial Default profile configuration, but no changes are actually made if you select Cancel rather than Start.