Commit Graph

91 Commits

Author SHA1 Message Date
Mans Rullgard
4a71da0f3a cavs: fix some crashes with invalid bitstreams
This removes all valgrind-reported invalid writes with one
specific test file.

Fixes http://www.ocert.org/advisories/ocert-2011-002.html

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-08-10 22:35:20 +01:00
Michael Niedermayer
9f06c1c61e cavsdec: avoid possible crash with crafted input
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-10 17:29:51 +02:00
Michael Niedermayer
6481a36010 cavs: fix oCERT #2011-002 FFmpeg/libavcodec insufficient boundary check
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-10 13:28:36 +02:00
Michael Niedermayer
faba79e080 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  mxfdec: Include FF_INPUT_BUFFER_PADDING_SIZE when allocating extradata.
  H.264: tweak some other x86 asm for Atom
  probe: Fix insane flow control.
  mpegts: remove invalid error check
  s302m: use nondeprecated audio sample format API
  lavc: use designated initialisers for all codecs.
  x86: cabac: add operand size suffixes missing from 6c32576

Conflicts:
	libavcodec/ac3enc_float.c
	libavcodec/flacenc.c
	libavcodec/frwu.c
	libavcodec/pictordec.c
	libavcodec/qtrleenc.c
	libavcodec/v210enc.c
	libavcodec/wmv2dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-30 06:46:08 +02:00
Anton Khirnov
ec6402b7c5 lavc: use designated initialisers for all codecs.
It's more readable and less prone to breakage.
2011-07-29 08:42:34 +02:00
Michael Niedermayer
e10979ff56 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  changelog: misc typo and wording fixes
  H.264: add filter_mb_fast support for >8-bit decoding
  doc: Remove outdated comments about gcc 2.95 and gcc 3.3 support.
  lls: use av_lfg instead of rand() in test program
  build: remove unnecessary dependency on libs from 'all' target
  H.264: avoid redundant alpha/beta calculations in loopfilter
  H.264: optimize intra/inter loopfilter decision
  mpegts: fix Continuity Counter error detection
  build: remove unnecessary FFLDFLAGS variable
  vp8/mt: flush worker thread, not application thread context, on seek.
  mt: proper locking around release_buffer calls.
  DxVA2: unbreak build after [657ccb5ac7]
  hwaccel: unbreak build
  Eliminate FF_COMMON_FRAME macro.

Conflicts:
	Changelog
	Makefile
	doc/developer.texi
	libavcodec/avcodec.h
	libavcodec/h264.c
	libavcodec/mpeg4videodec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-12 01:42:32 +02:00
Diego Biurrun
657ccb5ac7 Eliminate FF_COMMON_FRAME macro.
FF_COMMON_FRAME holds the contents of the AVFrame structure and is also copied
to struct Picture.  Replace by an embedded AVFrame structure in struct Picture.
2011-07-11 00:19:00 +02:00
Stefano Sabatini
ce5e49b0c2 replace deprecated FF_*_TYPE symbols with AV_PICTURE_TYPE_* 2011-05-02 16:41:41 +02:00
Stefano Sabatini
975a1447f7 Replace deprecated FF_*_TYPE symbols with AV_PICTURE_TYPE_*.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-05-02 12:18:44 +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
Diego Elio Pettenò
e7e2df27f8 Add ff_ prefix to data symbols of encoders, decoders, hwaccel, parsers, bsf.
None of these symbols should be accessed directly, so declare them as
hidden.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit d36beb3f69)
2011-01-28 03:15:34 +01:00
Diego Elio Pettenò
d36beb3f69 Add ff_ prefix to data symbols of encoders, decoders, hwaccel, parsers, bsf.
None of these symbols should be accessed directly, so declare them as
hidden.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-01-26 16:08:45 +00:00
Måns Rullgård
f079a64aea Move cavs dsp functions to their own struct
Originally committed as revision 24685 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-03 20:59:00 +00:00
Diego Biurrun
ba87f0801d Remove explicit filename from Doxygen @file commands.
Passing an explicit filename to this command is only necessary if the
documentation in the @file block refers to a file different from the
one the block resides in.

Originally committed as revision 22921 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-20 14:45:34 +00:00
Stefano Sabatini
72415b2adb Define AVMediaType enum, and use it instead of enum CodecType, which
is deprecated and will be dropped at the next major bump.

Originally committed as revision 22735 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-30 23:30:55 +00:00
Stefan Gehrer
35122bd93e add heuristic to discern the old sample clips from streams encoded
with rm52j encoder, a marker_bit has been added in the I-Frame syntax

