1

Is the set of mood labels provided by gracenote finite? How can we access the full list of all those potential labels?

Thank you

slegroux
  • 610
  • 5
  • 11

5 Answers5

4

Finally, I found the complete list from one of the Gracenote's App.

Level 1 moodId and moodData:

<string name="id65322">Peaceful</string>
<string name="id65323">Romantic</string>
<string name="id65324">Sentimental</string>
<string name="id42942">Tender</string>
<string name="id42946">Easygoing</string>
<string name="id65325">Yearning</string>
<string name="id42954">Sophisticated</string>
<string name="id42947">Sensual</string>
<string name="id65326">Cool</string>
<string name="id65327">Gritty</string>
<string name="id42948">Somber</string>
<string name="id42949">Melancholy</string>
<string name="id65328">Serious</string>
<string name="id65329">Brooding</string>
<string name="id42953">Fiery</string>
<string name="id42955">Urgent</string>
<string name="id42951">Defiant</string>
<string name="id42958">Aggressive</string>
<string name="id65330">Rowdy</string>
<string name="id42960">Excited</string>
<string name="id42961">Energizing</string>
<string name="id42945">Empowering</string>
<string name="id65331">Stirring</string>
<string name="id65332">Lively</string>
<string name="id65333">Upbeat</string>
<string name="id42966">Other</string>

Level 2 moodId and moodData

<string name="id42967">Reverent / Healing</string>
    <string name="id42969">Quiet / Introspective</string>
    <string name="id65334">Delicate / Tranquil</string>
    <string name="id42972">Pastoral / Serene</string>
    <string name="id42975">Lush / Romantic</string>
    <string name="id42982">Sweet / Sincere</string>
    <string name="id65335">Heartfelt Passion</string>
    <string name="id42986">Dramatic / Romantic</string>
    <string name="id42977">Lyrical Sentimental</string>
    <string name="id42978">Gentle Bittersweet</string>
    <string name="id42979">Tender / Sincere</string>
    <string name="id43009">Cool Melancholy</string>
    <string name="id65336">Romantic / Lyrical</string>
    <string name="id42974">Refined / Mannered</string>
    <string name="id43063">Awakening / Stately</string>
    <string name="id65337">Light Groovy</string>
    <string name="id42987">Friendly</string>
    <string name="id65338">Hopeful / Breezy</string>
    <string name="id43073">Cheerful / Playful</string>
    <string name="id65339">Charming / Easygoing</string>
    <string name="id43060">Sensitive / Exploring</string>
    <string name="id65340">Energetic Yearning</string>
    <string name="id65341">Energetic Dreamy</string>
    <string name="id43046">Bittersweet Pop</string>
    <string name="id42985">Smoky / Romantic</string>
    <string name="id43015">Intimate Bittersweet</string>
    <string name="id43017">Suave / Sultry</string>
    <string name="id43018">Dark Playful</string>
    <string name="id65342">Soft Soulful</string>
    <string name="id42990">Sensual Groove</string>
    <string name="id42992">Intimate</string>
    <string name="id42993">Dreamy Pulse</string>
    <string name="id43008">Cool Confidence</string>
    <string name="id42988">Casual Groove</string>
    <string name="id43010">Dark Groovy</string>
    <string name="id43006">Wary / Defiant</string>
    <string name="id43003">Depressed / Lonely</string>
    <string name="id43004">Sober / Determined</string>
    <string name="id43005">Gritty / Soulful</string>
    <string name="id43011">Strumming Yearning</string>
    <string name="id42994">Dark Cosmic</string>
    <string name="id42995">Enigmatic / Mysterious</string>
    <string name="id42996">Creepy / Ominous</string>
    <string name="id42997">Solemn / Spiritual</string>
    <string name="id42971">Mysterious / Dreamy</string>
    <string name="id42999">Wistful / Forlorn</string>
    <string name="id65343">Light Melancholy</string>
    <string name="id43001">Sad / Soulful</string>
    <string name="id43022">Thrilling</string>
    <string name="id65344">Melodramatic</string>
    <string name="id43023">Serious / Cerebral</string>
    <string name="id43012">Hypnotic Rhythm</string>
    <string name="id65345">Energetic Melancholy</string>
    <string name="id43028">Alienated / Brooding</string>
    <string name="id65346">Evocative / Intriguing</string>
    <string name="id43025">Dreamy Brooding</string>
    <string name="id65347">Dark Sparkling Lyrical</string>
    <string name="id43013">Fiery Groove</string>
    <string name="id43016">Passionate Rhythm</string>
    <string name="id65348">Energetic Abstract Groove</string>
    <string name="id43019">Dark Urgent</string>
    <string name="id65349">Dark Pop</string>
    <string name="id65350">Dark Pop Intensity</string>
    <string name="id65351">Energetic Anxious</string>
    <string name="id43030">Heavy Brooding</string>
    <string name="id43036">Hard Dark Excitement</string>
    <string name="id43037">Hard Positive Excitement</string>
    <string name="id43007">Attitude / Defiant</string>
    <string name="id65352">Dark Hard Beat</string>
    <string name="id43032">Heavy Triumphant</string>
    <string name="id43033">Chaotic / Intense</string>
    <string name="id43034">Aggressive Power</string>
    <string name="id43035">Driving Dark Groove</string>
    <string name="id65353">Wild / Rowdy</string>
    <string name="id43039">Ramshackle / Rollicking</string>
    <string name="id43040">Confident / Tough</string>
    <string name="id65354">Loud Celebratory</string>
    <string name="id43042">Happy Excitement</string>
    <string name="id65355">Upbeat Pop Groove</string>
    <string name="id43053">Euphoric Energy</string>
    <string name="id43050">Arousing Groove</string>
    <string name="id43051">Heavy Beat</string>
    <string name="id65356">Abstract Beat</string>
    <string name="id43056">Edgy / Sexy</string>
    <string name="id42983">Dramatic Emotion</string>
    <string name="id43057">Powerful / Heroic</string>
    <string name="id43058">Idealistic / Stirring</string>
    <string name="id43059">Strong / Stable</string>
    <string name="id43061">Jubilant / Soulful</string>
    <string name="id43062">Triumphant / Rousing</string>
    <string name="id43064">Focused Sparkling</string>
    <string name="id43065">Invigorating / Joyous</string>
    <string name="id43067">Showy / Rousing</string>
    <string name="id43068">"Playful / Swingin'"</string>
    <string name="id43070">Exuberant / Festive</string>
    <string name="id43071">Lusty / Jaunty</string>
    <string name="id65357">Happy / Soulful</string>
    <string name="id43048">Carefree Pop</string>
    <string name="id43072">Party / Fun</string>
    <string name="id43076">Soulful / Easygoing</string>

