acousticbrainz-client-0.1.0.0: src/AcousticBrainz/HighLevel/MirexMood.hs
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE OverloadedStrings #-}
-- | K-Pop mood classification: https://www.music-ir.org/mirex/wiki/2019:Audio_K-POP_Mood_Classification .
module AcousticBrainz.HighLevel.MirexMood where
import AcousticBrainz.FiniteDistribution
import Data.Aeson
import Data.Aeson.Types
data Mood = Cluster1 | Cluster2 | Cluster3 | Cluster4 | Cluster5
deriving(Eq, Ord, Read, Show)
instance FromJSON (FiniteDistribution Mood) where
parseJSON = parseFiniteDistribution
[ (Cluster1, "Cluster1")
, (Cluster2, "Cluster2")
, (Cluster3, "Cluster3")
, (Cluster4, "Cluster4")
, (Cluster5, "Cluster5")
]