[Logo] Jaikoz and SongKong Forums
  [Search] Search   [Recent Topics] Recent Topics   [Members]  Member Listing   [Groups] Back to home page 
[Register] Register / 
[Login] Login 
Questions about Mood  XML
Forum Index -> SongKong Questions
Author Message
snowseals

Pro
[Avatar]

Joined: 13/12/2016 05:58:38
Messages: 24
Offline

I'm about to buy SongKong Pro, since I really like the idea of the Mood determination.
I havent found another program that determines the mood on itself.
I mean, I do have BeaTunes, but that software grabs the last.fm tags, input by users (which is lean).

So my questions are:
1) How does SongKong Pro determine the mood of a song? Could you be more specific what is it doing in the background?

2) On which theory-model are the tags based? Thayer, Hevner or made-up yourself?
(Delighted, Excited, Astonished, Aroused, Tense, Alarmed, Angry, Afraid, Annoyed, Distressed, Frustrated, Miserable, Sad, Gloomy,
Depressed, Bored, Droopy, Tired, Sleepy, Calm, Relaxed, Serene, Glad, Pleased)

3) Where are those mood tags written to? ID3 tag or SongKong's database?

4) Could I buy the SongKongPro license and test it out for a couple of days, to see how the Mood-option is working out for me, and if i'm not happy, I can get my money back?

Kind regards,
snowseals
paultaylor

Pro
[Avatar]

Joined: 21/08/2006 09:21:27
Messages: 7107
Offline

Hi, SongKong primary database for song matching is MusicBrainz, and MusicBrainz has a sister project https://acousticbrainz.org that does mood analysis. So rather than do mood analysis itself once SongKong has matched to a MusicBrainz song we lookup that song in AcousticBrainz to get all the mood data, plus bpm and key. Because we don't have to actually do the analysis ourselves just look it up it takes virtually no additional time then the matching. More details about the algorithms can be found on the acousticbrainz site

All the data is written to metadata fields inside the file itself, so is all accessible outside of SongKong, we write not only MOOD, BPM and KEY but also some other metrics such as how likley is it to be instrumental, or acoustic

The free trial lets you see exactly what would be added to your files including MOOD data, so you can check it all out before you buy.

thanks Paul (Administrator)
snowseals

Pro
[Avatar]

Joined: 13/12/2016 05:58:38
Messages: 24
Offline

Awesome!

I was reading this thesis http://www.tdx.cat/bitstream/handle/10803/51582/tcfl.pdf?sequence=1 which looks like in-depth source material, until I found out by your answer, this is the source/method where/how AcousticBrainz gets its data

