1
0
Fork 0
mirror of https://github.com/juce-framework/JUCE.git synced 2026-01-23 01:44:22 +00:00

Added a way to store a Font descriptor as a string. Tweaked sample-rate initialisation in the AU hosting wrapper. Gave default constructors to a few components.

This commit is contained in:
Julian Storer 2010-05-12 11:53:28 +01:00
parent 5a9e18d3a5
commit 22e02cf791
13 changed files with 201 additions and 32 deletions

View file

@ -552,6 +552,27 @@ void AudioUnitPluginInstance::initialise()
void AudioUnitPluginInstance::prepareToPlay (double sampleRate_,
int samplesPerBlockExpected)
{
if (audioUnit != 0)
{
Float64 sampleRateIn = 0, sampleRateOut = 0;
UInt32 sampleRateSize = sizeof (sampleRateIn);
AudioUnitGetProperty (audioUnit, kAudioUnitProperty_SampleRate, kAudioUnitScope_Input, 0, &sampleRateIn, &sampleRateSize);
AudioUnitGetProperty (audioUnit, kAudioUnitProperty_SampleRate, kAudioUnitScope_Output, 0, &sampleRateOut, &sampleRateSize);
if (sampleRateIn != sampleRate_ || sampleRateOut != sampleRate_)
{
if (initialised)
{
AudioUnitUninitialize (audioUnit);
initialised = false;
}
Float64 sr = sampleRate_;
AudioUnitSetProperty (audioUnit, kAudioUnitProperty_SampleRate, kAudioUnitScope_Input, 0, &sr, sizeof (Float64));
AudioUnitSetProperty (audioUnit, kAudioUnitProperty_SampleRate, kAudioUnitScope_Output, 0, &sr, sizeof (Float64));
}
}
initialise();
if (initialised)
@ -583,16 +604,12 @@ void AudioUnitPluginInstance::prepareToPlay (double sampleRate_,
stream.mBitsPerChannel = 32;
stream.mChannelsPerFrame = numIns;
OSStatus err = AudioUnitSetProperty (audioUnit,
kAudioUnitProperty_StreamFormat,
kAudioUnitScope_Input,
OSStatus err = AudioUnitSetProperty (audioUnit, kAudioUnitProperty_StreamFormat, kAudioUnitScope_Input,
0, &stream, sizeof (stream));
stream.mChannelsPerFrame = numOuts;
err = AudioUnitSetProperty (audioUnit,
kAudioUnitProperty_StreamFormat,
kAudioUnitScope_Output,
err = AudioUnitSetProperty (audioUnit, kAudioUnitProperty_StreamFormat, kAudioUnitScope_Output,
0, &stream, sizeof (stream));
outputBufferList.calloc (sizeof (AudioBufferList) + sizeof (AudioBuffer) * (numOuts + 1), 1);