import os import io import ssl import sys import time import codecs import logging import warnings import gradio as gr sys.path.append(os.getcwd()) start_time = time.time() from main.app.tabs.extra.extra import extra_tab from main.app.tabs.editing.editing import editing_tab from main.app.tabs.training.training import training_tab from main.app.tabs.downloads.downloads import download_tab from main.app.tabs.inference.inference import inference_tab from main.app.variables import logger, config, translations, theme, font, configs, language, allow_disk ssl._create_default_https_context = ssl._create_unverified_context warnings.filterwarnings("ignore") for l in ["httpx", "gradio", "uvicorn", "httpcore", "urllib3"]: logging.getLogger(l).setLevel(logging.ERROR) with gr.Blocks(title="📱 Vietnamese-RVC GUI BY ANH", theme=theme, css="".format(fonts=font or "https://fonts.googleapis.com/css2?family=Courgette&display=swap")) as app: gr.HTML("

🎵VIETNAMESE RVC BY ANH🎵

") gr.HTML(f"

{translations['title']}

") with gr.Tabs(): inference_tab() editing_tab() training_tab() download_tab() extra_tab(app) with gr.Row(): gr.Markdown(translations["rick_roll"].format(rickroll=codecs.decode('uggcf://jjj.lbhghor.pbz/jngpu?i=qDj4j9JtKpD', 'rot13'))) with gr.Row(): gr.Markdown(translations["terms_of_use"]) with gr.Row(): gr.Markdown(translations["exemption"]) logger.info(config.device) logger.info(translations["start_app"]) logger.info(translations["set_lang"].format(lang=language)) port = configs.get("app_port", 7860) server_name = configs.get("server_name", "0.0.0.0") share = "--share" in sys.argv original_stdout = sys.stdout sys.stdout = io.StringIO() for i in range(configs.get("num_of_restart", 5)): try: _, _, share_url = app.queue().launch( favicon_path=configs["ico_path"], server_name=server_name, server_port=port, show_error=configs.get("app_show_error", False), inbrowser="--open" in sys.argv, share=share, allowed_paths=allow_disk, prevent_thread_lock=True, quiet=True ) break except OSError: logger.debug(translations["port"].format(port=port)) port -= 1 except Exception as e: logger.error(translations["error_occurred"].format(e=e)) sys.exit(1) sys.stdout = original_stdout logger.info(f"{translations['running_local_url']}: {server_name}:{port}") if share: logger.info(f"{translations['running_share_url']}: {share_url}") logger.info(f"{translations['gradio_start']}: {(time.time() - start_time):.2f}s") while 1: time.sleep(5)