Example #1
0
 private void EffectChainOnModified(object sender, EventArgs eventArgs)
 {
     if (effectStream != null)
     {
         effectStream.UpdateEffectChain(effectChain.ToArray());
     }
 }
Example #2
0
 public void Play()
 {
     effectStream = new EffectStream(outStream.ToSampleProvider());
     effectStream.UpdateEffectChain(effectChain.ToArray());
     CreatePlayer();
     player.Init(effectStream);
     player.Play();
 }
        public AudioPipeline(EffectChain effects)
        {
            // Audio pipeline:
            // get the audio from Skype
            this.bufferStream = new SkypeBufferProvider(16000);
            // convert to 32 bit floating point
            var bufferStream32 = new Pcm16BitToSampleProvider(bufferStream);
            // pass through the effects
            var effectStream = new EffectStream(bufferStream32);

            // now mix in any sound effects
            mixer = new MixingSampleProvider(effectStream.WaveFormat);
            mixer.AddMixerInput(effectStream);

            // and convert back to 16 bit ready to be given back to skype
            outputProvider = new SampleToWaveProvider16(mixer);

            effects.Modified += (s, a) => effectStream.UpdateEffectChain(effects.ToArray());
        }
 public void UpdateEffectChain(Effect[] newEffects)
 {
     effectStream.UpdateEffectChain(newEffects);
 }