ㄷㅣㅆㅣ's Amusement
[AI] AVS Architecture - Alexa Voice Service SDK 본문
[AI] AVS Architecture - Alexa Voice Service SDK
반응형
AVS
Architecture of Alexa Voice Service
- Audio Signal Processor
- Third Party Module - Acoustic Echo Canceler, Beam Foaming, Vocie Activity Detection, Dynamic Range Compression 등 오디오 처리를 위한 처리.
- Shared Data Stream
- Ring buffer (Circular Buffer)로 구성되어 하나의 음성 입력을 여러 출력으로 내보낼 수 있도록 설계됨.
- 버퍼의 형태는 Android AudioFlinger <-> HAL 의 방식과 비슷하지만 multi read가 추가지원되는 것으로 예상됨.
- Key Word Detection
- Sensory의 truely hands free - trigger와 동일.
- 특정 wake word model을 처리하는 부분과 wake word 발화를 감지하는 부분으로 이루어져있다.
- 누구 서비스의 "아리아" triggering.
- Alexa Communication Libary
- Alexa server와 연동하여 음성데이터를 전달하고 그에 알맞은 diractive를 전달받음.
- HTTP/2를 이용한 통신
- JSON format text 또는 audio binary.
- NUGUCoreSDK와 동일함.
- Alexa Directive Sequencer Library
- Directive를 수행시키거나 각각의 sequence와 lifecycle을 관리,
- NUGUServiceSDK의 가장 큰 부분중 하나인 AISStateManager와 유사할 것으로 보임.
- Capability Agent
- SpeechRecognizer - The interface for speech capture.
- SpeechSynthesizer - The interface for Alexa speech output.
- Alerts - The interface for setting, stopping, and deleting timers and alarms.
- AudioPlayer - The interface for managing and controlling audio playback.
- Notifications - The interface for displaying notifications indicators.
- PlaybackController - The interface for navigating a playback queue via GUI or buttons.
- Speaker - The interface for volume control, including mute and unmute.
- System - The interface for communicating product status/state to AVS.
- TemplateRuntime - The interface for rendering visual metadata.
- Activity FocusManager Library
- 각각의 Capability Agent는 Audio channel을 가지는데, 여러 채널들이 한꺼번에 진행될 수는 있으나 foreground channel은 오직 한개만 존재함.
- 따라서 여러 채널간에 우선순위에 따라 foreground channel 한 개를 선정해야 하므로 이것으로 관리하는 모듈을 따로 두었다.
- 대략적으로 Dialog > Alerts > Content 순으로 우선순위를 가짐.
반응형
'Programming' 카테고리의 다른 글
[VoIP] WebRTC Components (0) | 2021.05.16 |
---|---|
네이버 웹마스터 도구에서 robotDenied 오류 해결 (1) | 2015.11.26 |
huffman code 작성법 (0) | 2015.11.21 |
엑박의 압박 (0) | 2015.10.31 |
Comments