transports: don't write/read if microphone/speaker not enabled

This commit is contained in:
Aleix Conchillo Flaqué
2024-04-04 14:05:15 -07:00
parent 982c0a0749
commit 951f20c788
2 changed files with 9 additions and 7 deletions

View File

@@ -120,8 +120,7 @@ class DailyTransport(ThreadedTransport, EventHandler):
raise e
def _webrtc_vad_analyze(self):
buffer = self.read_audio_frames(
int(self._vad_samples))
buffer = self.read_audio_frames(int(self._vad_samples))
if len(buffer) > 0:
confidence = self.webrtc_vad.analyze_frames(buffer)
# yeses = int(confidence * 20.0)

View File

@@ -48,13 +48,16 @@ class LocalTransport(ThreadedTransport):
)
def write_frame_to_mic(self, frame: bytes):
self._audio_stream.write(frame)
if self._mic_enabled:
self._audio_stream.write(frame)
def read_frames(self, desired_frame_count):
bytes = self._speaker_stream.read(
desired_frame_count,
exception_on_overflow=False,
)
bytes = b""
if self._speaker_enabled:
bytes = self._speaker_stream.read(
desired_frame_count,
exception_on_overflow=False,
)
return bytes
def _prerun(self):