4
無論我做什麼,我都無法讓AVAudioUnitEQ實際做任何事情。如果我爲AVAudioUnitEQ設置globalGain,它肯定會影響信號,但無論我設置了什麼樣的EQ濾波器類型或參數,我都沒有聽到任何聲音變化,它就像是直通傳遞。AVAudioUnitEQ實際上可以在iOS上使用嗎?
我試過低通,高通,低架,高架,設置增益,帶寬,所有我能想到的東西,但沒有任何東西似乎有所作爲。
AVAudioUnitEQ實際上是在iOS 8.4和9.1上運行的嗎?我在兩個版本的iOS上看到了完全相同的結果。
這是我的基本引擎設置,試圖在1000赫茲時切斷低通濾波器。
engine = [[AVAudioEngine alloc] init];
equalizer = [[AVAudioUnitEQ alloc] initWithNumberOfBands:1];
AVAudioUnitEQFilterParameters *filterParameters = equalizer.bands[0];
filterParameters.filterType = AVAudioUnitEQFilterTypeLowPass;
filterParameters.frequency = 1000.0f;
equalizer.bypass = NO;
[engine attachNode:equalizer];
mixer = [[AVAudioEnvironmentNode alloc] init];
[engine attachNode:mixer];
AVAudioEnvironmentReverbParameters * reverbParameters = mixer.reverbParameters;
reverbParameters.enable = YES;
[reverbParameters loadFactoryReverbPreset:kDefaultReverbType ];
[engine connect:mixer to:equalizer format:nil];
[engine connect:equalizer to:[engine mainMixerNode] format:nil];
然後,我將各種文件源連接到調音臺並啓動引擎。這一切都有效,但我從來沒有聽到任何EQ發生,無論我如何配置均衡器頻段,嘗試幾乎所有我能想到的選項...