<?xml version="1.0" encoding="UTF-8" ?>
<class name="AudioEffectDistortion" inherits="AudioEffect" category="Core" version="3.2">
	<brief_description>
		Adds a distortion audio effect to an Audio bus.
		Modify the sound to make it dirty.
	</brief_description>
	<description>
		Modify the sound and make it dirty. Different types are available: clip, tan, lo-fi (bit crushing), overdrive, or waveshape.
		By distorting the waveform the frequency content change, which will often make the sound "crunchy" or "abrasive". For games, it can simulate sound coming from some saturated device or speaker very efficiently.
	</description>
	<tutorials>
	</tutorials>
	<methods>
	</methods>
	<members>
		<member name="drive" type="float" setter="set_drive" getter="get_drive" default="0.0">
			Distortion power. Value can range from 0 to 1.
		</member>
		<member name="keep_hf_hz" type="float" setter="set_keep_hf_hz" getter="get_keep_hf_hz" default="16000.0">
			High-pass filter, in Hz. Frequencies higher than this value will not be affected by the distortion. Value can range from 1 to 20000.
		</member>
		<member name="mode" type="int" setter="set_mode" getter="get_mode" enum="AudioEffectDistortion.Mode" default="0">
			Distortion type.
		</member>
		<member name="post_gain" type="float" setter="set_post_gain" getter="get_post_gain" default="0.0">
			Increases or decreases the volume after the effect. Value can range from -80 to 24.
		</member>
		<member name="pre_gain" type="float" setter="set_pre_gain" getter="get_pre_gain" default="0.0">
			Increases or decreases the volume before the effect. Value can range from -60 to 60.
		</member>
	</members>
	<constants>
		<constant name="MODE_CLIP" value="0" enum="Mode">
			Digital distortion effect which cuts off peaks at the top and bottom of the waveform.
		</constant>
		<constant name="MODE_ATAN" value="1" enum="Mode">
		</constant>
		<constant name="MODE_LOFI" value="2" enum="Mode">
			Low-resolution digital distortion effect. You can use it to emulate the sound of early digital audio devices.
		</constant>
		<constant name="MODE_OVERDRIVE" value="3" enum="Mode">
			Emulates the warm distortion produced by a field effect transistor, which is commonly used in solid-state musical instrument amplifiers.
		</constant>
		<constant name="MODE_WAVESHAPE" value="4" enum="Mode">
			Waveshaper distortions are used mainly by electronic musicians to achieve an extra-abrasive sound.
		</constant>
	</constants>
</class>
