我正在开发一个项目,要求我将原始无头ulaw或线性pcm数据发送到服务器。
我正在使用AVAudioRecorder,我可以很容易地将音频文件保存到手机中,但问题是无论我尝试做什么,它们都被包裹在一个caf文件中或加盖某种标题。
我的理解是,caf文件只是原始音频数据的包装文件,而且这种音频数据可以是各种格式,包括线性pcm和ulaw。
所以我的问题是,如何在没有开始使用caf包装的情况下生成原始音频文件(即只有无头的原始音频填充到文件中),或者我是否记录了包含原始Ulaw或线性pcm音频的caf数据,我怎样才能轻松进入并从caf文件中提取原始音频数据,并将其他所有内容留下。
答案 0 :(得分:1)
如果您使用音频队列API进行录制,而不是AVAudioRecorder,您将可以访问原始PCM样本缓冲区,并可以将其写入平面文件,以便以后发送到您的服务器。
答案 1 :(得分:1)
如果CAF中的音频数据已经采用您需要的格式,我将使用AudioFile API获取caf文件的音频数据,并将其写入无头/ RAW文件,然后再上传到我的服务器。 / p>
如果您需要转换CAF的数据,请改用ExtAudioFile API。无论哪种方式,都很简单。