An 8 or 16 second digital voice recorder was implemented which utilized the ADPCM algorithm for lossy speech compression. We stored our speech samples on a 32 KB SRAM. The Atmel Mega32 microcontroller was used to run the ADPCM algorithm, to interface with the SRAM, to output sound to the B/W TV, and to sample the output from a microphone circuit.
High Level Design:
We thought the DTFM speech sounded ok, and thought there might be a better way to do (lossy) speech compression. The speech synthesis page indicated that ADPCM would be a good algorithm to improve speech quality. The page also indicated that it would be a good idea to implement for a final project, so we thought we try that out. To make things more interesting, we decided to integrate the algorithm into a simple digital voice recorder.
Overall, the system worked. We were able to speak into the microphone and the system reproduced the speech intelligibly. The voice quality of 2-bit ADPCM isn’t very good at all, but in a constrained memory environment, it isn’t that bad of a choice. The voice quality of 4-bit ADPCM is far superior to its 2-bit cousin. The only “problem” is that we could still hear that annoying high-pitched, PWM squeal, however faint it may be.