# Tutorial: Add distortion through waveshaping and convolution \[problem with convolution\]

**URL:** <https://forum.juce.com/t/tutorial-add-distortion-through-waveshaping-and-convolution-problem-with-convolution/38792>\
**Category:** General JUCE discussion\
**Created:** [April 16, 2020, 9:47pm UTC](https://forum.juce.com/t/tutorial-add-distortion-through-waveshaping-and-convolution-problem-with-convolution/38792 "2020-04-16T21:47:00Z")\
**Posts on this page:** 1\
**Showing post:** 4

<div class="post-metadata">

**Author:** ![nicolezim](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/nicolezim/32/8210_2.png) [@nicolezim](https://forum.juce.com/u/nicolezim)\
**Post date:** [May 28, 2020, 12:04pm UTC](https://forum.juce.com/t/tutorial-add-distortion-through-waveshaping-and-convolution-problem-with-convolution/38792/4 "2020-05-28T12:04:35Z")

</div>

After looking around the forum for a bit longer I found this:

> [@Convolution for audio plug-in](https://forum.juce.com/t/convolution-for-audio-plug-in/34477/9):
>
> Don’t know if you solved this but I call Convolution’s prepare() method before its loadImpulseResponse() method. You can also load your .wav in as a binary and use that as the sourceData parameter for the implementation of the loadImpulseResponse() method that requires sourceData and sourceDataSize like so: juceConvolution.prepare(spec); juceConvolution.loadImpulseResponse(BinaryData::OutbackClimbingCenter\_wav, BinaryData::OutbackClimbingCenter\_wavSize, true, true, 0, true);

Import the file with the Projucer and convert it to Binary Data, then you can just access it with BinaryData:: 🙂 This also includes it in the release built as far as I know. Perfect! 👍

---

_[View the full topic](https://forum.juce.com/t/tutorial-add-distortion-through-waveshaping-and-convolution-problem-with-convolution/38792)._
