This commit is contained in:
Konturai DevOps
2026-05-02 01:54:00 +05:00
parent 00d9b241f0
commit af2e78ce20
4 changed files with 70 additions and 35 deletions
+19 -1
View File
@@ -107,10 +107,28 @@ class FillerAudioLibrary:
segments: Iterable[tuple[str, str | None]],
) -> bytes:
clip = bytearray()
for text, language_code in segments:
for i, (text, language_code) in enumerate(segments):
LOGGER.info(
"synthesize_segments: starting segment %s language=%s text=%r",
i,
language_code,
text[:60],
)
segment = await self._synthesize_clip(tts, text, language_code=language_code)
if segment:
clip.extend(segment)
LOGGER.info(
"synthesize_segments: completed segment %s bytes=%s total_bytes=%s",
i,
len(segment),
len(clip),
)
else:
LOGGER.warning(
"synthesize_segments: segment %s produced NO audio; language=%s",
i,
language_code,
)
return bytes(clip)
def _load_from_files(self) -> None:
+16
View File
@@ -1868,6 +1868,7 @@ class CallSession:
len(segment_text),
_preview_text(segment_text),
)
audio_segment_chunk_count = 0
async for audio_chunk in self._tts.synthesize_stream(
one_shot_text_stream(),
language_code=language_code,
@@ -1875,6 +1876,7 @@ class CallSession:
self._ensure_generation(epoch)
if not audio_chunk:
continue
audio_segment_chunk_count += 1
audio_chunk_count += 1
audio_byte_count += len(audio_chunk)
if not first_audio_seen:
@@ -1887,6 +1889,20 @@ class CallSession:
)
self._set_state(SessionState.ASSISTANT_SPEAKING, reason="initial greeting started")
await self.transport.send_audio(audio_chunk)
if audio_segment_chunk_count == 0:
LOGGER.warning(
"realtime session %s initial greeting segment produced NO audio: language=%s",
self.session_id,
language_code,
)
else:
LOGGER.info(
"realtime session %s initial greeting segment completed: language=%s chunks=%s",
self.session_id,
language_code,
audio_segment_chunk_count,
)
await self.transport.flush_audio()
self._ensure_generation(epoch)
LOGGER.info(