Manually adjusting amplitude of audio

5 views (last 30 days)
I am trying to distort an audio file. How can I adjust the amplitude of the waveform so that the peaks are all maximized to a predetermined value? The idea is to be able to manipulate the amplitude level and thus manipulate the level of distortion. I am using a .wav file.

Accepted Answer

Anathea Pepperl
Anathea Pepperl on 10 Dec 2014
I'm assuming that you are using a .wav file. First you will want to use wavread to read the audio data into Matlab. Then you could use logical indexing, like audio_data(audio_data > thresh) = max_value; in order to force values above a certain value.
You could also find peaks by finding where the derivative is 0 (use the second derivative to find if that value is a min or a max), and set the local maxima to your predetermined value.
Hope this helps!

More Answers (0)

Categories

Find more on Audio I/O and Waveform Generation in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!