Home User Forums SongKong Music Tagger Jaikoz Music Tagger Albunack Music Service

Saturday, 5 October 2019

SongKong 6.5 Doolittle - released October 4th 2019

We are pleased to announce the new release of SongKong, SongKong 6.5 Doolittle named after the second album by Pixies released in 1989. Full of powerful bursts of energy, and one of the first bands I ever saw live, and now thirty years on they are touring the same album !

Continuing the theme of the previous release we have fixed over thirty bugs this months, this includes a number of long-standing and obscure bugs - please see here

Resolving bugs is important since we want to make SongKong totally hassle free, and this in turn reduces the time we need to spend on support, freeing up more time for new features. So there will be some new features soon but I do not apologize for currently concentrating on bug fixing.

Bug Analysis

I thought it might be interesting to categorise the remaining 39 bugs (this is not many at all for a product of this complexity), they are as follows:

iTunes Integration:6
Web User Interface:5
Matching Issues:5
Reading/Writing data:4
Albunack Database:3
Undo Changes:
Error Handling:2
MacOS User Interface:2


SongKong is available on many platforms and the codebase is largely the same for all platforms but there are differences. Notably installers very considerably between platforms and do not necessarily use Java like the main SongKong application,  and expectations can change  as new versions of the operating system become available. The two most problematic platforms are Windows (which is complicated), and Linux where there is no clear standard for all Linux variations.

iTunes Integration

Unfortunately Apple do not make it very easy to integrate with their products, and are very secretive about bugs in their products. iTunes integration is difficult and we have to do it twice, once for MacOS and once for Windows


Web User Interface 

Originally SongKong only had a regular desktop user interface. Adding a full Web user interface was a major piece of work, and we are still learning about the ever changing web, and have a few issues to fix.


Matching Issues

This is the main feature of SongKong and we are always seeking to improve song identification, and have a few minor issues related to this.

Reading/Writing Data 

For some audio formats (mp4, ogg, wma) we sometimes write temporary files when modifying files and this can cause issues for users with a complex permissions model. So we would like to remove the need to use temporary files but this is quite major piece of work, this is the bulk of the issues in 
this category.

Albunack Database

Some improvements require modification to our Albunack Database, this holds our copies of MusicBrainz and Discogs database.

Undo Changes

Another key feature with a few issues.


Additional Html based problems.

Error Handling

Errors can always happen, and when they do we need to deal with then sensibly, a few issues remain here.


MacOS User Interface

Of all the platforms that SongKong supports the MacOS platform is most subject to change and require updates to SongKong


Saturday, 7 September 2019

SongKong 6.4 Treasure - released September 2019

We are pleased to announce the new release of SongKong, SongKong 6.4 Treasure named after the third album by The Cocteau Twins released in 1984. Never has the word ethereal better described a rock album, utterly different to anything else and one of a number of fantastic albums released by the band.

This release contains more than twenty bug fixes, but we have also added a number of nice improvements.

Added badges to Browse by Folder/ArtistAndAlbum 

We now show a tally of how many songs have been matched to MusicBrainz and Discogs at all levels so you can quickly scan for albums that may need more attention

Add reason why file not loaded to the Not Loaded tab

Previously when we could load a file the file was added to the Not Loaded tab, but the reason we could not load the file was added to the Errors tab, now we show the reason on the Not Loaded tab instead, this makes much more sense.

Use grid for Album Artists with four artists

When an album has multiple album artists we can create an albumArtist image from each artist, when there are four artists splitting the image vertically only make each artist too thin, so now we can arrange as a grid. 

Full details of all changes can be found here

Sunday, 21 July 2019

SongKong 6.3 Psychocandy - released July 21st, 2019

We are pleased to announce the new release of SongKong, SongKong 6.3 Psychocandy named after the debut album by The Jesus and Mary Chain released in 1985. This feedback drenched album was like nothing we had heard ever heard before (except maybe elements of the Velvet Underground), but subsequent albums never lived up to this one.

Reports now has Browse by Artist/Album 

In this new release we have introduced a new section called Browse by Artist/Album. This group the songs by the album artist and album metadata and lets you browse the songs in this grouping. This shows all songs processed by Fix Songs, not only the songs that SongKong actually modified.

We show artist and album artwork if SongKong has it, and also add badges indicating how many songs exist for this metadata and how many change.

This new section of the report mirrors the kind of view you would expect to see in many music players and control points and should make it easier to manage your music.

Reports Song Changes section revamped as Browse By Folder 

