[FFmpeg-devel] [PATCH] QCELP decoder

Reynaldo H. Verdejo Pinochet reynaldo
Fri Nov 21 01:03:38 CET 2008


Hello Kenan

>> qcelp_bits_per_rate does not seem correct here nor does its name seem
>> to match what it contains 
> 
> yes changed back to buf_size.
> 
> what about changing qcelp_bits_per_rate  to qcelp_unpacking_bitmaps_per_rate_len
> because it really is the len of the unpacking bitmaps, or do you have
> a better suggestion ?

I don't like the name, It doesn't make sence. This is what I had:

typedef enum
{
     RATE_UNKNOWN = -2,
     I_F_Q,             /*!< insufficient frame quality */
     BLANK,
     RATE_OCTAVE,
     RATE_QUARTER,
     RATE_HALF,
     RATE_FULL
} qcelp_packet_rate;

static const uint16_t qcelp_bits_per_rate[]={0, 20, 54, 124, 266};

and then qcelp_bits_per_rate was exactly what its name would made
you think it was. Can you remind me why did you change that enum's
order? If that change is avoided this one would not be needed.


>>> +    for (i = 0; i < 160; i++)
>>> +        *outbuffer++ = av_clipf(*formant_mem++, QCELP_CLIP_LOWER_BOUND, QCELP_CLIP_UPPER_BOUND);
>> are there artifacts or some loud trash without this cliping?
>>
> 
> there are some distortion when listening to some of the samples like V6_text.mov
> but it is more because it louder than anything else.
> 
> I looked at the ouput and the biggest out of bound value I could see
> is 2.399457 for 1.

This is most probably due to the missing adaptive postfiltering and
gain control stages.

Bests
--
Reynaldo




More information about the ffmpeg-devel mailing list