세션 오디오 처리 및 음성 토글¶
Aura는 세션 기반 오디오 처리 루프를 구현합니다. 상태 관리를 위한 음성 명령은 설정된 녹음 세션 내에서만 활성화됩니다.
구성¶
세션 내부 동작은 다음에 의해 제어됩니다.
ENABLE_WAKE_WORD = True/False(config/settings.py에서)
운영 논리¶
지속적인 백그라운드 리스너와 달리 Aura의 STT 엔진(Vosk)은 녹음 세션이 외부에서(예: 핫키를 통해) 트리거된 경우에만 오디오를 처리합니다.
Aura는 PC용 망원경 🔭입니다. 멀리서 제어하세요!
세션 중 토글(“Teleskop”)¶
ENABLE_WAKE_WORD가 True로 설정된 경우:
트리거: 사용자가 수동으로 세션을 시작합니다.
토글: 세션 중에 “Teleskop”이라고 말하면 ACTIVE와 SUSPENDED 상태 간에 전환됩니다.
동작: 이를 통해 사용자는 오디오 스트림을 종료하지 않고 음성 명령을 사용하여 텍스트 처리를 “일시 중지” 및 “재개”할 수 있습니다.
개인정보 보호 및 효율성¶
ENABLE_WAKE_WORD가 False(기본값)로 설정된 경우:
STT 억제: 일시 중지된 상태에서는 ‘AcceptWaveform’ 및 ‘PartialResult’에 대한 호출을 완전히 건너뜁니다.
개인 정보 보호: 시스템이 명시적인 활성 상태가 아닌 이상 오디오 데이터는 분석되지 않습니다.
리소스 관리: 정지 중에 신경망 분석을 우회하여 CPU 사용량을 최소화합니다.
지연 시간 및 성능¶
즉시 재개:
RawInputStream이 세션 전체에 걸쳐 열려 있기 때문에 SUSPENDED에서 다시 ACTIVE로 전환하면 0ms의 추가 대기 시간이 발생합니다.루프 타이밍: 처리 루프는 ~100ms 간격(
q.get(timeout=0.1))으로 작동하여 거의 즉각적인 응답 시간을 보장합니다.