diff --git a/CDDB.py b/CDDB.py index 387fac5..390f840 100644 --- a/CDDB.py +++ b/CDDB.py @@ -5,7 +5,7 @@ import urllib.parse import urllib.request import subprocess import logging -from .common import KEY_ALBUM, KEY_ARTIST, KEY_GENRE, KEY_TITLE, KEY_TRACK, KEY_YEAR +from .common import KEY_ALBUM, KEY_ARTIST, KEY_GENRE, KEY_TITLE, KEY_TRACK, KEY_YEAR, KEY_TRACKLIST try: from config import APP_NAME as ROOT_LOGGER_NAME @@ -51,7 +51,7 @@ def my_disc_metadata(**kwargs): else: main_dict[key] = value rv = dict(main_dict) - rv["tracks"] = [] + rv[KEY_TRACKLIST] = [] for key in list(kwargs): value = kwargs.pop(key) if key.startswith("track_"): diff --git a/__init__.py b/__init__.py index 6ba6641..5b32b3a 100644 --- a/__init__.py +++ b/__init__.py @@ -46,6 +46,7 @@ from .common import KEY_TIME from .common import KEY_TIME_IS_SUBSTITUTION from .common import KEY_TITLE from .common import KEY_TRACK +from .common import KEY_TRACKLIST from .common import KEY_WIDTH from .common import KEY_YEAR from .convert import disc_track_rip diff --git a/common.py b/common.py index 28e89b2..46723ac 100644 --- a/common.py +++ b/common.py @@ -36,6 +36,7 @@ KEY_TIME = 'time' # USE time.localtime(value) or datetime.fromtimestamp(value) KEY_TIME_IS_SUBSTITUTION = 'tm_is_subst' KEY_TITLE = 'title' KEY_TRACK = 'track' +KEY_TRACKLIST = 'tracks' KEY_WIDTH = 'width' KEY_YEAR = 'year' diff --git a/convert.py b/convert.py index e6ee662..8e53816 100644 --- a/convert.py +++ b/convert.py @@ -6,6 +6,7 @@ import platform import logging import os import subprocess +from .common import KEY_TRACK try: from config import APP_NAME as ROOT_LOGGER_NAME @@ -101,8 +102,9 @@ def disc_track_rip(track_num: int, target_file: str, progress_callback): else: p = (rval - min_read) / FAC_SEC_VAL / dsec p = min(p, 1) - progress_callback(p) - progress_callback(1) + logger.debug("Rip progress = %002d%%", p * 100) + progress_callback(p, track_num=track_num) + progress_callback(1, track_num=track_num) return cdp.wait() @@ -132,6 +134,7 @@ def wav_to_mp3(infile: str, basepath: str, track_information, progress_callback, posp = out.find("%") if posb >= 0 and posp >= 0: p = int(out[posb+1:posp]) / 100 - progress_callback(p) - progress_callback(1) + logger.debug("Encoding progress = %002d%%", p * 100) + progress_callback(p, track_information[KEY_TRACK]) + progress_callback(1, track_information[KEY_TRACK]) return lame.wait() diff --git a/metadata.py b/metadata.py index 6b2ba1d..2e6aabe 100644 --- a/metadata.py +++ b/metadata.py @@ -65,6 +65,18 @@ def get_audio_data(full_path): return __adapt__data__(__get_xxprobe_data__(full_path, conv_key_dict), full_path) +def get_disc_data_dummy(): + data = { + common.KEY_ARTIST: "Artist", + common.KEY_ALBUM: "Album", + common.KEY_YEAR: "1987", + common.KEY_GENRE: "Genre" + } + for i in range(0, 3): + data["track_%02d" % (i + 1)] = "Track %02d" % (i + 1) + return media.CDDB.my_disc_metadata(**data) + + def get_disc_data(full_path, user_callback): # # Read Information from CDDB database @@ -72,7 +84,7 @@ def get_disc_data(full_path, user_callback): did = media.CDDB.discid() if did is None: logger.error("Could not determine disc id...") - sys.exit(1) + return None logger.debug("Disc-ID identified %s", repr(did)) q = media.CDDB.query(did) if q is None: