File size: 706 Bytes
a5e687b
 
 
 
 
 
5316822
 
a5e687b
 
5316822
 
 
a5e687b
5316822
 
 
 
 
 
 
a5e687b
 
 
 
 
 
 
 
 
5316822
 
 
 
 
 
a5e687b
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
from streaming_stt_nemo import Model

import gradio as gr



LANGUAGES = list(Model.langs.keys())
default_lang = "en"


engines = {
    default_lang: Model(default_lang)
}



def transcribe(audio, language: str):
    if language not in engines:
        engines[language] = Model(language)
        
    model = engines[language]
    text = model.stt_model.transcribe([audio])[0]
    return text




gr.Interface(
    fn=transcribe, 
    inputs=[
        gr.Audio(source="microphone", type="filepath"),
        gr.Radio(
                label="Language",
                choices=LANGUAGES,
                value=default_lang
            )
    ],
    outputs=[
        "textbox"
    ],
    live=True).launch()