I also found out beaTunes has a plugin, so it can use the database of AcousticBrainz aswell (next to last.fm's db) to search for Mood-tags, but I want to compare SongKong against the results of beaTunes.

In beaTunes, I have a clear list of which songs actually got tagged mood-wise.
How can I view how many songs are tagged mood-wise via SongKong?
Is it somewhere in the Summary HTML report or...?

NOTE:
I made sure I disabled some features in SongKong, so it starts fresh and re-scans, re-fingerprints, removed Mood from the ''If already excists, don't override the following tags'' where BPM/MOOD/KEY are put to default, etc. to make it a fair comparishment.
paultaylor

Pro
[Avatar]

Joined: 21/08/2006 09:21:27
Messages: 7107
Offline

Hi, its not summarised in the summary report actually, but that is a good idea, I will add that in a future release. In the SongChanges part of the report you can see the changes for any particular song but SongKong doesnt currently have a way to see all the changes in a table or spreadsheet view (we already have a feature request for this).

What may be easier for this purpose is to try Jaikoz (they both use the same acousticbrainz code) and then you can see all the changes made by simply enabling the Mood based columns.

thanks Paul (Administrator)
snowseals

Pro
[Avatar]

Joined: 13/12/2016 05:58:38
Messages: 24
Offline

Thank you.

Tried out Jaikoz (for this purpose) today.
I've used the 'Retrieve Acoustic ID' button on top, enabled the Mood-column aswell, but so far no Moods showing up.
Well, highly 50 songs which were tagged, before using this function.

I'm now running the 'AutoCorrector' since a few hours...
Is that the way to get those Moods to show?

Or how should I proceed next time?
snowseals

Pro
[Avatar]

Joined: 13/12/2016 05:58:38
Messages: 24
Offline

Well, AutoCorrect Songs is done by now, but still no Moods showing, see screenshot:



I'm a lil' wary by now, if this function is enabled in Jaikoz trial-version, since Moods still not showing and the download-page says the following about limitations with the free trial-license:
By default Jaikoz comes with a free trial license which is valid for 30 days. The free version is disabled in the following ways
You can test out all the functions on as many files as you wish (except for Pro only features) but changes can only be saved to 20 files during one use of Jaikoz 


Update:
I just did a 'Retrieve Acoustic ID' again, and after, 'Submit MusicBrainz/AcousticID Pair to the Server' but still no Moods...
paultaylor

Pro
[Avatar]

Joined: 21/08/2006 09:21:27
Messages: 7107
Offline

Oh sorry you are quite right, on Jaikoz (but not SongKong) the trial does not give you the Pro features so you cant test Mood on Jaikoz. Im not quite sure why I did it this way, okay if you would like to buy SongKongPro Ill let you get a refund if it doesnt work for you. You will be able to use the Jaikoz trial the view the moods added by SongKong

thanks Paul (Administrator)
snowseals

Pro
[Avatar]

Joined: 13/12/2016 05:58:38
Messages: 24
Offline

I just bought SongKong Pro.
Thanks for giving me the heads up, I'll let you know how it works out.

Kind regards,
Snowseals
paultaylor

Pro
[Avatar]

Joined: 21/08/2006 09:21:27
Messages: 7107
Offline

Great, we have just released SongKong 4.3 so make sure you have the latest version

thanks Paul (Administrator)
snowseals

Pro
[Avatar]

Joined: 13/12/2016 05:58:38
Messages: 24
Offline

So I decided to compare results: SongKong 4.4 (Pro) vs. beaTunes 4.6.10.

I picked 10 tracks from 10 different genres.
The results are interesting.

See picture:


Why is there so much difference between the moods, when comparing the outcome of both programs on the same song?

I even dare to say, there are contradictions.
Like for ex. track 5, 'Extremely Calm' vs. 'Very Excited';
And what about track 10, 'Very glad' vs. 'Very aroused, angry'.

Even the values of Happy/Happiness and Arousal are different.
I thought SongKong was just reading out the data in the database of AcousticBrainz (and beaTunes aswell using its plugin)?

Does SongKong keeps reason with all of the values, like Mood Happy, Arousal, Valence, Agressive, Dance, Party, Relaxed, Sad and divides them to create a distinguished textual tag, like 'Very glad' ?
Or is there just a a tag in the AcousticBrainz db written, called for ex. 'Very glad'?

How does it work?

N.B.: I noticed the picture shows a little vague due tinypic's compression, so I uploaded the pic, you can download it in higher quality here: http://www68.zippyshare.com/v/aOY5uef5/file.html
paultaylor

Pro
[Avatar]

Joined: 21/08/2006 09:21:27
Messages: 7107
Offline

Hi, looks like there is a problem there. AcousticBrainz doesnt actually store 'Very glad' what we do to work out is use the values that AcousticBrainz does provide to calculate a measure of Arousal and Valence. Arousal and Valence from the two axes of a graph, and when we plot the value that gives us a segment which then maps to the textual values of 'Glad', and a vector distance to give us the 'Very'

The first thing to note is Beatunes Happiness field maps to the Mood Valence value not the Mood Happy value, but there is still a clear disparity between these values as well as the final Mood value.

The problem could be in where they are taking the data or how they are dong the calculation, some songs have more than one set of figures from different user submissions and we may be using a different figure, the fault could lie on my side or with Beatunes.

But what I need from you for these songs is the value of the MB Recording Id column so I can look up the data in AcousticBrainz.



thanks Paul (Administrator)
snowseals

Pro
[Avatar]

Joined: 13/12/2016 05:58:38
Messages: 24
Offline

Hereby the MB Recording IDs pulled from Jaikoz: http://www94.zippyshare.com/v/0hvkpEXE/file.html

Track 1: 6941913b-f2c0-4638-a144-a19715df3517
Track 2: cb63543e-c6c9-4233-a3e9-b220101b1699
Track 3: 0519a10c-ad05-40d2-9928-2114472e5d60
Track 4: 0acc282b-c4db-44b2-a6ae-3c037fa3255a
Track 5: 7a6094ca-50e5-4973-bfb0-2c114d574577
Track 6: 5daaf5cf-5a75-43ee-92a2-ee72c6a40a1d
Track 7: 28651acc-1f13-4431-b2de-d93a33a50084
Track 8: 50c1d6f1-f2b2-4925-94c4-f4eacd4bd6f7
Track 9: 5124f0c4-c3eb-49cd-a312-3a4ff43b542b
Track 10: e3ed55e1-fa10-4b30-9cd0-798aef858da6
paultaylor

Pro
[Avatar]

Joined: 21/08/2006 09:21:27
Messages: 7107
Offline

Thanks Ive checked my figures against some of these songs and they appear to be correct. Im now speaking to Hendrik at Beatunes who is a nice fellow to see if we can work out where the discrepancy between our figures lie, will get back to you as soon as we have an answer.

thanks Paul (Administrator)
paultaylor

Pro
[Avatar]

Joined: 21/08/2006 09:21:27
Messages: 7107
Offline

Spoke to Hendrik and those values are from his last.fm plugin. If you rerun Beatunes using only AcousticBrainz plugin you should get matching results.

thanks Paul (Administrator)
snowseals

Pro
[Avatar]

Joined: 13/12/2016 05:58:38
Messages: 24
Offline

Thanks again!

I'll do some testing asap.

I noticed AcousticBrainz is depending on user input.
I also noticed this blog http://blog.jthink.net/2014/11/how-to-easily-calculate-beats-per.html , where it says:


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.
 


Is that already the case?

I mean, I do see Create Acoustic fingerprint under Fix Songs -> Match.
But does that mean, I'm contributing to AcousticBrainz aswell?
paultaylor

Pro
[Avatar]

Joined: 21/08/2006 09:21:27
Messages: 7107
Offline

No it isn't yet done, it was intended to do it this year but I ended up spending alot more time then anticipated on the Classical music support. But there is a standalone tool available form acousticbrainz.org that you can use to submit data from your own files, then SongKong would be able to make use of that data.

Although similarly named Acoustid and AcousticBrainz are completely different projects, their only connection being they are both MusicBrainz aware.

thanks Paul (Administrator)
snowseals

Pro
[Avatar]

Joined: 13/12/2016 05:58:38
Messages: 24
Offline

Thanks, I just installed that AcousticBrainz Extractor and submitted 133 tracks. It skipped 53 songs due lack of info on MusicBrainz-end.

So this means, it found half of them and now the info about Mood is available for the other half of the songs when using SongKong?

paultaylor

Pro
[Avatar]

Joined: 21/08/2006 09:21:27
Messages: 7107
Offline

It wont happen immediatley because acousticbrainz data is downloaded from acousticbrainz into albunack which is used by SongKong and allows much faster access then if download directly from acousticbrainz

thanks Paul (Administrator)
snowseals

Pro
[Avatar]

Joined: 13/12/2016 05:58:38
Messages: 24
Offline

Ah, ok thanks.
Any Estimated Time of Arrival available?
paultaylor

Pro
[Avatar]

Joined: 21/08/2006 09:21:27
Messages: 7107
Offline

It might be a bit a bit longer than normal what with Xmas and all that, we also plan to have songkong looking up directly form acousticbrainz when no record found on albunack, and that might be in next release.

thanks Paul (Administrator)
snowseals

Pro
[Avatar]

Joined: 13/12/2016 05:58:38
Messages: 24
Offline

paultaylor wrote:
Spoke to Hendrik and those values are from his last.fm plugin. If you rerun Beatunes using only AcousticBrainz plugin you should get matching results. 


Testing, attempt 2:
This time using SongKong 4.4 (Pro) vs. AcousticBrainz mood-plugin 0.9.2 from beaTunes with the same songs.



And the winner is...
Amount of songs found and labeled with a mood-description: SongKong
*beaTunes misses 3 out of 10. I tried several different settings, but it wont show any mood for those 3.
I should do such test with my whole collection (read 10k+) to see if there's indeed a big difference mood-tagged/or not-wise.

The mood-descriptions resemble quite the same this time...
What I do find odd is looking at the result of track #6; Extremely calm vs. Excited, astonished.
Can I look such a song up myself to inspect their values in the AcousticBrainz db mood-wise?
paultaylor

Pro
[Avatar]

Joined: 21/08/2006 09:21:27
Messages: 7107
Offline

You can look up the numeric values using

http://acousticbrainz.org/mbrecordingid

but it wont show the textual value since this is derived from the numeric values.

Track 6 can be looked up here

http://acousticbrainz.org/50c1d6f1-f2b2-4925-94c4-f4eacd4bd6f7, there are five different submissions with different data so I guess Beatunes is using a different submission.

It may make sense when there are multiple submissions to take the 'average', but SongKong doesn't do this and I don't think Beatunes does either currently.

thanks Paul (Administrator)
snowseals

Pro
[Avatar]

Joined: 13/12/2016 05:58:38
Messages: 24
Offline

Thank you!

paultaylor wrote:
You can look up the numeric values using
http://acousticbrainz.org/mbrecordingid 

This url doesnt excist though.

I've let SongKong run last nite; 10957 songs in total / 1981 tagged with a mood.
I've deleted the mood-tags and let beaTunes run today; 7257(!) tagged with a mood.

During xmas, my computer was uploading/extracting my collection with the AcousticBrainz Extractor. It took approx. 35 hours to complete;
10824 in total / 7612 feature files submitted / 3211 files had no MBID and were skipped.

Am I right to say, this is where the difference in amount of mood-tags come from? Whereas beaTunes directly tries to lookup the track in the MusicBrainz and AcousticBrainz database, and SongKong using the indirect approach using Albunack, which isnt updated yet?
paultaylor

Pro
[Avatar]

Joined: 21/08/2006 09:21:27
Messages: 7107
Offline

snowseals wrote:
Thank you!

paultaylor wrote:
You can look up the numeric values using
http://acousticbrainz.org/mbrecordingid 

This url doesnt excist though.
 

Its in italics to signify that you replace mbrecordingid with the actual id as I do below.


Am I right to say, this is where the difference in amount of mood-tags come from? Whereas beaTunes directly tries to lookup the track in the MusicBrainz and AcousticBrainz database, and SongKong using the indirect approach using Albunack, which isnt updated yet? 

Yes, the problem is that MusicBrainz used to provide datadumps on a monthly basis for the new acousticbrainz data. But they have stopped doing that so now I need albunack to trawl for new acousticbrainz data or lookup acousticbrainz directly from SongKong. I'll probably end up doing both, and it is a top priority.

I think its worth noting that Beatunes would not have found so many moods unless you hadn't ran FixSongs on SongKong first since that meant SongKong added the mbrecordings ids to the songs making it easy for Beatunes to just lookup the mood using the mbrecordingId rather than having to find a match in the first place.

thanks Paul (Administrator)
snowseals

Pro
[Avatar]

Joined: 13/12/2016 05:58:38
Messages: 24
Offline


Its in italics to signify that you replace mbrecordingid with the actual id as I do below.
 

Noted


Yes, the problem is that MusicBrainz used to provide datadumps on a monthly basis for the new acousticbrainz data. But they have stopped doing that so now I need albunack to trawl for new acousticbrainz data or lookup acousticbrainz directly from SongKong. I'll probably end up doing both, and it is a top priority.
 

Good stuff


I think its worth noting that Beatunes would not have found so many moods unless you hadn't ran FixSongs on SongKong first since that meant SongKong added the mbrecordings ids to the songs making it easy for Beatunes to just lookup the mood using the mbrecordingId rather than having to find a match in the first place.
 

Correct.
I let beaTunes run over a backup of my collection (11053 songs) - which never been fixed by SongKong - and mood-tagged 4465 songs
So SongKong definitely helps
paultaylor

Pro
[Avatar]

Joined: 21/08/2006 09:21:27
Messages: 7107
Offline

SongKong 4.6 can now lookup from acousticbrainz.org directly when no acoustic metadata in the Albunack database. This should give much better percentage but note you still need a match to MusicBrainz, and only some MusicBrainz recordings have so far been analysed for acoustic metdata.

thanks Paul (Administrator)
snowseals

Pro
[Avatar]

Joined: 13/12/2016 05:58:38
Messages: 24
Offline

Cool!!!

For the record:
1) If music doesnt excist in MusicBrainz collection, How do I get my music-collection into MusicBrainz?
Do I need to manually create an ID like shown here: https://musicbrainz.org/doc/How_to_Add_a_Release ?


