AURenderCallback

Type Alias AURenderCallback 

Source
pub type AURenderCallback = Option<unsafe extern "C-unwind" fn(NonNull<c_void>, NonNull<AudioUnitRenderActionFlags>, NonNull<AudioTimeStamp>, u32, u32, *mut AudioBufferList) -> i32>;
Available on crate features AUComponent and objc2-core-audio-types only.
Expand description

This is the prototype for a function callback Proc that is used both with the AudioUnit render notification API and the render input callback. See kAudioUnitProperty_SetRenderCallback property or AudioUnitAddRenderNotify. This callback is part of the process of a call to AudioUnitRender. As a notification it is called either before or after the audio unit’s render operations. As a render input callback, it is called to provide input data for the particular input bus the callback is attached too.

Parameter inRefCon: The client data that is provided either with the AURenderCallbackStruct or as specified with the Add API call

Parameter ioActionFlags: Flags used to describe more about the context of this call (pre or post in the notify case for instance)

Parameter inTimeStamp: The times stamp associated with this call of audio unit render

Parameter inBusNumber: The bus number associated with this call of audio unit render

Parameter inNumberFrames: The number of sample frames that will be represented in the audio data in the provided ioData parameter

Parameter ioData: The AudioBufferList that will be used to contain the rendered or provided audio data. These buffers will be aligned to 16 byte boundaries (which is normally what malloc will return). Can be null in the notification that input is available.

See also Apple’s documentation

Aliased Type§

pub enum AURenderCallback {
    None,
    Some(unsafe extern "C-unwind" fn(NonNull<c_void>, NonNull<AudioUnitRenderActionFlags>, NonNull<AudioTimeStamp>, u32, u32, *mut AudioBufferList) -> i32),
}

Variants§

§1.0.0

None

No value.

§1.0.0

Some(unsafe extern "C-unwind" fn(NonNull<c_void>, NonNull<AudioUnitRenderActionFlags>, NonNull<AudioTimeStamp>, u32, u32, *mut AudioBufferList) -> i32)

Some value of type T.