录制音频,添加效果,然后将结果保存到音频文件

问题描述

| 我在执行标题所说的内容时遇到了麻烦。我的目标是能够向您的录音中添加任何想要的效果,保存修改后的音频,然后将其发送到服务器。 我搜索了Fourms并遇到了以下线程: viewtopic.PHP?f = 7&t = 13029&p = 45362&hilit = saving#p45362 viewtopic.PHP?f = 7&t = 12660&p = 44586&hilit = saving#p44586 viewtopic.PHP?f = 7&t = 13178&p = 45746&hilit = saving#p45746 阅读这些内容后,我可以保存修改后的音频,但是只能将其保存为wav吗?就像我说的那样,保存后将其发送到服务器,因此大小非常重要,并且与其他格式相比,波形相对较大。忽略这一事实,我尝试实现FMOD_OUTPUTTYPE_WAVWRITER,但我无法使它正常工作。有使用它的好例子吗?我查看了库中的示例,但没有看到任何示例。 但是该应用程序的基本结构是记录,关闭和打开一些开关,以查看所需的过滤器,进行预览,然后按“保存”按钮将其保存。此保存功能包括什么? 任何帮助表示赞赏,谢谢。     

解决方法

使用FMOD_OUTPUTTYPE_WAVWRITER非常简单,您可以通过System :: setOutput设置类型,通过System :: init extradriverdata指定输出文件。 extradriverdata应该是设备可写区域(如文档目录)的绝对路径。播放完毕后,调用System :: release,文件将完成。 录制具有效果的波形数据的另一种方法是创建一个自定义DSP,并将其连接到播放录制数据的通道。然后,您将获得常规的回调,从而为您提供必须自己写入磁盘的浮动数据。您可以分别在dsp_custom和recordtodisk示例中找到DSP的示例并写入wav文件。 最后请注意,FMOD不附带将压缩音频写入磁盘的功能,您将需要另一个API才能实现此目标。     ,您可以通过ExtAudioFile API另存为AAC文件。