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

Thursday, 5 February 2015

Improved Song Matching with SongKong 3.11

Hot on the heels of SongKong 3.10 we have a new release of our automated music tagger. A customer was trying to work out why their songs would not be matched to an album with SongKong and I decided that the resultant improvements that came from investigating the problem  were really worth getting out there. But I'll try really hard to wait at least a week before the next release !

Improve Recognition of Multi-Folder Albums


If you have Only Allow match if All Songs Matched and Only Allow Match if all tracks on album matched the problem is that although SongKong considers the two sub folders as being part of one release it does an additional check based on name to confirm this, and that check is  case-sensitive so SongKong found cd but doesn't match CD so it decides that each sub-folder represents a separate album then it tries to match each folder in turn and of course cannot find an album that can be completely matched by just one of the folders. 

Always consider existing MusicBrainz Release Id when rematching

When rematching SongKong ignored existing MusicBrainz Ids and matched purely based on the AcoustIds and user metadata. However we should always consider an existing MusicBrainz Release Id when rematching. This protects against SongKong not finding good matches when it should do and also provides better parity with Jaikoz. The existing MusicbrainzReleaseId will only be used if it is the best scoring match of the release candidates.

Always consider existing Discogs Release url when rematching

 And the same logic applies for Discogs matches as well.

Always do AcoustId match when metadata match was for a Various Artist release

Assume you have a 2 CD Various Artist release with both discs in subfolders and you have Only Match if all Songs in Grouping Match enabled but Only allow match if all tracks in album were matched is disabled.

Now if initially SongKong fails to group the two folders as one grouping it will do a metadata search and because that includes a search on artist:Various Artist plus a fuzzy search on title plus track count. the Track count will be wrong for our release because track count is based on one cd only. Because the search is for a Various Artist and fuzzy release the search probably will find a number of releases matching this an the invalid track count. If we find lots of potential matches then an AcoustId match would not be done (for performance reasons) so we end up not finding and scoring against the correct release and hence no match.

Now if  Only allow match if all tracks in album were matched is disabled.and we did a Various Artist search we always ensure we do an AcoustId match regardless of how many metadata matches we got.

The full list of improvements can be found here

Tuesday, 3 February 2015

SongKong 3.10 Bug Fix release

This release fixes a number of bugs, fixes one regression and adds one improvement:

OSX:SongKong has encountered an error trying to build model of iTunes library

If SongKong is configured to update iTunes then SongKong has to create a model of the iTunes library on start up so that it knows what songs are already under iTunes control. On OSX SongKong has to use Applescript to communicate with iTunes, and the iTunes library is large it can take a while to rebuild it, but the default timeout used by Applescript is not always large enough for large iTunes library. The timeout has been increased in this release.
 

OSX:Not always showing all options on first tab on small screen

On my own Mac with 17" monitor with native resolution at 1920 x1200 resolution I had never seen this error  but reducing the display to 1280 x 800 and the first tab of the Fix Songs dialog no longer has room to show all the options. This kind of resolution could be used by smaller laptops such as a 13" screen version, and unfortunately SongKong gives no visual indication that there are any other options. The problem persisted on Windows as well, but a Windows is able to fit in more on a smaller resolution than OSX.

The problem is now fixed, a vertical scrollbar is displayed as neccessary.

Treat track names like 'Track 1' as blank

SongKong uses existing metadata to match songs and to validate acoustid matches, but sometimes existing metadata should not be used. The most common culprit is track names of the form Track 1, Track 2, Track 3 ectera , whilst these can be valid track names they normally are not so now if existing metadata contains such names we just treat as if the song currently has no title.

Regression:Discogs matching Thread prematurely ending


This regression was introduced in SongKong  3.9 by the change to match multi-folders groupings to Discogs after a failed MusicBrainz match before attempting matching sub folders. Unfortunately this change could cause Discogs matching to stop prematurely, it is now fixed in this new release. 

Full list of fixes and improvements can be found here

Thursday, 29 January 2015

How to install the Minecraft OreSpawn mod on Windows

Installing mods with Forge

Now I know this has nothing to do with SongKong or Jaikoz but I'm hoping this saves someone a bit of time and avoid them pulling their hair out.


Minecraft and OreSpawn

My kids love Minecraft and they have been bugging me recently to install a mod (not something I had done before), in particular the AuraSpawn mod , well I promised I would but the instructions made it seem rather more complex than it actually was.

Turns out they actually meant OreSpawn , this is actually quite a fun mod with loads of new animals and monsters including various dinosaurs and Godzilla. And to install this mod and various other mods you also need to install a mod loader called Forge. Neither OreSpawn or Forge currently work with the latest version of Minecraft but when you run as Forge it automatically runs the correct version of Minecraft for you.

Installing Forge on Windows 8

  • Use a browser that doesn't mess with .exe files such as Firefox (Internet Explorer renames them)
  • Select this link to select the latest version of Forge (currently works with Minecraft 1.7.10), you have to wait a five seconds for Adfly to finish, then click Skip Ad in the top right hand corner to download the installer
  • Double-click on the installer to start it, ensure Install Client is enabled and click OK
  • Now start Minecraft Launcher,  and the Profile dropdown should now list Forge, select this profile
  • Select Play starts Minecraft as the correct version and you'll notice a new option called Mods
  • Exit Minecraft 

Installing OreSpawn on Windows 8

  • Now download OreSpawn itself, you can go to the OreSpawn website or just download the 1.7 version from here, once again you'll have to wait 5 seconds before skipping the Ad.
  • Open the Downloads folder in Windows Explorer
  • Open another instance of Windows Explorer and enter %appdata% into the address bar double click on the .minecraft and then the mods folder within it.
  • Drag and drop the orespawn zip file from the first  instance of  Windows Explorer into the mods folder of the second
  • Restart Minecraft Launcher, click on Play and then click on the Mods option to check it now contains the OreSpawn mod,
  • Now create a new world and you'll have a host of new spawn eggs, try spawning a Criminal to see a little political joke.
Its worth noting that once you have Forge installed you can easily install other Forge compatible mods as well.

Wednesday, 28 January 2015

Improved Discogs Artwork Coverage with SongKong 3.9

Better Discogs Artwork Coverage

 Discogs has a concept of primary artwork and secondary artwork, primary artwork contains the front cover art and secondary artwork was used for other images such as the back cover or sleeve inserts. It used to be that an editor could specify whether an image was primary or secondary. But now when editing the first image is always considered the primary image and all other images are secondary images, this order can be modified by dragging and dropping the images in Discogs to make a different image the primary image.

However the Discogs data dumps contain many releases that only contain secondary images and no primary images. The precise reason for this is still unclear but whereas SongKong previously ignored secondary images meaning no Discogs images was found for these releases SongKong 3.9 now makes use of the secondary image if a release contains no primary image but does contain secondary images.

For you this means even better image coverage

Improved Matching

We deal with some more difficult matching problems in this release the key ones being:

For multi disc releases grouped one folder per disc SongKong could incorrectly match just one of the folders to a MusicBrainz release and not the others if MusicBrainz only contained a single disc version, even if  the complete release was available in Discogs. Now when matching multi-folder groupings if it fails to match the folders to MusicBrainz SongKong attempts Discogs match before breaking into subfolders and matching each folder to MusicBrainz only if no Discogs match is found.

