From c045d32d2cb75c97c196b51c5b5d0a330cd38605 Mon Sep 17 00:00:00 2001 From: j Date: Sat, 29 Jul 2023 11:07:56 +0200 Subject: [PATCH 1/2] oder of video/audio settings matters in ffmpeg>5 --- pandora_client/extract.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pandora_client/extract.py b/pandora_client/extract.py index 38cd7c5..9313e04 100644 --- a/pandora_client/extract.py +++ b/pandora_client/extract.py @@ -282,12 +282,12 @@ def video_cmd(video, target, profile, info): if format == 'webm': pass1_post = ['-speed', '4'] + pass1_post post = ['-speed', '1'] + post - cmds.append(base + ['-an', '-v:pass', '1', '-passlogfile', '%s.log' % target] + cmds.append(base + ['-an', '-pass', '1', '-passlogfile', '%s.log' % target] + video_settings + pass1_post) - cmds.append(base + ['-v:pass', '2', '-passlogfile', '%s.log' % target] - + audio_settings + video_settings + post) + cmds.append(base + ['-pass', '2', '-passlogfile', '%s.log' % target] + + video_settings + audio_settings + post) else: - cmds.append(base + audio_settings + video_settings + post) + cmds.append(base + video_settings + audio_settings + post) if not support.get(format): if format == 'webm': From 823c017fa4d07ef9d2ea5322946123630e975c76 Mon Sep 17 00:00:00 2001 From: j Date: Sat, 29 Jul 2023 11:08:07 +0200 Subject: [PATCH 2/2] initial request can also fail, retry --- pandora_client/__init__.py | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/pandora_client/__init__.py b/pandora_client/__init__.py index 21b5dfc..89d3de8 100755 --- a/pandora_client/__init__.py +++ b/pandora_client/__init__.py @@ -1118,8 +1118,17 @@ class API(ox.API): if resume: data = resume else: - data = self._json_request(url, data) - + data = None + while not data: + try: + data = self._json_request(url, data) + except KeyboardInterrupt: + print("\ninterrupted by user.") + sys.exit(1) + except: + print("failed to start upload, will try again in 5 seconds\r", end='') + sys.stdout.flush() + time.sleep(5) print(filename) hide_cursor()