Skip to content

Conversation

0xi4o
Copy link
Contributor

@0xi4o 0xi4o commented Aug 13, 2025

  • Adds a "Text to Speech" tab in flow configuration
  • Users can configure two TTS providers — OpenAI and Eleven Labs
    • Configure credentials
    • Select available voices for each provider
    • Play a test audio for each voice
    • Option to automatically play audio after receiving a message from chatflow/agentflow
  • Show speaker button below bot messages
    • Clicking speaker button will use the provided TTS configuration to convert text to audio
    • If "Automatically play audio" is enabled, play audio automatically

@0xi4o 0xi4o marked this pull request as ready for review August 24, 2025 22:15
})
}

const handleTTSStart = (data) => {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

When audio is auto played, the STOP button for chat doesnt go away unless the audio has finished playing:

image

As a user, I would've thought clicking that will stop the audio playing as well, but in fact nothing really happens, it just keep spinning.

Expected:
1.) Either clicking the chat STOP button will stop the audio play OR
2.) Just have the audio STOP button:
image

@HenryHengZJ
Copy link
Contributor

@0xi4o For the test audio, I changed it to this:
image

- Updated the text-to-speech controller to select the active provider based on status instead of the first available provider
- Added audio waveform controls and test audio functionality in the TextToSpeech component, allowing users to play and pause test audio
- Integrated Autocomplete for voice selection in the TextToSpeech component
- Implemented TTS action management in ChatMessage to prevent auto-scrolling during TTS actions
@HenryHengZJ
Copy link
Contributor

HenryHengZJ commented Sep 16, 2025

I've fixed:

1:

  • Bug: Audio doesnt play the active selected one
  • Fix: Updated the text-to-speech controller to select the active provider based on status instead of the first available provider

2:

  • Added audio waveform controls and test audio functionality in the TextToSpeech component, allowing users to play and pause test audio

3:

  • Bug: Selected voice does not displayed correctly
  • Fix: Integrated Autocomplete for voice selection in the TextToSpeech component

4:

  • Bug: When playing audio, it auto scroll to bottom
  • Fix: Implemented TTS action management in ChatMessage to prevent auto-scrolling during TTS actions

5:

  • Bug: When the audio is playing, sending another chat trigger another audio as well, causing mix of audio streaming
  • Fix: Implemented stopAllTTS function calls to halt existing TTS audio before playing new audio or starting a new TTS stream

6:

  • Bug: When select None for TTS, the speech volume button still exists
  • Fix: Updated the condition for enabling TTS providers to exclude the 'none' provider, ensuring only valid providers are considered for text-to-speech functionality.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants