[实时转写]:完成录音期间转写显示,包含partial事件、本地streaming STT和终端实时反馈

This commit is contained in:
mkbk
2026-06-17 22:16:56 +08:00
parent a64bb86da4
commit a77a172412
16 changed files with 331 additions and 17 deletions
+7 -2
View File
@@ -15,6 +15,7 @@ CAPTURE_STARTED = "capture_started"
SPEECH_STARTED = "speech_started"
SPEECH_ENDED = "speech_ended"
STT_STARTED = "stt_started"
TRANSCRIPT_PARTIAL = "transcript_partial"
TRANSCRIPT_FINAL = "transcript_final"
LLM_STARTED = "llm_started"
TTS_STARTED = "tts_started"
@@ -58,8 +59,12 @@ class PipelineEventBus:
def dispatch_pipeline_event(reporter: Any, event: PipelineEvent) -> None:
if event.type == TRANSCRIPT_FINAL:
reporter.transcript(str(event.payload.get("text", event.message)), final=True, turn_id=event.turn_id)
if event.type in {TRANSCRIPT_PARTIAL, TRANSCRIPT_FINAL}:
reporter.transcript(
str(event.payload.get("text", event.message)),
final=event.type == TRANSCRIPT_FINAL,
turn_id=event.turn_id,
)
return
if event.type == STAGE_ERROR:
error = event.payload.get("error")