summaryrefslogtreecommitdiff
path: root/src/audio/mod.rs
blob: 5aae19af9ec2d61e0fdc4da79244fb6672e3317c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
mod mpv;
mod rodio;

#[allow(dead_code)]
pub enum AudioBackends {
    Mpv(mpv::Mpv),
    Rodio(rodio::Rodio),
}

pub fn get_backend() -> AudioBackends {
    // AudioBackends::Mpv(mpv::Mpv {})
    AudioBackends::Rodio(rodio::Rodio {})
}

impl AudioBackends {
    pub async fn play(&self, url: &str) {
        match self {
            AudioBackends::Mpv(m) => m.play(url).await,
            AudioBackends::Rodio(r) => r.play(url).await,
        }
    }
}