Spaces:
Running
Running
| # @title Generate | Output generated inside "AICoverGen\song_output\random_number" | |
| # @markdown Main Option | You also can input audio path inside "SONG_INPUT" | |
| SONG_INPUT = input("Enter Youtube URL: ") # @param {type:"string"} | |
| RVC_DIRNAME = "Daemi" # @param {type:"string"} | |
| PITCH_CHANGE = 0 # @param {type:"integer"} | |
| PITCH_CHANGE_ALL = 0 # @param {type:"integer"} | |
| # @markdown Voice Conversion Options | |
| INDEX_RATE = 0.2 # @param {type:"number"} | |
| FILTER_RADIUS = 3 # @param {type:"integer"} | |
| PITCH_DETECTION_ALGO = "rmvpe" # @param ["rmvpe", "mangio-crepe"] | |
| CREPE_HOP_LENGTH = 128 # @param {type:"integer"} | |
| PROTECT = 0.33 # @param {type:"number"} | |
| REMIX_MIX_RATE = 0.25 # @param {type:"number"} | |
| # @markdown Audio Mixing Options | |
| MAIN_VOL = 0 # @param {type:"integer"} | |
| BACKUP_VOL = 0 # @param {type:"integer"} | |
| INST_VOL = 0 # @param {type:"integer"} | |
| # @markdown Reverb Control | |
| REVERB_SIZE = 0.15 # @param {type:"number"} | |
| REVERB_WETNESS = 0.2 # @param {type:"number"} | |
| REVERB_DRYNESS = 0.8 # @param {type:"number"} | |
| REVERB_DAMPING = 0.7 # @param {type:"number"} | |
| # @markdown Output Format | |
| OUTPUT_FORMAT = "wav" # @param ["mp3", "wav"] | |
| import subprocess | |
| command = [ | |
| "python", | |
| "src/main.py", | |
| "-i", SONG_INPUT, | |
| "-dir", RVC_DIRNAME, | |
| "-p", str(PITCH_CHANGE), | |
| "-k", | |
| "-ir", str(INDEX_RATE), | |
| "-fr", str(FILTER_RADIUS), | |
| "-rms", str(REMIX_MIX_RATE), | |
| "-palgo", PITCH_DETECTION_ALGO, | |
| "-hop", str(CREPE_HOP_LENGTH), | |
| "-pro", str(PROTECT), | |
| "-mv", str(MAIN_VOL), | |
| "-bv", str(BACKUP_VOL), | |
| "-iv", str(INST_VOL), | |
| "-pall", str(PITCH_CHANGE_ALL), | |
| "-rsize", str(REVERB_SIZE), | |
| "-rwet", str(REVERB_WETNESS), | |
| "-rdry", str(REVERB_DRYNESS), | |
| "-rdamp", str(REVERB_DAMPING), | |
| "-oformat", OUTPUT_FORMAT | |
| ] | |
| # Open a subprocess and capture its output | |
| process = subprocess.Popen(command, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, universal_newlines=True) | |
| # Print the output in real-time | |
| for line in process.stdout: | |
| print(line, end='') | |
| # Wait for the process to finish | |
| process.wait() |