add native

This commit is contained in:
wataru 2023-01-28 11:51:56 +09:00
parent 5f885d9e21
commit 9f59f78079

View File

@ -1,4 +1,16 @@
import sys, os, argparse, platform
import multiprocessing as mp
import subprocess
from const import SSL_KEY_DIR
from restapi.MMVC_Rest import MMVC_Rest
from sio.MMVC_SocketIOApp import MMVC_SocketIOApp
from voice_changer.VoiceChangerManager import VoiceChangerManager
from mods.ssl import create_self_signed_cert
import webbrowser
import uvicorn
import sys
import os
import argparse
import platform
import socket
import misc.log_control
@ -8,15 +20,6 @@ from distutils.util import strtobool
sys.path.append("MMVC_Client/python")
import uvicorn
import webbrowser
from mods.ssl import create_self_signed_cert
from voice_changer.VoiceChangerManager import VoiceChangerManager
from sio.MMVC_SocketIOApp import MMVC_SocketIOApp
from restapi.MMVC_Rest import MMVC_Rest
from const import SSL_KEY_DIR
def setupArgParser():
parser = argparse.ArgumentParser()
@ -64,8 +67,10 @@ def printMessage(message, level=0):
# global app_socketio
# global app_fastapi
parser = setupArgParser()
args = parser.parse_args()
# args = parser.parse_args()
args, unknown = parser.parse_known_args()
# printMessage(f"Phase name:{__name__}", level=2)
# thisFilename = os.path.basename(__file__)[:-3]
@ -79,6 +84,16 @@ MODEL = args.m if args.m != None else None
ONNX_MODEL = args.o if args.o != None else None
def localServer():
uvicorn.run(
f"{os.path.basename(__file__)[:-3]}:app_socketio",
host="0.0.0.0",
port=int(PORT),
reload=False if hasattr(sys, "_MEIPASS") else True,
log_level="warning"
)
if args.colab == True:
os.environ["colab"] = "True"
# if os.getenv("EX_TB_PORT"):
@ -96,6 +111,9 @@ if __name__ == '__mp_main__':
printMessage(f"サーバプロセスを起動しています。", level=2)
if __name__ == '__main__':
if sys.platform.startswith('win'):
mp.freeze_support()
printMessage(f"Voice Changerを起動しています。", level=2)
TYPE = args.t
PORT = args.p
@ -153,7 +171,6 @@ if __name__ == '__main__':
printMessage(f"protocol: HTTP", level=1)
printMessage(f"-- ---- -- ", level=1)
# アドレス表示
printMessage(
f"ブラウザで次のURLを開いてください.", level=2)
@ -209,11 +226,21 @@ if __name__ == '__main__':
log_level="warning"
)
else:
uvicorn.run(
f"{os.path.basename(__file__)[:-3]}:app_socketio",
host="0.0.0.0",
port=int(PORT),
reload = False if hasattr(sys, "_MEIPASS") else True,
log_level="warning"
)
# uvicorn.run(
# f"{os.path.basename(__file__)[:-3]}:app_socketio",
# host="0.0.0.0",
# port=int(PORT),
# reload = False if hasattr(sys, "_MEIPASS") else True,
# log_level="warning"
# )
p = mp.Process(name="p", target=localServer)
p.start()
try:
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.")
p.terminate()
except Exception as e:
print(e)