Voice / app.py
NoorIlyas's picture
Update app.py
54b7b41
raw
history blame contribute delete
967 Bytes
import torch
import torchaudio
from transformers import pipeline
import streamlit as st
# Load the pre-trained wav2vec 2.0 model
model = pipeline('voice-recognition', model='facebook/wav2vec2-base-960h')
def recognize_voice(audio_file):
waveform, sample_rate = torchaudio.load(audio_file)
transcript = model(waveform.numpy()[0], sample_rate=sample_rate)
return transcript[0]['sentence']
def main():
st.title("Voice Recognition App")
# Upload audio file
audio_file = st.file_uploader("Upload an audio file", type=["mp3", "wav"])
if audio_file is not None:
st.audio(audio_file, format='audio/wav')
if st.button("Recognize Voice"):
try:
# Perform voice recognition
result = recognize_voice(audio_file)
st.success(f"Recognition Result: {result}")
except Exception as e:
st.error(f"Error: {e}")
if __name__ == "__main__":
main()