Spaces:
Sleeping
Sleeping
mj-new
commited on
Commit
•
f1caf3c
1
Parent(s):
d136bc2
Added counter with the number of recordings left
Browse files
app.py
CHANGED
@@ -44,14 +44,14 @@ def get_unique_name():
|
|
44 |
return ''.join([random.choice(string.ascii_letters
|
45 |
+ string.digits) for n in range(32)])
|
46 |
|
47 |
-
def get_prompts(domain, size, language_code):
|
48 |
print(f"Retrieving prompts for domain {domain} with method: {type} for language_code {language_code} of size {size}")
|
49 |
size = int(size)
|
50 |
promptset = dict_promptset[domain][0:size]
|
51 |
-
|
52 |
-
return(promptset, promptset[0])
|
53 |
|
54 |
-
def save_recording_and_meta(project_name, recording, prompt_text, language_code, spk_name, spk_age, spk_accent, spk_city, spk_gender, spk_nativity, promptset, prompt_number):
|
55 |
#, name, age, gender):
|
56 |
# TODO save user data in the next version
|
57 |
|
@@ -141,7 +141,9 @@ def save_recording_and_meta(project_name, recording, prompt_text, language_code,
|
|
141 |
# get next prompt
|
142 |
prompt = promptset[prompt_number]
|
143 |
|
144 |
-
|
|
|
|
|
145 |
|
146 |
|
147 |
def whisper_model_change(radio_whisper_model):
|
@@ -236,6 +238,7 @@ with block:
|
|
236 |
spk_city = gr.State("unknown")
|
237 |
spk_gender = gr.State("unknown")
|
238 |
spk_nativity = gr.State("unknown")
|
|
|
239 |
cities = sorted(dict_origin["Poland"]["cities"])
|
240 |
|
241 |
|
@@ -302,6 +305,10 @@ with block:
|
|
302 |
whisper_model = init_whisper_model(whisper_model_type)
|
303 |
return [whisper_model_type, whisper_model]
|
304 |
|
|
|
|
|
|
|
|
|
305 |
gr.Markdown(markdown)
|
306 |
|
307 |
with gr.Tabs():
|
@@ -380,19 +387,21 @@ with block:
|
|
380 |
with gr.Accordion(label="Promptset settings"):
|
381 |
radio_prompts_domain = gr.Dropdown(["bridge"], label="Select promptset domain", info="")
|
382 |
#radio_promptset_type = gr.Radio(["New promptset generation", "Existing promptset use"], label="Language", value ="Existing promptset use", info="New promptset is generated using. Requires providing open AI key in general settings tab")
|
383 |
-
var_promptset_size = gr.Textbox(label="
|
384 |
-
button_get_prompts = gr.Button("Save settings and get first prompt
|
385 |
|
386 |
-
|
387 |
-
|
|
|
388 |
|
389 |
radio_prompts_domain.change(fn=change_domain, inputs=radio_prompts_domain, outputs=domain)
|
390 |
#radio_promptset_type.change(fn=change_prompts_type, inputs=radio_promptset_type, outputs=prompts_type)
|
|
|
391 |
|
392 |
-
button_save_and_next = gr.Button("Save
|
393 |
# TODO - add option to generate new promptset on the fly for new domains
|
394 |
-
button_get_prompts.click(get_prompts, inputs=[radio_prompts_domain, var_promptset_size, language_code], outputs = [promptset, prompt_text])
|
395 |
|
396 |
-
button_save_and_next.click(save_recording_and_meta, inputs=[project_name, speech_recording, prompt_text, language_code, spk_name, spk_age, spk_accent, spk_city, spk_gender, spk_nativity, promptset, prompt_number], outputs=[prompt_text, prompt_number, speech_recording])
|
397 |
|
398 |
block.launch()
|
|
|
44 |
return ''.join([random.choice(string.ascii_letters
|
45 |
+ string.digits) for n in range(32)])
|
46 |
|
47 |
+
def get_prompts(domain, size, language_code,prompts_left_info):
|
48 |
print(f"Retrieving prompts for domain {domain} with method: {type} for language_code {language_code} of size {size}")
|
49 |
size = int(size)
|
50 |
promptset = dict_promptset[domain][0:size]
|
51 |
+
prompts_left_info = size
|
52 |
+
return(promptset, promptset[0],prompts_left_info)
|
53 |
|
54 |
+
def save_recording_and_meta(project_name, recording, prompt_text, language_code, spk_name, spk_age, spk_accent, spk_city, spk_gender, spk_nativity, promptset, prompt_number, prompts_left_info):
|
55 |
#, name, age, gender):
|
56 |
# TODO save user data in the next version
|
57 |
|
|
|
141 |
# get next prompt
|
142 |
prompt = promptset[prompt_number]
|
143 |
|
144 |
+
prompts_left_info = prompts_left_info - 1
|
145 |
+
|
146 |
+
return [prompt, prompt_number, None, prompts_left_info]
|
147 |
|
148 |
|
149 |
def whisper_model_change(radio_whisper_model):
|
|
|
238 |
spk_city = gr.State("unknown")
|
239 |
spk_gender = gr.State("unknown")
|
240 |
spk_nativity = gr.State("unknown")
|
241 |
+
spk_name = gr.State("unknown")
|
242 |
cities = sorted(dict_origin["Poland"]["cities"])
|
243 |
|
244 |
|
|
|
305 |
whisper_model = init_whisper_model(whisper_model_type)
|
306 |
return [whisper_model_type, whisper_model]
|
307 |
|
308 |
+
def change_prompts_left(prompts_left, current_prompt, promptset_size):
|
309 |
+
prompts_left = promptset_size - current_prompt
|
310 |
+
return [prompts_left]
|
311 |
+
|
312 |
gr.Markdown(markdown)
|
313 |
|
314 |
with gr.Tabs():
|
|
|
387 |
with gr.Accordion(label="Promptset settings"):
|
388 |
radio_prompts_domain = gr.Dropdown(["bridge"], label="Select promptset domain", info="")
|
389 |
#radio_promptset_type = gr.Radio(["New promptset generation", "Existing promptset use"], label="Language", value ="Existing promptset use", info="New promptset is generated using. Requires providing open AI key in general settings tab")
|
390 |
+
var_promptset_size = gr.Textbox(label="How many recordings you want to make? (max 200)")
|
391 |
+
button_get_prompts = gr.Button("Save settings and get a first prompt")
|
392 |
|
393 |
+
prompts_left_info = gr.Number(placeholder='',label="Recordings left",lines=1, max_lines=1, show_label=True, interactive=False)
|
394 |
+
prompt_text = gr.Textbox(placeholder='Prompt to read during recording',label="Prompt to be read during recording")
|
395 |
+
speech_recording = gr.Audio(source="microphone",label="Select 'record from microphone' and read the prompt displayed above", type="filepath")
|
396 |
|
397 |
radio_prompts_domain.change(fn=change_domain, inputs=radio_prompts_domain, outputs=domain)
|
398 |
#radio_promptset_type.change(fn=change_prompts_type, inputs=radio_promptset_type, outputs=prompts_type)
|
399 |
+
#prompts_left.change(change_prompts_left, inputs = [prompts_left, current_prompt, var_promptset_size], outputs = [prompts_left])
|
400 |
|
401 |
+
button_save_and_next = gr.Button("Save recording and get the next prompt")
|
402 |
# TODO - add option to generate new promptset on the fly for new domains
|
403 |
+
button_get_prompts.click(get_prompts, inputs=[radio_prompts_domain, var_promptset_size, language_code, prompts_left_info], outputs = [promptset, prompt_text, prompts_left_info])
|
404 |
|
405 |
+
button_save_and_next.click(save_recording_and_meta, inputs=[project_name, speech_recording, prompt_text, language_code, spk_name, spk_age, spk_accent, spk_city, spk_gender, spk_nativity, promptset, prompt_number, prompts_left_info], outputs=[prompt_text, prompt_number, speech_recording,prompts_left_info])
|
406 |
|
407 |
block.launch()
|