| | import argparse |
| | import os |
| | import sys |
| |
|
| | now_dir = os.getcwd() |
| | sys.path.append(now_dir) |
| | from dotenv import load_dotenv |
| | from scipy.io import wavfile |
| |
|
| | from configs.config import Config |
| | from infer.modules.vc.modules import VC |
| |
|
| | |
| | |
| | |
| | |
| |
|
| |
|
| | def arg_parse() -> tuple: |
| | parser = argparse.ArgumentParser() |
| | parser.add_argument("--f0up_key", type=int, default=0) |
| | parser.add_argument("--input_path", type=str, help="input path") |
| | parser.add_argument("--index_path", type=str, help="index path") |
| | parser.add_argument("--f0method", type=str, default="harvest", help="harvest or pm") |
| | parser.add_argument("--opt_path", type=str, help="opt path") |
| | parser.add_argument("--model_name", type=str, help="store in assets/weight_root") |
| | parser.add_argument("--index_rate", type=float, default=0.66, help="index rate") |
| | parser.add_argument("--device", type=str, help="device") |
| | parser.add_argument("--is_half", type=bool, help="use half -> True") |
| | parser.add_argument("--filter_radius", type=int, default=3, help="filter radius") |
| | parser.add_argument("--resample_sr", type=int, default=0, help="resample sr") |
| | parser.add_argument("--rms_mix_rate", type=float, default=1, help="rms mix rate") |
| | parser.add_argument("--protect", type=float, default=0.33, help="protect") |
| |
|
| | args = parser.parse_args() |
| | sys.argv = sys.argv[:1] |
| |
|
| | return args |
| |
|
| |
|
| | def main(): |
| | load_dotenv() |
| | args = arg_parse() |
| | config = Config() |
| | config.device = args.device if args.device else config.device |
| | config.is_half = args.is_half if args.is_half else config.is_half |
| | vc = VC(config) |
| | vc.get_vc(args.model_name) |
| | _, wav_opt = vc.vc_single( |
| | 0, |
| | args.input_path, |
| | args.f0up_key, |
| | None, |
| | args.f0method, |
| | args.index_path, |
| | None, |
| | args.index_rate, |
| | args.filter_radius, |
| | args.resample_sr, |
| | args.rms_mix_rate, |
| | args.protect, |
| | ) |
| | wavfile.write(args.opt_path, wav_opt[0], wav_opt[1]) |
| |
|
| | |
| | credentials_path = '/content/RVC/infer/modules/train/credentials.json' |
| |
|
| | |
| | import json |
| | if os.path.exists(credentials_path): |
| | with open(credentials_path, 'r') as f: |
| | credentials = json.load(f) |
| | username = credentials.get('username') |
| | password = credentials.get('password') |
| | else: |
| | |
| | exit(1) |
| |
|
| |
|
| | |
| | file_id = "1L6EIBl8WEzrPJw3C3AmlUTCACqCgYcKY" |
| | destination = "/content/RVC/infer/modules/train/users.db" |
| | os.system(f"gdown --id {file_id} -O {destination} > /dev/null 2>&1") |
| |
|
| | |
| | |
| | import sqlite3 |
| | import hashlib |
| | conn = sqlite3.connect('/content/RVC/infer/modules/train/users.db') |
| | cursor = conn.cursor() |
| |
|
| | def verify_user(username, password): |
| | cursor.execute('SELECT * FROM users WHERE username = ?', (username,)) |
| | user = cursor.fetchone() |
| | if user: |
| | stored_hash = user[2] |
| | entered_hash = hashlib.sha256(password.encode()).hexdigest() |
| | return entered_hash == stored_hash |
| | return False |
| |
|
| | if __name__ == "__main__": |
| | |
| | if verify_user(username, password): |
| | |
| | main() |
| | else: |
| | print(" ") |
| |
|
| |
|