diff --git a/src/pipecat/services/ai_services.py b/src/pipecat/services/ai_services.py index 0a03b2eaa..e49452d38 100644 --- a/src/pipecat/services/ai_services.py +++ b/src/pipecat/services/ai_services.py @@ -19,6 +19,7 @@ from pipecat.frames.frames import ( EndFrame, ErrorFrame, Frame, + InterimTranscriptionFrame, LLMFullResponseEndFrame, StartFrame, StartInterruptionFrame, @@ -291,8 +292,11 @@ class TTSService(AIService): async def process_frame(self, frame: Frame, direction: FrameDirection): await super().process_frame(frame, direction) - - if isinstance(frame, TextFrame) and not isinstance(frame, TranscriptionFrame): + if ( + isinstance(frame, TextFrame) + and not isinstance(frame, InterimTranscriptionFrame) + and not isinstance(frame, TranscriptionFrame) + ): await self._process_text_frame(frame) elif isinstance(frame, StartInterruptionFrame): await self._handle_interruption(frame, direction)