If you have iTunes configured to make a copy of all songs added to it (the default) then any songs with no metadata are added to the Unknown Artist/Unknown Album folder. SongKong now realizes that this folder does not represent an actual album and therefore should be treated as one.

A silly assumption crept in somewhere that if all songs are by different artists then it must be a Various Artists compilation but this is often not true such as in this album - and this prevented SongKong matching albums when it should have. 

 

Various Fixes

 We also have a host of bug fixes across  various parts of SongKong, full details at the Issue Tracker


Tuesday, 20 January 2015

Jaikoz 8.1.1 with Artist Sort Names fixes and new Windows Installer

Today we release Jaikoz 8.1.1 , this fixes an important regression that caused Jaikoz to no longer add the correct  Artist Sort and Album Artist Sort values for your songs, instead it was just using the Artist and Album Artist values.

We also fixed another issue with sort names, a release such as Ravenous is credited to both Damon Albarn and Michael Nyman , yet previously Jaikoz would only use the sort name of Damon Albarn as the value of Artist Sort, now it considers both names giving a sort name of Albarn, Damon & Nyman, Michael instead of just Albarn, Damon.

Jaikoz tries to weed out duplicate songs when matching a folder of songs to an album, but it was incorrectly identifying songs with the same name but actually different track lengths as the same song - when they are actually different songs, such as the two versions of L.O.V.E on this release.

For Windows users Jaikoz now comes as a self-extracting zip, just like we did in the latest version of SongKong . This means just double-clicking on the installer will do a complete install. But because Internet Explorer has an annoying habit of renaming .exe files we keep the standard zip version of the installer as well, much easier to move to a better browser such as Firefox though.

Full list of fixes at the Issue Tracker

Wednesday, 14 January 2015

Lot of improvements in SongKong Music Tagger 3.8


Today we release SongKong 3.8

Installer

We have improvements to the Windows installer, its now a self-extracting archive

Stability

If your database was corrupted you could try and recreate it by using Empty Database but this did not always work and you had to manually recreate the database folder,  this is now handled by SongKong.

Matching Improvements

There are some bug fixes and  improvements to matching itself. SongKong was not always doing its Acoustid double-check to ensure that songs had not been matched to a song with a title that didn't match the songs Acoustid, this is fixed.

SongKong had an issue when matching fields with a quote in it, this could prevent potential albums being returned, now fixed.

SongKong tries to weed out duplicate songs when matching a folder of songs to an album, but it was incorrectly identifying songs with the same name but actually different track lengths as different songs, such as the two versions of L.O.V.E on this release.

Improved Match Song only to both match more songs, and to be careful when matching songs when you already have a song with a different title.

We also fixed a bug that when renaming files from multidisc releases from a folder per disc to one folder per complete album we were left with folders  that should have been deleted.

Report Improvements

The Fix Songs report now comes with extra instructions on how to navigate it, and errors are now timestamped


The full list of fixes in this release can be seen here

Creating a Self-Extracting Installer On WIndows

With SongKong 3.8 at last we have a self extracting and installing installation for Windows. But what does this mean, and how do you do create one ?

Self Extracting Archive

A self-extracting archive (sfx) requires no extraction application to be installed on the users computer because the extractor code is in the archive itself. So not only does the user not have to actively unzip the archive but you do not have the problem of not having suitable software to unzip the archive. This does mean that you will get a different user experience depending on what application was used to create the self-extracting archive in the first place.

Self Installation

A simple sfx can extract itself with a double-click, but then the extracted files still need to be installed by double-clicking the setup file, so its a two stage process. However some sfx solutions allow the archive to be installed to a temporary space and then an exe started automatically to perform  the installation.

Creating an Sfx for SongKong

I looked at both 7-Zip and WinRar, I found the instructions for 7-Zip unclear and the resultant archive looked a bit amateurish, but with WinRar I found it surprisingly easy as follows:

  • Install WinRar
  • Select SongKong installer files, right click and select Add to Archive
  • Use Browse.. to create the archive in the folder above
  • Change Archive Format to Zip
  • Enable Create Archive Format
  • Select Advanced tab
  • Select SFX Options
  • Select Setup tab
  • Enter setup.exe into the Run after Extraction field (this is the name of the program I want to run)
  • Select Modes tab
  • Enable Unpack to temporary folder
  • Select text and Icon tab
  • Enter 'Unpacking SongKong Installer'
  • Select OK
  • Select OK
  • Sign the songkong-windows.exe to prevent Windows complaining when you download and install.
Now having it working via the GUI I would prefer to automate this in the script, but that is a job for another day.


Thursday, 8 January 2015

Jaikoz 8.1 Bug Fix Release

Today we release Jaikoz 8.1, this is very much a bug fix release.

Remaining regressions from the Jaikoz 8 release have now been fixed  

Manual Correct From MusicBrainz was not showing metadata matches, only acoustid matches - this is now resolved.

Match to Specified Release was no longer letting you override warnings about track durations and acoustid title matching. This has been fixed and extended to allow override when matching by Catalogue No or barcode as well.

Correct Metadata from MusicBrainz could fail if you had music files directly in your root folder (i.e / on OSX or C:\ in Windows), now fixed.

NullPointerException at Match to Specified MusicBrainz release if release has release date but not release country now fixed.

Further Performance and stability improvements


Jaikoz using more memory as songs are fixed, this regression was introduced in Jaikoz 8.0.2 as aprt of another fix.

Performance improvements have been for dealing with matching large releases.

The full list of fixes can be found here

Wednesday, 7 January 2015

Draconian new EU Vat Changes

Not a technical post but please take the time to read this, its important.

VAT Overview 

Until the end of 2014 VAT (Value Added tax) is added to most purchases within Europe when you buy something. Currently this is about 20% but the rate varies between country and there is no VAT at all some items but the VAT rate is always set at the rate of the companies country. VAT make products more expensive and adds an administrative/accounting overhead to companies, but most EU countries set a threshold so that if your EU Sales are less then the threshold you do not need to charge VAT. This allows micro-businesses to compete with larger businesses who have many benefits of economies of scale not afforded to smaller businesses.  

JThinks position

JThink is very much a microbusiness - for over seven years I have been designing, developing, marketing and selling my software. I don't make a fortune but I make enough to support myself. In the UK the VAT threshold is currently £81,000 so as long as my EU sales are less than that I do not need to be VAT registered.

Luxembourg is the problem 

Unfortunately Luxembourg and companies such as Amazon  have been abusing VAT for a number of years. Luxembourg set their VAT rate to only 3%  for products such as books and e-books and then companies such as Amazon registered their EU operations in Luxembourg so they could charge VAT at only 3% undercutting their competitors. Despite the low VAT rate Luxembourg receives a surge of tax that it would not have got otherwise.

New Draconian legislation introduced by the EU

So how does the EU sort this out, does it punish Luxembourg directly, no it introduces new draconian VAT rules starting January 1st 2015 that make no sense and punish small businesses. As a further kick in the teeth for the next few years the additional VAT raised will be given to Luxembourg to compensate them for their loss . Coincidentally the current president of the EU is Jean-Claude Junker , from 1995 to 2013 he was the Prime Minister of Luxembourg.


This is better explained by the HMRC than the EU but I shall attempts to sum it up in a few sentences

1. New rules mainly effect e-services such as e-books and software
2. VAT is now based on the customers countries not the companies country.
3. The VAT threshold is removed for any sales outside a companies country


