MusicDBTags
This class handles the different tags for songs and albums.
Details about the concept of tags can be found here in the musicdb.lib.db.musicdb documentation.
Example
database = MusicDatabase("./music.db")
config = MusicDBConfig("./musicdb.ini")
tags = MusicDBTags(config, database)
tags.CreateGenre("Metal") # Create a genre "Metal"
tags.CreateSubgenre("Dark Metal", "Metal") # Create a subgenre of "Metal" and name it "Dark Metal"
MusicDBTags Class
- class musicdb.mdbapi.tags.MusicDBTags(config, database)[source]
- Parameters:
config – MusicDB configuration object
database – MusicDB database
- Raises:
TypeError – when config or database not of type
MusicDBConfigorMusicDatabase
- CreateSubgenre(name, parentname)[source]
The parent name gets translated to its genre id. As mentioned in the tag concept (see
musicdb), only subgenre can have parents. And those parents must be of class genre.For further details see
musicdb.lib.db.musicdb.MusicDatabase.CreateTag()
- DeriveAlbumTags(albumid)[source]
This method derives album tags from its song tags. It looks for all songs of the album and their specific genre and sub genre tags. Tags with a confidence level greater or equal to 1.0 will be collected and set as genres for the album. The set genres have a confidence of the average appearance of the tag over all the album’s songs.
- Parameters:
albumid (int) – ID of the album that tags shall be updated
- Returns:
Nothing
- ModifyGenre(tagname, newname=None, newicon=None, newcolor=None, newposx=None, newposy=None)[source]
See
ModifyTag().All arguments can also be
None- Parameters:
tagname (str) – Name of the tag that shall be modified
newname (str) – New name of the tag
newicon (str) – New icon for the tag - the icon-type gets detected automatically
newcolor (str) – New color for the tag
newposx (int) – New position
newposy (int) – New position
- ModifyMood(tagname, newname=None, newicon=None, newcolor=None, newposx=None, newposy=None)[source]
See
ModifyTag().All arguments can also be
None- Parameters:
tagname (str) – Name of the tag that shall be modified
newname (str) – New name of the tag
newicon (str) – New icon for the tag - the icon-type gets detected automatically
newcolor (str) – New color for the tag
newposx (int) – New position
newposy (int) – New position
- ModifySubgenre(tagname, newname=None, newparent=None, newicon=None, newcolor=None, newposx=None, newposy=None)[source]
See
ModifyTag().All arguments can also be
None- Parameters:
tagname (str) – Name of the tag that shall be modified
newname (str) – New name of the tag
newparent (str) – Name of the new parent tag
newicon (str) – New icon for the tag - the icon-type gets detected automatically
newcolor (str) – New color for the tag
newposx (int) – New position
newposy (int) – New position
- ModifyTag(tagname, tagclass, newname, newparent, newicon, newcolor, newposx, newposy)[source]
See
musicdb.lib.db.musicdb.MusicDatabase.ModifyTag()The icontype gets determined by the newicon-value if not
None.The parentid gets determined by the newparent-name.
- Returns:
On success
False: in case something fails- Return type:
True- Raises:
AssertionError – Whenever this method does not find wrong values but the database implementation does.