refactor: stricter domain: voice-connection
This commit is contained in:
@@ -7,12 +7,15 @@ Bridges the application layer to the low-level realtime infrastructure for voice
|
||||
```
|
||||
voice-connection/
|
||||
├── application/
|
||||
│ ├── voice-connection.facade.ts Proxy to RealtimeSessionFacade for voice and camera signals/methods
|
||||
│ ├── voice-activity.service.ts RMS-based speaking detection via AnalyserNode (per-user signals)
|
||||
│ └── voice-playback.service.ts Per-peer GainNode chain, 0-200% volume, deafen support
|
||||
│ ├── facades/
|
||||
│ │ └── voice-connection.facade.ts Proxy to RealtimeSessionFacade for voice and camera signals/methods
|
||||
│ └── services/
|
||||
│ ├── voice-activity.service.ts RMS-based speaking detection via AnalyserNode (per-user signals)
|
||||
│ └── voice-playback.service.ts Per-peer GainNode chain, 0-200% volume, deafen support
|
||||
│
|
||||
├── domain/
|
||||
│ └── voice-connection.models.ts Re-exports LatencyProfile, VoiceStateSnapshot from shared-kernel / realtime
|
||||
│ └── models/
|
||||
│ └── voice-connection.model.ts Re-exports LatencyProfile, VoiceStateSnapshot from shared-kernel / realtime
|
||||
│
|
||||
└── index.ts Barrel exports
|
||||
```
|
||||
@@ -31,11 +34,11 @@ graph TD
|
||||
VAS --> VCF
|
||||
VPS --> VCF
|
||||
|
||||
click VCF "application/voice-connection.facade.ts" "Proxy to RealtimeSessionFacade" _blank
|
||||
click VAS "application/voice-activity.service.ts" "RMS-based speaking detection" _blank
|
||||
click VPS "application/voice-playback.service.ts" "Per-peer GainNode volume chain" _blank
|
||||
click VCF "application/facades/voice-connection.facade.ts" "Proxy to RealtimeSessionFacade" _blank
|
||||
click VAS "application/services/voice-activity.service.ts" "RMS-based speaking detection" _blank
|
||||
click VPS "application/services/voice-playback.service.ts" "Per-peer GainNode volume chain" _blank
|
||||
click RSF "../../infrastructure/realtime/realtime-session.service.ts" "Low-level WebRTC composition root" _blank
|
||||
click Models "domain/voice-connection.models.ts" "Re-exported types" _blank
|
||||
click Models "domain/models/voice-connection.model.ts" "Re-exported types" _blank
|
||||
```
|
||||
|
||||
## Voice connection facade
|
||||
@@ -67,8 +70,8 @@ graph LR
|
||||
RMS -- yes --> Speaking[speakingSignal = true]
|
||||
RMS -- no, 8 frames --> Silent[speakingSignal = false]
|
||||
|
||||
click Stream "application/voice-activity.service.ts" "VoiceActivityService.trackStream()" _blank
|
||||
click Poll "application/voice-activity.service.ts" "VoiceActivityService.poll()" _blank
|
||||
click Stream "application/services/voice-activity.service.ts" "VoiceActivityService.trackStream()" _blank
|
||||
click Poll "application/services/voice-activity.service.ts" "VoiceActivityService.poll()" _blank
|
||||
```
|
||||
|
||||
| Parameter | Value |
|
||||
|
||||
Reference in New Issue
Block a user