New rules effect e-services such as e-books and software

If you look at the documentation and examples the focus is very much on telecommunications and ebooks, after all the main driver of this leglisation was originally the Amazon issue. However software has been quietly added the mix so this affects Jaikoz and SongKong

 VAT is now based on the customers countries not the companies country.

This means that depending on where the customer is based the VAT rate will be different. Countries such as Italy have recently slashed the VAT rate on ebooks so that their citizens are not greatly impacted by the change but so far there have been no such reductions for software.

It also means that companies have to record additional information about the customers location, thankfully today the deadline for implementing this additional information has been extended from January 1st 2015 to June 30th 2015 so I don't yet have to make major changes to my order processing system, but I may have to if Paypal doesn't get onto this. However I do have to charge VAT starting from January 1st , so nothing has changed there.

 The VAT threshold is removed for any sales outside a companies country

This is real killer for companies such as myself, if I sell one copy of my software to a cusotmer based in Denmark then I have to charge VAT.  Perversely it is now less expensive to supply software to customers outside of the EU then within because not VAT is charged. So as EU citizens expect the prices of many items to rise. The one area where the HMRC has backtracked is that I now may maintain my threshold for UK sales, so UK customers do not need to pay VAT.

How does this affect Jaikoz and SongKong ?

Unfortunately I cannot afford to absorb this cost myself, nor take different revenues based on where the customers resides so I have had to pass on the VAT costs, as it is I have not increased my price for a number of years. This is a tax that goes directly to the EU and make things more difficult for micro businesses so the tax will  now be added at purchase time.

Can I avoid paying this Tax ?

If you are a VAT registered business then you can always claim back any VAT charged.

This tax is only payable to those of you based in the EU but not the UK. If you are based anywhere in the rest of the world such as US, Australia or Japan there is no change.

One idea is that if you have a generous friend who resides in one of these countries maybe they could purchase the software and give it to you.

If like me you think this is step in the wrong direction you can find out more about it at http://euvataction.org/ this includes a petition that can be signed here

 

Sunday, 4 January 2015

Matching Classical Releases

Matching Classical albums gives us some challenges that we don't usually have with Pop/Rock albums.

Very Long Song Titles

Classical releases can often have long titles because according to the MusicBrainz Classical Guidelines if they are part of a work they should contain the Work title in each song title, for example here. And Operas should contain each act or scene as in here. This means when matching existing song titles it takes longer because there are more words to match, it is also harder to match because these guidelines don't reflect as accurately what is written on the cover as for non-classical releases.

Very Large Releases

Because many classical composers catalogues are out of copyright it is inexpensive for music publishers to release large box sets  of a composers output. One such example is the 100 CD Complete Works Beethoven release. Its actually too large to show reliably in MusicBrainz so instead I show the results of a search .Trying to match songs to large releases is invariably more time consuming than smaller releases because there are so many permutations to consider, actually expotentially more.

Solutions

Both of the problems are addressed in SongKong 3.7 together with some more improvements, full details here

Wednesday, 17 December 2014

Jaikoz 8.0.2 Released

Jaikoz 8.0.2 Released

A few more regressions were found in the Jaikoz 8.0.0 released, hopefully all now fixed.

Probably the most important issue was that Featured Artists were not getting added to the artist field when songs were matched from MusicBrainz.

Also if field was deleted (so had status red) and that song was matched to MusicBrainz none of the fields that were deleted would be repopulated until the song was actually saved.

Full list of fixes can be found here

Friday, 12 December 2014

What do you really, really, really want to see in the next version of Jaikoz ?

With Jaikoz 8 released we finally have both SongKong and Jaikoz using the JThink Music Server for their metadata queries. The Jthink Music Server was a huge chunk of work that we hadn't planned for at the start of the 2014 (it was driven by changes over at Discogs) but the speed and accuracy improvements that come with it have been pretty amazing. SongKong is now maturing  with very few bugs remaining in it so we now have time to plan for 2015.

So what do you really, really, really want to see in the  next version of Jaikoz ?

We have our own list of top priorities that you can see here but its difficult to gauge what my customers want, so please post a comment here if there is something you want or need that Jaikoz doesn't provide.


Improvements to Deleting Duplicates with SongKong 3.5

SongKong 3.5 released today, in previous releases the main focus has been on improving the Fix Songs task but in this release we wanted to review other part of the application application, especially Delete Duplicates Songs

Delete Duplicate Songs

First of all we found some bugs in Delete Duplicates that have now been fixed.

The help for Delete Duplicates has been completely rewritten to give more detail and make more sense for non-MusicBrainzers and additional checks and balances have been added to make Delete Duplicates work better in Trial mode.

The we added a new option to Song is a duplicate if has same called Same song (metadata only). This is very similar to Same MusicBrainz song only for finding duplicate songs without being concerned about albums, but without the need to match the songs to MusicBrainz first (although we would always recommend using the MusicBrainz based options whenever possible)

Help

Help has been edited, including simplification of the terminology such as using Album instead of Release and Song instead of Recording. We have added a Pdf version accessible from the Help menu for some bedtime reading, but seriously the Pdf version works well if you want a paper copy of the SongKong manual.

Fix Songs

But despite what I say at the start of this post we have made some improvements to FixSongs as well, these include some major performance improvements based on improvements we made in Jaikoz 8.

Full list of improvements and fixes can be seen here


Thursday, 11 December 2014

Jaikoz 8.0.1 Released Today

Jaikoz 8.0.1 Released Today

This is very much a bug fix release, included in the bug fixes are fixes of three important regressions.

  1. Manual Correct from MusicBrainz would not display properly if  an of the potential matches were songs linked to a release without a release date or country.
  2. Matching to MusicBrainz was broken for Linux installations due to a bug in the Linux installer.
  3. Update Metadata from MusicBrainz would not work for songs matched before Jaikoz 7 because they would not contain a MusicBrainz Track Id field only a MusicBrainz Recoriding Id field. Now we have fixed Jaikoz to check for a Recording Id if a Track Id does not exist.

You can see the full list of fixes here

Friday, 5 December 2014

Jaikoz 8 Arrives: Complete Music Management Solution

Jaikoz 8

Today we release Jaikoz 8 this is an exciting release because it is the first time Jaikoz uses the JThink Music Server for both Discogs and MusicBrainz matching.

This means
  • Faster Matching
  • More Accurate Matching 
  • More Reliable Service
Faster matching because the  JThink Music Server is optimized for release matching - and is optimized  to show the data Jaikoz requires, not more and not less, this results in a minimum amount of api calls. In contrast the MusicBrainz server has to support all many different scenarios and customers and understandably has to make compromises

More Accurate Matching search has been optimized to best match the algorithm used by Jaikoz, and additional data such as finding the original release of a release is returned with the match.

More Reliable Service MusicBrainz service is available to many applications and because of this usage can vary wildly, and at times can become unresponsive.  Because the Jthink Music Server is only used by Jaikoz and SongKong demands on the server are less, and unlike the MusicBrainz server the Jthink Music Server can automatically scale to multiple machines when demand does peak.

Some New Features

We have also added
  • Match Songs to one MusicBrainz Album by Catalog No
  • Match Songs to one Discogs Album by Barcode
  • Match Songs to one Discogs Album by Catalog No
and you can now
  • View this Song at AcousticBrainz
