Commit Graph

35 Commits

Author SHA1 Message Date
Michael Niedermayer
2b93f52cd6 avcodec/lsp: Fix undefined shifts in lsp2poly()
Fixes: left shift of negative value -30635
Fixes: 17689/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_ACELP_KELVIN_fuzzer-5756275014500352

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2019-10-16 19:17:57 +02:00
Clément Bœsch
8ef57a0d61 Merge commit '41ed7ab45fc693f7d7fc35664c0233f4c32d69bb'
* commit '41ed7ab45fc693f7d7fc35664c0233f4c32d69bb':
  cosmetics: Fix spelling mistakes

Merged-by: Clément Bœsch <u@pkh.me>
2016-06-21 21:55:34 +02:00
Vittorio Giovara
41ed7ab45f cosmetics: Fix spelling mistakes
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2016-05-04 18:16:21 +02:00
Michael Niedermayer
507d2d28d6 lsp: change assert to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-03 23:26:14 +02:00
Michael Niedermayer
416d2f7a12 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  vc1: export some functions
  configure: use HOSTCC_C/O in check_host_cc
  configure: use AS_O setting in check_as
  configure: use LD_O setting in check_ld()
  Revert "dsputil: make {add/put/put_signed}_pixels_clamped() non-static."
  build: Restore dependency of acelp_filters.o on celp_math.o
  celp_math: Replace duplicate ff_dot_productf() by ff_scalarproduct_c()
  celp_math: Move ff_cos() to the only place it is used
  build: Use portable abstraction for linker/hostcc output file syntax
  configure: Fix shared library creation for OpenBSD
  vp56: Don't use DECLARE_ALIGN on a typedef name
  mss1: move code that will be reused by MSS2 decoder into separate file
  mss1: merge decode_intra() and decode_inter()
  avprobe: Get rid of ugly casts in the options table
  vf_hqdn3d: Remove a duplicate inline declaration

Conflicts:
	Makefile
	configure
	ffprobe.c
	libavcodec/Makefile
	libavcodec/amrnbdec.c
	libavcodec/amrwbdec.c
	libavcodec/celp_math.c
	libavcodec/celp_math.h
	libavcodec/dsputil.c
	libavcodec/lsp.c
	libavcodec/mss1.c
	libavcodec/ra288.c
	libavcodec/vc1dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-28 16:28:48 +02:00
Diego Biurrun
dafcbfe443 celp_math: Replace duplicate ff_dot_productf() by ff_scalarproduct_c() 2012-08-27 20:37:49 +02:00
Diego Biurrun
5549854335 celp_math: Move ff_cos() to the only place it is used 2012-08-27 20:37:48 +02:00
Michael Niedermayer
d1c74ca2be lsp: use av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-28 00:07:22 +02:00
Nedeljko Babic
3827a86eac Optimization of AMR NB and WB decoders for MIPS
AMR NB and WB decoders are optimized for MIPS architecture.
Appropriate Makefiles are changed accordingly.

Cnfigure script is changed in order to support optimizations.
 Optimizations are enabled by default when compiling is done for
  mips architecture.
 Appropriate cflags are automatically set.
 Support for several mips CPUs is added in configure script.

New ffmpeg options are added for disabling optimizations.

The FFMPEG option --disable-mipsfpu disables MIPS floating point
 optimizations.
The FFMPEG option --disable-mips32r2 disables MIPS32R2
 optimizations.
The FFMPEG option --disable-mipsdspr1 disables MIPS DSP ASE R1
 optimizations.
The FFMPEG option --disable-mipsdspr2 disables MIPS DSP ASE R2
 optimizations.

Signed-off-by: Nedeljko Babic <nbabic@mips.com>
Reviewed-by: Vitor Sessak <vitor1001@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-11 21:12:39 +02:00
Michael Niedermayer
b404ab9e74 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  mov: Don't av_malloc(0).
  avconv: only allocate 1 AVFrame per input stream
  avconv: fix memleaks due to not freeing the AVFrame for audio
  h264-fate: remove -strict 1 except where necessary (mr4/5-tandberg).
  misc Doxygen markup improvements
  doxygen: eliminate Qt-style doxygen syntax
  g722: Add a regression test for muxing/demuxing in wav
  g722: Change bits per sample to 4
  g722dec: Signal skipping the lower bits via AVOptions instead of bits_per_coded_sample
  api-example: update to use avcodec_decode_audio4()
  avplay: use avcodec_decode_audio4()
  avplay: use a separate buffer for playing silence
  avformat: use avcodec_decode_audio4() in avformat_find_stream_info()
  avconv: use avcodec_decode_audio4() instead of avcodec_decode_audio3()
  mov: Allow empty stts atom.
  doc: document preferred Doxygen syntax and make patcheck detect it