The Song Changes section has now been renamed, and instead of showing a single tree it now uses tiles to let you browse by folder in a similar way to Browse by Artist/Album.

It now shows all songs processed, not only the modified songs. If a folder has a folder.jpg in the folder then this is displayed as the folder image.

Providing Browse by Artist/Album and Browse By Folder sections make it much easier to identify any discrepancies between file structure and metadata.

Also tiles rather than tree works better for mobile and small screen devices.

Matched to MusicBrainz/Discogs/Song Only/Naim Report Sections all revamped

All these sections have also been revamped to use tiles rather than the tree hierarchy.

Performance Improvements

Additional improvements have been made to performance and there have also been some performance related bug fixes.

Full details can be found on the News Page

Friday, 21 June 2019

SongKong 6.2 Hunkpapa - Performance Release released on 20th June 2019

We are pleased to announce the new release of SongKong, SongKong 6.2 Hunkpapa named after the third album by Throwing Muses released in 1989. This is a really fantastic album, with some great tracks from both Kirstin Hersh and Tanya Donelly. 

Better Performance

In this new release we have made many changes to improve performance, these fall into two categories database and concurrency. This is quite a technical blog post but I thought some of you may find it interesting.

Better Database Performance

SongKong stores your music metadata in a database, this means we can:
- Provide an Undo feature
- Quicker reloading of files instead of having to access fileystem
- Minimal Data stored in memory so SongKong is scalable huge music collections. 

SongKong uses Hibernate on top of the H2 database. Hibernate provides a useful abstraction from the database, but it can lead to inefficient database querying. We have now gone through all queries and made a number of performance improvements to reduce the database load.

We have moved from H2 1.3 to H2 1.4, this is not a minor change. H2 1.4 uses a completely different database format for greatly improved performance.


SongKong is a multi-threaded application, this means there can be more than one thread of activity going on at the same time. The key threads that do most of the work are called the worker threads. 

By default the number of worker threads matches the number of cpus of the computer so we can utilize all cpus

If the computer has only one cpu we still have at least three worker threads. This is because SongKong gets much of its data from the internet so once a request is made to the Internet it just waits for the results, so no cpu is being used. If we have multiple threads than the cpu can service a different request whilst waiting for results.

In this release we have made improvements to how the concurrency works. This will see most improvements on single cpu systems and conversely also high end systems with more than 16 cpus.

Optimization, Control Worker Threads

To reiterate, by default the number of worker threads matches the number of cpus of the computer so we can utilize all cpus, with a minimum value of three.

If customers are running SongKong on a whole collection it is usually recommended it is run overnight. But if you want to limit the number of worker threads because you are actively using the computer at the same time for other work then now you can.

Just modify your general.properties file and add a line workers=n where n is number of worker threads.



Then when you start a task it will only use that amount of worker threads, you can check this by looking at your songkong_user0.0.log file

When you start a task it should say

21/06/2019 09.30.19:BST:SEVERE: Workers Configuration:4

We have a number of other fixes, and the full list can be found here

Wednesday, 22 May 2019

SongKong 6.1 Elephant - Now with Artist Images released May 22nd 2019

We are pleased to announce the new release of SongKong, SongKong 6.1 Elephant named after the rocking fourth album by The White Stripes.

Artist Artwork

We have a major new feature in this release. SongKong can now find artist images for your music. And when we say artist images we don’t just mean the release artists, we can find also find images for the tracks artists, composer, lyricist, conductor, and orchestra! The images are added to your actual music files so that they are transferable.

We do special processing for the Album Artist, if the album artist is made up of multiple artists and we can find images for each album artist we try to stitch the images together to create a single image that represents the album artist.

Artist Image per Artist Folder

We can also save album artist artwork to each Artist folder if your songs are organized Album Artist/Album folder. This can be useful if using an UPnP server and like to browse music by folder. The album artist will be stored as a folder.jpg file within the each Artist folder and this means that your uPNP control point should use the artist image as the folder image.

You can see in this screenshot below (using Linn Kinsky Control Point being served by MinimServer) that artist folders with an artist image look so much nicer than the default folder image.

Artist Image Repository

SongKong can add all the artist artwork found to a single folder, named by artist name, this gives you all your artist images images in one folder making it easy to find them if you want to use them for other purposes.


When Songkong downloads an album from MusicBrainz it has previously always stored the  album details in the internal SongKong database. This means that if we need the album again we do not have to retrieve it from the Internet again. But databases introduce overheads such as locking that we do not really need since the album is read only, we have no need to change it, and we also have the issue that the database will continue to grow over time.

