LocalVQE v1.4-AEC
이 Soniqo 페이지는 로컬 speech-swift 구현의 LocalVQE v1.4-AEC을 설명합니다. Hugging Face 번들 링크는 통합 메모 뒤에 있습니다.
내부 페이지 우선
랜딩 카드와 문서 메뉴는 먼저 이 페이지로 이동하고, 원본 모델과 번들 링크는 이 페이지 안에 둡니다.
개요
| 모델 | LocalVQE v1.4-AEC |
|---|---|
| 역할 | Explicit-reference acoustic echo cancellation |
| 백엔드 | Native C++ adaptive filter plus stateful Core ML residual mask |
| 출력 | 16 kHz mono Float32 clean-microphone PCM |
| 언어 | Language-independent acoustic processing |
| 라이선스 | Apache-2.0 code and weights |
| 상태 | Streaming and complete-clip speech-swift runtime |
| 소스 | LocalVQE |
| Swift 제품 | SpeechEnhancement |
| CLI / 런타임 | Programmatic LocalVQEEchoCanceller runtime |
사용
아래 스니펫은 현재 speech-swift 저장소의 API 또는 명령과 일치합니다.
import SpeechEnhancement
let aec = try await LocalVQEEchoCanceller.fromPretrained()
let cleanMicrophone = try aec.processFrame(
microphone: microphoneFrame,
reference: playbackReferenceFrame
)
모델 링크
구현 메모
- Microphone and playback reference are separate, synchronized inputs; a mixed system-audio transcript is not a valid reference.
- Streaming accepts exactly 256 mono samples per input at 16 kHz and adds one 16 ms spectral hop of algorithmic latency.
- Reset after dropped frames, device changes, capture restarts, or recording boundaries so stale filter and neural state cannot cross discontinuities.
- A silent reference preserves microphone-only speech; the runtime never falls back to subtracting a mix or muting the microphone.
- Do not blindly cascade this path with Apple Voice Processing I/O because two adaptive cancellers can distort near-end speech.