Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
09/12/08 08:43
Read: times


 
#158213 - uLaw or similar
Responding to: ???'s previous message
I have normally used a normal uC for the job. Either with an 8-bit uLaw codec, or eight or more bits of linear samples.

Going 8-bit linear doesn't give much dynamic, but does work ok. If you have an ADC whith higher resolution, you can either store the sound clips with that resolution or convert to uLaw and store 8-bit logarithmic values in the memory.

But with pre-recorded sound, you normally use a PC or similar for the recording, and then master a flash image to program into your device.

8kHz sampling speed should normally work fine.

Then use an interrupt handler to play. Depending on processor, you may use PWM, a built-in DAC, an external DAC or a discrete R-2R ladder. The R-2R ladder solution consumes a number of pins and will have the worst sound quality since you normally don't have resistors with good enough precision.

You may need a larger external SPI flash-chip for storing the sound. Either allocate fixed blocks that starts with a clip length value, or create a table of contents at the beginning of the flash, where you let each index point to the start of a clip, and the difference to the next index specify how long the clip is.

List of 11 messages in thread
TopicAuthorDate
IVR using GSM            01/01/70 00:00      
   DTMF problematic            01/01/70 00:00      
      DTMF over GSM            01/01/70 00:00      
         8051            01/01/70 00:00      
         wavecom            01/01/70 00:00      
   voice            01/01/70 00:00      
      uLaw or similar            01/01/70 00:00      
         Digital sound?            01/01/70 00:00      
            MP3 if very mouch speech info            01/01/70 00:00      
               MP3 is a poor speech codec            01/01/70 00:00      
                  "Optimum" not always optimum            01/01/70 00:00      

Back to Subject List