Hi,
Thanks for those comments, especially the link to the 64 bit conversion guide.
The ASBD I’m using is defined:
size_t bytesPerSample = sizeof (AudioUnitSampleType);
stereoStreamFormat.mFormatID = kAudioFormatLinearPCM; stereoStreamFormat.mFormatFlags = kAudioFormatFlagsAudioUnitCanonical; stereoStreamFormat.mBytesPerPacket = (UInt32)bytesPerSample; stereoStreamFormat.mFramesPerPacket = (UInt32)1; stereoStreamFormat.mBytesPerFrame = (UInt32)bytesPerSample; stereoStreamFormat.mChannelsPerFrame = 2; // 2 indicates stereo stereoStreamFormat.mBitsPerChannel = (UInt32)8 * (UInt32)bytesPerSample; stereoStreamFormat.mSampleRate = graphSampleRate;
using jump to definition on AudioUnitSampleType goes to this line in CoreAudioTypes.h:
CA_CANONICAL_DEPRECATED typedef SInt32 AudioUnitSampleType;
However, this is branched under CA_PREFER_FIXED_POINT. The other possibility being Float 32. There is an earlier comment in CoreAudioTypes.h
// CA_PREFER_FIXED_POINT is true on iOS, but this is no longer true in general. This symbol may // be removed in a future release.
I’m wondering about this because running CAShow on the audiograph shows the mixer to aunt connection as: 2 ch, 0 hz, ‘lpcm’ 32-bit little-endian float, deinterleaved
My graph structure on iOS is only the mixerAU connected to the ioUnit. I am setting callbacks on the mixer input buses and scaling the number of busses depending on how many files I need to play simultaneously. I am only setting the ASBD on the mixer unit’s input scope.
regards,
rob On Jan 11, 2015, at 8:31 PM, Dave O'Neill < email@hidden> wrote:
|