void ACSimpleCodec::Initialize(const AudioStreamBasicDescription* inInputFormat, const AudioStreamBasicDescription* inOutputFormat, const void* inMagicCookie, UInt32 inMagicCookieByteSize) { ReallocateInputBuffer(mInputBufferByteSize - kBufferPad); // By definition CBR has this greater than 0. We must avoid a div by 0 error in AppendInputData() // Note this will cause us to fail initialization which is intended if (mInputFormat.mBytesPerPacket == 0) { CODEC_THROW(kAudioCodecUnsupportedFormatError); } ACBaseCodec::Initialize(inInputFormat, inOutputFormat, inMagicCookie, inMagicCookieByteSize); }
void ACSimpleCodec::SetProperty(AudioCodecPropertyID inPropertyID, UInt32 inPropertyDataSize, const void* inPropertyData) { switch(inPropertyID) { case kAudioCodecPropertyInputBufferSize: if(inPropertyDataSize == sizeof(UInt32)) { ReallocateInputBuffer(*reinterpret_cast<const UInt32*>(inPropertyData)); } else { CODEC_THROW(kAudioCodecBadPropertySizeError); } break; default: ACBaseCodec::SetProperty(inPropertyID, inPropertyDataSize, inPropertyData); break; } }
void ACSimpleCodec::Initialize(const AudioStreamBasicDescription* inInputFormat, const AudioStreamBasicDescription* inOutputFormat, const void* inMagicCookie, UInt32 inMagicCookieByteSize) { ReallocateInputBuffer(mInputBufferByteSize - kBufferPad); ACBaseCodec::Initialize(inInputFormat, inOutputFormat, inMagicCookie, inMagicCookieByteSize); }