[FFmpeg-devel] [PATCH] QCELP decoder
Diego Biurrun
diego
Thu Oct 30 10:59:56 CET 2008
On Tue, Oct 28, 2008 at 04:47:02PM -0700, Kenan Gillet wrote:
> On Tue, Oct 28, 2008 at 4:43 PM, Kenan Gillet <kenan.gillet at gmail.com> wrote:
> > thanks Diego and Michael for your reviewing.
> >
> > And here is an updated set of patches with a few changes too.
> >
> > round 7 summary:
> > - qcelp-round7-doc-glue.patch.txt has already been oked
> > - grammar / spelling / cosmetics
> > - generalize convolve function used in qcelp_lspf2lpc
> > - remove some multiplication and division in compute_svector
> > - frame unpacking rework
> > - most of the previous comments
> >
>
> forgot one patch in previous mail :(
>
> --- libavcodec/qcelpdata.h (revision 0)
> +++ libavcodec/qcelpdata.h (revision 0)
> @@ -0,0 +1,541 @@
> +/**
> + * pre-calculated table for hammsinc function
> + * Only half of the tables is needed because of symetry.
table or tables?
syMMetry
> + uint8_t bitpos; /*!< position of the lowet bit in the value's byte */
loweSt
> +/**
> + * the upper boundary of the clipping, depends on
> + */
> +#define QCELP_CLIP_UPPER_BOUND (8191.75/8192.)
Depends on what?
> --- libavcodec/qcelpdec.c (revision 0)
> +++ libavcodec/qcelpdec.c (revision 0)
> @@ -0,0 +1,723 @@
> +/**
> + * Decodes the 10 quantized LSP frequencies from the LSPV/LSP
> + * transmission codes of any framerate and check for badly received packets.
checks
> +/*
> + * Determine the framerate from the frame size and/or the first byte of the frame.
> + *
> + * @return 0 on success, negative error number otherwise.
> + */
> +static int determine_framerate(AVCodecContext *avctx,
> + QCELPContext *q,
> + const int buf_size,
> + uint8_t **buf) {
What rule do you follow when it comes to documenting parameters or not?
> + warn_insufficient_frame_quality(avctx, "Sanity check of the codebook gain failed.");
Codebook gain sanity check failed.
> --- Changelog (revision 15692)
> +++ Changelog (working copy)
> @@ -138,6 +138,7 @@
> - liba52 wrapper removed
> +- QCELP / PureVoice decoder
This has since changed.
> --- libavcodec/Makefile (revision 15692)
> +++ libavcodec/Makefile (working copy)
> @@ -152,6 +152,7 @@
> OBJS-$(CONFIG_PPM_ENCODER) += pnmenc.o pnm.o
> OBJS-$(CONFIG_PTX_DECODER) += ptx.o
> +OBJS-$(CONFIG_QCELP_DECODER) += qcelpdec.o qcelp_lsp.o celp_math.o celp_filters.o
> OBJS-$(CONFIG_QDM2_DECODER) += qdm2.o mdct.o mpegaudiodec.o mpegaudiodecheader.o mpegaudio.o mpegaudiodata.o
ditto
> --- libavcodec/celp_filters.c (revision 15692)
> +++ libavcodec/celp_filters.c (working copy)
> @@ -84,3 +84,24 @@
>
> + for(n=0; n<buffer_length; n++)
> + {
You put the opening brace on the same line in other places. And the for
expression could use some whitespace.
> + out[n] = in[n];
> + for(i=1; i<filter_length; i++)
ditto
> --- libavcodec/celp_math.c (revision 15692)
> +++ libavcodec/celp_math.c (working copy)
> @@ -195,3 +195,14 @@
>
> + for(i=0; i<length; i++)
Some more whitespace will earn you extra good karma here.
Diego
More information about the ffmpeg-devel
mailing list