files/en-us/web/api/waveshapernode/index.md
{{ APIRef("Web Audio API") }}
The WaveShaperNode interface represents a non-linear distorter.
It is an {{domxref("AudioNode")}} that uses a curve to apply a wave shaping distortion to the signal. Beside obvious distortion effects, it is often used to add a warm feeling to the signal.
A WaveShaperNode always has exactly one input and one output.
{{InheritanceDiagram}}
<table class="properties"> <tbody> <tr> <th scope="row">Number of inputs</th> <td><code>1</code></td> </tr> <tr> <th scope="row">Number of outputs</th> <td><code>1</code></td> </tr> <tr> <th scope="row">Channel count mode</th> <td><code>"max"</code></td> </tr> <tr> <th scope="row">Channel count</th> <td><code>2</code> (not used in the default count mode)</td> </tr> <tr> <th scope="row">Channel interpretation</th> <td><code>"speakers"</code></td> </tr> </tbody> </table>WaveShaperNode object.Inherits properties from its parent, {{domxref("AudioNode")}}.
No specific method; inherits methods from its parent, {{domxref("AudioNode")}}.
See BaseAudioContext.createWaveShaper() for example code.
{{Specifications}}
{{Compat}}