AudioStreamBasicDescription asbd;
memset(&asbd, 0, sizeof(asbd));
asbd.mSampleRate = SAMPLE_RATE; // 8
asbd.mFormatID = kAudioFormatLinearPCM;
asbd.mFormatFlags = kAudioFormatFlagIsBigEndian | kAudioFormatFlagIsSignedInteger | kAudioFormatFlagIsPacked;
asbd.mChannelsPerFrame = 1;
asbd.mFramesPerPacket = 1;
asbd.mBitsPerChannel = 16;
// 帧比特
asbd.mBytesPerFrame = 2;
// 包比特
asbd.mBytesPerPacket = 2;
其中的,基础设置
asbd.mChannelsPerFrame = 1;
asbd.mFramesPerPacket = 1;
asbd.mBitsPerChannel = 16;
那么
asbd.mBytesPerFrame = 2;
// 包比特
asbd.mBytesPerPacket = 2;
这两个,可以算出来
mBytesPerFrame = mChannelsPerFrame * mBitsPerChannel
一帧一个通道 ,一个通道 16 个位,1 个字节 8 个位
mBytesPerFrame = mChannelsPerFrame * mFramesPerPacket * mBitsPerChannel
一帧一个通道 ,一个包里面一帧数据,一个通道 16 个位,1 个字节 8 个位
为什么会出现咔咔咔的声音?
因为声卡硬件,把数据消费掉了,正在空转