Kangarroar commited on
Commit
612247e
1 Parent(s): 632f309

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +9 -104
app.py CHANGED
@@ -1,12 +1,7 @@
1
- import tkinter as tk
2
- import tkinter.filedialog
3
- import tkinter.ttk as ttk
4
- import tkinter as tk
5
- from tkinter import ttk
6
- import wave
7
  from utils.hparams import hparams
8
  from preprocessing.data_gen_utils import get_pitch_parselmouth,get_pitch_crepe
9
  import numpy as np
 
10
  import IPython.display as ipd
11
  import utils
12
  import librosa
@@ -14,103 +9,13 @@ import torchcrepe
14
  from infer import *
15
  import logging
16
  from infer_tools.infer_tool import *
17
- from tkinter import Label
18
- from time import sleep
19
- import os
20
- # Create the main window
21
- window = tk.Tk()
22
 
23
- # Set the window title and size
24
 
25
- window.title("Diff-SVC Rendering Tool")
26
- window.geometry("250x400")
27
-
28
- # console Textbox
29
- textbox = tk.Text(window)
30
- textbox.grid(row=4, column=0, padx=20, pady=20, sticky="nsew")
31
-
32
- loading_animation_label = Label(window)
33
- loading_animation_label.grid(row=5, column=0)
34
-
35
- # Set the column and row to stretch to fill the available space
36
- window.grid_columnconfigure(0, weight=1)
37
- window.grid_rowconfigure(4, weight=1)
38
-
39
- button1 = ttk.Button(window, text="Load Model")
40
- button1.grid(row=0, column=0, padx=20, pady=20)
41
-
42
- pb = ttk.Progressbar(
43
- window,
44
- orient='horizontal',
45
- mode='indeterminate',
46
- length=250
47
- )
48
- def start():
49
- pb.grid(column=0, row=5, padx=0, pady=0)
50
- pb.start(10)
51
-
52
- def stop():
53
- pb.stop()
54
- pb.grid_remove()
55
- def button1_clicked():
56
- filepath1 = tkinter.filedialog.askopenfilename(title = "Select CKPT File", filetypes=[("Checkpoint files", "*.ckpt")])
57
- if filepath1 == '':
58
- tkinter.messagebox.showerror("Error", "No CKPT file selected")
59
- return
60
- filepath2 = tkinter.filedialog.askopenfilename(title = "Select YAML File",filetypes=[("Yaml files", "*.yaml")])
61
- if filepath2 == '':
62
- tkinter.messagebox.showerror("Error", "No YAML file selected")
63
- return
64
- model_path = filepath1
65
- config_path = filepath2
66
- logging.getLogger('numba').setLevel(logging.WARNING)
67
- start()
68
- # Show a dialog box to input text
69
- global project_name
70
- project_name = tkinter.simpledialog.askstring("Input", "Enter project name:", parent=window)
71
- if project_name == '':
72
- tkinter.messagebox.showerror("Error", "No Project Name")
73
- return
74
- # Use the input text and the value of hubert_gpu as arguments when creating an instance of the Svc class
75
- global svc_model
76
- hubert_gpu = False
77
- svc_model = Svc(project_name, config_path, hubert_gpu, model_path)
78
- textbox.insert('end', 'model loaded\n')
79
- stop()
80
-
81
-
82
- # Assign the callback function to the button's "command" attribute
83
- button1["command"] = button1_clicked
84
-
85
- button2 = ttk.Button(window, text="Start Rendering")
86
- button2.grid(row=1, column=0, padx=20, pady=20)
87
-
88
- # Define a callback function for the second button
89
- def button2_clicked():
90
- # Open a file selection dialog for WAV files
91
- filepath = tkinter.filedialog.askopenfilename(filetypes=[("WAV files", "*.wav")])
92
-
93
- # Show a dialog box to input the "key" value
94
- key = tkinter.simpledialog.askinteger("Input", "Enter key value:", parent=window)
95
- textbox.insert('end', 'Rendering Started, please wait...\n')
96
- start()
97
- wav_gen = tkinter.simpledialog.askstring("Input", "Enter the track name:", parent=window)
98
- if not wav_gen.endswith('.wav'):
99
- wav_gen += '.wav'
100
- wav_fn = filepath
101
- demoaudio, sr = librosa.load(wav_fn)
102
- pndm_speedup = 20
103
- f0_tst, f0_pred, audio = run_clip(svc_model,file_path=wav_fn, key=key, acc=pndm_speedup, use_crepe=True, use_pe=True, thre=0.05,
104
- use_gt_mel=False, add_noise_step=500,project_name=project_name,out_path=wav_gen)
105
- time.sleep(2)
106
- textbox.insert('end', 'Rendering process done!\nPlaying Audio now...')
107
- os.startfile(wav_gen)
108
- stop()
109
- button2["command"] = button2_clicked
110
- #Checkbox
111
- hubert_gpu = tk.BooleanVar()
112
- checkbox = tk.Checkbutton(window, text="Use GPU", variable=hubert_gpu)
113
- checkbox.grid(row=3, column=0)
114
-
115
- # Start the event loop
116
- window.mainloop()
 
 
 
 
 
 
 
1
  from utils.hparams import hparams
2
  from preprocessing.data_gen_utils import get_pitch_parselmouth,get_pitch_crepe
3
  import numpy as np
4
+ import matplotlib.pyplot as plt
5
  import IPython.display as ipd
6
  import utils
7
  import librosa
 
9
  from infer import *
10
  import logging
11
  from infer_tools.infer_tool import *
 
 
 
 
 
12
 
13
+ logging.getLogger('numba').setLevel(logging.WARNING)
14
 
15
+ # 工程文件夹名,训练时用的那个
16
+ project_name = "Unnamed"
17
+ model_path = f'./checkpoints/Unnamed/model_ckpt_steps_192000.ckpt'
18
+ config_path=f'./checkpoints/Unnamed/config.yaml'
19
+ hubert_gpu=False
20
+ svc_model = Svc(project_name,config_path,hubert_gpu, model_path)
21
+ print('model loaded')