From 0225443ec8bea6f17675714fd3dd70be49590151 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aleix=20Conchillo=20Flaqu=C3=A9?= Date: Wed, 12 Jun 2024 11:34:25 -0700 Subject: [PATCH] transports(base): always send MetricsFrame --- src/pipecat/transports/base_output.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/pipecat/transports/base_output.py b/src/pipecat/transports/base_output.py index fce554d85..86802d552 100644 --- a/src/pipecat/transports/base_output.py +++ b/src/pipecat/transports/base_output.py @@ -135,6 +135,9 @@ class BaseOutputTransport(FrameProcessor): elif isinstance(frame, StartInterruptionFrame) or isinstance(frame, StopInterruptionFrame): await self._handle_interruptions(frame) await self.push_frame(frame, direction) + elif isinstance(frame, MetricsFrame): + self.send_metrics(frame) + await self.push_frame(frame, direction) elif isinstance(frame, SystemFrame): await self.push_frame(frame, direction) elif isinstance(frame, AudioRawFrame): @@ -182,8 +185,6 @@ class BaseOutputTransport(FrameProcessor): self._set_camera_images(frame.images) elif isinstance(frame, TransportMessageFrame): self.send_message(frame) - elif isinstance(frame, MetricsFrame): - self.send_metrics(frame) else: future = asyncio.run_coroutine_threadsafe( self._internal_push_frame(frame), self.get_event_loop())