diff --git a/README.md b/README.md index f4ad79fc..1988ab3d 100644 --- a/README.md +++ b/README.md @@ -70,7 +70,7 @@ running the sfx without arguments (for example doubleclicking it on Windows) wil some recommended options: * `-e2dsa` enables general file indexing, see [search configuration](#search-configuration) -* `-e2ts` enables audio metadata indexing (needs either FFprobe or mutagen), see [optional dependencies](#optional-dependencies) +* `-e2ts` enables audio metadata indexing (needs either FFprobe or Mutagen), see [optional dependencies](#optional-dependencies) * `-v /mnt/music:/music:r:afoo -a foo:bar` shares `/mnt/music` as `/music`, `r`eadable by anyone, with user `foo` as `a`dmin (read/write), password `bar` * the syntax is `-v src:dst:perm:perm:...` so local-path, url-path, and one or more permissions to set * replace `:r:afoo` with `:rfoo` to only make the folder readable by `foo` and nobody else @@ -155,7 +155,7 @@ small collection of user feedback # bugs -* Windows: python 3.7 and older cannot read tags with ffprobe, so use mutagen or upgrade +* Windows: python 3.7 and older cannot read tags with FFprobe, so use Mutagen or upgrade * Windows: python 2.7 cannot index non-ascii filenames with `-e2d` * Windows: python 2.7 cannot handle filenames with mojibake * `--th-ff-jpg` may fix video thumbnails on some FFmpeg versions @@ -409,12 +409,12 @@ tags that start with a `.` such as `.bpm` and `.dur`(ation) indicate numeric val see the beautiful mess of a dictionary in [mtag.py](https://github.com/9001/copyparty/blob/master/copyparty/mtag.py) for the default mappings (should cover mp3,opus,flac,m4a,wav,aif,) -`--no-mutagen` disables mutagen and uses ffprobe instead, which... -* is about 20x slower than mutagen -* catches a few tags that mutagen doesn't +`--no-mutagen` disables Mutagen and uses FFprobe instead, which... +* is about 20x slower than Mutagen +* catches a few tags that Mutagen doesn't * melodic key, video resolution, framerate, pixfmt * avoids pulling any GPL code into copyparty -* more importantly runs ffprobe on incoming files which is bad if your ffmpeg has a cve +* more importantly runs FFprobe on incoming files which is bad if your FFmpeg has a cve ## file parser plugins @@ -548,7 +548,7 @@ below are some tweaks roughly ordered by usefulness: enable music tags: * either `mutagen` (fast, pure-python, skips a few tags, makes copyparty GPL? idk) -* or `FFprobe` (20x slower, more accurate, possibly dangerous depending on your distro and users) +* or `ffprobe` (20x slower, more accurate, possibly dangerous depending on your distro and users) enable thumbnails of images: * `Pillow` (requires py2.7 or py3.5+) diff --git a/copyparty/__main__.py b/copyparty/__main__.py index 70bdd7ec..0b383cb3 100644 --- a/copyparty/__main__.py +++ b/copyparty/__main__.py @@ -319,9 +319,9 @@ def run_argparse(argv, formatter): ap2.add_argument("-e2tsr", action="store_true", help="rescan all metadata, sets -e2ts") ap2.add_argument("--hist", metavar="PATH", type=u, help="where to store volume state") ap2.add_argument("--no-hash", action="store_true", help="disable hashing during e2ds folder scans") - ap2.add_argument("--no-mutagen", action="store_true", help="use ffprobe for tags instead") + ap2.add_argument("--no-mutagen", action="store_true", help="use FFprobe for tags instead") ap2.add_argument("--no-mtag-mt", action="store_true", help="disable tag-read parallelism") - ap2.add_argument("--no-mtag-ff", action="store_true", help="disallow ffprobe as tag reader") + ap2.add_argument("--no-mtag-ff", action="store_true", help="never use FFprobe as tag reader") ap2.add_argument("-mtm", metavar="M=t,t,t", type=u, action="append", help="add/replace metadata mapping") ap2.add_argument("-mte", metavar="M,M,M", type=u, help="tags to index/display (comma-sep.)", default="circle,album,.tn,artist,title,.bpm,key,.dur,.q,.vq,.aq,ac,vc,res,.fps") diff --git a/copyparty/mtag.py b/copyparty/mtag.py index ef6df958..61858b6f 100644 --- a/copyparty/mtag.py +++ b/copyparty/mtag.py @@ -237,14 +237,14 @@ class MTag(object): and (not WINDOWS or sys.version_info >= (3, 8)) ) mappings = args.mtm - or_ffprobe = " or ffprobe" + or_ffprobe = " or FFprobe" if self.backend == "mutagen": self.get = self.get_mutagen try: import mutagen except: - self.log("could not load mutagen, trying ffprobe instead", c=3) + self.log("could not load Mutagen, trying FFprobe instead", c=3) self.backend = "ffprobe" if self.backend == "ffprobe": @@ -256,16 +256,16 @@ class MTag(object): pass elif args.no_mtag_ff: - msg = "found ffprobe but it was disabled by --no-mtag-ff" + msg = "found FFprobe but it was disabled by --no-mtag-ff" self.log(msg, c=3) elif WINDOWS and sys.version_info < (3, 8): or_ffprobe = " or python >= 3.8" - msg = "found ffprobe but your python is too old; need 3.8 or newer" + msg = "found FFprobe but your python is too old; need 3.8 or newer" self.log(msg, c=1) if not self.usable: - msg = "need mutagen{} to read media tags so please run this:\n{}{} -m pip install --user mutagen\n" + msg = "need Mutagen{} to read media tags so please run this:\n{}{} -m pip install --user mutagen\n" pybin = os.path.basename(sys.executable) self.log(msg.format(or_ffprobe, " " * 37, pybin), c=1) return @@ -397,7 +397,7 @@ class MTag(object): v2 = r2.get(k) if v1 == v2: print(" ", k, v1) - elif v1 != "0000": # ffprobe date=0 + elif v1 != "0000": # FFprobe date=0 diffs.append(k) print(" 1", k, v1) print(" 2", k, v2) diff --git a/copyparty/th_srv.py b/copyparty/th_srv.py index 96d6361e..11f3b2a1 100644 --- a/copyparty/th_srv.py +++ b/copyparty/th_srv.py @@ -121,10 +121,10 @@ class ThumbSrv(object): if not self.args.no_vthumb and (not HAVE_FFMPEG or not HAVE_FFPROBE): missing = [] if not HAVE_FFMPEG: - missing.append("ffmpeg") + missing.append("FFmpeg") if not HAVE_FFPROBE: - missing.append("ffprobe") + missing.append("FFprobe") msg = "cannot create video thumbnails because some of the required programs are not available: " msg += ", ".join(missing) diff --git a/copyparty/up2k.py b/copyparty/up2k.py index 415f96a3..a8accf08 100644 --- a/copyparty/up2k.py +++ b/copyparty/up2k.py @@ -304,7 +304,7 @@ class Up2k(object): self.log(msg.format(len(vols), time.time() - t0)) if needed_mutagen: - msg = "could not read tags because no backends are available (mutagen or ffprobe)" + msg = "could not read tags because no backends are available (Mutagen or FFprobe)" self.log(msg, c=1) thr = None