AcousticBrainz is a new site that does audio analysis on songs in the MusicBrainz database to work out attributes such as the Bpm or Danceability of a song. There will be deeper support for this in the next version of Jaikoz. You can help the AcousticBrainz project yourself by submitting your own songs for analysis.

 Many More Improvements

In this release the matching algorithm of Jaikoz has had a Spring clean, it has taken on most of the improvements implemented by SongKong plus added some new ones to give the fastest and most accurate matching so far.

We taken a look at any issues raised in the last year and fixed as many as we possibly could.


You can see all the 42 fixes and improvements made in this release here


Friday, 21 November 2014

How to easily calculate the Beats Per Minute (BPM) of a song

Knowing the  Beats Per Minute (BPM) of a song can be very useful

  • If you are a runner matching the BPM to your running pace can help improve your performance.
  • Professional DJ's need to be able to blend the end of one song into the next, without the transition being awkward or jerky. By figuring out the BPM  you'll  know if you need to bring the tempo up or down to have them both playing at the same speed.
  • Creating a  playlist to fit a certain mood is considerably easier if you use songs with a similar BPM

But how do you actually calculate it ?

There is now a really easy way to do this thanks to a new project called  AcousticBrainz 
a collaboration between MusicBrainz and Music Technology Group, University of Barcelona
  • First your songs needs to have MusicBrainz Recording Ids, as you know this is easiest to do by running them through SongKong Tagger 
  • Then download an AcousticBrainz client from here
  • Install and run the client and point it to your music collection, this will calculate the BPM for each song and then submit it anonymously to AcousticBrainz
  • Then to look up the BPM just look up the page http://acousticbrainz.org/mbid in your web browser i.e. http://acousticbrainz.org/5f3a763a-669d-4a4c-bafa-d76fc5ae885d
  • You'll notice it doesn't just provide the BPM but all kind of cool things such as key, danceability and mood , but more about these in another post.

The future

This is a brand new project so it is not integrated into any other tools yet but soon SongKong and Jaikoz will allow you to both submit new AcousticBrainz data and to automatically add it to your songs.

Sunday, 16 November 2014

Matching Multiple Albums using only Acoustids

The SongKong 3.4 release is full of improvements to the matching process.

SongKong now does a much better job of handling multiple albums without metadata in one single folder. Previously if you had Only allow match if all tracks in album were matched enabled it had difficulty matching multiple albums contained within a single folder unless they had some existing metadata. The workaround was to disable the option but this then allowed SongKong to match partial albums, possibly not the desired outcome. Now in this release SongKong can derive metadata from the songs Acoustids and group and match the songs accordingly without having to disable the above option.

Overall SongKong is better at matching albums, before this release it would try and match a grouping completely to one album, if that failed and depending on user preferences it would then match each song one by one. Now before resorting to song by song matching it trys matches partial groups to a release. This means results are split over less albums, and it speeds up the matching process because it is quicker to match a group  of songs to a release in one go rather than song by song.

There are some super larger releases in  MusicBrainz and Discogs, these are usually Box Sets of the complete works of established artists. Matching songs to these larger releases can be time consuming and give the impression that SongKong has stopped working. A number of improvements have been made to prevent SongKong spending too much processing a group of songs, and a Still Alive progress bar has been added to show that SongKong is still working 

Full details of all issues fixed in this release can be found here .

Monday, 3 November 2014

New Version of SongKong with Better Matching


Today on 3rd November 2014 we release SongKong 3.3, this release is full of improvements to the matching process:

SongKong now does a much better job of matching songs to multi-disc releases such as box sets, previously if checking against very large releases such as this 50 Cd Elvis Presley Box Set SongKong could take a long time, now the matching is quick and accurate.

Match Song to Recording only is now more effective at identifying the correct song when an acoustid matches to multiple recordings because it takes existing metadata into account.

Discogs matching is more effective because SongKong can now find matching albums based on the existing song titles in your files, before potential albums were only found based on existing artist and album name metadata.

We have also improved the identifying of duplicates when matching songs by taking into account acoustids and song title metadata at the same time. By identifying duplicates files we can better match the non-duplicates files to the correct album.
Full details of all issues fixed in this release can be found here .

Monday, 6 October 2014

Why does SongKong not match this song to the right song ?

Why does SongKong not match this song to the right song ?

SongKong is a release based tagger, this means that first of all it  always tries to match songs to a complete release  rather than an individual song to an individual track on a release. Release based tagging is much more sophisticated then track based matching.

But if you only have the odd song instead of complete releases such as albums and E.P' this is not possible.  So unless Only allow match if all songs in folder match to one album and Only allow match if all songs in album were matched are both enabled SongKong then attempts to match the remaining songs one at a time.

The primary way of doing this is matching by the Acoustid but sometimes a single Acoustid can match multiple recordings, so we use additional metadata to help decide on the best recording. But this doesn't always help so in SongKong 3.2 we have added two new options.


 

Ignore existing metadata when matching individual songs

If you know the metadata is incorrect you can enable this option so that only acoustids are considered then SongKong will use the recording that has been matched to that acoustid by the most people, this is usually the correct choice.

Ignore metadata derived from filename when matching individual songs

If the song has no song title SongKong tries to derive the song title from the filename but if you know the filename does not represent the song title it can be ignored by enabling this option.

Friday, 19 September 2014

Music tagging with iTunes

Music tagging with iTunes

Even after all these years iTunes is still an essential application for purchasing and playing music for many. Because of that SongKong and Jaikoz have always supported automatic notification of your iTunes library  as you make changes to your music collection. This is necessary because unlike other software iTunes maintains its own model of everything known to iTunes but does not actively monitor your file system for changes made to your songs outside of iTunes.

For example if you rename a song that is already in the iTunes library without informing iTunes then it will not be able to find that song next time you try and play it.

If you delete a file because it is a duplicate without informing iTunes then it will remain in the iTunes library as an orphaned file.

Unless you add new files to iTunes it will be unaware of them, but if you add a file already known to iTunes as if it is a new file you can get duplicate files within iTunes.

Improvements to iTunes in SongKong 3.1

 We have now made some important improvements to SongKongs iTunes integration.

iTunes notified as songs as saved

Previously iTunes was notified once after all songs had been saved, if a large number of songs were modified this could cause a delay at the end of Fix Songs as SongKong created an iTunes playlist of all the songs modified.

Now we add songs to the iTunes playlist as they are saved, this avoids the delay at the end and also means that if SongKong encounters a problem before finishing details of all songs so far modified are sent to iTunes.

Progress indicator for creating the iTunes model and iTunes with changes 

In order to update iTunes SongKong has to create a presentation of the iTunes model so that it knows the names and locations of all the songs under iTunes control, this is done once every time you start SongKong ( if you have iTunes integration enabled). If you have a very large iTunes collection this can take a while, and if you are only matching one album in SongKong then building of the iTunes model can take longer than matching the album but there is no indicator in the progress bar to indicate this so it can look like SongKong has stopped working.

Updating also used to happen at the end and this could an additional delay, once again there was no progress indicator to make this clear.

But now we have added an indicator for the iTunes model creation and an indicator to show that iTunes has been updated with changes

 

Full SongKong 3.1 Changelist

SongKong 3.1 make some other improvements and fixes as well, these are all listed here


The Problems with Hyphens

There are some six different hyphens  within the Unicode Standard listed below:






