2017-10-09 7 views
0

AudioKit fournit de la documentation sur la création d'un bruit blanc avec panning comme suit:Appliquer une modulation d'amplitude au fonctionnement du bruit rose

let generator = AKOperationGenerator { _ in 
    let white = AKOperation.whiteNoise() 
    let pink = AKOperation.pinkNoise() 

    let lfo = AKOperation.sineWave(frequency: 0.3) 
    let balance = lfo.scale(minimum: 0, maximum: 1) 
    let noise = mixer(white, pink, balance: balance) 
    return noise.pan(lfo) 
} 

Cependant, au lieu de panning, je cherche à changer l'amplitude avec les paramètres suivants (à partir SoundForge Pro):

// AmplitudeModulation -> Sine 
    // 0.15 (s) -> Modulation frequency 
    // Minimum amplitude: Up to -30.0 
    // Stereo pan: Up to 20 
    // Dry out -30db 

Est-ce possible en utilisant AudioKit?

Répondre

2

Vous pouvez utiliser AKTremolo.

class ViewController: UIViewController { 

    let whiteNoise = AKWhiteNoise() 
    let tremolo = AKTremolo() 
    let mixer = AKMixer() 

    override func viewDidLoad() { 

     AudioKit.output = mixer 
     AudioKit.start() 

     whiteNoise >>> tremolo >>> mixer 
     tremolo.frequency = 0 
     whiteNoise.start() 

     let slider = AKSlider(property: "Tremolo") { value in 
      self.tremolo.frequency = 100 * value 
     } 
     slider.frame = CGRect(x: 0, y: 100, width: view.bounds.width, height: 100) 
     view.addSubview(slider) 
    } 
} 
0

Vous pouvez effectuer une modulation d'amplitude en utilisant AKOperationEffect. Par exemple:

let Amplfo = AKOperation.sineWave(frequency: freq, amplitude: 1.0) 
let Output = AKOperationEffect(generator) { generator, _ in 
       let lfo = max(Amplfo,0) 
       return generator * lfo }