diff options
| author | Robert Honz <exislow+github@gmail.com> | 2025-10-17 15:40:28 +0200 |
|---|---|---|
| committer | Robert Honz <exislow+github@gmail.com> | 2025-10-17 15:40:28 +0200 |
| commit | c8cb43adf73e7d8dbcb8ee58bfb2c74d6a2ea7e9 (patch) | |
| tree | ffc6bfced4bbbdc95818d69b34a7f97425195c9f /tidal_dl_ng | |
| parent | 07494eddf32aee915d459710b4146048c0d0733f (diff) | |
| download | tidal-dl-ng-c8cb43adf73e7d8dbcb8ee58bfb2c74d6a2ea7e9.tar.gz | |
feat(metadata): ✨ add explicit track metadata handling
* Introduced `METADATA_EXPLICIT` constant for explicit track indication.
* Updated `Download` class to append explicit metadata to track titles.
Diffstat (limited to 'tidal_dl_ng')
| -rw-r--r-- | tidal_dl_ng/constants.py | 1 | ||||
| -rw-r--r-- | tidal_dl_ng/download.py | 8 |
2 files changed, 7 insertions, 2 deletions
diff --git a/tidal_dl_ng/constants.py b/tidal_dl_ng/constants.py index 0630137..f2f774b 100644 --- a/tidal_dl_ng/constants.py +++ b/tidal_dl_ng/constants.py @@ -13,6 +13,7 @@ PLAYLIST_EXTENSION: str = ".m3u" PLAYLIST_PREFIX: str = "_" FILENAME_LENGTH_MAX: int = 255 FORMAT_TEMPLATE_EXPLICIT: str = " (Explicit)" +METADATA_EXPLICIT: str = " 🅴" class QualityVideo(StrEnum): diff --git a/tidal_dl_ng/download.py b/tidal_dl_ng/download.py index 8c51e76..4ac2b14 100644 --- a/tidal_dl_ng/download.py +++ b/tidal_dl_ng/download.py @@ -35,6 +35,7 @@ from tidal_dl_ng.constants import ( CHUNK_SIZE, COVER_NAME, EXTENSION_LYRICS, + METADATA_EXPLICIT, METADATA_LOOKUP_UPC, PLAYLIST_EXTENSION, PLAYLIST_PREFIX, @@ -1226,6 +1227,9 @@ class Download: metadata_target_upc = MetadataTargetUPC(self.settings.data.metadata_target_upc) target_upc: dict[str, str] = METADATA_LOOKUP_UPC[metadata_target_upc] + explicit: bool = track.explicit if hasattr(track, "explicit") else False + title = name_builder_title(track) + title += METADATA_EXPLICIT if explicit else "" # `None` values are not allowed. m: Metadata = Metadata( @@ -1234,7 +1238,7 @@ class Download: lyrics=lyrics_synced, lyrics_unsynced=lyrics_unsynced, copy_right=copy_right, - title=name_builder_title(track), + title=title, artists=name_builder_artist(track, delimiter=self.settings.data.metadata_delimiter_artist), album=track.album.name if track.album else "", tracknumber=track.track_num, @@ -1252,7 +1256,7 @@ class Download: url_share=track.share_url if track.share_url and self.settings.data.metadata_write_url else "", replay_gain_write=self.settings.data.metadata_replay_gain, upc=track.album.upc if track.album and track.album.upc else "", - explicit=track.explicit if hasattr(track, "explicit") else False, + explicit=explicit, ) m.save() |
