【问题标题】:How to achieve Equilizer Setting for iPhone in Audio Player如何在音频播放器中实现 iPhone 的均衡器设置
【发布时间】:2011-08-24 06:16:01
【问题描述】:

如何以编程方式为我的 iPhone 应用程序设置低音或其他类型的均衡器? 是否有现成的框架或方法可用?请提供参考..

【问题讨论】:

  • 是的,我尝试用谷歌搜索...但我得到了默认设置参考..但我想以编程方式设置均衡器..

标签: iphone objective-c ios audio


【解决方案1】:

如果您将音频播放构建为 AudioUnit 图形,您应该能够使用内置的 iPod EQ AudioUnit,以及 iPod 应用程序中的预设。查看this example,希望能帮助您了解如何执行此操作。

在阅读代码时,请确保您了解音频单元是图形中的节点,音频信号通过回调在图形中流动,并且每个节点都可以修改其向输出节点(本质上是扬声器。)所以您所做的就是将文件加载到内存中,然后在您指定的回调中将 PCM(声音样本)数据提供给音频单元。当缓冲区为空时,将调用回调,您可以将其填满。

链接的示例设置了一个混音器节点、一个输出节点和一个均衡器节点,将它们连接在一起,并在将多个声音文件加载到内存后开始播放它们。

如果 iPod EQ AU 不符合您的要求,您可以构建自己的 AudioUnit 并在以后替换它,但这需要一些 DSP 知识。您还可以找到一些开源均衡器,这些均衡器已作为音频单元实现(例如,这是 Mac 平台上用于音乐制作工具的效果的常见格式。)

【讨论】:

  • 我建议你看看 NVDSP:github.com/bartolsthoorn/NVDSP 它允许你在没有 DSP 知识的情况下对原始样本进行双二阶滤波器。 (Novocaine 不是必需的,但建议使用)
  • 嗨@richardolsson,我试过这种方式,它适用于本地歌曲,但不适用于流媒体歌曲,我的问题是我们不能用同样的方式来获得至少 iPod EQ 效果吗?
【解决方案2】:

如果您将音频队列或 remoteIO 音频单元用于音频,您可以编写和使用您自己的 DSP 过滤器来处理和均衡您的音频样本数组或缓冲区。 IIR 滤波器的级联或并行组是一种可能性。 FFT 重叠添加/保存滤波是另一种可能的 DSP 技术,它允许自定义均衡曲线。

【讨论】:

  • 那是因为它是一个“复杂”的主题。要么学习大量 DSP(数学和编码),要么聘请专家,或者在某个地方找到图书馆(可能在商业许可下)。没有内置的公共 API。
【解决方案3】:

不,您无法在 AVAudio Player 中获得直接设置/均衡器设置。

它是 Apple 提供的框架,所以你可以访问的只是你在类引用中获得的所有内容。

所以我想通过类参考,它没有说你可以访问均衡器设置。

这是它的链接。

http://developer.apple.com/library/ios/#documentation/AVFoundation/Reference/AVAudioPlayerClassReference/Reference/Reference.html

希望这会有所帮助。

EDIT-1

如果您想使用其他库,它可以让您广泛访问设置,甚至可以提供即使是 DJ 也会喜欢的音效,那么您可以使用

BASS Audio Library

这是一个付费库,但如果您真的想要良好而有效的音效并访问所有设置,则值得购买。

【讨论】:

  • 感谢 Parth Bhatt,您能否帮我提供链接中提到的“获取可用于播放级计量的数据”的示例代码.. 或使用“AVSampleRateKey”或“AVEncoderBitRateKey”的示例代码这样我就可以分析音频速率??
  • @DShah:所有这些方法都是为了使用音频电平表。因此它获得了有限的设置。以下是您可以在链接中参考的方法:meteringEnabled property– averagePowerForChannel:– peakPowerForChannel:– updateMeters
【解决方案4】:

不,没有可用的框架。我认为不提供此类框架的原因是均衡和设置模式(如低音、经典等)并不是所有使用音频服务的应用程序都可能需要的通用功能。那些需要的人需要实施它们。

【讨论】:

    猜你喜欢
    • 2014-03-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-15
    相关资源
    最近更新 更多