-

As you can see there is not much difference between them, and when they are used within MusicBrainz and Discogs they are often used without much thought to it.

This causes problems when applied to your music collection because it can mean that songs by one artist can be split if Discogs has used a different hyphen to MusicBrainz, the same problem can also apply within MusicBrainz when comparing releases or recordings as well.

And because the hyphens look so similar it is very difficult to spot the problem.

Manual input of many of these characters is not easy as they do not have dedicated keys on the keyboard, so input is often via done by copy and paste of the character or resorting to using the Unicode value of each character (if you know it)

There are additional problems when filenames are renamed based on metadata. Although the six hyphens listed above all are all valid Unicode they are not all valid characters in other legacy charsets such as Windows-1252 used by many applications on English language versions of Windows.

So to help make your data more consistent all hyphens are mapped to the Hyphen-Minus character, this is the hyphen found on all computer keyboards.

This new version of the JThink Music Server also contains the very latest MusicBrainz data.




Friday, 12 September 2014

New Super Fast SongKong 3.0 has Arrived

Today we release SongKong 3.0 is now available.

The reason for the increase in the major version numbering from 2 to 3 so soon after  version 2 was released it that this a very significant release that now does all the MusicBrainz searching from our Jthink Music server rather than MusicBrainz itself.

Jthink Music server

The Jthink Music server is not simply an exact copy of the MusicBrainz server, it is built from the same MusicBrainz database but provides a new api customized to provide exactly what is required for SongKong to do optimal matching. Because SongKong can now get the information it needs with many less queries the performance testing done so far has seen an 800% improvement in performance, to put it another way what used to take 3 hours now takes just over  20 minutes.

Sort Artist

The Jthink Music Server contains both MusicBrainz and Discogs data allowing us to share information something that is not possible if connecting directly to the MusicBrainz or Discogs server alone. For example MusicBrainz artists always contain a sort name, so the artist Kate Bush has a sort name of Bush, Kate, but Discogs does not store sort names. Previously, this meant if a release could only be matched to a Discogs release but not a MusicBrainz release the sort artist would no be set, now as long as the artist is in the MusicBrainz database the sort artist will be set for a Discogs only match.

Original Release

A popular feature of SongKong is its ability to find the original release and date of a song, that is the earliest release the song could be found on. With the MusicBrainz api this was difficult to work out because different things had to be checked to find the earliest release such as other releases within release group, all releases that the recording is found on, and all releases for recordings withe same acoustid and name as the recording. It was so complicated it wasn't always possible to find the earliest release, but now the earliest release is pre-calculated for every song, so can always be returned for every song.

There are also a host other bugs and improvements in this release, see here for full details





  

Sunday, 7 September 2014

New version of self-hosted server deployed today

A new version of JThinkServer deployed today

The local JThink server has now been updated with the latest data from Discogs, the JThink server processes requests from both Jaikoz and SongKong.

We have also fixed some issues with the data so you should get better results.

More excitingly we have now added MusicBrainz to the server ready for the new version of SongKong. This means additional changes to the server - it should be fully backwards compatible with the existing versions of Jaikoz and SongKong but if you suddenly encounter a new problem please let me know and I can switch back to the previous version of the server whilst I resolve the issue.

Tuesday, 2 September 2014

Jaikoz 7.1.1 Release

A few more issues remaining after the Discogs rewrite for Jaikoz are now fixed in this release.



There was a problem that was preventing good matches to Discogs being found because Jaikoz was submitting an incorrect track count to the server in some cases.

We also manged to introduce a bug in the MusicBrainz code breaking how artist artist credits were dealt with for releases with multiple name credits, this is also fixed.

A few other bug fixes thrown in for good measure, full details here

Wednesday, 20 August 2014

New Jaikoz 7.1 Music Tagger release

Jaikoz 7.0 was a major release that completely rewrote the Discogs matching to use jthinks own version of the Discogs server. We got it mostly right, but didn't get it quite right so today we release Jaikoz 7.1 to rectify any regressions.

There are also a few other bug fixes thrown in for good measure, full details here

Meanwhile progress on adding MusicBrainz to the JthinkServer is progressing very well, its going to be really fast compared with the current SongKong and Jaikoz releases.

Monday, 4 August 2014

Jaikoz 7 introduces self hosted Discogs server

Quicker than planned I'm pleased to announce Jaikoz 7 has been released, it only has one new feature but its an important one, all of the Discogs matching of Jaikoz is now done via the same self-hosted version of Discogs that is already used by SongKong

Originally we looked at this because of the instability of the Discogs API in recent months, the latest forthcoming change would have required all Jaikoz customers to have had a Discogs account and seperately authorise Jaikoz to access their account. Having seen how badly Discogs implemented this for changes to their image archive I wasn't keen to expose Jaikoz customers to this again.

But there are may other advantages of self-hosting Discogs:

We can customize the search to work exactly how we require it for Jaikoz rather than working within the constraints of the Discogs provided search, this means we can get better search results and dramatically reduce the number of requests required, so you get better matches faster. We can control rate-limits based on usage by our customers only to increase throughput, and we can also move some processing out of the Jaikoz itself on the server simplifying Jaikoz code development and reducing client CPU usage, giving additional speedups.

Our Discogs server is updated monthly from the latest data provided by Discogs.

Additionally I do plan to support a way to add new releases to the Jthink database as they are added to the Discogs database for those of you who add new releases to Discogs and want to tag them from Jaikoz immediately.

In the next few months we intend to self-host MusicBrainz data as well, and because MusicBrainz is the primary database used by Jaikoz this will provide additional improvements in speed and accuracy over and above the Discogs improvements.

Full set of changes in this release can be found here

Saturday, 2 August 2014

SongKong 2.1.2 with some final fixes for the new features introduced in SongKong 2

I am now back from holiday and have a new release of SongKong that solves issues with the new Discogs Matching, Genre grey lists and Featured Artists option introduced in SongKong 2.0 - full details here

Now the rush is on to move Jaikoz to use the Jthink Discogs server before Discogs implement their api changes on August 15th, time is a little tight. 

Friday, 18 July 2014

Finding more artwork by looking for similar releases

Hot on the heels of SongKong 2.1 we have SongKong 2.1.1 and this includes an important fix to the artwork finder.

Some Background


Within MusicBrainz different versions of the same release can all be grouped together under a Release Group. For example a CD version and an LP version of the same release would be part of the same release group. Artwork is added at the release level but usually the artwork for all releases within a release group is the same or very similar. Because of this if no artwork can be found for the release that SongKong matched to then SongKong will check releases that are part of the release group and if any artwork found use that instead.


Discogs


Discogs has a similar concept to Release Groups called Masters.  Masters also nominate one release as the Main Release which is often the chronologically earliest. But currently most releases in Dicogs are not linked to Masters so it isn't terribly useful to SongKong at the moment.

Instead we search for simply search for releases with the same artist and release name as our matched release and check the artwork of these releases. At least that is what it was meant do to but it wasn't working, now fixed in SongKong 2.1.1 so the artwork count should continue to rise.

Thursday, 17 July 2014

Featured Artists option now working in SongKong 2.1 release

Last week we released SongKong 2.0 with masses of improvements, unfortunately as is de riguer  we also introduced a few bugs and the new When Tracks contain Featured Artists option didn't actually work.

