共用方式為


RenderDelegate 代理人

定義

AudioUnit 回呼所使用的簽章,可提供音訊範例給 AudioUnit。

public delegate AudioUnit.AudioUnitStatus RenderDelegate(AudioUnitRenderActionFlags actionFlags, AudioTimeStamp timeStamp, uint busNumber, uint numberFrames, AudioBuffers data);
type RenderDelegate = delegate of AudioUnitRenderActionFlags * AudioTimeStamp * uint32 * uint32 * AudioBuffers -> AudioUnitStatus

參數

actionFlags
AudioUnitRenderActionFlags

這個呼叫之作業的內容。

timeStamp
AudioTimeStamp

這個轉譯作業的時間戳記。

busNumber
UInt32

匯流排號碼。

numberFrames
UInt32

畫面數。

data
AudioBuffers

將保存資料的 AudioBuffer。

傳回值

OSX/iOS 狀態碼。

備註

void SetupRender ()
{
    var convertNode = auGraph.AddNode (AudioComponentDescription.CreateConverter (AudioTypeConverter.AU));
    var convertUnit = auGraph.GetNodeInfo (convertToEffectNode);

    convertUnit.SetRenderCallback (ConvertInputRenderCallback, AudioUnitScopeType.Global) 
}

AudioUnitStatus ConvertInputRenderCallback (AudioUnitRenderActionFlags actionFlags, AudioTimeStamp timeStamp, uint busNumber, uint numberFrames, AudioBuffers data)
{
    data.SetData (0, preRenderData);
    return AudioUnitStatus.NoError;
}

適用於