File size: 968 Bytes
2befe53
 
64f24b5
624e848
2befe53
 
6f88b99
2befe53
 
 
c508458
2befe53
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
c508458
a76862a
 
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
import openai
import whisper
import os



#need to make a change to be able to push

#This is another alternative, but this block allows for the detection of the language and it also provides lowever-level access to the model


def transcribe(aud_inp, whisper_lang):
    if aud_inp is None:
        return ''
    model = whisper.load_audo('base')
    #load audo and pad/trim it to fit 30seconds
    audio = whisper.load_audio(aud_inp)
    audio = whisper.pad_or_trim(audio)
    #make log-Mel spectrogram and move to the same devcice as the model
    mel = whisper.log_mel_spectogram(audio).to(model.device)
    #detect the spoken language
    _,probs = model.detect_language(mel)
    print(f'Detected language: {max(probs, key=probs.get)}')
    #decode the audio
    options = whisper.DecodingOptions()
    result = whisper.decode(model, mel, options)
    print(result.text)
    return result 

if __name__ == '__main__':
    transcribe('audio_file_path', 'whisper-1')