Convert wav file from 16 bit to 8 bit

23 views (last 30 days)
I read file wav in 16 bit How covert wav to 8 bit depth
  1 Comment
Peter O
Peter O on 29 Aug 2020
Edited: Peter O on 29 Aug 2020
Be aware that an 8-bit audio signal will not sound great. There's a couple methods:
  1. Just Truncate. Ignore the least significant bits and chop them off.
  2. Apply Dithering. You still truncate the signal, but you also add some "random" noise at the base. For audio, this is a common operation because it helps reduce the perceived degradation from losing those bottom bits. There's a number of algorithms to do this, and they involve intelligently adding noise at the bottom bit levels of the signal. See the wikipedia article for more info: https://en.wikipedia.org/wiki/Dither

Sign in to comment.

Accepted Answer

Ameer Hamza
Ameer Hamza on 29 Aug 2020
Specify the bit per sample option to the audiowrite function. For example
[y, Fs] = audioread('handel.wav');
audiowrite('handle2.wav', y, Fs, 'BitsPerSample', 8);

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!