1
我是iPhone新手。您能否帮我修改Apple的SpeakHere应用程序以单声道格式录制。我需要为mChannelsPerFrame
设置什么以及我应该设置什么?如何修改SpeakHere示例应用程序以在iPhone上以单声道格式进行录制?
我已经在linearPCM WAVE格式上更改了一部分记录。
这里是link发表谈在这里。
以下是我认为他们让我改变,但我不很健全的理解:
void ChangeNumberChannels(UInt32 nChannels, bool interleaved)
// alter an existing format
{
Assert(IsPCM(), "ChangeNumberChannels only works for PCM formats");
UInt32 wordSize = SampleWordSize(); // get this before changing ANYTHING
if (wordSize == 0)
wordSize = (mBitsPerChannel + 7)/8;
mChannelsPerFrame = nChannels;
mFramesPerPacket = 1;
if (interleaved) {
mBytesPerPacket = mBytesPerFrame = nChannels * wordSize;
mFormatFlags &= ~kAudioFormatFlagIsNonInterleaved;
} else {
mBytesPerPacket = mBytesPerFrame = wordSize;
mFormatFlags |= kAudioFormatFlagIsNonInterleaved;
}
}
是否有必要使用音频队列?你有没有看AVAudioRecorder的AVAudioFramework? – Viraj 2011-03-10 06:22:50