I hope, it will help someone!

Prankul Garg
  • 3,416
  • 1
  • 17
  • 11
2

It is finite. There are 25 Level One moods and 100 Level Two moods. One can think that there are four level two more descriptive moods for every Level One mood.

Sorry I don't know the the full list, but you can get a String of the mood description this way:

GNDescriptor[] trackLevelMoods = bestResponse.getMood();
for(GNDescriptor trackMood: trackLevelMoods){
   String moodDescriptor = trackMood.getData();
   String moodId = trackMood.getId();
}
multidynamic
  • 804
  • 8
  • 8
  • 1
    Is there a way to do that using pygn in python? – slegroux Dec 04 '13 at 21:33
  • @slegroux the gnmetadata dict returned from pygn.search has a "mood" field with the level 1 and 2 mood ID and TEXT. – multidynamic Dec 05 '13 at 21:35
  • OK, yes I knew I could get a mood label for a specific track using pygn.search. I was more looking for a way to get the full list of all possible mood labels. I guess I'll have to ask gracenote people directly. Thanks anyways. – slegroux Dec 06 '13 at 00:26
  • the mood hierarchy is subject to change, so getting it programmatically is the safest way to ensure you have the current list. i.e. it is finite, but not fixed. – jmctodo Dec 04 '14 at 18:16
1

For the record here is how to access the 2 mood levels for a specific track using pygn:

    import pygn
    clientID = 'yourid#'
    userID = pygn.register(clientID)
    pygn.searchTrack(clientID, userID, 'James Blake', 'overgrown', 'overgrown')['mood']

Still won't give me the list of all possible moods though...

slegroux
  • 610
  • 5
  • 11
1

I'm afraid pygn does not support iterating moods (or other 'list based' data like genres).

However, this functionality is present in the GNSDK. There are plans to release an updated version of this SDK with a python wrapper early next year.

jmctodo
  • 186
  • 4
0

if you still want to retrieve all GraceNote moods I found a way with GNSDK, using the following code:

//listElements(1) will return the values from GNDataLevel1
//listElements(2) will return the values from GNDataLevel2
new GnList(GnListType.kListTypeMoods, locale, user).listElements(1);