There are all now fixed in SongKong 2.1 now available from the Download page

I thought it worth revisiting the featured artists option with some examples.

With the default Add all contributing artists to the artist field option enabled all artists credited for that track are added to the artist field and all artists credited to the release as a whole are added to the album artist field. So if the songs were matched to this release then we would have:

Album Artist : Mark Ronson
Album           : Valerie
Track 1 Artist:Mark Ronson feat, Amy Winehouse
Track 1 Title :Valerie

If we used Only use main artist in the artist field and discard other artists option then we would get

Album Artist : Mark Ronson
Album           : Valerie
Track 1 Artist:Mark Ronson
Track 1 Title :Valerie

or if we used Only use main artist in the artist field and add others to the title field then we would get

Album Artist : Mark Ronson
Album           : Valerie
Track 1 Artist:Mark Ronson
Track 1 Title :Valerie (ft. Amy Winehouse)

  
If a song is equally credited to multiple artists then the multiple artists will be added to the artist field whatever option is selected, for example in this release David Bowie and Mick Jagger are equally credited at track and release level  so both will always be added to the artist and album artist fields with their join phrase to give us

Album Artist : David Bowie  & Mick Jagger 
Album           : Dancing in the Street
Track 1 Artist:David Bowie  & Mick Jagger 
Track 1 Title :Dancing in the Street

How do we decide if they are credited equally ?

We look at the join phrase, currently ' & ', ' / ' and ' , ' are treated as equal weighting, in all other cases we consider the first artist to be the main artist. This will probably be expanded for other cases

Friday, 11 July 2014

SongKong 2.0 is here

Self hosted Discogs Server 

Pleased to say that SongKong 2.0 is now available. There are a host of improvements in this release but the  most significant is that Discogs requests are now served by our own server rather than Discogs itself. The great thing about this is we can customize the search to work exactly how we require it for SongKong rather than working within the constraints of the Discogs provided search, this means we can get better search results and dramatically reduce the number of requests required, so you get better matches faster. We can also move some processing out of the SongKong itself on the server simplifying SongKong code development and reducing CPU usage, giving additional speedups. Our Discogs server will be updated monthly from the latest data provided by Discogs.

Over the next month Jaikoz will be updated to use the self hosted Discogs Server as well.

In the next few months we intend to self-host MusicBrainz data as well, and because MusicBrainz is the primary database used by SongKong this will provide additional improvements in speed and accuracy over and above the Discogs improvements.

Genre Grey Lists

Now SongKong comes with a genre list Grey List that allows you to control what genres are used. Because genres are subjective there is no correct genre for a release but grey lists let you configure
how genres should be processed.

When songs are matched to a Discogs release we check the genres provided by Discogs for that release against the genres listed below, if the Discogs release has multiple genres in this list then we use the genre that comes earliest in this list, so the order of the list is important - if you want to keep them you should put more specialist genres such as 'Power pop' before more general categories such as 'Pop'. If no match is found no genres will be added to songs matched to that release. Having found a match SongKong uses that value if that is the only value on the line, but if there is a ';' and then a second value it will use that second value, this is useful for mapping multiple similar genres to a single genre.

Example:Map three genres to one
All three genres are mapped to a more generic genre when such specific genres are not required

                  Black Metal;Metal
                  Goth Metal;Metal
                  Doom Metal;Metal
                
Example:Dealing with spelling variations
Maps Bossa nova to Bossanova, Bossanova is allowed through untouched

                  Bossanova
                  Bossa nova;Bossanova

The default list is a list of all the styles and genres currently in the Discogs database with no additional mapping. But this is just the start, more improvements to come with later releases of SongKong.


New Update from Metadata Option 

Previously SongKong could either rematch all songs or ignore songs already matched but now there is a new option Update Metadata and Filename Only that can be selected from For songs already matched to MusicBrainz on the first tab.

With the default Update Metadata and Filename Only option SongKong will only try to match songs that have not already been matched to MusicBrainz previously, but it will update existing matches with the latest data or make adjustments based on customer preferences. For example if Update Artwork was disabled when originally matched and it is now enabled SongKong will check for artwork without modifying the releases that the songs have already been matched to. Or if you have changed your file rename mask then the new mask will be applied to these already matched songs in additionally to newly matched songs.

If the option is Rematch then SongKong disregards any matching previously done by SongKong or any other MusicBrainz enabled tagger such as Jaikoz and rematches from scratch.

If the option is Ignore then SongKong ignores any songs already matched to MusicBrainz releases and does not process them any further. Note that songs matched to a MusicBrainz recording only or a Discogs release are not ignored.

 

When Tracks contain Featured Artists Option

This new option is available on the Fix Songs Format tab.

Sometimes tracks are credited to multiple artists, and with the default Add all contributing artists to the artist field option set all these artists will be used in the artist field for this song. But sometimes this can make it difficult to organize your songs because songs by the same main artist can be split up by your music player, if the artist worked with a number of contributing artists. To make things simpler we can ignore these additional artists by selecting the Only use main artist in the artist field and discard other artists option

Alternatively if you don't want the featured artists information to be completely lost they can be added to the title field instead with the Only use main artist in the artist field and add others to the title field. Note if a song is equally credited to multiple artists then the multiple artists will be added to the artist field whatever option is selected, the options only have an effect when there is a main artist and featured or guest artists. 

Full details of all changes can be found in here

Thursday, 12 June 2014

MusicBrainz releases new Virtual machines of Search and Database

For faster matching with SongKong and Jaikoz you can run it against a local copy of the MusicBrainz database, these are provided as virtual machines that can be run on most hardware. MusicBrainz have just released a new version of these virtual machine images that contain the latest data and the latest code including the changes to the database design made in May 2014.

I strongly recommend using the VMWare image rather than the VirtualBox image if you want to take advantage of this, additional instructions for SongKong can be found here and for Jaikoz here

Friday, 16 May 2014

Improvements to Match to Recording Only section of the report in SongKong 1.26

SongKong 1.26

Today we release SongKong 1.26 this has a number of refinements to the matching process, testing has shown some very nice improvements to matching accuracy and coverage.

Full details here

Match to Recording Only

 There are also some nice improvements to Match to Recording Only section of the report, and I thought I would use this as an opportunity to explain this section further.

Songs are usually distributed as a release, be it an album, a compilation , an e.p. or a single the songs is part of a larger release. This also applies to digital downloads, although it is easy to purchase tracks they are still distributed as part of a release - even if the release is just a one song digital single.

With SongKong ideally we want to match group of songs to a release, but here are many reason why it might not be possible to do this all of the following problems could prevent a match:
  • The release does not exist in MusicBrainz or Discogs
  • You do not have all the songs of the release and you have Only allow match if all songs in folder match to one album enabled
  • Your songs for that release are distributed over multiple folders and you have  Only allow match if all songs in folder match to one album enabled.
  • The songs metadata is completely incorrect
  • The songs have no metadata and are not known to AcoustId
  • The songs match to multiple recordings by different artists via Acoustid
  • The songs length is incorrect because it has been badly ripped.
If we cannot match the group of songs to a release we can still try to match songs one by one but it much more difficult to be sure of the correct release, especially if the existing track doesnt have any release metadata. So if Only allow match if all songs in folder match to one album or
Only allow match if all songs in folder match to one album are enabled we don't do this.

