test_tone/
test_tone.rs

1use {
2    cxx_juce::{
3        juce_audio_devices::{AudioDeviceManager, AudioIODevice},
4        Result, JUCE,
5    },
6    std::{thread::sleep, time::Duration},
7};
8
9fn main() -> Result<()> {
10    let juce = JUCE::initialise();
11    let mut audio_device_manager = AudioDeviceManager::new(&juce);
12    audio_device_manager.initialise(0, 2)?;
13
14    {
15        let mut device = audio_device_manager.current_device().unwrap();
16
17        println!("Name: {}", device.name());
18        println!("Type: {}", device.type_name());
19        println!("Sample rate: {}", device.sample_rate());
20        println!("Buffer size: {}", device.buffer_size());
21        println!(
22            "Available sample rates: {:?}",
23            device.available_sample_rates()
24        );
25        println!(
26            "Available buffer sizes: {:?}",
27            device.available_buffer_sizes()
28        );
29    }
30
31    audio_device_manager.play_test_sound();
32    sleep(Duration::from_secs(1));
33
34    Ok(())
35}