(
_in_ref_con: *mut c_void,
_io_action_flags: *mut u32,
_in_time_stamp: *const c_void,
_in_bus_number: u32,
in_number_frames: u32,
io_data: *mut AudioBufferList,
)
| 1705 | static mut AUDIO_UNIT: Option<AudioUnitInstance> = None; |
| 1706 | |
| 1707 | unsafe extern "C" fn audio_render_callback( |
| 1708 | _in_ref_con: *mut c_void, |
| 1709 | _io_action_flags: *mut u32, |
| 1710 | _in_time_stamp: *const c_void, |
| 1711 | _in_bus_number: u32, |
| 1712 | in_number_frames: u32, |
| 1713 | io_data: *mut AudioBufferList, |
| 1714 | ) -> OSStatus { |
| 1715 | let buffer_list = &mut *io_data; |
| 1716 | let buffer = &mut buffer_list.buffers[0]; |
| 1717 | let num_samples = in_number_frames as usize * 2; |
| 1718 | let output = std::slice::from_raw_parts_mut(buffer.data as *mut f32, num_samples); |
| 1719 | ENGINE.get_mut().map(|eng| { eng.audio.mix_output(output); }); |
| 1720 | 0 |
| 1721 | } |
| 1722 | |
| 1723 | #[no_mangle] |
| 1724 | pub extern "C" fn bloom_init_audio() { |
nothing calls this directly
no test coverage detected