Merge pull request #1392 from pipecat-ai/mb/fix-google-stt-timeout
Fix an issue where GoogleSTTService would timeout due to stream inact…
This commit is contained in:
@@ -126,6 +126,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|
||||||
|
- Fixed an issue with the `GoogleSTTService` where stream timeouts during
|
||||||
|
periods of inactivity were causing connection failures. The service now
|
||||||
|
properly detects timeout errors and handles reconnection gracefully,
|
||||||
|
ensuring continuous operation even after periods of silence or when using an
|
||||||
|
`STTMuteFilter`.
|
||||||
|
|
||||||
- Fixed an issue in `RimeTTSService` where the last line of text sent didn't
|
- Fixed an issue in `RimeTTSService` where the last line of text sent didn't
|
||||||
result in an audio output being generated.
|
result in an audio output being generated.
|
||||||
|
|
||||||
|
|||||||
@@ -2046,7 +2046,8 @@ class GoogleSTTService(STTService):
|
|||||||
break
|
break
|
||||||
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logger.error(f"Stream error, attempting to reconnect: {e}")
|
logger.warning(f"{self} Reconnecting: {e}")
|
||||||
|
|
||||||
await asyncio.sleep(1) # Brief delay before reconnecting
|
await asyncio.sleep(1) # Brief delay before reconnecting
|
||||||
self._stream_start_time = int(time.time() * 1000)
|
self._stream_start_time = int(time.time() * 1000)
|
||||||
continue
|
continue
|
||||||
@@ -2099,3 +2100,6 @@ class GoogleSTTService(STTService):
|
|||||||
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logger.error(f"Error processing Google STT responses: {e}")
|
logger.error(f"Error processing Google STT responses: {e}")
|
||||||
|
|
||||||
|
# Re-raise the exception to let it propagate (e.g. in the case of a timeout, propagate to _stream_audio to reconnect)
|
||||||
|
raise
|
||||||
|
|||||||
Reference in New Issue
Block a user