#[cfg(any(feature = "audio-viz", feature = "audio-viz-cpal"))]
mod analyzer;
#[cfg(all(feature = "audio-viz", target_os = "linux"))]
mod pipewire_capture;
#[cfg(feature = "audio-viz-cpal")]
#[allow(dead_code)]
mod capture;
#[cfg(all(feature = "audio-viz", target_os = "linux"))]
pub use pipewire_capture::PipeWireCapture as AudioCaptureManager;
#[cfg(all(
feature = "audio-viz-cpal",
not(all(feature = "audio-viz", target_os = "linux"))
))]
pub use capture::AudioCaptureManager;
#[cfg(any(feature = "audio-viz", feature = "audio-viz-cpal"))]
#[allow(unused_imports)]
pub use analyzer::SpectrumData;
#[cfg(not(any(
all(feature = "audio-viz", target_os = "linux"),
feature = "audio-viz-cpal"
)))]
#[derive(Clone, Default)]
pub struct SpectrumData {
pub bands: [f32; 12],
pub peak: f32,
}
#[cfg(not(any(
all(feature = "audio-viz", target_os = "linux"),
feature = "audio-viz-cpal"
)))]
pub struct AudioCaptureManager;
#[cfg(not(any(
all(feature = "audio-viz", target_os = "linux"),
feature = "audio-viz-cpal"
)))]
impl AudioCaptureManager {
pub fn new() -> Option<Self> {
None
}
pub fn get_spectrum(&self) -> Option<SpectrumData> {
None
}
pub fn is_active(&self) -> bool {
false
}
}