From f4d9a6c1fd36ec19ca67fced7e2d88f46bd71f03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=B6=B5=E6=9B=A6?= Date: Fri, 5 Jul 2024 15:12:36 +0000 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=94=AF=E6=8C=81=E4=B8=8B=E8=BD=BD?= =?UTF-8?q?=E7=9A=84=E7=9B=AE=E5=BD=95=E4=B8=8E=E6=9C=AC=E5=9C=B0=E9=9F=B3?= =?UTF-8?q?=E4=B9=90=E7=9B=AE=E5=BD=95=E5=88=86=E5=BC=80=20see=20#98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- xiaomusic/config.py | 5 ++++- xiaomusic/static/setting.html | 3 +++ xiaomusic/xiaomusic.py | 10 ++++++++-- 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/xiaomusic/config.py b/xiaomusic/config.py index 8e83d17..ed299dc 100644 --- a/xiaomusic/config.py +++ b/xiaomusic/config.py @@ -65,7 +65,10 @@ class Config: hardware: str = os.getenv("MI_HARDWARE", "L07A") # 逗号分割支持多设备 cookie: str = "" verbose: bool = os.getenv("XIAOMUSIC_VERBOSE", "").lower() == "true" - music_path: str = os.getenv("XIAOMUSIC_MUSIC_PATH", "music") + music_path: str = os.getenv( + "XIAOMUSIC_MUSIC_PATH", "music" + ) # 只能是music目录下的子目录 + download_path: str = os.getenv("XIAOMUSIC_DOWNLOAD_PATH", "") conf_path: str = os.getenv("XIAOMUSIC_CONF_PATH", None) hostname: str = os.getenv("XIAOMUSIC_HOSTNAME", "192.168.2.5") port: int = int(os.getenv("XIAOMUSIC_PORT", "8090")) # 监听端口 diff --git a/xiaomusic/static/setting.html b/xiaomusic/static/setting.html index 1568d50..bb8aa1a 100644 --- a/xiaomusic/static/setting.html +++ b/xiaomusic/static/setting.html @@ -49,6 +49,9 @@ var vConsole = new window.VConsole(); + + + diff --git a/xiaomusic/xiaomusic.py b/xiaomusic/xiaomusic.py index f69aeba..d8965e0 100644 --- a/xiaomusic/xiaomusic.py +++ b/xiaomusic/xiaomusic.py @@ -106,6 +106,12 @@ class XiaoMusic: self.conf_path = self.config.conf_path if not self.conf_path: self.conf_path = self.config.music_path + self.download_path = self.config.download_path + if not self.download_path: + self.download_path = self.music_path + + if not os.path.exists(self.download_path): + os.makedirs(self.download_path) self.hostname = self.config.hostname self.port = self.config.port @@ -373,7 +379,7 @@ class XiaoMusic: "--audio-format", "mp3", "--paths", - self.music_path, + self.download_path, "-o", f"{name}.mp3", "--ffmpeg-location", @@ -551,7 +557,7 @@ class XiaoMusic: # 把下载的音乐加入播放列表 def add_download_music(self, name): - self._all_music[name] = os.path.join(self.music_path, f"{name}.mp3") + self._all_music[name] = os.path.join(self.download_path, f"{name}.mp3") if name not in self._play_list: self._play_list.append(name) self.log.debug("add_music %s", name)