#![forbid(unsafe_code)]
use mediaway_common::AudioFrame;
use thiserror::Error;
#[derive(Debug, Error, Clone, PartialEq, Eq)]
#[non_exhaustive]
pub enum PlaybackError {
#[error("unsupported playback configuration or output")]
Unsupported,
#[error("no playback backend available")]
NoBackend,
#[error("invalid playback input")]
InvalidInput,
#[error("playback backend failure")]
Backend,
#[error("playback session closed")]
Closed,
#[error("playback access denied")]
AccessDenied,
#[error("playback queue full")]
QueueFull(AudioFrame),
#[error("playback device lost")]
DeviceLost,
}