diff options
Diffstat (limited to 'internal/processor/processor.go')
| -rw-r--r-- | internal/processor/processor.go | 25 |
1 files changed, 10 insertions, 15 deletions
diff --git a/internal/processor/processor.go b/internal/processor/processor.go index 3b49cf0..d52ca53 100644 --- a/internal/processor/processor.go +++ b/internal/processor/processor.go @@ -728,17 +728,6 @@ func (p *Processor) isWordFullyProcessed(word string) bool { return true // All required files exist } func (p *Processor) saveAudioAttribution(word, audioFile string, config *audio.Config) error { - // Create attribution text - attribution := fmt.Sprintf("Audio generated by OpenAI TTS\n\n") - attribution += fmt.Sprintf("Bulgarian word: %s\n", word) - attribution += fmt.Sprintf("Model: %s\n", config.OpenAIModel) - attribution += fmt.Sprintf("Voice: %s\n", config.OpenAIVoice) - attribution += fmt.Sprintf("Speed: %.2f\n", config.OpenAISpeed) - - if config.OpenAIInstruction != "" { - attribution += fmt.Sprintf("\nVoice instructions:\n%s\n", config.OpenAIInstruction) - } - // Add preprocessing information cleanedWord := strings.TrimSpace(word) punctuationToRemove := []string{"!", "?", ".", ",", ";", ":", "\"", "'", "(", ")", "[", "]", "{", "}", "-", "—", "–"} @@ -746,12 +735,18 @@ func (p *Processor) saveAudioAttribution(word, audioFile string, config *audio.C cleanedWord = strings.ReplaceAll(cleanedWord, punct, "") } processedText := fmt.Sprintf("%s...", strings.TrimSpace(cleanedWord)) - attribution += fmt.Sprintf("\nProcessed text sent to TTS: %s\n", processedText) - - attribution += fmt.Sprintf("\nGenerated at: %s\n", time.Now().Format("2006-01-02 15:04:05")) + attribution := audio.BuildOpenAIAttribution(audio.AttributionParams{ + Word: word, + Model: config.OpenAIModel, + Voice: config.OpenAIVoice, + Speed: config.OpenAISpeed, + Instruction: config.OpenAIInstruction, + ProcessedText: processedText, + 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) } |
