Spaces:
Build error
Build error
Update app.py (#2)
Browse files- Update app.py (642305f132db685d3ece5914e9ea33874ba3fbc4)
app.py
CHANGED
|
@@ -446,6 +446,25 @@ def save_recorded_audio(audio):
|
|
| 446 |
audio.export(file_path, format="wav") # Save the audio as a .wav file
|
| 447 |
return file_path
|
| 448 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 449 |
|
| 450 |
|
| 451 |
|
|
@@ -514,6 +533,14 @@ with demo:
|
|
| 514 |
"""
|
| 515 |
)
|
| 516 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 517 |
########################## Step 1.1: Record Audio ##########################
|
| 518 |
|
| 519 |
gr.Markdown("## Step 1.1: Record an Audio File")
|
|
@@ -533,6 +560,20 @@ with demo:
|
|
| 533 |
outputs=[gen_key_btn],
|
| 534 |
) """
|
| 535 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 536 |
########################## Main document Part ##########################
|
| 537 |
|
| 538 |
gr.Markdown("<hr />")
|
|
|
|
| 446 |
audio.export(file_path, format="wav") # Save the audio as a .wav file
|
| 447 |
return file_path
|
| 448 |
|
| 449 |
+
def click_js():
|
| 450 |
+
return """function audioRecord() {
|
| 451 |
+
var xPathRes = document.evaluate ('//*[@id="audio"]//button', document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null);
|
| 452 |
+
xPathRes.singleNodeValue.click();}"""
|
| 453 |
+
|
| 454 |
+
|
| 455 |
+
def action(btn):
|
| 456 |
+
"""Changes button text on click"""
|
| 457 |
+
if btn == 'Speak': return 'Stop'
|
| 458 |
+
else: return 'Speak'
|
| 459 |
+
|
| 460 |
+
|
| 461 |
+
def check_btn(btn):
|
| 462 |
+
"""Checks for correct button text before invoking transcribe()"""
|
| 463 |
+
if btn != 'Speak': raise Exception('Recording...')
|
| 464 |
+
|
| 465 |
+
|
| 466 |
+
def transcribe():
|
| 467 |
+
return 'Success'
|
| 468 |
|
| 469 |
|
| 470 |
|
|
|
|
| 533 |
"""
|
| 534 |
)
|
| 535 |
|
| 536 |
+
gen_key_btn = gr.Button("Generate the secret and evaluation keys")
|
| 537 |
+
|
| 538 |
+
gen_key_btn.click(
|
| 539 |
+
key_gen_fn,
|
| 540 |
+
inputs=[],
|
| 541 |
+
outputs=[gen_key_btn],
|
| 542 |
+
)
|
| 543 |
+
|
| 544 |
########################## Step 1.1: Record Audio ##########################
|
| 545 |
|
| 546 |
gr.Markdown("## Step 1.1: Record an Audio File")
|
|
|
|
| 560 |
outputs=[gen_key_btn],
|
| 561 |
) """
|
| 562 |
|
| 563 |
+
msg = gr.Textbox()
|
| 564 |
+
audio_box = gr.Audio(label="Audio", source="microphone", type="filepath", elem_id='audio')
|
| 565 |
+
|
| 566 |
+
with gr.Row():
|
| 567 |
+
audio_btn = gr.Button('Speak')
|
| 568 |
+
clear = gr.Button("Clear")
|
| 569 |
+
|
| 570 |
+
audio_btn.click(fn=action, inputs=audio_btn, outputs=audio_btn).\
|
| 571 |
+
then(fn=lambda: None, _js=click_js()).\
|
| 572 |
+
then(fn=check_btn, inputs=audio_btn).\
|
| 573 |
+
success(fn=transcribe, outputs=msg)
|
| 574 |
+
|
| 575 |
+
clear.click(lambda: None, None, msg, queue=False)
|
| 576 |
+
|
| 577 |
########################## Main document Part ##########################
|
| 578 |
|
| 579 |
gr.Markdown("<hr />")
|