99from getstream .video .rtc .track_util import PcmData
1010
1111from vision_agents .core import stt
12+ from vision_agents .core .stt import TranscriptResponse
1213
13- if TYPE_CHECKING :
14- from vision_agents .core .edge .types import Participant
14+ from vision_agents .core .edge .types import Participant
1515
1616logger = logging .getLogger (__name__ )
1717
@@ -126,23 +126,12 @@ async def process_audio(
126126 logger .error ("No transcript returned from Fish Audio %s" , pcm_data .duration )
127127 return None
128128
129- # Build metadata from response
130- metadata : Dict [str , Any ] = {
131- "audio_duration_ms" : response .duration ,
132- "language" : self .language or "auto" ,
133- "model_name" : "fish-audio-asr" ,
134- }
135-
136- # Include segments if timestamps were requested
137- if not self .ignore_timestamps and response .segments :
138- metadata ["segments" ] = [
139- {
140- "text" : segment .text ,
141- "start" : segment .start ,
142- "end" : segment .end ,
143- }
144- for segment in response .segments
145- ]
129+ # Build response metadata
130+ response_metadata = TranscriptResponse (
131+ audio_duration_ms = response .duration ,
132+ language = self .language or "auto" ,
133+ model_name = "fish-audio-asr" ,
134+ )
146135
147136 logger .debug (
148137 "Received transcript from Fish Audio" ,
@@ -152,7 +141,7 @@ async def process_audio(
152141 },
153142 )
154143
155- self ._emit_transcript_event (transcript_text , participant , metadata )
144+ self ._emit_transcript_event (transcript_text , participant , response_metadata )
156145
157146 except Exception as e :
158147 logger .error (
@@ -162,12 +151,3 @@ async def process_audio(
162151 # Let the base class handle error emission
163152 raise
164153
165- async def close (self ):
166- """Close the Fish Audio STT service and clean up resources."""
167- if self ._is_closed :
168- logger .debug ("Fish Audio STT service already closed" )
169- return
170-
171- logger .info ("Closing Fish Audio STT service" )
172- await super ().close ()
173-
0 commit comments