From 3f4a8b9d6ffc79b1be7930e184f69dc76a3e5ba2 Mon Sep 17 00:00:00 2001 From: ed Date: Tue, 25 May 2021 06:35:12 +0200 Subject: [PATCH] fixes --- copyparty/__main__.py | 2 +- copyparty/mtag.py | 4 ++-- copyparty/th_srv.py | 12 +++++++----- 3 files changed, 10 insertions(+), 8 deletions(-) diff --git a/copyparty/__main__.py b/copyparty/__main__.py index 7aa8a5f9..f55ced22 100644 --- a/copyparty/__main__.py +++ b/copyparty/__main__.py @@ -252,7 +252,7 @@ def run_argparse(argv, formatter): ap2 = ap.add_argument_group('thumbnail options') ap.add_argument("--no-thumb", action="store_true", help="disable all thumbnails") ap.add_argument("--no-vthumb", action="store_true", help="disable video thumbnails") - ap.add_argument("--thumbsz", metavar="WxH", default="420x420", help="thumbnail res") + ap.add_argument("--thumbsz", metavar="WxH", default="352x352", help="thumbnail res") ap2 = ap.add_argument_group('database options') ap2.add_argument("-e2d", action="store_true", help="enable up2k database") diff --git a/copyparty/mtag.py b/copyparty/mtag.py index a6a9e51b..2e9370f7 100644 --- a/copyparty/mtag.py +++ b/copyparty/mtag.py @@ -30,7 +30,7 @@ HAVE_FFMPEG = have_ff("ffmpeg") HAVE_FFPROBE = have_ff("ffprobe") -def parse_ffprobe(stdout, logger): +def parse_ffprobe(stdout, logger, require_audio=True): txt = [x.rstrip("\r") for x in stdout.split("\n")] """ @@ -117,7 +117,7 @@ def parse_ffprobe(stdout, logger): if m: ret[".q"] = m.group(1) - if not is_audio: + if not is_audio and require_audio: return {}, {} ret = {k: [0, v] for k, v in ret.items()} diff --git a/copyparty/th_srv.py b/copyparty/th_srv.py index 7d393a7a..1106be19 100644 --- a/copyparty/th_srv.py +++ b/copyparty/th_srv.py @@ -35,7 +35,7 @@ FMT_PIL, FMT_FF = [ {x: True for x in y.split(" ") if x} for y in [ "bmp dib gif icns ico jpg jpeg jp2 jpx pcx png pbm pgm ppm pnm sgi tga tif tiff webp xbm dds xpm", - "av1 asf avi flv m4v mkv mjpeg mjpg mpg mpeg mpg2 mpeg2 mov 3gp mp4 ts mpegts nut ogv ogm rm vob wmv", + "av1 asf avi flv m4v mkv mjpeg mjpg mpg mpeg mpg2 mpeg2 mov 3gp mp4 ts mpegts nut ogv ogm rm vob webm wmv", ] ] @@ -79,7 +79,8 @@ class ThumbSrv(object): self.args = hub.args self.log_func = hub.log - self.res = hub.args.thumbsz.split("x") + res = hub.args.thumbsz.split("x") + self.res = tuple([int(x) for x in res]) self.mutex = threading.Lock() self.busy = {} @@ -178,8 +179,9 @@ class ThumbSrv(object): if fun: try: fun(abspath, tpath) - except: - self.log("{} failed on {}".format(fun.__name__, abspath), 3) + except Exception as ex: + msg = "{} failed on {}\n {!r}" + self.log(msg.format(fun.__name__, abspath, ex), 3) with open(tpath, "wb") as _: pass @@ -207,7 +209,7 @@ class ThumbSrv(object): p = sp.Popen(cmd, stdout=sp.PIPE, stderr=sp.PIPE) r = p.communicate() txt = r[1].decode("utf-8", "replace") - ret, _ = parse_ffprobe(txt, self.log) + ret, _ = parse_ffprobe(txt, self.log, False) dur = ret[".dur"][1] seek = "{:.0f}".format(dur / 3)