/*
SPDX-License-Identifier: GPL-3.0-or-later
Copyright © 2026 Mike Robeson [dijksterhuis]
*/

use thiserror::Error;

/// Errors for the [`audio`][crate::audio] module
#[derive(Debug, Error)]
pub enum AudioErrors {
    #[error("Aiff Error")]
    Aiff(#[from] super::aiff::AiffErrors),
    #[error("Wav Error")]
    Wav(#[from] super::wav::WavErrors),
    #[error("DSP Error")]
    Dsp(#[from] super::dsp::DspErrors),
    #[error("Could not detect appropriate file extension ('.wav' or '.aiff')")]
    WriteByExt,
    #[error("Invalid number of channels")]
    InvalidChannels,
}
