Implemented core logic for macOS audio device recovery when devices randomly stop during long sessions (>48h). Addresses silent failures in CoreAudio/ScreenCaptureKit.
// Key addition to AudioManager
impl AudioManager {
pub async fn hard_reset_device(&self, device_name: &str) -> Result<()> {
self.stop_device(device_name).await?;
// macOS-specific cleanup
#[cfg(target_os = "macos")]
macos_audio::release_device_resources(device_name).await?;
let device = parse_audio_device(device_name)?;
self.start_device(&device).await?;
info!("Hard reset completed for {}", device_name);
Ok(())
}
}
Kushagra Singhal
@kushagra21-afk
screenpi.pe
@mediar-ai