Conflicts:
	avconv.c
	ffplay.c
	libavcodec/mlpdec.c
	libavcodec/version.h
	libavformat/mov.c
	tests/codec-regression.sh
	tests/fate/h264.mak

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-06 01:37:27 +01:00
Diego Biurrun
e873c03ac7 misc Doxygen markup improvements 2011-12-05 13:06:58 +01:00
Michael Niedermayer
0b61af7382 Restore WIP g729 code that has been remvoed by diego biurrun.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-24 19:39:18 +02:00
Michael Niedermayer
f93f6963ba Merge remote-tracking branch 'qatar/master'
* qatar/master:
  rv30: return AVERROR(EINVAL) instead of EINVAL
  build: add -L flags before existing LDFLAGS
  simple_idct: whitespace cosmetics
  simple_idct: make repeated code a macro
  dsputil: remove huge #if 0 block
  simple_idct: change 10-bit add/put stride from pixels to bytes
  dsputil: allow 9/10-bit functions for non-h264 codecs
  dnxhd: rename some data tables
  dnxhdenc: remove inline from function only called through pointer
  dnxhdenc: whitespace cosmetics
  swscale: mark YUV422P10(LE,BE) as supported for output
  configure: add -xc99 to LDFLAGS for Sun CC
  Remove unused and non-compiling vestigial g729 decoder
  Remove unused code under G729_BITEXACT #ifdef.
  mpegvideo: fix invalid picture unreferencing.
  dsputil: Remove extra blank line at end.
  dsputil: Replace a LONG_MAX check with HAVE_FAST_64BIT.
  simple_idct: add 10-bit version

Conflicts:
	Makefile
	libavcodec/g729data.h
	libavcodec/g729dec.c
	libavcodec/rv30.c
	tests/ref/lavfi/pixdesc
	tests/ref/lavfi/pixfmts_copy
	tests/ref/lavfi/pixfmts_null
	tests/ref/lavfi/pixfmts_scale
	tests/ref/lavfi/pixfmts_vflip

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-21 16:28:53 +02:00
Diego Biurrun
a005174b25 Remove unused code under G729_BITEXACT #ifdef.
G729_BITEXACT is never set, so the code is all dead code.
2011-07-20 20:47:07 +02:00
Michael Niedermayer
d303e0affd Merge remote-tracking branch 'qatar/master'
* qatar/master:
  simple_idct: simplify some ifdeffery
  simple_idct: remove code for DCTELEM != int16
  Remove VLAs in ff_amrwb_lsp2lpc()
  fate: make vsynth tests depend on only the relevant vref
  rtsp: remove disabled code
  dsputil: restore mistakenly removed hunk of disabled code

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-19 18:46:04 +02:00
Mans Rullgard
3f5dcde7e6 Remove VLAs in ff_amrwb_lsp2lpc()
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-18 18:48:13 +01:00
Michael Niedermayer
686959e87e Merge remote-tracking branch 'qatar/master'
* qatar/master:
  doxygen: Consistently use '@' instead of '\' for Doxygen markup.
  Use av_printf_format to check the usage of printf style functions
  Add av_printf_format, for marking printf style format strings and their parameters
  ARM: enable thumb for Cortex-M* CPUs
  nsvdec: Propagate error values instead of returning 0 in nsv_read_header().
  build: remove SRC_PATH_BARE variable
  build: move basic rules and variables to main Makefile
  build: move special targets to end of main Makefile
  lavdev: improve feedback in case of invalid frame rate/size
  vfwcap: prefer "framerate_q" over "fps" in vfw_read_header()
  v4l2: prefer "framerate_q" over "fps" in v4l2_set_parameters()
  fbdev: prefer "framerate_q" over "fps" in device context
  bktr: prefer "framerate" over "fps" for grab_read_header()
  ALSA: implement channel layout for playback.
  alsa: support unsigned variants of already supported signed formats.
  alsa: add support for more formats.
  ARM: allow building in Thumb2 mode

