feat(audio,android): add MobileVoiceAudioBackend + AndroidVoiceUnit (oboe-rs)

Add the cross-platform MobileVoiceAudioBackend trait, plus the
Android implementation AndroidVoiceUnit backed by oboe-rs 0.6.x.
AndroidVoiceUnit owns AAudio stream setup with VoiceCommunication
usage/preset, performance-mode LowLatency request, sharing-mode
Exclusive best-effort, hardware AEC/NS/AGC engagement via JNI, and
the diagnostics snapshot publish path used by SDD-116 evidence
collection.

Cargo.toml: adds oboe = "0.6" under the Android target.

Trace: SDD-111, SDD-112, SDD-113, SRS-210, SRS-211, SRS-212, SRS-213,
SRS-214.
This commit is contained in:
EdisonJwa
2026-05-18 10:38:19 +08:00
parent da0b208075
commit 76c6d1d40c
5 changed files with 1709 additions and 0 deletions
+4
View File
@@ -30,6 +30,7 @@
mod engine;
pub mod mode_stack;
pub mod mobile_voice_backend;
pub mod ptt;
pub mod ptt_backends;
pub mod release_tail;
@@ -42,6 +43,9 @@ mod sdl_output;
#[cfg(target_os = "ios")]
mod ios_voice_unit;
#[cfg(target_os = "android")]
pub mod android_voice_unit;
pub use engine::{AudioEngine, AudioEngineConfig};
pub use ptt::{AudioTransmitGate, MissedKeyUpWatchdog, PttBackendDescriptor, PttCapabilityLevel};
pub use ptt_backends::{