flexaudio-os-windows 0.2.0

Windows system and per-process audio capture backend (WASAPI loopback) for flexaudio.
Documentation
  • Coverage
  • 100%
    1 out of 1 items documented0 out of 0 items with examples
  • Size
  • Source code size: 82.03 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 1.22 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 24s Average build duration of successful builds.
  • all releases: 24s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • Studio-Sadola/flexaudio
    0 0 0
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • tsubome

flexaudio-os-windows

Windows audio capture backend for the flexaudio workspace, built on WASAPI via windows-rs 0.54.

Provides two CaptureBackend implementations:

  • WasapiSystemBackend — classic WASAPI loopback (AUDCLNT_STREAMFLAGS_LOOPBACK) that records the full system output mix (all audio flowing to the default render endpoint).
  • WasapiProcessBackend — process-tree loopback via ActivateAudioInterfaceAsync + AUDIOCLIENT_ACTIVATION_PARAMS, which captures audio from a specific PID (and its child processes). Setting exclude_self inverts the filter to capture all system audio except that process tree.

Because WASAPI COM interfaces are !Send, all COM initialization, capture, and teardown happen on a dedicated thread; only Send-safe handles (stop flag, JoinHandle, cached format) cross thread boundaries.

Platform requirement: WASAPI loopback is available on Windows Vista and later; process loopback (WasapiProcessBackend) requires Windows 10 build 20348 or later. The crate compiles as an empty stub on non-Windows targets (#![cfg(target_os = "windows")]).

Most users should use the flexaudio facade crate instead of this one directly. Depend on flexaudio-os-windows only if you are building a custom Windows audio pipeline that needs direct access to WasapiSystemBackend or WasapiProcessBackend.

License

MIT © 2026 tubome / Studio Sadola.