diff --git a/copyparty/svchub.py b/copyparty/svchub.py index 02929500..11da5709 100644 --- a/copyparty/svchub.py +++ b/copyparty/svchub.py @@ -18,6 +18,7 @@ from .authsrv import AuthSrv from .tcpsrv import TcpSrv from .up2k import Up2k from .th_srv import ThumbSrv, HAVE_PIL, HAVE_WEBP +from .mtag import HAVE_FFMPEG, HAVE_FFPROBE class SvcHub(object): @@ -88,6 +89,11 @@ class SvcHub(object): "thumb", msg.format(" " * 37, os.path.basename(sys.executable)), c=3 ) + if not args.no_acode and (not HAVE_FFMPEG or not HAVE_FFPROBE): + msg = "setting --no-acode because either FFmpeg or FFprobe is not available" + self.log("thumb", msg, c=6) + args.no_acode = True + # decide which worker impl to use if self.check_mp_enable(): from .broker_mp import BrokerMp as Broker diff --git a/copyparty/th_srv.py b/copyparty/th_srv.py index 4358ceaf..ee2662c3 100644 --- a/copyparty/th_srv.py +++ b/copyparty/th_srv.py @@ -51,7 +51,7 @@ except: # ffmpeg -formats FMT_PIL = "bmp dib gif icns ico jpg jpeg jp2 jpx pcx png pbm pgm ppm pnm sgi tga tif tiff webp xbm dds xpm" FMT_FFV = "av1 asf avi flv m4v mkv mjpeg mjpg mpg mpeg mpg2 mpeg2 h264 avc mts h265 hevc mov 3gp mp4 ts mpegts nut ogv ogm rm vob webm wmv" -FMT_FFA = "aac m4a ogg opus flac alac mp3 mp2 ac3 dts wma ra wav aif aiff au amr gsm ape tak tta wv" +FMT_FFA = "aac m4a ogg opus flac alac mp3 mp2 ac3 dts wma ra wav aif aiff au alaw ulaw mulaw amr gsm ape tak tta wv" if HAVE_HEIF: FMT_PIL += " heif heifs heic heics" diff --git a/copyparty/web/browser.js b/copyparty/web/browser.js index c8f4f3b6..eb00ee10 100644 --- a/copyparty/web/browser.js +++ b/copyparty/web/browser.js @@ -470,7 +470,7 @@ var mpl = (function () { var re_au_native = /\.(opus|ogg|m4a|aac|mp3|wav|flac)$/i, - re_au_all = /\.(aac|m4a|ogg|opus|flac|alac|mp3|mp2|ac3|dts|wma|ra|wav|aif|aiff|au|amr|gsm|ape|tak|tta|wv)$/i; + re_au_all = /\.(aac|m4a|ogg|opus|flac|alac|mp3|mp2|ac3|dts|wma|ra|wav|aif|aiff|au|alaw|ulaw|mulaw|amr|gsm|ape|tak|tta|wv)$/i; // extract songs + add play column @@ -486,7 +486,7 @@ function MPlayer() { r.tracks = {}; r.order = []; - var re_audio = mpl.ac_oth ? re_au_all : re_au_native, + var re_audio = have_acode && mpl.ac_oth ? re_au_all : re_au_native, trs = QSA('#files tbody tr'); for (var a = 0, aa = trs.length; a < aa; a++) {