+
+ +
+

Adding an Effect

+

This section will focus on how to add effects to the audio.

+

There are two set of audio effects supported by palace: ReverbEffect +and ChorusEffect.

+
+

Reverb Effect

+

Reverb happens when a sound is reflected and then decay as the sound is absorbed +by the objects in the medium. ReverbEffect facilitates such effect.

+

Creating a reverb effect can be as simple as:

+
with ReverbEffect() as effect:
+    source.sends[0].effect = effect
+
+
+

Source.sends is a collection of send path signals, each of which +contains effects and filter that describes it. Here we are only concerned +about the former.

+

The above code would yield a generic reverb effect by default. +There are several other presets that you can use, which are listed +by reverb_preset_names. To use these preset, you can simply provide +the preset effect name as the first parameter for the constructor. For example, +to use PIPE_LARGE preset effect, you can initialize the effect like below:

+
with ReverbEffect('PIPE_LARGE') as effect:
+    source.sends[0].effect = effect
+
+
+

These effects can be modified via their attributes.

+
effect.gain = 0.4
+effect.diffusion = 0.65
+late_reverb_pan = 0.2, 0.1, 0.3
+
+
+

The list of these attributes and their constraints can be found +in the documentation of ReverbEffect.

+
+
+

Chorus Effect

+

ChorusEffect does not have preset effects like +ReverbEffect, so you would have to initialize the effect attributes +on creation.

+

There are five parameters to initialize the effect, respectively: waveform, +phase, depth, feedback, and delay.

+
with ChorusEffect('sine', 20, 0.4, 0.5, 0.008) as effect:
+    source.sends[0].effect = effect
+
+
+

For the constraints of these parameters, please refer to the documentation.

+
+
+ + +
+ +