summaryrefslogtreecommitdiff
path: root/internal/processor
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2026-04-01 22:31:06 +0300
committerPaul Buetow <paul@buetow.org>2026-04-01 22:31:06 +0300
commitfaa2465955445ac1cb1461eb70a98280d32fbf9a (patch)
tree2481479f774e0c5f117bb311cd189a217d7a6439 /internal/processor
parente5623423c85b3cbe5c96943e94b07ccafa04368a (diff)
Wire Gemini audio into GUI
Diffstat (limited to 'internal/processor')
-rw-r--r--internal/processor/processor.go5
-rw-r--r--internal/processor/processor_test.go9
2 files changed, 13 insertions, 1 deletions
diff --git a/internal/processor/processor.go b/internal/processor/processor.go
index 813d5b3..7d18aab 100644
--- a/internal/processor/processor.go
+++ b/internal/processor/processor.go
@@ -629,10 +629,13 @@ func (p *Processor) guiConfigForRunMode() *gui.Config {
}
return &gui.Config{
- AudioFormat: p.flags.AudioFormat,
+ AudioFormat: p.effectiveAudioFormat(),
+ AudioProvider: p.audioProviderName(),
ImageProvider: imageProvider,
OpenAIKey: cli.GetOpenAIKey(),
GoogleAPIKey: cli.GetGoogleAPIKey(),
+ GeminiTTSModel: p.geminiTTSModel(),
+ GeminiVoice: p.geminiVoice(),
TranslationProvider: translation.Provider(viper.GetString("translation.provider")),
PhoneticProvider: phonetic.Provider(viper.GetString("phonetic.provider")),
AutoPlay: !p.flags.NoAutoPlay, // Invert the flag (--no-auto-play disables auto-play)
diff --git a/internal/processor/processor_test.go b/internal/processor/processor_test.go
index 77a9344..2a4b331 100644
--- a/internal/processor/processor_test.go
+++ b/internal/processor/processor_test.go
@@ -226,9 +226,15 @@ func TestGUIConfigForRunModeUsesNanoBananaDefaultWhenImageAPIIsNotSpecified(t *t
if guiConfig.ImageProvider != gui.DefaultConfig().ImageProvider {
t.Fatalf("guiConfig.ImageProvider = %q, want GUI default %q", guiConfig.ImageProvider, gui.DefaultConfig().ImageProvider)
}
+ if guiConfig.AudioProvider != "gemini" {
+ t.Fatalf("guiConfig.AudioProvider = %q, want %q", guiConfig.AudioProvider, "gemini")
+ }
if guiConfig.AudioFormat != "wav" {
t.Fatalf("guiConfig.AudioFormat = %q, want %q", guiConfig.AudioFormat, "wav")
}
+ if guiConfig.GeminiTTSModel != "gemini-2.5-flash-preview-tts" {
+ t.Fatalf("guiConfig.GeminiTTSModel = %q, want %q", guiConfig.GeminiTTSModel, "gemini-2.5-flash-preview-tts")
+ }
if guiConfig.GoogleAPIKey != "test-google-key" {
t.Fatalf("guiConfig.GoogleAPIKey = %q, want %q", guiConfig.GoogleAPIKey, "test-google-key")
}
@@ -254,6 +260,9 @@ func TestGUIConfigForRunModeHonorsExplicitImageAPI(t *testing.T) {
if guiConfig.ImageProvider != "openai" {
t.Fatalf("guiConfig.ImageProvider = %q, want %q", guiConfig.ImageProvider, "openai")
}
+ if guiConfig.AudioProvider != "gemini" {
+ t.Fatalf("guiConfig.AudioProvider = %q, want %q", guiConfig.AudioProvider, "gemini")
+ }
if guiConfig.GoogleAPIKey != "test-google-key" {
t.Fatalf("guiConfig.GoogleAPIKey = %q, want %q", guiConfig.GoogleAPIKey, "test-google-key")
}