Re: Problems setting sample rate
Re: Problems setting sample rate
- Subject: Re: Problems setting sample rate
- From: William Stewart <email@hidden>
- Date: Thu, 18 May 2006 12:29:18 -0700
On 18/05/2006, at 12:04 PM, Rick Cohen wrote:
OK, I got rid of the error by disconnecting the nodes of the graph
before setting the property, then reconnecting before I initialize the
graph. However, the sound coming out is pretty bad! Mostly noise,
followed by a brief recognizable bit of audio.
- Rick
On 5/18/06, Rick Cohen <email@hidden> wrote:
Hi folks,
I have a device here (Digidesign Mbox) that allows the user to set
their sample rate from its own control panel, which is called Digi
CoreAudio Manager. Never mind the fact that this is not available as
a control panel property, that is another subject :(
Anyway, I'm attempting to set the sample rate of my graph to 48000 if
the Mbox is already set to 48000, prior to launching my app. I'm
able
to get that sample rate with the
kAudioDevicePropertyNominalSampleRate
property on the Audio Device.
You can also get this by just looking at the output unit's { Output
Scope, El==0 } sample rate.
When I try to set the property on my output unit and my audio unit, I
am getting an error result of kAudioUnitErr_PropertyNotWritable
(-10865) when I initialize the graph.
RequireNoErr(AudioUnitSetProperty(
mOutputUnit,
kAudioUnitProperty_SampleRate,
kAudioUnitScope_Global,
0, // AudioUnitElement inElement,
&sampleRate,
sizeof(Float64)
));
RequireNoErr(AudioUnitSetProperty(
mTargetUnit, // AudioUnit ci,
kAudioUnitProperty_SampleRate,
kAudioUnitScope_Global,
0, // AudioUnitElement inElement,
&sampleRate,
sizeof(Float64)
));
You can't really set sample rate as a global scope... Sample rate is
a format property, and formats are applied to input and output scopes.
You also can't set the format on the output scope, element == 0, on a
device output unit - that is the device side, and you can't change
the format of the device through the output unit... You can set the
format on the input scope, element == 0 of course -> this is the
format you are providing to the output unit.
As for setting a sample rate on a graph - at a set up point there is
an example of this in the PlaySequence code in the SDK.
Bill
result = AUGraphInitialize( mGraph );
Any suggestions would be helpful. Thanks!
- Rick
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden
--
mailto:email@hidden
tel: +1 408 974 4056
________________________________________________________________________
__
"Much human ingenuity has gone into finding the ultimate Before.
The current state of knowledge can be summarized thus:
In the beginning, there was nothing, which exploded" - Terry Pratchett
________________________________________________________________________
__
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden