Spaces:
Sleeping
Sleeping
import os | |
import time | |
from modules.emotion import Emotion | |
from modules.transcription import Transcription | |
transcription_model = "tiny.en" | |
emotion_model = "joeddav/distilbert-base-uncased-go-emotions-student" | |
transcription_obj = Transcription(model_name=transcription_model) | |
emotion_obj = Emotion(model_name=emotion_model) | |
class Module: | |
def predict(self, audio_path: str) -> str: | |
"""Loads audio, gets transcription and detects emotion | |
Args: | |
audio_path (str): path to the audio file | |
Returns: | |
str: emotion | |
""" | |
print("Getting transcription...") | |
start_time = time.time() | |
if text := transcription_obj.transcribe(audio_path=audio_path): | |
print("Text: ", text, time.time() - start_time) | |
start_time = time.time() | |
emotion = emotion_obj.detect_emotion(text=text) | |
print("Emotion: ", emotion, time.time() - start_time) | |
return text, emotion | |
return None | |