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

Song Tagging and Metadata Blog

Wednesday, 23 October 2019

SongKong 6.6 Red - released October 23rd 2019

We are pleased to announce the release of SongKong 6.6, this release is named after the album by Taylor Swift. Red was the album that kickstarted her transformation from country singer to pop princess, crammed full of classic pop tunes.


Improved Reports 

Most of the improvements in this release are related to reports. 

Artwork Size

 
We now show the size of artwork (width in pixels) as another label on the image



Show Labels 

 
But you can remove this and all other labels by unchecking the Show Labels checkbox so you can see your artwork unobscured.


Text Search 

 
You can do a text search to only show the items that match the search.


Filters

 
And you can combine this with filters.

For the Artist page we can filter on artists that have/not an artist images, artists that have/not cover art for all their albums and artist that have/not all their albums matched to either a MusicBrainz or Discogs album.

New Browse Sections

We have added Browse by Artist and Browse by Folder to a Browse drop down menu because we have now added some new ways to browse your collection.

Browse by Album


Displays all the albums on a single page so that it is easy to find the album you are interested in regardless of knowing the album artist. It also means that very quickly you can see albums over your whole collection that need some attention.
 
Filters and search are included.


 Browse by Composer/Work

For classical music it is often more useful to be able to browse by the composer and their works, rather than by album artist and album so we have now added this. At the top level it shows all the composers that you have works for and you can select a composer to see their works
 
Filters and search are included. 





Bug Fixing

We have also fixed another seven bugs. Full list of fixes can be found on the news page

 

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:

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

Installer 

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.

Reports

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.


Concurrency

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.

i.e.

workers=4

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.


Caching

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.

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