#![forbid(unsafe_code)]
pub mod error;
mod render;
mod session;
mod session_types;
mod support;
pub use error::StretchError;
pub use render::{RenderReport, RenderedAudio, render};
pub use session::{PreparedSession, StreamSession};
pub use session_types::*;
#[cfg(feature = "io")]
mod audio;
#[cfg(feature = "io")]
pub use audio::{AudioBuffer, Channels, FrameIter, Sample};
#[cfg(feature = "io")]
pub use support::window::WindowType;
#[cfg(feature = "io")]
pub mod io;
#[cfg(all(feature = "analysis", feature = "io"))]
pub use io::tsa::*;
#[cfg(feature = "analysis")]
pub use timestretch_analysis::*;