create stub AMPS handset emulator

This commit is contained in:
2025-03-25 14:20:47 -04:00
parent 483e9d9475
commit 9aeb9ea3f4
5 changed files with 1029 additions and 0 deletions

View File

@@ -0,0 +1,20 @@
use cpal::{StreamConfig, traits::{DeviceTrait, HostTrait}};
pub fn play_audio(signal: &[f32]) -> Result<(), Box<dyn std::error::Error>> {
let host = cpal::default_host();
let device = host.default_output_device()?.config();
let config = device.default_output_config()?.config();
let stream = device.build_output_stream(
&config,
move |data: &mut [f32], _: &cpal::OutputCallbackInfo| {
data.copy_from_slice(&signal[..data.len()]);
},
|err| eprintln!("Error: {:?}", err),
None
)?;
stream.play()?;
std::thread::sleep(std::time::Duration::from_secs(5));
Ok(())
}