我正在使用以下Gradio示例代码来转录我的音频:
from transformers import pipeline
p = pipeline("automatic-speech-recognition")
import gradio as gr
def transcribe(audio):
text = p(audio)["text"]
return text
gr.Interface(
fn=transcribe,
inputs=gr.Audio(source="microphone", type="filepath"),
outputs="text").launch()
但是,用户必须开始录制音频,停止录制音频,并提交音频。当用户按下停止录制音频时,我可以自动提交音频吗?
发布于 2022-12-02 19:33:17
您可以使用自动提交,这样的东西应该可以工作。
#auto submit after 5 seconds
gr.Interface(
fn=transcribe,
inputs=gr.Audio(source="microphone", type="filepath"),
outputs="text",
auto_submit=True,
auto_submit_duration=5).launch()
发布于 2022-12-02 19:40:04
我找到了解决办法。我把它放在这里供其他人参考。
import gradio as gr
from transformers import pipeline
p = pipeline("automatic-speech-recognition")
def transcribe(audio):
text = p(audio)["text"]
return text
gr.Interface(
fn=transcribe,
inputs=gr.Audio(source="microphone", type="filepath"),
outputs="text",live=True).launch()
添加live=True是为了达到这个目的。
https://stackoverflow.com/questions/74660611
复制相似问题