使用 iPhone SDK 剪切音频文件
Posted
技术标签:
【中文标题】使用 iPhone SDK 剪切音频文件【英文标题】:cut audio file with iPhone SDK 【发布时间】:2010-05-29 15:36:34 【问题描述】:是否可以? (文件扩展名为 .caf) 我只需要在开始时切断沉默。
(另外,也许可以从具有指定开始和结束时间的现有文件中写入新文件。)
提前致谢!
【问题讨论】:
真的这么复杂,没人知道怎么做吗? 【参考方案1】:它并不难,只是很繁琐,你可以使用Extended Audio File Services。查看 ExtAudioFileRead 和 ExtAudioFileWrite 的参考(他们有示例代码),然后您可以打开一个音频文件读取它,修剪它,然后编写新的。
【讨论】:
嗨阿兰。感谢你的回答!我看到 ExtAudioFileRead 和 ExtAudioFileWrite 但我看不到 ExtAudioFileTrim 或其他东西.. :( 好的。我明白了。但问题是 - 如何修剪音频文件?我不能只是切断字节的和平,它会破坏文件。 如果是直接 pcm 数据(未压缩),那么您可以计算出要剪切的内容。在我的个人资料中有一些 iphone 核心音频示例项目。其中一个(混音器)有一个名为 InMemoryAudioFile 的类。它打开一个音频文件并将其数据放入一个数组中。 PCM 数据的布局很简单。如果它是 16 位数据的立体声文件,您将有 32 位数据包,每个数据包代表一个立体声样本。一旦你能得到这些数据,就不用费劲了。 @AranMulholland 我没有看到 InMemoryAudioFile。请您提供确切的网址。 我想这就是sites.google.com/site/iphonecoreaudiodevelopment/…【参考方案2】:没有修剪功能。您必须编写一些代码来打开一个文件进行读取,并创建并打开另一个文件进行写入。然后编写一个循环,读取音频样本或数据包数据,丢弃开头的静音,并将音频数据写入输出文件。
【讨论】:
以上是关于使用 iPhone SDK 剪切音频文件的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Iphone sdk 中的音频队列播放 .wav 文件
iPhone SDK:将流式音频文件保存到 Documents 文件夹
iphone sdk 如何在电话通信期间播放 DTMF 音频文件
iPhone SDK:使用核心音频 AVAudioPlayer 更改播放速度