Spaces:
Runtime error
Runtime error
File size: 1,510 Bytes
2931768 461ed82 2931768 65071f8 461ed82 65071f8 461ed82 2931768 461ed82 2931768 461ed82 2931768 461ed82 |
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 42 43 44 45 46 47 48 49 50 51 52 53 54 |
import json
import os
import requests
import json
import streamlit as st
EXAMPLE_PATH = []
for f in os.listdir('data/'):
EXAMPLE_PATH.append(f)
st.sidebar.image('img/love_emoji_128.png')
st.sidebar.title('EMOVoice')
st.sidebar.write('Welcome to EMOVoice, a tool for Speech Emotion Recognition based on the Wav2Vec2 model.')
st.title('EMOVoice')
st.write("This is a work in progress, stay tuned!")
st.sidebar.subheader('Model input')
input_mode = st.sidebar.radio('Select your input mode:', ['Upload audio', 'Select example'])
file = None
if input_mode == 'Upload audio':
file = st.sidebar.file_uploader("Choose a file", type=['mp3', 'mp4', 'wav', 'flac'])
file_size = file.size if file else None
elif input_mode == 'Select example':
example_selected = st.sidebar.selectbox('Choose an audio example', EXAMPLE_PATH)
file = open('data/' + example_selected, 'rb')
file_size = os.stat('data/' + example_selected).st_size
if file is not None:
st.write('Audio added!')
audio_bytes = file.read()
st.audio(audio_bytes)
url = "https://api-inference.huggingface.co/models/ehcalabres/wav2vec2-lg-xlsr-en-speech-emotion-recognition"
payload=file
headers = {
'Content-Type': 'audio/mp3',
'Authorization': 'Bearer ' + st.secrets['API_TOKEN']
}
response = requests.request("POST", url, headers=headers, data=audio_bytes)
response.request
decoded_response = json.loads(response.text)
st.write(decoded_response)
file.close()
|