Originally committed as revision 21836 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-15 16:43:45 +00:00
Stefan Gehrer
470de55aa1 fix slice header checking
Originally committed as revision 19303 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-30 06:44:32 +00:00
Stefano Sabatini
9106a698e7 Rename bitstream.h to get_bits.h.
Originally committed as revision 18494 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-13 16:20:26 +00:00
Thilo Borgmann
7a00bbad21 Implement avcodec_decode_video2(), _audio3() and _subtitle2() which takes an
AVPacket argument rather than a const uint8_t *buf + int buf_size. This allows
passing of packet-specific flags from demuxer to decoder, such as the keyframe
flag, which appears necessary to playback corePNG P-frames.

Patch by Thilo Borgmann thilo.borgmann googlemail com, see also the thread
"Google Summer of Code participation" on the mailinglist.

Originally committed as revision 18351 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-07 15:59:50 +00:00
Stefan Gehrer
cd3356ff73 check for a stuffing byte at the end of a slice
Originally committed as revision 17559 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-24 15:56:53 +00:00
Stefan Gehrer
88db5551cf change macroblock loop in inter frames so that after a
slice header the skip count is always parsed first

Originally committed as revision 17558 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-24 15:54:51 +00:00
Stefan Gehrer
6847ab4375 introduce a macroblock index to avoid a few x*width+y calculations
Originally committed as revision 17138 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-10 22:38:02 +00:00
Stefan Gehrer
b9fce05205 fix multiple slices per frame
Originally committed as revision 17137 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-10 20:51:35 +00:00
Stefan Gehrer
4ca6f4b29c fix parsing of pic_structure
Originally committed as revision 17136 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-10 17:08:56 +00:00
Stefan Gehrer
e090c70f2f avoid duplicating dsputil's clear_block
Originally committed as revision 17135 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-10 16:45:02 +00:00
Stefan Gehrer
ae2d3e3b25 time_code has 24 bits, not 16
Originally committed as revision 17134 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-10 16:36:01 +00:00
Stefan Gehrer
d934de5c5d do not check for minimum slice start code, 0x00000100 is valid
Originally committed as revision 17133 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-10 16:34:45 +00:00
Diego Biurrun
bad5537e2c Use full internal pathname in doxygen @file directives.
Otherwise doxygen complains about ambiguous filenames when files exist
under the same name in different subdirectories.

Originally committed as revision 16912 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-01 02:00:19 +00:00
Stefan Gehrer
620b8a2ed7 fix doxygen file reference
Originally committed as revision 16816 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-27 06:04:01 +00:00
Stefan Gehrer
74a4371d74 use assignment of structure instead of memcpy
Originally committed as revision 16644 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-16 17:58:38 +00:00
Stefan Gehrer
bef01ca08f rename XXX_t enums to cavs_XXX to fix POSIX namespace issue
Originally committed as revision 16642 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-16 17:45:54 +00:00
Stefan Gehrer
e685e8eada rename vector_t to cavs_vector
Originally committed as revision 16641 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-16 17:20:17 +00:00
Diego Biurrun
9506090df9 Avoid POSIX-reserved _t in identifier names.
Originally committed as revision 16142 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-15 10:08:31 +00:00
Stefano Sabatini
fe4bf37455 Make AVCodec long_names definition conditional depending on CONFIG_SMALL.
Originally committed as revision 13759 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-12 21:50:13 +00:00
Michael Niedermayer
6138ed777d Arrays where one element too small, fixes CID114.
this was possibly exploitable

Originally committed as revision 13475 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-27 22:10:17 +00:00
Stefano Sabatini
d5202e4fda Add long names to many AVCodec declarations.
patch by Stefano Sabatini, stefano.sabatini-lala poste it

Originally committed as revision 13005 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-27 10:52:44 +00:00
Michael Niedermayer
1a2c94cb69 const
Originally committed as revision 11719 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-01 03:59:06 +00:00
Luca Abeni
e02f7490da Initialize the "stc" variable before using it in ff_find_start_code()
Originally committed as revision 10193 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-23 07:02:27 +00:00
Alex Beregszaszi
3a5729eae1 use skip_bits where appropriate
Originally committed as revision 10005 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-09 01:08:28 +00:00
Stefan Gehrer
5d2b15b870 have less functions as inline
Originally committed as revision 9792 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-25 05:09:54 +00:00
Stefan Gehrer
844d9012a6 split decoder-specific parts into their own file
Originally committed as revision 9533 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-08 07:37:30 +00:00