das
This commit is contained in:
parent
df749118d7
commit
8a7335c741
@ -27,7 +27,6 @@ class Mapping(Enum):
|
|||||||
PUBLISHER_URL = "WPUB"
|
PUBLISHER_URL = "WPUB"
|
||||||
PUBLISHER = "TPUB"
|
PUBLISHER = "TPUB"
|
||||||
RATING = "POPM"
|
RATING = "POPM"
|
||||||
PAYMEMT_URL = "WPAY"
|
|
||||||
DISCNUMBER = "TPOS"
|
DISCNUMBER = "TPOS"
|
||||||
MOVEMENT_COUNT = "MVIN"
|
MOVEMENT_COUNT = "MVIN"
|
||||||
TOTALDISCS = "TPOS"
|
TOTALDISCS = "TPOS"
|
||||||
@ -66,6 +65,7 @@ class Mapping(Enum):
|
|||||||
ARTIST_WEBPAGE_URL = "WOAR"
|
ARTIST_WEBPAGE_URL = "WOAR"
|
||||||
COPYRIGHT_URL = "WCOP"
|
COPYRIGHT_URL = "WCOP"
|
||||||
COMMERCIAL_INFORMATION_URL = "WCOM"
|
COMMERCIAL_INFORMATION_URL = "WCOM"
|
||||||
|
PAYMEMT_URL = "WPAY"
|
||||||
|
|
||||||
MOVEMENT_INDEX = "MVIN"
|
MOVEMENT_INDEX = "MVIN"
|
||||||
MOVEMENT_NAME = "MVNM"
|
MOVEMENT_NAME = "MVNM"
|
||||||
@ -111,7 +111,6 @@ class Metadata:
|
|||||||
# the key is a 4 letter key from the id3 standards like TITL
|
# the key is a 4 letter key from the id3 standards like TITL
|
||||||
|
|
||||||
self.id3_attributes: Dict[str, list] = {}
|
self.id3_attributes: Dict[str, list] = {}
|
||||||
self.
|
|
||||||
|
|
||||||
# its a null byte for the later concatenation of text frames
|
# its a null byte for the later concatenation of text frames
|
||||||
self.null_byte = "\x00"
|
self.null_byte = "\x00"
|
||||||
@ -126,7 +125,12 @@ class Metadata:
|
|||||||
raise ValueError(f"can only set attribute to list, not {type(value)}")
|
raise ValueError(f"can only set attribute to list, not {type(value)}")
|
||||||
|
|
||||||
if override_existing:
|
if override_existing:
|
||||||
self.id3_attributes[key] = value
|
new_val = []
|
||||||
|
for elem in value:
|
||||||
|
if elem is not None:
|
||||||
|
new_val.append(elem)
|
||||||
|
if len(new_val) > 0:
|
||||||
|
self.id3_attributes[key] = new_val
|
||||||
else:
|
else:
|
||||||
if key not in self.id3_attributes:
|
if key not in self.id3_attributes:
|
||||||
self.id3_attributes[key] = value
|
self.id3_attributes[key] = value
|
||||||
|
@ -293,10 +293,23 @@ class Album(DatabaseObject, ID3Metadata):
|
|||||||
self.title: str = title
|
self.title: str = title
|
||||||
self.copyright: str = copyright_
|
self.copyright: str = copyright_
|
||||||
self.album_status: str = album_status
|
self.album_status: str = album_status
|
||||||
|
"""
|
||||||
|
TODO
|
||||||
|
MAKE SURE THIS IS IN THE CORRECT FORMAT
|
||||||
|
"""
|
||||||
self.language: str = language
|
self.language: str = language
|
||||||
|
"""
|
||||||
|
TODO
|
||||||
|
only store the date in a python date object and derive the
|
||||||
|
year from it
|
||||||
|
"""
|
||||||
self.year: str = year
|
self.year: str = year
|
||||||
self.date: str = date
|
self.date: str = date
|
||||||
self.country: str = country
|
self.country: str = country
|
||||||
|
"""
|
||||||
|
TODO
|
||||||
|
find out the id3 tag for barcode and implement it
|
||||||
|
"""
|
||||||
self.barcode: str = barcode
|
self.barcode: str = barcode
|
||||||
self.is_split: bool = is_split
|
self.is_split: bool = is_split
|
||||||
self.albumsort: int | None = albumsort
|
self.albumsort: int | None = albumsort
|
||||||
@ -327,6 +340,15 @@ class Album(DatabaseObject, ID3Metadata):
|
|||||||
song.tracksort = len(self.tracklist)
|
song.tracksort = len(self.tracklist)
|
||||||
self.tracklist.append(song)
|
self.tracklist.append(song)
|
||||||
|
|
||||||
|
def get_id3_dict(self) -> dict:
|
||||||
|
return {
|
||||||
|
ID3_MAPPING.ALBUM: [self.title],
|
||||||
|
ID3_MAPPING.COPYRIGHT: [self.copyright],
|
||||||
|
ID3_MAPPING.LANGUAGE: [self.language],
|
||||||
|
ID3_MAPPING.ALBUM_ARTIST: [a.name for a in self.artists]
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
All objects dependent on Artist
|
All objects dependent on Artist
|
||||||
|
Loading…
Reference in New Issue
Block a user