pub unsafe extern "C" fn cubeb_stream_init(
    context: *mut cubeb,
    stream: *mut *mut cubeb_stream,
    stream_name: *const i8,
    input_device: *const c_void,
    input_stream_params: *mut cubeb_stream_params,
    output_device: *const c_void,
    output_stream_params: *mut cubeb_stream_params,
    latency_frames: u32,
    data_callback: Option<unsafe extern "C" fn(_: *mut cubeb_stream, _: *mut c_void, _: *const c_void, _: *mut c_void, _: i64) -> i64>,
    state_callback: Option<unsafe extern "C" fn(_: *mut cubeb_stream, _: *mut c_void, _: u32)>,
    user_ptr: *mut c_void
) -> i32