Recording RemoteIO output Trouble since iOS 4.3
Recording RemoteIO output Trouble since iOS 4.3
- Subject: Recording RemoteIO output Trouble since iOS 4.3
- From: JES <email@hidden>
- Date: Fri, 27 May 2011 03:46:03 -0400
This is my first post to this list and I just wanted to say how grateful I am for all the knowledge,insight I've gotten as just a reader over these past couple years.
Having a problem Recording the output of RemoteIO (master output/with master FX) to a file at the end of a simple 3Dmixer to remoteIO AUgraph.
I'm using ExtAudioFileWriteAsync from a render notification…
It has performed beautifully/been exhaustively tested on all devices (3g - iPad2) with a full CPU load…(opengles animations, attack/release/Decay envelopes/filtering/delay/physics etc… ) since iOS 3.0 - 4.2..
destination file format ASBD:
dstFormat.mSampleRate = 44100;
dstFormat.mFramesPerPacket = 1;
dstFormat.mChannelsPerFrame = 2;
dstFormat.mFormatID = kAudioFormatLinearPCM;
dstFormat.mFormatFlags = kAudioFormatFlagsNativeEndian | kLinearPCMFormatFlagIsPacked | kLinearPCMFormatFlagIsSignedInteger;
dstFormat.mBitsPerChannel = 16;
dstFormat.mBytesPerFrame = 4;
dstFormat.mBytesPerPacket = 4;
dstFormat.mReserved = 0;
as returned from: AudioUnitGetProperty(RIO, kAudioUnitProperty_StreamFormat, kAudioUnitScope_Output, 0, &dstFormat, &size);
OSStatus err = ExtAudioFileCreateWithURL(recordedfile, kAudioFileCAFType, &dstFormat, NULL, kAudioFileFlags_EraseFile, &ExtRecordFile);
on 4.3 and above:( 4.3 and 4.3.3 ..only versions tested on devices/simulator above 4.2)..
ExtAudioFileCreateWithURL fails with the fmt? error...
It records when dstFormat is manually set to ASBD above but the resulting file is of course static .
AudioUnitGetProperty(RIO, kAudioUnitProperty_StreamFormat, kAudioUnitScope_Output, 0, &dstFormat, &size);
on iOS 4.2 and below:
Sample Rate: 44100
Format ID: 1819304813 (lpcm)
Format Flags: 12
Bytes per Packet: 4
Frames per Packet: 1
Bytes per Frame: 4
Channels per Frame: 2
Bits per Channel: 16
-----------------------------------
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
------------------------------------
A few questions:
Seems that this a remoteIO output format change?
Or Is the RIO output ASBD describing both channels and is now interleaved?
Or is it a bug in the underlying audioconverter for ExtAudioFileCreate in 4.3 ?
I mean, Wouldn't the call to ExtAudioFileCreate (with the correct file destination format ASBD) automatically add an audioconverter to deinterleave,etc.. anyway ?
I could find nothing in the 4.2 -4.3 diff or documentation useful about any changes to ExtAudioFile,AuGraph,AudioConverter,remoteIO.
After so much development time (literally years..) and I'm so close to submitting this app …
Any advice/insights?
Many Thanks,
John S.
_______________________________________________
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