2

がとのプロパティに影響をloadFactoryPreset(preset: AVAudioUnitDistortionPreset)与えるのはなぜですか? この実装は、プリセットの変更時にプロパティを変更しないと矛盾しているようです。preGainwetDryMixAVAudioUnitDistortionloadFactoryPreset(preset: AVAudioUnitReverbPreset)

これは、この点を説明するために作成した遊び場と、各プリセットのプロパティがどのように変更されるかを示すグラフです。

import UIKit
import AVFoundation

let distortion = AVAudioUnitDistortion()
let reverb = AVAudioUnitReverb()

var i = 0

// Distortion

distortion.preGain = 6.0
distortion.wetDryMix = 6.0

while let preset = AVAudioUnitDistortionPreset(rawValue: i) {
    distortion.loadFactoryPreset(AVAudioUnitDistortionPreset(rawValue: i)!)
    distortion.wetDryMix
    distortion.preGain
    i++
}

// Reverb

reverb.wetDryMix = 100.0

i = 0
while let preset = AVAudioUnitReverbPreset(rawValue: i) {
    reverb.loadFactoryPreset(AVAudioUnitReverbPreset(rawValue: i)!)
    reverb.wetDryMix
    i++
}

ここに画像の説明を入力 ここに画像の説明を入力

すべてのディストーション プリセットは 100%wetDryMixでひどく聞こえるので、これがバグなのか、それともこの動作に正当な理由があるのか​​ 疑問に思わずにはいられません。

4

0 に答える 0