But even though we cannot identify the album this doesn't prevent SongKong matching the song. SongKong can use fingerprints to match to Acoustid, then use Acoustid to match to a suitable song (or recording in MusicBrainz parlance). When Acoustid matches to multiple recordings we take into account the existing song title (if any). Then we look at how many sources the choices have, Acoustid - Recording pairs that have been matched form multiple sources (i.e users) are more likely to be correct. Finally if we cannot make a safe decision about the name of the song we don't match to the recording. If we do make a match the only fields that are updated are:
  • MusicBrainz Recording Id
  • Song Title
  • Song Artist
and the song is considered unmatched for the purposes of renaming songs so that if some songs in a folder are matched to a recording and some are not they do not get split up.

The Recording Only section of the report shows these matches. Originally SongKong simply listed the songs that were matched per artist in alphabetical order. But this was not very easy to decipher as a SongKong user myself I found I wanted the songs grouped by existing album name, this then helped me pinpoint problem recordings that were not matched often explaining the reason why the group of songs not matched to an album in the first place.

So here it is:


The MusicBrainz Recording shows the song titles that the songs have been matched to, clicking on a title will take you to the MusicBrainz page for that recording.

The Existing Info (Discno, TrackNo, Filename) column shows just that if they exist. Remember Match to Recording Only doesn't add release specific information like Disc No or Track No so these values are only shown if the song already contained them in its metadata. In this screenshot we see that songs did have Track No set but not Disc No set, so only track no and filename is shown.

Songs are grouped by existing release title of it exists, not the folder. So if  two songs from different folders with the same value for artist and release are matched this means they will be listed in the same section. Whereas two songs in the same folder with different values for release would be listed in different sections.

Any songs matched to recording will always have an Artist field because this is updated when matched but they may not have a release field, in this case they are just grouped by the artist name

Both these points can be seen in these screenshot:




Although both songs are in the C:\MusicUnmatched\The Tea Party\Splendor Solis folder they are split into two sections because only one has the release field set as we can see with the help of Jaikoz


Thursday, 15 May 2014

MusicBrainz adds Series support

MusicBrainz have just done their bi-yearly schema update release, although MusicBrainz do releases every two weeks throughout the year they can only make changes that modify the database schema (such as adding new tables) in schema update releases.

Highlight of this release is support for Series as suggested by long time Jaikoz user Elliot Chance http://tickets.musicbrainz.org/browse/MBS-2714. A series can link together releases or release groups such as this Bravo - German Pop Hits compilation

and you can also browse all the Series added so far.


This is interesting for SongKong and Jaikoz, I feel I should be making use of this, but not clear how yet - does anyone have any good ideas ? 

Full release details can be found here ,and there are changes in  the corresponding search done by yours truly.

There should be also new MusicBrainz virtual machine released with the latest database within the next few days.

Wednesday, 7 May 2014

A new Discogs Image Archive

New Discogs Image Archive with SongKong 1.25

SongKong and Jaikoz both use the Cover Art Archive as their primary resource for artwork but a very important secondary resource has always been the cover art provided by Discogs.
 
In March 2014 Discogs changed their terms and conditions so that from now any user of  a third party application could access a maximum of 100 images in a 24 hour period, and was required to authenticate their access using OAuth. The reasoning behind this was to prevent websites hot limiting to Discogs images, I can certainly understand that issue but think that giving 3rd party applications access via an application key would have been a more sensible option. Forcing users to explicitly authorize their access was onerous but I went along with it and released SongKong 1.23 with the required authentication.

It then became apparent the 1000 images limit was also per application. So any application, regardless of how many users it has, can only access 1000 images per day. This made it pointless for each customer to individually authenticate their access so I released SongKong 1.24 and this removed the requirement for customer authentication. But we still had a significant problem - a limitation of 1000 images per users was not too bad, but a limitation over the complete customer base of SongKong made use of Discogs cover art unsustainable. And of course the problems are even worse for Jaikoz with its larger customer base.

The solution was to cache the images provided by Discogs so any image only has to be looked up once from Discogs, then additional customers requesting the same image can use the cached image. Of course this requires the cached images to be available from a central server and I considered setting up my own Discogs Image Archive but this takes some effort and some time to build up the size of the archive. Luckily such a service has just been launched courtesy of the One Music Api, this archive doesn't yet contain all the images provided by Discogs but is growing every day and already provides good coverage. 

Today I release SongKong 1.25 with support for the One Music Api Image Endpoint. Within a week I expect to have a new release of Jaikoz with the same support

Saturday, 26 April 2014

Sharing filename masks between SongKong and Jaikoz

A longtime customer of Jaikoz and SongKong asked on the forums whether you can share filename masks between SongKong and Jaikoz,well yes you can but with a couple of adjustments.

Both applications use Javascript expressions to rename files, although this powerful syntax takes a few minutes to understand, but there are three important differences.

Two masks versus one

In both applications we have the concept of  a base folder, subfolder and filename which is described in detail here. With SongKong there is a single mask to modify the subfolder and filename in one go, in contrast Jaikoz has one mask for modifying the subfolder and one for modifying the filename.

Field names

Fields names for both applications are the same, except Jaikoz uses trackno to represent a trackno and SongKong uses track.


Functions

In Jaikoz Javascript functions needed to be included as part of the rename mask, but in SongKong they can be stored separately and referenced by masks, SongKong also allows rename masks to be named and stored so you can easily switch between different masks.

An Example

SongKong mask

(Note if notempty() function is predefined function)
   ifnotempty(albumartist,'/')
 + ifnotempty(album,' ')
 + (year.length>0  ? '(' + year + ') ' : '')
 +  (mbreleasecountry.length>0  ? '(' + mbreleasecountry + ') ' : '')
 +'/'
 + (disctotal>1 ? discno + '-' : '')
 + track + ' - '
 + title
 
 Jaikoz SubFolder mask
 
 function ifnotempty(value,sep){
     return value.length > 0 ? value + sep : '';
 }

    
 ifnotempty(albumartist,'/')
 + ifnotempty(album,' ')
 + (year.length>0  ? '(' + year + ') ' : '')
 +  (mbreleasecountry.length>0  ? '(' + mbreleasecountry + ') ' : '')
Jaikoz Filename Mask
(disctotal>1 ? discno + '-' : '')
 + trackno + ' - '
 + title

Wednesday, 23 April 2014

SongKong 1.24 appears - Discogs Authorisation disappears

Discogs Authorisation Disappears

This new release of Songkong removes the short lived requirement to create a Discogs account and authorise SongKong to use that account. However, unfortunately Discogs have recently implemented some rather misleading and draconian rules regarding access to their image archive that doesn't allow us to make full use of it - so this release is just an interim step.

But I have been searching for a better solution and think I have found it, this should be ready within the next month and will provide some serious improvements in cover art

Improved Multi-Disc Matching

As SongKong loads folders of songs for matching it looks out for multi-disc releases that have been stored as one folder per disc, it does some further checks and if the folders pass the checks then SongKong attempts to match the multi-folder set as one release and only resorting to checking each folder individually if a match could not be found.

But before this version the subfolders had to have a particular naming convention, the subfolders either had to start with the word Disc or just be a number such as Disc 01 , disc 2 or 03. Now with SongKong 1.24 other naming conventions such as CD01, Vol 1 or Volume 3 are supported, but this  is still English centric so let me know if you use another naming convention that needs adding.