2) If excists in MusicBrainz collection, then they also need Acoustic-fingerprint to match with AcousticBrainz.
If excists, all good, your program will end-up with mood.

If it doesnt, I upload my collection with https://acousticbrainz.org/download client-software right?

paultaylor

Pro
[Avatar]

Joined: 21/08/2006 09:21:27
Messages: 7107
Offline

snowseals wrote:
Cool!!!

For the record:
1) If music doesnt excist in MusicBrainz collection, How do I get my music-collection into MusicBrainz?
Do I need to manually create an ID like shown here: https://musicbrainz.org/doc/How_to_Add_a_Release ?
 

Yes, if the release already exists in Discogs you can add it more easily using http://www.albunack.net

snowseals wrote:

2) If excists in MusicBrainz collection, then they also need Acoustic-fingerprint to match with AcousticBrainz.
If excists, all good, your program will end-up with mood.

If it doesnt, I upload my collection with https://acousticbrainz.org/download client-software right?

 

Correct, I would like to add similar functionaility for submitting data from within SongKong itself but not yet done. Note you should run the acousticbrainz client after matching from SongKong so that the files metadata have MusicBrainz Ids so that the link is created between MusicBrainz/AcousticBrainz. Then run Fix Songs again to update your songs with the acoustic metadata from AcousticBrainz.

thanks Paul (Administrator)
 
Forum Index -> SongKong Questions
Go to:   
Powered by JForum 2.1.6 © JForum Team