summaryrefslogtreecommitdiffstats
path: root/libavcodec/lpc.h
Commit message (Collapse)AuthorAgeFilesLines
* avcodec/lpc: signed integer overflow in compute_lpc_coefs() (aacdec_fixed)Michael Niedermayer2017-06-211-2/+5
| | | | | | | | Fixes: runtime error: signed integer overflow: -1575818955 + -915383657 cannot be represented in type 'int' Fixes: 2224/clusterfuzz-testcase-minimized-6208559949807616 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* lavc/lpc: Add min_shift parameter in LPCJai Luthra2016-08-281-1/+1
| | | | | | | The min_shift parameter is needed by the MLP encoder Signed-off-by: Jai Luthra <me@jailuthra.in> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/lpc: replace #define by typedefGanesh Ajjanagadde2015-11-201-3/+3
| | | | | | | | See e.g https://stackoverflow.com/questions/1666353/are-typedef-and-define-the-same-in-c for rationale. Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
* lpc: add ff_lpc_calc_ref_coefs_f() functionRostislav Pehlivanov2015-09-011-0/+2
| | | | | | | | | | | This commit adds a function to get the reflection coefficients on floating point samples. It's functionally identical to ff_lpc_calc_ref_coefs() except it works on float samples and will return the global prediction gain. The Welch window implementation which is more optimized works only on int32_t samples so a slower generic expression was used. Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* lpc: remove unused ff_lpc_calc_levinson() functionRostislav Pehlivanov2015-09-011-3/+0
| | | | | | | | Not needed anymore, it was only used by the AAC TNS encoder and was replaced with a more suitable function in the following commit. Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* lpc: rename ff_lpc_calc_levinsion to ff_lpc_calc_levinsonRostislav Pehlivanov2015-08-291-3/+3
| | | | Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* lpc: create a simplified Levinson-Durbin LPC handling float samplesRostislav Pehlivanov2015-08-291-0/+4
| | | | | | | | | | | | | | | | This commit simply duplicates the functionality of ff_lpc_calc_coefs() for the case of a Levinson-Durbin LPC with the only difference being that floating point samples are accepted and the resulting coefficients are raw and unquantized. The motivation behind doing this is the fact that the AAC encoder requires LPC in TNS and LTP and converting non-normalized floating point coefficients to int32_t using SWR and again back for the LPC coefficients was very impractical. The current LPC interfaces were designed for int32_t in mind possibly because FLAC and ALAC use this type for most internal operations. The mathematics in case of floats remains of course identical. Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* avcodec: Implementation of AAC_fixed_decoder (SBR-module)Djordje Pesut2015-07-201-5/+10
| | | | | | | Add fixed poind code. Signed-off-by: Nedeljko Babic <nedeljko.babic@imgtec.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* lpc: Reduce stack usage by allocating LLSModel in context.Reimar Döffinger2014-11-231-0/+4
| | | | Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
* avcodec/lpc: remove unneeded {}Michael Niedermayer2014-11-151-1/+1
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* Merge commit '60e0ee7ca25bd3bea54043b0607efe4cd51acaf3'Michael Niedermayer2014-11-151-1/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | * commit '60e0ee7ca25bd3bea54043b0607efe4cd51acaf3': lpc: always initialize ref and err The initialization is not needed, its merged anyway as it might help suppressing warnings and might make the code more robust against future changes See: c4a36b6f70f37e668874d134f955eb96e23853c9 See: 0dd99628ea15f1fe7121b8a983c0b1fe57660027 Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lpc: always initialize ref and errVittorio Giovara2014-11-141-1/+1
| | | | | | | | | | CC: libav-stable@libav.org Bug-Id: CID 29585 / CID 700759
* | libavcodec/lpc.h: Fix duplicate wordsMichael Niedermayer2013-08-121-1/+1
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit 'c242bbd8b6939507a1a6fb64101b0553d92d303f'Michael Niedermayer2013-02-261-1/+0
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'c242bbd8b6939507a1a6fb64101b0553d92d303f': Remove unnecessary dsputil.h #includes Conflicts: libavcodec/ffv1.c libavcodec/h261dec.c libavcodec/h261enc.c libavcodec/h264pred.c libavcodec/lpc.h libavcodec/mjpegdec.c libavcodec/rectangle.h libavcodec/x86/idct_sse2_xvid.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Remove unnecessary dsputil.h #includesDiego Biurrun2013-02-261-1/+0
| |
* | Merge commit '14f031d7ecfabba0ef02776d4516aa3dcb7c40d8'Michael Niedermayer2012-10-301-0/+34
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '14f031d7ecfabba0ef02776d4516aa3dcb7c40d8': dv: use AVStream.index instead of abusing AVStream.id lavfi: add ashowinfo filter avcodec: Add a RFC 3389 comfort noise codec lpc: Add a function for calculating reflection coefficients from samples lpc: Add a function for calculating reflection coefficients from autocorrelation coefficients lavr: document upper bound on number of output samples. lavr: add general API usage doxy indeo3: remove duplicate capabilities line. fate: ac3: Add dependencies Conflicts: Changelog doc/filters.texi libavcodec/Makefile libavcodec/allcodecs.c libavcodec/avcodec.h libavcodec/codec_desc.c libavcodec/version.h libavfilter/Makefile libavfilter/af_ashowinfo.c libavfilter/allfilters.c libavfilter/version.h libavutil/avutil.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lpc: Add a function for calculating reflection coefficients from samplesMartin Storsjö2012-10-291-0/+3
| | | | | | | | Signed-off-by: Martin Storsjö <martin@martin.st>
| * lpc: Add a function for calculating reflection coefficients from ↵Justin Ruggles2012-10-291-0/+31
| | | | | | | | | | | | autocorrelation coefficients Signed-off-by: Martin Storsjö <martin@martin.st>
* | compute_lpc_coefs: assert that normalize and fail have a supported combinationMichael Niedermayer2012-10-141-0/+3
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-08-231-0/+1
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: doc/APIchanges: add an entry for codec descriptors. vorbisenc: set AVCodecContext.bit_rate to 0 vorbisenc: fix quality parameter FATE: add ALAC encoding tests lpc: fix alignment of windowed samples for odd maximum LPC order alacenc: use s16p sample format as input alacenc: remove unneeded sample_fmt check alacenc: fix max_frame_size calculation for the final frame adpcm_swf: Use correct sample offsets when using trellis. rtmp: support strict rtmp servers mjpegdec: support AVRn interlaced x86: remove FASTDIV inline asm Conflicts: doc/APIchanges libavcodec/mjpegdec.c libavcodec/vorbisenc.c libavutil/x86/intmath.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lpc: fix alignment of windowed samples for odd maximum LPC orderJustin Ruggles2012-08-221-0/+1
| | | | | | | | | | Fixes crash on x86 due to alignment requirements for w_data in lpc_apply_welch_window_sse2().
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-02-071-1/+1
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: Revert "v210enc: use FFALIGN()" doxygen: Do not include license boilerplates in Doxygen comment blocks. avplay: reset decoder flush state when seeking ape: skip packets with invalid size ape: calculate final packet size instead of guessing ape: stop reading after the last frame has been read ape: return AVERROR_EOF instead of AVERROR(EIO) when demuxing is finished ape: return error if seeking to the current packet fails in ape_read_packet() avcodec: Clarify AVFrame member documentation. v210dec: check for coded_frame allocation failure v210enc: use stride as it is already calculated v210enc: use FFALIGN() v210enc: return proper AVERROR codes instead of -1 v210enc: do not set coded_frame->key_frame v210enc: check for coded_frame allocation failure drawtext: add 'fix_bounds' option on coords fixing drawtext: fix text_{w, h} expression vars drawtext: add missing braces around an if() block. Conflicts: libavcodec/arm/vp8.h libavcodec/arm/vp8dsp_init_arm.c libavcodec/v210dec.c libavfilter/vf_drawtext.c libavformat/ape.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * doxygen: Do not include license boilerplates in Doxygen comment blocks.Diego Biurrun2012-02-061-1/+1
| |
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2011-12-121-1/+1
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: x86: cabac: replace explicit memory references with "m" operands avplay: don't request a stereo downmix wmapro: use av_float2int() lavc: avoid invalid memcpy() in avcodec_default_release_buffer() lavu: replace int/float punning functions lavfi: install libavfilter/vsrc_buffer.h Remove extraneous semicolons sdp: Restore the original mp4 format h264 extradata if converted rtpenc: Add support for mp4 format h264 rtpenc: Simplify code by introducing a separate end pointer movenc: Use the actual converted sample for RTP hinting Fix a bunch of common typos. Conflicts: doc/developer.texi doc/eval.texi doc/filters.texi doc/protocols.texi ffmpeg.c ffplay.c libavcodec/mpegvideo.h libavcodec/x86/cabac.h libavfilter/Makefile libavformat/avformat.h libavformat/cafdec.c libavformat/flvdec.c libavformat/flvenc.c libavformat/gxfenc.c libavformat/img2.c libavformat/movenc.c libavformat/mpegts.c libavformat/rtpenc_h264.c libavformat/utils.c libavformat/wtv.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Fix a bunch of common typos.Diego Biurrun2011-12-111-1/+1
| |
* | Merge remote branch 'qatar/master'Michael Niedermayer2011-05-111-3/+14
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (30 commits) AVOptions: make default_val a union, as proposed in AVOption2. arm/h264pred: add missing argument type. h264dsp_mmx: place bracket outside #if/#endif block. lavf/utils: fix ff_interleave_compare_dts corner case. fate: add 10-bit H264 tests. h264: do not print "too many references" warning for intra-only. Enable decoding of high bit depth h264. Adds 8-, 9- and 10-bit versions of some of the functions used by the h264 decoder. Add support for higher QP values in h264. Add the notion of pixel size in h264 related functions. Make the h264 loop filter bit depth aware. Template dsputil_template.c with respect to pixel size, etc. Template h264idct_template.c with respect to pixel size, etc. Preparatory patch for high bit depth h264 decoding support. Move some functions in dsputil.c into a new file dsputil_template.c. Move the functions in h264idct into a new file h264idct_template.c. Move the functions in h264pred.c into a new file h264pred_template.c. Preparatory patch for high bit depth h264 decoding support. Add pixel formats for 9- and 10-bit yuv420p. Choose h264 chroma dc dequant function dynamically. ... Conflicts: doc/APIchanges ffmpeg.c ffplay.c libavcodec/alpha/dsputil_alpha.c libavcodec/arm/dsputil_init_arm.c libavcodec/arm/dsputil_init_armv6.c libavcodec/arm/dsputil_init_neon.c libavcodec/arm/dsputil_iwmmxt.c libavcodec/arm/h264pred_init_arm.c libavcodec/bfin/dsputil_bfin.c libavcodec/dsputil.c libavcodec/h264.c libavcodec/h264.h libavcodec/h264_cabac.c libavcodec/h264_cavlc.c libavcodec/h264_loopfilter.c libavcodec/h264_ps.c libavcodec/h264_refs.c libavcodec/h264dsp.c libavcodec/h264idct.c libavcodec/h264pred.c libavcodec/mlib/dsputil_mlib.c libavcodec/options.c libavcodec/ppc/dsputil_altivec.c libavcodec/ppc/dsputil_ppc.c libavcodec/ppc/h264_altivec.c libavcodec/ps2/dsputil_mmi.c libavcodec/sh4/dsputil_align.c libavcodec/sh4/dsputil_sh4.c libavcodec/sparc/dsputil_vis.c libavcodec/utils.c libavcodec/version.h libavcodec/x86/dsputil_mmx.c libavformat/options.c libavformat/utils.c libavutil/pixfmt.h libswscale/swscale.c libswscale/swscale_internal.h libswscale/swscale_template.c tests/ref/seek/lavf_avi Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavc: move some flac-specific options to its private context.Anton Khirnov2011-05-101-3/+14
| |
| * Replace FFmpeg with Libav in licence headersMans Rullgard2011-03-191-4/+4
| | | | | | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
| * Separate window function from autocorrelation.Justin Ruggles2011-01-211-3/+28
| | | | | | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
| * Move lpc_compute_autocorr() from DSPContext to a new struct LPCContext.Justin Ruggles2011-01-211-3/+21
| | | | | | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* | Separate window function from autocorrelation.Justin Ruggles2011-01-231-3/+28
| | | | | | | | | | Signed-off-by: Mans Rullgard <mans@mansr.com> (cherry picked from commit 77a78e9bdcc589efac41da4f92a489f4523667c0)
* | Move lpc_compute_autocorr() from DSPContext to a new struct LPCContext.Justin Ruggles2011-01-231-3/+21
|/ | | | | Signed-off-by: Mans Rullgard <mans@mansr.com> (cherry picked from commit 56f8952b252f85281317ecd3e0b04c4cae93fd72)
* Add AVCodecContext.lpc_type and Add AVCodecContext.lpc_passes fields.Justin Ruggles2010-07-111-1/+2
| | | | | | | Add AVLPCType enum. Deprecate AVCodecContext.use_lpc. Originally committed as revision 24199 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Fix grammar errors in documentationMåns Rullgård2010-06-301-1/+1
| | | | Originally committed as revision 23904 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Move some prototypes from dsputil.c to reasonable header filesMåns Rullgård2010-03-061-0/+3
| | | | Originally committed as revision 22260 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Cosmetics: s/LPC_type/LPC_TYPE/Vitor Sessak2008-09-041-9/+9
| | | | Originally committed as revision 15202 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Avoid duplicating compute_lpc_coefs() function in both the RA288 and AAC ↵Vitor Sessak2008-09-041-0/+54
| | | | | | decoders. Originally committed as revision 15193 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Globally rename the header inclusion guard names.Stefano Sabatini2008-08-311-3/+3
| | | | | | | | | Consistently apply this rule: the guard name is obtained from the filename by stripping the leading "lib", converting '/' and '.' to '_' and uppercasing the resulting name. Guard names in the root directory have to be prefixed by "FFMPEG_". Originally committed as revision 15120 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Add missing header includes to fix 'make checkheaders'.Diego Biurrun2008-08-171-1/+2
| | | | Originally committed as revision 14817 to svn://svn.ffmpeg.org/ffmpeg/trunk
* update my email address to one which does not depend on my service providerJustin Ruggles2008-08-161-1/+1
| | | | Originally committed as revision 14797 to svn://svn.ffmpeg.org/ffmpeg/trunk
* cosmetics: adjust line breaks and vertical alignmentJustin Ruggles2008-08-161-3/+4
| | | | Originally committed as revision 14795 to svn://svn.ffmpeg.org/ffmpeg/trunk
* use limited range of lpc orders when quantizing coefficientsJustin Ruggles2008-08-161-1/+1
| | | | Originally committed as revision 14794 to svn://svn.ffmpeg.org/ffmpeg/trunk
* lpc: cosmetics: vertically align declarations and definitions.Ramiro Polla2008-08-161-5/+5
| | | | Originally committed as revision 14792 to svn://svn.ffmpeg.org/ffmpeg/trunk
* flacenc, lpc: Move LPC code from flacenc.c to new lpc.[ch] files.Ramiro Polla2008-08-161-0/+46
Originally committed as revision 14790 to svn://svn.ffmpeg.org/ffmpeg/trunk
OpenPOWER on IntegriCloud