Copyright © 2005-2008 MultiMedia Soft 
Return to Table of contents  
 
How to apply special effects to a playing sound 
 
This control supports the following kinds of special effects: 
 
  • Custom DSP effects 
  • VST effects 
  • DirectX Media Object effects 
  • Equalizer 
  • EAX effects  
  •  
    Custom DSP effects 
     
    The purpose of custom DSP effects is to give the developer the possibility to apply custom DSP algorithms to the sound under playback. Check the How to manage custom DSP effects tutorial for further details. 
     
     
    VST effects 
     
    Steinberg''s Virtual Studio Technology (VST) is an interface for integrating software audio synthesizer and effect plugins with audio editors and hard-disk recording systems. VST and similar technologies use Digital Signal Processing (DSP) to simulate traditional recording studio hardware with software. Thousands of plugins exist and VST is supported by a large number of audio applications. Check the How to manage VST effects tutorial for further details. 
     
    DirectX Media Object effects 
     
    DirectX Media Objects (also known as DMO) are components that can be inserted in a media stream to manipulate the data in some way. In audio, DMOs are generally used to create special effects. 
    The use of DMO requires DirectX version 8 or higher: you can check if your system has the required DirectX version installed using the IsDirectX8Available method. 
     
    The following standard effects are installed with the operating system:  
     
  • Chorus  
  • Compression  
  • Distortion  
  • Echo  
  • Environmental reverberation (I3DL2) 
  • Flange  
  • Gargle  
  • Parametric equalizer  
  • Waves reverberation (music reverb based on the Waves MaxxVerb technology, licensed to Microsoft)  
  •  
    These effects can be used with any sound format supported by our control and come with their own default settings: you can retrieve the current settings using the GetDirectXEffectParams and you can change them using the SetDirectXEffectParams . Once the effect parameters have been setup, you can apply/remove an effect using the SetDirectXEffect method. 
     
    Note that more than one DMO effect can be applied on a playing sound. 
     
     
    Equalizer 
     
    Sound equalization is obtained through the DMO effect "Parametric equalizer". 
    This control allows setting up a pool of 50 different equalizer bands for each player; each equalizer band works on a different frequency: the SetEqualizerBand method creates/removes one of these bands. The gain associated to a certain band can be modified using the SetEqualizerBandGain method. 
     
     
    EAX effects  
     
    EAX environmental effects can be applied to a given output device (sound card) in order to enhance your music listening experience: not all of the commercial sound cards implement EAX and not all of the sound cards implementing EAX reach the same quality you can have with Creative sound cards. You can check if an output device supports EAX through a call to the IsEAXAvailableOnOutputDevice method. 
     
    EAX parameters (volume, decay and damping) applied to a given output device can be obtained through the GetEAXEffect method and changed through the SetEAXEffect and SetEAXEffectPresets methods. Differently from DMO effects, which are applied directly to an existing player, EAX parameters are applied to a given output device: this means that EAX settings will automatically affect all of the players associated to an EAX compatible output device. 
     
    At runtime it's easy to know if a given player is associated to an EAX compatible output device through the IsEAXAvailable method and obtain/modify the EAX wet/dry mix ratio for that specific player through the GetEAXEffectWetDryMix and SetEAXEffectWetDryMix methods. 
     
    It's important to note that EAX effects can be applied only to sounds loaded through the LoadSoundForEAX method: this method will load a given song in Mono and will not allow further Tempo, Playback rate and Pitch changes. 
     
    EAX supported effects are the following: 
     
  • None (removes the current EAX effect, if any) 
  • Generic 
  • Padded cell 
  • Room 
  • Bathroom 
  • Living room 
  • Stone room 
  • Auditorium 
  • Concert hall 
  • Cave 
  • Arena 
  • Hangar 
  • Carpeted hallway 
  • Hallway 
  • Stone corridor 
  • Alley 
  • Forest 
  • City 
  • Mountains 
  • Quarry 
  • Plain 
  • Parking lot 
  • Sewer pipe 
  • Underwater 
  • Drugged 
  • Dizzy 
  • Psychotic 
  •  
    EAX effects are mutually exclusive: you cannot have more than one EAX effect applied on a playing sound. 
     
    Samples of use of the mentioned special effects in Visual C# and Visual Basic.NET can be found inside the following samples installed with the product's setup package: 
    - SpecialEffects 
    - VstEffects 
    - CustomDSP 
    - CustomDSPWithUI 
    - TestEqualizer 
    - TestVideoPlayer 
     
     
     
     
     
     
     
     
    Copyright © 2005-2008 MultiMedia Soft 
    Return to Table of contents