pipecat icon indicating copy to clipboard operation
pipecat copied to clipboard

fix: DeepgramTTSService, let the base class push TTSStoppedFrame

Open markbackman opened this issue 1 month ago • 1 comments

Please describe the changes in your PR. If it is addressing an issue, please reference that as well.

I found this in testing with an RTVI client. After a function call, the test in the voice-ui-kit was not creating a new line. In pulling the thread, I found that emitting the TTSStoppedFrame any time a Flushed message was received from Deepgram was a problem because the LLMFullResponseEndFrame comes after a function call, resulting in a flush (despite no text), causing an errant TTSStoppedFrame to be pushed.

Now, DeepgramTTSService relies on the base class to push the TTSStoppedFrame.

Also, because it's a websocket TTS service, I'm pausing processing during audio playout to prevent overlapping audio.

markbackman avatar Nov 27 '25 16:11 markbackman

Codecov Report

:x: Patch coverage is 0% with 1 line in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
src/pipecat/services/deepgram/tts.py 0.00% 1 Missing :warning:
Files with missing lines Coverage Δ
src/pipecat/services/deepgram/tts.py 0.00% <0.00%> (ø)
:rocket: New features to boost your workflow:
  • :snowflake: Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

codecov[bot] avatar Nov 27 '25 16:11 codecov[bot]