iphone - 更改 mp3 文件的节奏\bpm

标签 iphone objective-c c

我正在寻找一种方法来更改 mp3 文件的 bpm\tempo(也已经转换为 mp3)。

它也可以用我将添加到我的项目中的 c 库来完成。

最佳答案

有两种方法可以改变音频的感知速度。一种方法是简单地改变播放速度。这对于 PCM 音频很容易做到,但需要您解码 MP3。可以在压缩域(即 MP3 文件本身)中更改采样率(实际上是同一件事),但我不知道该怎么做。这种方法的最大缺点是所有音频中的音高也会改变。例如,这会使人声听起来不自然。

另一种方法是应用音调不变的速度变化。这是一个复杂得多的操作,并且有许多专有算法和研究论文解决它。音高同步重叠叠加 (PSOLA) 技术是一种行之有效的技术。您还可以查看 Audacity(开源音频编辑器)的功能。由于您使用的是 iOS,Apple 的音频框架也可能为此提供一些支持。在 iOS 文档中查找 AUPitch。

关于iphone - 更改 mp3 文件的节奏\bpm,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6829797/

相关文章:

c - 内核项目des encryption

iphone - objective-c : i want the automatic memory management of properties, 但无法从其他类访问

iphone - 将 BOOL 值转换为 INT 的正确方法?

iOS:CHCSVParser 和 NSPredicate?

ios - 由于未捕获的异常 'NSInvalidArgumentException' 而终止应用程序,原因 : 'Invalid type in JSON write (NSConcreteValue)

ios - 如何在iOS(Cocos2d)中将String转换为音频(声音)文件?

c - 使用套接字的 Http 客户端程序无法正常工作

c# - 如何更改 Windows 程序中的主机文件?

iphone - HTML,Javascript和CSS作为应用程序

iphone - XML 阅读器 : get attributes value from NSDictionary