Skip to content

Synchronize Android:AudioRecord iOS:AudioStreamBasicDescription

Android AudioRecord와 iOS의 AudioStreamBasicDescription 포맷 동기화방법에 대하여 설명한다.

PCM Format Sample

Android AudioRecord 설정방법:

int bufferSize = AudioRecord.getMinBufferSize(8000, AudioFormat.CHANNEL_CONFIGURATION_MONO, AudioFormat.ENCODING_PCM_16BIT);
AudioRecord record = new AudioRecord(MediaRecorder.AudioSource.MIC, 8000, AudioFormat.CHANNEL_CONFIGURATION_MONO, AudioFormat.ENCODING_PCM_16BIT, bufferSize);

iOS AudioStreamBasicDescription 설정방법:

AudioStreamBasicDescription asbd;
asbd.mSampleRate = 8000;    
asbd.mChannelsPerFrame = 1;
asbd.mFormatID = kAudioFormatLinearPCM;
asbd.mFormatFlags = kLinearPCMFormatFlagIsSignedInteger | kLinearPCMFormatFlagIsPacked;
asbd.mBitsPerChannel = 16;
asbd.mBytesPerPacket = asbd.mBytesPerFrame = (asbd.mBitsPerChannel / 8) * asbd.mChannelsPerFrame;
asbd.mFramesPerPacket = 1;
asbd.mReserved = 0;