如何使用kAudioUnitType_Effect的kAudioUnitSubType_LowShe

2019-07-30 20:55发布

我回来了与有关BASS一个问题。 我已经贴过这个问题, 我们如何能够控制iPhone音乐的低音 ,但它应该得到得不到你的人尽可能多的关注。 但现在我已经做了一些更多的搜索和读过的核心音频 。 我得到了,我想与大家分享的人这里是下载它的链接一个示例代码iPhoneMixerEqGraphTest 。 有它看看这个代码我所看到的是苹果的iPod通过给开发人员必须使用预设的均衡。 让我们来看看一些代码片断太:----

// iPodEQ unit
CAComponentDescription eq_desc(kAudioUnitType_Effect, kAudioUnitSubType_AUiPodEQ, kAudioUnitManufacturer_Apple);

什么kAudioUnitSubType_AUiPodEQ所做的就是从iPod的均衡器获得预置值,并在Xcode中的数组,我们可以在PickerView / TableView中使用,并且可以设置喜欢低音,摇滚任何类别返回美国,舞蹈等,这是无奈的对我来说它只返回名称均衡器类型,如低音,摇滚,舞曲等,因为我想只实现低音和要实现它UISLider。

为了实现低音的滑块我需要的值,这样我可以设置最低和最高值,使得在移动滑块低音是可以改变的。

得到这个毕竟我开始阅读的Core Audio的音频单元框架的类和得到这个 从那以后,我开始搜寻低音控制和得到这个

所以现在我需要实现这个kAudioUnitSubType_LowShelfFilter。 但现在我不知道如何实现此枚举在我的代码,这样我可以控制低音的书面文件。 即使苹果没有写我们如何使用它。 kAudioUnitSubType_AUiPodEQ这一类是我们返回一个数组,但kAudioUnitSubType_LowShelfFilter类别没有返回任何数组。 当使用kAudioUnitSubType_AUiPodEQ这一类,我们可以使用均衡器类型从一个阵列,但我们如何使用这一类kAudioUnitSubType_LowShelfFilter。 任何人可以帮助我以任何方式对本? 这将是非常可观的。

谢谢。

Answer 1:

更新

虽然在iOS的头被声明中,低架AU实际上不是用于iOS。


低货架的参数是从iPod的EQ不同。

参数声明和`AudioUnit / AudioUnitParameters.h“记载:

// Parameters for the AULowShelfFilter unit
enum {
  // Global, Hz, 10->200, 80
  kAULowShelfParam_CutoffFrequency = 0,

  // Global, dB, -40->40, 0
  kAULowShelfParam_Gain = 1
};

因此,创建你的低架AU后,利用其配置参数AudioUnitSetParameter

一些初始参数值,你可以尝试将120赫兹(kAULowShelfParam_CutoffFrequency)和+6分贝(kAULowShelfParam_Gain) - 假设你的系统重现低音很好,你的低频内容应该是两倍响亮。


u能告诉我如何可以使用此kAULowShelfParam_CutoffFrequency改变频率。

如果一切配置正确的,这应该是所有需要:

assert(lowShelfAU);
const float frequencyInHz = 120.0f;
OSStatus result = AudioUnitSetParameter(lowShelfAU,
                                        kAULowShelfParam_CutoffFrequency,
                                        kAudioUnitScope_Global,
                                        0,
                                        frequencyInHz,
                                        0);
if (noErr != result) {
  assert(0 && "error!");
  return ...;
}


文章来源: How to use kAudioUnitSubType_LowShelfFilter of kAudioUnitType_Effect which controls bass in core Audio?