我正在尝试为iPhone制作一个简单的音量计.我希望音量以dB显示.使用这种turorial时,我的测量结果最高可达78 dB.我读过那是因为16位录音的dBFS频谱仅为96 dB.
我尝试在init函数中修改这段代码:
dataFormat.mSampleRate = 44100.0f;
dataFormat.mFormatID = kAudioFormatLinearPCM;
dataFormat.mFramesPerPacket = 1;
dataFormat.mChannelsPerFrame = 1;
dataFormat.mBytesPerFrame = 2;
dataFormat.mBytesPerPacket = 2;
dataFormat.mBitsPerChannel = 16;
dataFormat.mReserved = 0;
Run Code Online (Sandbox Code Playgroud)
我更改了mBitsPerChannel的值,希望增加录制的位值.
dataFormat.mBitsPerChannel = 32;
Run Code Online (Sandbox Code Playgroud)
将该变量设置为32时,"mAveragePower"函数仅返回0.
那么,我怎样才能衡量更多的分贝?我的所有代码几乎都与上面发布的教程相同.
托马斯先谢谢你