use sfml::{
audio::{Music, Sound, SoundBuffer, SoundStatus},
system::{sleep, Time},
};
use std::io::Write;
include!("../example_common.rs");
fn play_sound() {
let buffer = SoundBuffer::from_file(example_res!("canary.wav")).unwrap();
println!("canary.wav :");
println!(" {} seconds", buffer.duration().as_seconds());
println!(" {} samples / sec", buffer.sample_rate());
println!(" {} channels", buffer.channel_count());
let mut sound = Sound::with_buffer(&buffer);
sound.play();
while sound.status() == SoundStatus::PLAYING {
print!("\rPlaying... {:.2}", sound.playing_offset().as_seconds());
let _ = std::io::stdout().flush();
sleep(Time::milliseconds(100));
}
println!();
}
fn play_music() {
let mut music = Music::from_file(example_res!("orchestral.ogg")).unwrap();
println!("orchestral.ogg :");
println!(" {} seconds", music.duration().as_seconds());
println!(" {} samples / sec", music.sample_rate());
println!(" {} channels", music.channel_count());
music.play();
while music.status() == SoundStatus::PLAYING {
print!("\rPlaying... {:.2}", music.playing_offset().as_seconds());
let _ = std::io::stdout().flush();
sleep(Time::milliseconds(100));
}
println!();
}
fn main() {
play_sound();
play_music();
}