#![forbid(unsafe_code)]
#![warn(missing_docs)]
#![allow(
clippy::cast_possible_truncation,
clippy::cast_precision_loss,
clippy::cast_sign_loss,
clippy::cast_lossless,
clippy::cast_possible_wrap,
clippy::must_use_candidate,
clippy::missing_errors_doc,
clippy::missing_panics_doc,
clippy::unused_self,
clippy::doc_markdown,
clippy::needless_return,
clippy::similar_names,
clippy::items_after_statements,
clippy::derive_partial_eq_without_eq,
clippy::match_same_arms,
clippy::trivially_copy_pass_by_ref,
clippy::return_self_not_must_use,
clippy::unnecessary_wraps,
clippy::too_many_lines,
clippy::enum_variant_names,
clippy::unnecessary_cast,
clippy::bool_to_int_with_if,
clippy::string_lit_as_bytes,
clippy::explicit_iter_loop,
dead_code,
clippy::single_match,
clippy::if_same_then_else,
clippy::collapsible_else_if,
clippy::single_match_else,
clippy::comparison_to_empty,
clippy::bool_comparison,
clippy::style,
clippy::float_cmp,
clippy::struct_excessive_bools,
clippy::wildcard_imports,
clippy::redundant_closure,
clippy::manual_find,
clippy::manual_memcpy,
clippy::float_equality_without_abs,
clippy::bind_instead_of_map,
clippy::option_map_unit_fn,
clippy::mixed_read_write_in_expression,
clippy::unnecessary_map_or,
clippy::match_like_matches_macro,
clippy::inefficient_to_string,
clippy::default_constructed_unit_structs,
clippy::never_loop,
clippy::missing_const_for_fn,
clippy::explicit_write,
clippy::range_plus_one,
clippy::unused_unit,
clippy::clone_on_copy,
clippy::type_complexity,
clippy::pedantic,
clippy::approx_constant
)]
pub mod audio_clock;
pub mod audio_format;
pub mod audio_graph;
pub mod audio_metadata;
pub mod audio_pipeline;
pub mod biquad;
pub mod channel_layout;
pub mod codec;
pub mod compressor;
pub mod crossfade;
pub mod delay_line;
pub mod description;
pub mod dither;
pub mod dsp;
pub mod effects;
pub mod envelope;
pub mod error;
pub mod fingerprint;
pub mod format_convert;
pub mod frame;
pub mod gate;
pub mod jitter_buffer;
pub mod loudness;
pub mod loudness_meter;
pub mod loudness_simple;
pub mod meters;
pub mod mixing;
pub mod noise_gate;
pub mod pan_law;
pub mod pitch;
pub mod resample;
pub mod resampler;
pub mod sample_buffer;
pub mod silence_detect;
pub mod spatial;
pub mod spectrum;
pub mod stereo_widener;
pub mod stream_buffer;
pub mod sync;
pub mod traits;
#[cfg(feature = "opus")]
pub mod opus;
#[cfg(feature = "vorbis")]
pub mod vorbis;
#[cfg(feature = "flac")]
pub mod flac;
#[cfg(feature = "mp3")]
pub mod mp3;
#[cfg(feature = "pcm")]
pub mod pcm;
pub use error::{AudioError, AudioResult};
pub use frame::{AudioBuffer, AudioFrame, Channel, ChannelLayout};
pub use resample::{Resampler, ResamplerQuality};
pub use traits::{
AudioDecoder, AudioDecoderConfig, AudioEncoder, AudioEncoderConfig, EncodedAudioPacket,
};
#[cfg(feature = "opus")]
pub use opus::{OpusDecoder, OpusEncoder};
#[cfg(feature = "vorbis")]
pub use vorbis::{VorbisDecoder, VorbisEncoder};
#[cfg(feature = "flac")]
pub use flac::{FlacDecoder, FlacEncoder};
#[cfg(feature = "mp3")]
pub use mp3::Mp3Decoder;
#[cfg(feature = "pcm")]
pub use pcm::{PcmDecoder, PcmEncoder};