Conflicts:
	common.mak
	doc/APIchanges
	libavcodec/vdpau.h
	libavdevice/alsa-audio-common.c
	libavdevice/fbdev.c
	libavdevice/libdc1394.c
	libavutil/avutil.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-24 03:07:04 +02:00
Diego Biurrun
adbfc605f6 doxygen: Consistently use '@' instead of '\' for Doxygen markup.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-06-24 00:37:49 +02:00
Mans Rullgard
2912e87a6c Replace FFmpeg with Libav in licence headers
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-19 13:33:20 +00:00
Marcelo Galvăo Póvoa
48ac225db2 Move lsp2lpc_sipr() function to common code so it can be reused in a
AMRWB decoder.

Patch by Marcelo Galvăo Póvoa.

Originally committed as revision 25062 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-07 20:46:29 +00:00
Marcelo Galvăo Póvoa
1d96cc0865 Move AMRNB lsf2lsp() function to common code for using in future AMRWB decoder.
Patch by Marcelo Galvăo Póvoa

Originally committed as revision 25061 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-07 20:44:41 +00:00
Måns Rullgård
164d166e85 lsp: convert variable-length arrays to fixed size
Max LP order is defined to be 16, fixed-size buffers are OK.

Originally committed as revision 23795 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-26 14:34:12 +00:00
Vitor Sessak
691a4232ee Make lsp2polyf() function non-static for upcoming usage in SIPR
Originally committed as revision 20602 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-24 16:58:50 +00:00
Vitor Sessak
419b2be813 Make sorting function used in TwinVQ a shared function
Originally committed as revision 20584 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-22 22:25:58 +00:00
Vitor Sessak
f2b7ce8ae6 Use doubles in ff_set_min_dist_lsf(). After this patch, AMR can use this
function with no change in output.

Originally committed as revision 20511 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-11 11:00:50 +00:00
Vitor Sessak
00fa73f052 Avoid variable-length array use in ff_acelp_lspd2lpc()
Originally committed as revision 20496 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-10 04:17:18 +00:00
Vitor Sessak
e26d131845 Do not hardcode filter order in ff_acelp_lspd2lpc()
Originally committed as revision 20485 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-09 12:06:19 +00:00
Vitor Sessak
504eee37de Commit some functions that are used by both SIPR and AMR.
Based on AMR SoC code by Robert Swain and Colin McQuillan.

Originally committed as revision 20392 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-27 23:53:18 +00:00
Colin McQuillan
33ae681f5c Expose QCELP's floating-point LSP-to-LPC function
qcelp_lsp exported a single function, ff_acelp_lspd2lpc, which was not
specific to qcelp. It can be kept with its fixed-point version
ff_acelp_lsp2lpc in lpc.c.

Patch by Colin McQuillan ( m.niloc googlemail com )

Originally committed as revision 19571 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-03 08:37:02 +00:00
Måns Rullgård
4deaa94639 Add shift argument to MULL() macro
This replaces use of FRAC_BITS in the MULL() definition with a third
argument specifying the shift amount.  All uses of this macro are
updated to pass FRAC_BITS as third argument.

Originally committed as revision 15921 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-24 09:28:55 +00:00
Kenan Gillet
60c25a4beb Rename acelp_math.[ch] to celp_math.[ch] to prepare for QCELP decoder merge.
patch by Kenan Gillet, kenan.gillet gmail com

Originally committed as revision 15679 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-24 21:20:29 +00:00
Vladimir Voroshilov
51f2a119cb (cosmetics) Remove incorrect comment.
Originally committed as revision 14980 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-26 18:06:07 +00:00
Vladimir Voroshilov
7c96587c17 Fix compilation error.
It was introduced after changing input parameter and
overlooked during review process.

Originally committed as revision 13112 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-11 05:28:29 +00:00
Vladimir Voroshilov
3f3865d30b Replace hardcoded LP filter order with parameter.
This will allow to reuse the code in the SIPR decoder.

Originally committed as revision 13108 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-11 03:18:18 +00:00
Vladimir Voroshilov
8726882993 Fixed-point LSP and LPC decoding routines for ACELP-based codecs
Originally committed as revision 12978 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-26 11:52:33 +00:00