We have now moved to using a Cache instead called EhCache. This is faster than using a database and automatically prunes the data when it reaches a certain size, removing the albums that have not been accessed for the longest period of time.

This improves performance, and we have also added caches for Artist, Acoustid and AcousticBrainz lookups.

We also have a number of other fixes and improvements in this release.

Friday, 29 March 2019

SongKong 6.0 Fumes, now with Profiles - released 29th March 2019

SongKong 6.0 Fumes Released 29th March 2019

We are pleased to announce the release of SongKong 6.0 Fumes on 29 th March 2019. This new release is named after the album Fumes by american pop-folk duo Lily & Madeline, similar to First Aid Kit but less well known & better. We have cheated a little, favorite album is their eponymous debut  but that album does not match the self-imposed one word album name rule for SongKong releases.


A long requested feature has been the ability to save multiple SongKong configurations, and then be able to switch between them to perform specific tasks. Now we have added them, they are called Profiles

You can modify an existing profile or create a new one with the Clone button based on the current profile. Any modifications made to your configuration will be made to the currently selected profile.

If you want to delete or rename a profile, this can be done from the Preferences page, we have added some predefined profiles.

Rename Masks

When we looked at profile masks it was clear that if you created a new filename mask it would make sense for that mask to be available to all profiles. So we have now moved the created and editing of filename masks into Preferences.

and within the Fix Songs task, there is now just the option to select the rename and compilation rename masks.

Update of Reports

We have now updated all reports so that they no longer use html framesets as these are no longer supported in Html 5. And we have updated the style so that they match the pages of the Remote User Interface.

Create Support Files

We had an issue with potential customers uploading their support files before they had a license, and therefore we had no idea who had sent the support files! So we have now added an email field, this will be auto populated for customers who already have a license.

Full details of all improvements can be found here

Tuesday, 5 March 2019

SongKong 5.15 Crocodiles Released 5th March 2019

We are pleased to announce the release of SongKong 5:15 Crocodiles on 5th March 2019. This new release is named after the debut post punk album by Echo & The Bunnymen from 1980. Great tunes, guitar, vocals and image on one of the best debuts ever.

Compilation now means Compilation 

Originally the definition of a Compilation that was used by SongKong was the same as the one used by MusicBrainz. This means that both Various Artist Compilation albums and a Single Artist Compilation are considered to be compilations and have the Is Compilation field set. But most of us consider these two cases differently, and only really consider the Various Artist album as being a compilation.

So now only Various Artist compilations are marked as compilations, and we have added a new field called Is Greatest Hits  for a single artists Greatest Hits albums, this makes more sense.

Things are slightly different for Classical music  because it is difficult to determine the distinction we have for now continued with Is Compilation for all types of classical compilations.

File renaming for HD albums

We have added some new filename masks that will put HD albums in a separate top level folder called HD. They make use of a new addHD() javascript function, and we have also added similar addCompilation() and addGreatestHits() functions.

Improvements to Song Only Matching

SongKong always tries to match logical groupings of songs to one album, if this is not possible then it does song only matching, in such cases we only update song only fields such as Song Title and not album fields such as Track No. But often it is the case that all but one song was matched to the same album, and there is just some minor problem preventing all songs being matched. 

If subsequent Song Only Match matches the groups of songs to recordings that have links to the same MB Release then we also add some basic release information such as Album Name, Catalogue No and Cover Art using the most popular releases for the songs. So for each song we use the most popular release that the song is linked to.

And we know that Cover Artist a key piece of metadata customers like to have. And it is much easier to remove an incorrect piece of artwork then manually search and add artwork yourself, but we only add album data when songs are missing that data we don't overwrite exsting data.

And we only add album data for albums that are not compilations. The reasoning behind this is that we cannot be sure we have the correct album because we cannot match all songs to the album, but if it is an original album there is a good chance it is the correct one, or a variation of the correct one. But if it a compilation then because popular songs can find their way onto many compilations there is a good chance that this is actually the wrong one.

Improved Matching

We have extended Albunack DiscId matching so that it can now work for multi disc albums as along as each disc in your collection is stored in a separate folder under the parent folder. 

We have increased the fuzziness of Discogs Albunack DiscId matching to find more potential hits. And we have fixed a bug when using Albunack DiscId matching with Mp4 files.

Plenty more fixes, please see here

Jthink blog Jthink Facebook page google_plus Jthink YouTube channel Email Paul at Jthink Subscribe to Weekly Newsletter