diff --git a/server/MMVCServerSIO.py b/server/MMVCServerSIO.py index d5b9ca50..d7086b65 100755 --- a/server/MMVCServerSIO.py +++ b/server/MMVCServerSIO.py @@ -1,6 +1,6 @@ import multiprocessing as mp import subprocess -from const import SSL_KEY_DIR +from const import NATIVE_CLIENT_FILE, SSL_KEY_DIR from restapi.MMVC_Rest import MMVC_Rest from sio.MMVC_SocketIOApp import MMVC_SocketIOApp from voice_changer.VoiceChangerManager import VoiceChangerManager @@ -111,8 +111,7 @@ if __name__ == '__mp_main__': printMessage(f"サーバプロセスを起動しています。", level=2) if __name__ == '__main__': - if sys.platform.startswith('win'): - mp.freeze_support() + mp.freeze_support() printMessage(f"Voice Changerを起動しています。", level=2) TYPE = args.t @@ -240,7 +239,13 @@ if __name__ == '__main__': if sys.platform.startswith('win'): process = subprocess.Popen(["voice-changer-native-client.exe", "-u", f"http://localhost:{PORT}/{path}"]) return_code = process.wait() - print("client clonsed.") + print("client closed.") p.terminate() + elif sys.platform.startswith('darwin'): + process = subprocess.Popen([NATIVE_CLIENT_FILE, "-u", f"http://localhost:{PORT}/{path}"]) + return_code = process.wait() + print("client closed.") + p.terminate() + except Exception as e: print(e) diff --git a/server/const.py b/server/const.py index 385e9efd..6b5f0543 100644 --- a/server/const.py +++ b/server/const.py @@ -1,4 +1,5 @@ -import os, sys +import os +import sys import tempfile frontend_path = os.path.join(sys._MEIPASS, "dist") if hasattr(sys, "_MEIPASS") else "../client/demo/dist" @@ -7,9 +8,13 @@ ERROR_NO_ONNX_SESSION = "ERROR_NO_ONNX_SESSION" tmpdir = tempfile.TemporaryDirectory() # print("generate tmpdir:::",tmpdir) -SSL_KEY_DIR = os.path.join(tmpdir.name, "keys") if hasattr(sys, "_MEIPASS") else "keys" +SSL_KEY_DIR = os.path.join(tmpdir.name, "keys") if hasattr(sys, "_MEIPASS") else "keys" MODEL_DIR = os.path.join(tmpdir.name, "logs") if hasattr(sys, "_MEIPASS") else "logs" UPLOAD_DIR = os.path.join(tmpdir.name, "upload_dir") if hasattr(sys, "_MEIPASS") else "upload_dir" +NATIVE_CLIENT_FILE = os.path.join(sys._MEIPASS, "voice-changer-native-client.app", "Contents", "MacOS", + "voice-changer-native-client") if hasattr(sys, "_MEIPASS") else "voice-changer-native-client" + + # SSL_KEY_DIR = os.path.join(sys._MEIPASS, "keys") if hasattr(sys, "_MEIPASS") else "keys" # MODEL_DIR = os.path.join(sys._MEIPASS, "logs") if hasattr(sys, "_MEIPASS") else "logs" # UPLOAD_DIR = os.path.join(sys._MEIPASS, "upload_dir") if hasattr(sys, "_MEIPASS") else "upload_dir"