feat: persist voice samples to disk, generate VTT, cleanup after analysis
This commit is contained in:
@@ -87,10 +87,15 @@ func main() {
|
||||
// Speech
|
||||
transcriber := speech.NewOpenAIWhisper(cfg.Speech.OpenAIKey, cfg.Speech.WhisperModel, cfg.Speech.Language)
|
||||
converter := speech.NewFFmpegConverter(cfg.Speech.FFmpegPath, "")
|
||||
voiceFileStore, err := speech.NewLocalVoiceFileStore(cfg.Speech.VoiceStorePath)
|
||||
if err != nil {
|
||||
logger.Error("failed to initialise voice file store", "error", err)
|
||||
os.Exit(1)
|
||||
}
|
||||
|
||||
// Use cases
|
||||
textUC := usecase.NewHandleTextMessage(intentRouter, dispatcher, sessionStore, gateway, logger)
|
||||
voiceUC := usecase.NewHandleVoiceMessage(downloader, converter, transcriber, textUC, gateway, logger)
|
||||
voiceUC := usecase.NewHandleVoiceMessage(downloader, converter, transcriber, voiceFileStore, textUC, gateway, logger)
|
||||
|
||||
// Handler + poller
|
||||
handler := interfaces.NewTelegramHandler(textUC, voiceUC, logger)
|
||||
|
||||
Reference in New Issue
Block a user