Its worth noting that if you just Only allow match if all songs in folder were matched enabled then there is still a good chance that a multi disc release is properly matched even if the release was not recognised as a multi-disc release at the matching stage. Each folder can get correctly matched to a disc of the release.

However if you have Only allow match if all songs in album were matched then matching at the subfolder stage only would not work because each subfolder only matches one disc of the release rather than the whole release.

Error Reporting

If SongKong is configured to update iTunes it will now complain and halt processing if it is unable to create a model of the iTunes library. It will also halt processing if it hits memory limits, although in normal circumstances this should never happen. Previously these errors were not correctly reported.

General Matching

A number of improvements have been made to improve the accuracy of release and recording only matches


Full change log is available here

Thursday, 17 April 2014

My first Sonos system

Last week I purchased a Sonos Connect to connect Sonos to my separates system and to find out what Sonos requires for the perfect metadata experience for users.

Here are some details about the installation experience and my first (very initial) impressions. Everything about the packaging and product itself is so Apple like I wonder if a former Apple designer designed it for them, but whoever did the design they did a good job.

Now my Hi-Fi is not in the same room as my router and I know at least one Sonos component should be connected directly to your router, but I have used Solwise home plugs in the past to spread my network and I couldn't see how Sonos could differentiate between a direct ethernet connection and an ethernet connection via a Solwise plug. I have router in one room with ethernet connection from router to Solwise Homeplug Av500. Then I have my hifi in next door room with sonos connect connected by ethernet cable to another solwise plug. Both plus are on the same electrical circuit.

I download sonos controller for my PC and the software tells me to hold down the two buttons and release, as soon as I do this the PC software goes to the next stage but after a while it tells me it could not find any Sonos devices connected.

If I repeat the process but turn of the Solwise plug then pressing the two buttons has no effect. So this told me that Sonos software is detecting that I've clicked on the Sonos Connect via my Solwise home connection yet it still isn't happy about something. My first thought was that I needed the bridge so I disconnected the Connect from my hi-fi and connected it directly to the router and it still doesn't work.

I then tried downloading the Sonos Controller for my Mac and this worked, reconnected the connect to hifi and solwise and it still worked, so the problem was actually the PC (and I havent resolved this issue yet)

I tried playing Internet radio through Sonos and it worked perfectly time.
I then tried connecting to my music library on my NAS and it took a while, but once completed that also worked perfectly. When I view my music on my Mac or Phone controller not seeing any issues with metadata so far, but I noticed I have no artist images - something that I will investigate for Songkong and Jaikoz.

As yet I have no have no connection issues at all and have ordered two Sonos Play 1s to test out the Sonos network over a larger area,  the Sonos network is a Mesh network, every single Sonos component acts like a mini router allowing it to send  a signal to any other Sonos component, so fingers crossed that this will work as expected.

My only disappointment so far is that Sonos supports Spotify Premium but not the free Spotify account I have had since the early days of Spotify.

Wednesday, 16 April 2014

Getting Discogs Cover Art with SongKong

Discogs Image Authorization


SongKong uses various sources for finding cover art. Its primary source is the cover art provided by MusicBrainz via the Cover Art Archive, but the second most important source is the artwork provided by Discogs. However unfortunately recently Discogs changed the conditions of their API so that it no longer allows access to these images unless you have a Discogs account and authorise SongKong to use that account.

The good news is that Discogs accounts are completely free and straight-forward with no requirement to enter bank card details or sign up for any service so creating a Discogs account if you don't already have one is not such a hardship.The bad news is that Discogs is currently getting overloaded regularly and when this happens access to the API is curtailed, this includes the one-off image authorisation detailed below. So if possible don't try at internet peak times (evening time US timezone) , if it does fail at the first stage just try again.

With SongKong 1.23 released today it is recommended that you create a Discogs account if you do not have one already and then authorise SongKong for the best SongKong results as follows

1.Open your webbrowser and go to discogs.com

2. Login to Discogs or signup for an account if you do not already have one

3. Select File:Discogs Image Authorization within SongKong, and if you are logged into your Discogs account your webrowser  should open a page similar to:

If instead SongKong complains that Image Authorization failed , please try again at a quieter time.

4. Select the Authorise button and it should take you to a page like


5. Go back to SongKong, there should be a user dialog open, enter the code into it as follows:


6. Select OK and the following window should display


7. And that's it, now if SongKong is unable to get cover art from a MusicBrainz release it can probably get one from a linked Discogs release.

Jaikoz customers, the same Discogs image authorization will be added to Jaikoz within two weeks.

SongKong 1.23

In this new release there also many  improvements to matching and to the generated reports, I will explain these in more details in another post but for now all the fixes are listed at

http://jthink.net/songkong/news_build1030.jsp

Saturday, 5 April 2014

SongKong 1.22 with new matching improvements

Today we release a new version of SongKong as well as a number of bug fixes it includes some important improvements.

Match song to recording only

In previous versions of SongKong we try to matching groupings (usually folders) of songs to a MusicBrainz release (usually an album) and optionally a Discogs release. But if we are unable to match all songs in the grouping to a release then as a customer you only have the option of not matching the songs at all or matching song by song and possibly matching to the incorrect release.

But in MusicBrainz songs are known as recordings and the same recording can be found on multiple releases whereby each release/recording combination is known as a track. If a songs Acoustid matches to just one MusicBrainz recording then we have can have almost absolute certainty that we have matched the correct song.

So in this new release if the match grouping to folder stages fails to match but we have acoustids for the songs that can be matched to individual MusicBrainz recordings then we can update the song artist and title without making only any assumptions about the release they belong to. This matching occurs regardless of any other options enabled or disabled.

This is incredibly useful for songs that have no metadata at all, or songs with incorrect titles, even though the albums are not known the songs are now correctly identified. Because the matching is done at the match to MusicBrainz stage the new information can be used to help match the songs to a Discogs release instead, so we are now making uses of Acoustids with Discogs even though Discogs doesn't  directly support Acoustid !

These matches have their own section in the Fix Songs report. Because the matches are only partial they are included in the MusicBrainz match count but the songs are not moved to the matched folder if a Matched folder is enabled, and are not renamed if Rename filename from Metadata is enabled.


Only allow match if all songs in album were matched


If the Only allow match if all songs in one folder match to one album is enabled then all songs in the grouping have to be matched to one folder. But to account for you having incomplete albums the album they are matched to can contain more songs than are matched.

But if you have complete albums you can get more accurate matching by enabling the new  Only allow match if all songs in album were matched option as well then all the songs in the folder must match to same album and all songs on the album must be matched, so if there are 10 songs in folder it can only match a 10 song album

If Only allow match if all songs in one folder match to one album is enabled and Only allow match if all songs in album were matched is not enabled then any album matched must be completely matched but this doesn't have to be on a folder by folder basis, so for example if you have a folder containing 10 songs that failed to match any album but metadata in the allowed grouping of the songs into two groupings of 5 each, and one of those grouping could be matched to a 5 track release that would be okay.

Undo Changes can now select the original location of files to revert

By default Undo Changes work on the current location of files and folders that you want to revert the changes for, but now you can specify SongKong looks for songs that were originally in a location that they have since been moved from.  This can be very useful if you are looking to revert changes to files that were originally in one folder but have now been moved to multiple folders.

Other fixes and Improvements

The full list can of changes can be found at here

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