I have implemented a G.711 encoder and decoder over the StarCore 1400.
I need to determine the distortion produced by the conversion of linear
16 bit samples to 8 bit non linear PCM (encoding) and back to 16 bit
linear samples (decoding).
I was looking for a standard look-up table or something of that sort
which tells me what 8 bit PCM value maps onto a 16 bit linear sample
and conversely what 16 bit sample (actually 14 bit left justified
value) corresponds to the 8 bit PCM value.
I can imagine that the table for the encoding operation will be quite
huge. If anyone has an implementation of the encoder and decoder, they
could run the entire range of 16 bit numbers and produce a table of the
8 bit PCM values and conversely, run the decoder on these 8 bit values
and get the corresponding 16 bit linear sample. I could check my values
against these if anyone would be so kind to provide them to me.
Any other methods of verifying the correctness of my implementation,
Reply by Phil Frisbie, Jr.●December 21, 20052005-12-21
> I have implemented a G.711 encoder and decoder over the StarCore 1400.
> I need to determine the distortion produced by the conversion of linear
> 16 bit samples to 8 bit non linear PCM (encoding) and back to 16 bit
> linear samples (decoding).
Is this u-law, or a-law? If it is u-law you can run those samples through my
u-law codec that is part of my free and open source library HawkVoiceDI.
Phil Frisbie, Jr.