Silly, simple mistake...
There was no converter being used at all pre 4.3. SO, for 4.3 and above the extaudiofile needs to know that the client format(,kExtAudioFileProperty_ClientDataFormat) is not the same as the file fomat in order to automagically generate/use a converter when it writes to disk.
so for 4.3 and above:
AudioStreamBasicDescription cFormat;
UInt32 size=sizeof(cFormat);
get the RIO output ASBD(client format): AudioUnitGetProperty(RIO, kAudioUnitProperty_StreamFormat, kAudioUnitScope_Output, 0, & cFormat, &size);
set the client format on the extaudiofile so that it will then create/use a converter when writing to disk: ExtAudioFileSetProperty(ExtRecordFile,kExtAudioFileProperty_ClientDataFormat,sizeof(cFormat),&cFormat);
JES
From: email@hidden To: email@hidden Date: Sat, 28 May 2011 19:42:24 -0400 Subject: RE: Recording RemoteIO output Trouble since iOS 4.3
Let me try to clarify my bleary eyed at 4am in the morning questions.
... iOS 4.3 returns:
Sample Rate: 44100 Format ID: 1819304813 (lpcm) Format Flags: 3084 Bytes per Packet: 8 Frames per Packet: 1 Bytes per Frame: 8 Channels per Frame: 2 Bits per Channel: 32 ------------------------------------ Seems that this a remoteIO output format change, from the standpoint at which the rio allows access???(since, obviously the output hardware converter format is still what it was before...)
So, is capturing the output of remoteIO at the end of an augraph no longer allowed in iOS 4.3?
Or Is there a bug in the underlying audioconverter for ExtAudioFileCreate in 4.3 in this particular scenario ?
I mean, shouldn't the call to ExtAudioFileCreate (with the correct file destination format ASBD) automatically add an audioconverter to deinterleave,etc.. anyway ?
Could anyone from the coreaudio team offer any advice/insight?
Many Thanks
_______________________________________________
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
|