MezzanineEngine 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Public Attributes | List of all members
Mezzanine::Audio::RingModulatorParameters Struct Reference

This is a struct containing all the parameters needed to describe a ring modulation effect. More...

#include <effectparameters.h>

Public Types

enum  ModulatorWaveform { EMW_Sinusoid, EMW_Saw, EMW_Square }
 The shape of the wave if it were viewed on an oscillator. More...
 

Public Member Functions

 RingModulatorParameters (Real frequency=440.0f, Real highPassCutoff=800.0f, ModulatorWaveform waveform=EMW_Sinusoid)
 Struct constructor. More...
 

Public Attributes

Real Frequency
 This is the frequency of the carrier signal. More...
 
Real HighPassCutoff
 This controls the cutoff frequency at which the input signal is high-pass filtered before being ring modulated. More...
 
ModulatorWaveform Waveform
 This controls which waveform is used as the carrier signal. More...
 

Detailed Description

This is a struct containing all the parameters needed to describe a ring modulation effect.

The ring modulator multiplies an input signal by a carrier signal in the time domain, resulting in tremolo or inharmonic effects.

Definition at line 694 of file effectparameters.h.

Member Enumeration Documentation

The shape of the wave if it were viewed on an oscillator.

Enumerator
EMW_Sinusoid 

A curved oscillation with smoother transitions at peak frequencies.

EMW_Saw 

A curved upward oscillation with a rapid drop at it's peak frequency.

EMW_Square 

A digital waveform that only expresses the highest and lowest frequencies. Effectively "on" or "off".

Definition at line 698 of file effectparameters.h.

Constructor & Destructor Documentation

Mezzanine::Audio::RingModulatorParameters::RingModulatorParameters ( Real  frequency = 440.0f,
Real  highPassCutoff = 800.0f,
ModulatorWaveform  waveform = EMW_Sinusoid 
)
inline

Struct constructor.

Parameters
frequency@copybriefRingModulatorParameters::Frequency
highPassCutoff@copybriefRingModulatorParameters::HighPassCutoff
waveform@copybriefRingModulatorParameters::Waveform

Definition at line 722 of file effectparameters.h.

Member Data Documentation

Real Mezzanine::Audio::RingModulatorParameters::Frequency

This is the frequency of the carrier signal.

Remarks
If the carrier signal is slowly varying (less than 20 Hz), the result is a tremolo (slow amplitude variation) effect. If the carrier signal is in the audio range, audible upper and lower sidebands begin to appear, causing an inharmonic effect. The carrier signal itself is not heard in the output.

Range: 0.0 to 8000.0

Definition at line 709 of file effectparameters.h.

Real Mezzanine::Audio::RingModulatorParameters::HighPassCutoff

This controls the cutoff frequency at which the input signal is high-pass filtered before being ring modulated.

Remarks
If the cutoff frequency is 0, the entire signal will be ring modulated. If the cutoff frequency is high, very little of the signal (only those parts above the cutoff) will be ring modulated.

Range: 0.0 to 24000.0

Definition at line 713 of file effectparameters.h.

ModulatorWaveform Mezzanine::Audio::RingModulatorParameters::Waveform

This controls which waveform is used as the carrier signal.

Remarks
Traditional ring modulator and tremolo effects generally use a sinusoidal carrier. Sawtooth and square waveforms are may cause unpleasant aliasing.

Definition at line 716 of file effectparameters.h.


The documentation for this struct was generated from the following file: