diff options
| author | Paul Buetow <paul@buetow.org> | 2026-03-08 08:44:11 +0200 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2026-03-08 08:44:11 +0200 |
| commit | 6e2635afc69579fdc895d6b7890538ca98dabaae (patch) | |
| tree | 5db5aa603ab5ac3b372c2ac8512c84627fb063e1 /internal/gui | |
| parent | aa733f9a86b02d7b4d6edd8022a44e4ba417b24c (diff) | |
refactor(task-376): share audio attribution builder
Diffstat (limited to 'internal/gui')
| -rw-r--r-- | internal/gui/generator.go | 21 |
1 files changed, 9 insertions, 12 deletions
diff --git a/internal/gui/generator.go b/internal/gui/generator.go index 14f0f60..09ff534 100644 --- a/internal/gui/generator.go +++ b/internal/gui/generator.go @@ -367,20 +367,17 @@ func (a *Application) generateImagesWithPrompt(ctx context.Context, word string, // saveAudioAttribution saves attribution info for generated audio func (a *Application) saveAudioAttribution(word, audioFile, voice string, speed float64) error { - attribution := fmt.Sprintf("Audio generated by OpenAI TTS\n\n") - attribution += fmt.Sprintf("Bulgarian word: %s\n", word) - attribution += fmt.Sprintf("Model: %s\n", a.audioConfig.OpenAIModel) - attribution += fmt.Sprintf("Voice: %s\n", voice) - attribution += fmt.Sprintf("Speed: %.2f\n", speed) - - if a.audioConfig.OpenAIInstruction != "" { - attribution += fmt.Sprintf("\nVoice instructions:\n%s\n", a.audioConfig.OpenAIInstruction) - } - - attribution += fmt.Sprintf("\nGenerated at: %s\n", time.Now().Format("2006-01-02 15:04:05")) + attribution := audio.BuildOpenAIAttribution(audio.AttributionParams{ + Word: word, + Model: a.audioConfig.OpenAIModel, + Voice: voice, + Speed: speed, + Instruction: a.audioConfig.OpenAIInstruction, + GeneratedAt: time.Now(), + }) // Save to file - attrPath := strings.TrimSuffix(audioFile, filepath.Ext(audioFile)) + "_attribution.txt" + attrPath := audio.AttributionPath(audioFile) if err := os.WriteFile(attrPath, []byte(attribution), 0644); err != nil { return fmt.Errorf("failed to write audio attribution file: %w", err) } |
