play/
play.rs

1use awedio::Sound;
2
3fn main() -> Result<(), Box<dyn std::error::Error>> {
4    let Some(file_path) = args() else {
5        eprintln!("usage: FILE_PATH");
6        std::process::exit(2);
7    };
8
9    let (mut manager, _backend) = awedio::start()?;
10    let (sound, notifier) = awedio::sounds::open_file(file_path)?.with_completion_notifier();
11
12    manager.play(Box::new(sound));
13    let _ = notifier.recv();
14
15    Ok(())
16}
17
18fn args() -> Option<String> {
19    let mut args = std::env::args();
20    args.next()?;
21    args.next()
22}