Commit Graph

105 Commits

Author SHA1 Message Date
Michael Niedermayer
a72580fc9e Merge remote-tracking branch 'qatar/master'
* qatar/master:
  binkvideo: simplify and remove invalid shifts
  pulse: compute frame_duration once and fix it
  lavf: simplify format_child_class_next()
  hwaccel: OS X Video Decoder Acceleration (VDA) support.
  doc: add support for an optional navigation bar in texi2html pages

Conflicts:
	configure
	libavcodec/Makefile
	libavcodec/allcodecs.c
	libavcodec/vda.c
	libavcodec/vda.h
	libavcodec/vda_h264.c
	libavcodec/vda_internal.h
	libavcodec/version.h
	libavformat/options.c
	libavutil/avutil.h
	libavutil/pixfmt.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-15 03:13:42 +01:00
Mans Rullgard
3f5d6a665a binkvideo: simplify and remove invalid shifts
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-11-14 15:35:29 +00:00
Michael Niedermayer
c5db8b4d09 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavf: fix signed overflow in avformat_find_stream_info()
  vp8: fix signed overflows
  motion_est: fix some signed overflows
  dca: fix signed overflow in shift
  aacdec: fix undefined shifts
  bink: Check for various out of bound writes
  bink: Check for out of bound writes when building tree
  put_bits: fix invalid shift by 32 in flush_put_bits()

Conflicts:
	libavcodec/bink.c
	libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-09 04:02:03 +02:00
Laurent Aimar
a00676e48e bink: Check for various out of bound writes
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-08 16:32:01 +02:00
Laurent Aimar
24adf7832b bink: Check for out of bound writes when building tree
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-08 16:25:56 +02:00
Laurent Aimar
c7e631986b bink: Prevent NULL dereferences with missing reference frame
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-07 16:25:31 +02:00
Laurent Aimar
66aae97a60 Prevent NULL dereferences when missing the reference frame in the bink decoder.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 23:45:37 +02:00
Laurent Aimar
254af56dd1 Check for out of bound writes when building tree in bink decoder.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 15:15:54 +02:00
Laurent Aimar
36bf135d4c Check for various out of bound writes in the bink decoder.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 15:15:54 +02:00
Michael Niedermayer
1d186e9e12 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Revert "swscale: use 15-bit intermediates for 9/10-bit scaling."
  swscale: use 15-bit intermediates for 9/10-bit scaling.
  dct32: Add SSE2 ASM optimizations
  Correct chroma vector calculation for RealVideo 3.
  lavf: Add an option to discard corrupted frames
  mpegts: Mark wrongly-sized packets as corrupted
  mpegts: Move scan test to handle_packets
  mpegts: Mark corrupted packets
  mpegts: Reset continuity counter on seek
  mpegts: Fix for continuity counter
  mpegts: Silence "can't seek" warning on unseekable
  apichange: add an entry for AV_PKT_FLAG_CORRUPT
  avpacket: signal possibly corrupted packets
  mpeg4videodec: remove dead code that would have detected erroneous encoding
  aac: Remove some suspicious illegal memcpy()s from LTP.
  bink: Eliminate unnecessary shadow declaration.

Conflicts:
	doc/APIchanges
	libavcodec/version.h
	libavformat/avformat.h
	libavformat/options.c
	libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-02 22:12:18 +02:00
Alex Converse
e11a5fccb2 bink: Eliminate unnecessary shadow declaration. 2011-08-01 09:39:33 -07:00
Reimar Döffinger
0e29c4f761 Revert bink dequantization hack that is no longer necessary.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2011-07-30 11:22:11 +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
44187717c1 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  ppc: remove redundant setting of Altivec IDCT
  mpegvideo: initialise DSPContext in ff_dct_common_init()
  cosmetics: reindent
  eac3enc: support writing of basic mixing and info metadata
  dnxhdenc: fix declarations in for loops
  dsputil: remove stale bink prototypes and comments
  dsputil: move a bink-only function to binkdsp
  dsputil: remove some unused functions
  bink: make IDCT take 32-bit input

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-28 09:28:01 +02:00
Mans Rullgard
1b3539d453 dsputil: move a bink-only function to binkdsp
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-27 16:05:49 +01:00
Kostya Shishkov
2968bedf12 bink: make IDCT take 32-bit input
Since IDCT transforming 32-bit input to 8-bit output is unusual and unpractical
for most codecs, move Bink IDCT into separate context. Get rid of an additional
permutation table while at it since SIMD support for Bink IDCT is unlikely to
be implemented in foreseeable future.
Quantisation tables also have to change type to signed for proper
dequantisation of DCT coefficients.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-27 14:39:56 +01:00
Reimar Döffinger
47b71eea09 Bink: clip AC coefficients during dequantization.
Fixes artefacts with Neverwinter Nights WOTCLogo.bik
(http://drmccoy.de/zeugs/WOTCLogo.bik).
Fixes trac ticket #352.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2011-07-18 20:01:43 +02:00
Michael Niedermayer
027264cb82 Merge remote-tracking branch 'qatar/master'
* qatar/master: (31 commits)
  ARM: add ARMv6 optimised av_clip_uintp2
  ARM: remove volatile from asm statements in libavutil/intmath
  ARM: fix av_clipl_int32_arm()
  v4l: include avdevice.h
  ffserver: move close_connection() call to avoid a temporary string and copy.
  lavf: initialize demuxer private options.
  AVOptions: set string default values.
  lavdevice: mark v4l for removal on next major bump.
  swscale: fix compile on ppc.
  swscale: fix compile on x86-32.
  build: Remove generated .version file on distclean.
  configure: Add -D_GNU_SOURCE to CPPFLAGS on OS/2.
  doc: Drop hint at --enable-memalign-hack for MinGW, it is now autodetected.
  ffplay: Remove disabled code.
  Mark parameterless function declarations as 'void'.
  swscale: use av_clip_uint8() in yuv2yuv1_c().
  swscale: remove VOF/VOFW.
  swscale: split chroma buffers into separate U/V planes.
  swscale: replace formatConvBuffer[VOF] by allocated array.
  rgb2rgb: remove duplicate mmx/mmx2/3dnow/sse2 functions.
  ...

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-27 02:53:21 +02:00
Diego Biurrun
e169428529 Mark parameterless function declarations as 'void'. 2011-05-26 16:26:17 +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
Mans Rullgard
22c679d3db bink: use LOCAL_ALIGNED for aligned stack data
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 8997bb8807)
2011-02-26 03:16:06 +01:00
Mans Rullgard
8997bb8807 bink: use LOCAL_ALIGNED for aligned stack data
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-25 19:50:14 +00:00
Reinhard Tartler
7ffe76e540 Merge libavcore into libavutil
Done to keep ABI compatible. Otherwise this is just silly
2011-02-16 23:00:30 +01:00
Reinhard Tartler
737eb5976f Merge libavcore into libavutil
It is pretty hopeless that other considerable projects will adopt
libavutil alone in other projects. Projects that need small footprint
are better off with more specialized libraries such as gnulib or rather
just copy the necessary parts that they need. With this in mind, nobody
is helped by having libavutil and libavcore split. In order to ease
maintenance inside and around FFmpeg and to reduce confusion where to
put common code, avcore's functionality is merged (back) to avutil.

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-02-15 16:18:21 +01:00
Peter Ross
f20886e464 bink: permute Bink version 'b' quant matrices by inverse scan order
This fixes visual glitches in Bink version 'b' files, as the quantization
tables were not being permuted.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 2315392174)
2011-02-14 23:58:19 +01:00
Peter Ross
a093650b6c bink: simplify how quantization matrices are passed to read_dct_coeffs()
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit cb62510cab)
2011-02-14 23:58:18 +01:00
Peter Ross
2315392174 bink: permute Bink version 'b' quant matrices by inverse scan order
This fixes visual glitches in Bink version 'b' files, as the quantization
tables were not being permuted.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-13 13:39:07 +00:00
Peter Ross
cb62510cab bink: simplify how quantization matrices are passed to read_dct_coeffs()
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-13 12:34:01 +00:00
Vitor Sessak
0a18b64585 Make tables generation insensitive to floating-point implementation
Using doubles make the double -> int cast well defined for all the values
used, with the exception of when s[i]==1.0, which is special-cased.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 47d62c965b)
2011-02-13 00:54:06 +01:00
Peter Ross
35b8869651 bink: reindent after last commit
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
(cherry picked from commit adb1ad0d80)
2011-02-13 00:52:51 +01:00
Peter Ross
547c67c935 Bink version 'b' video decoder
Based on original patch by Kostya Shishkov

Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
(cherry picked from commit e00f41d574)
2011-02-13 00:52:50 +01:00
Vitor Sessak
47d62c965b Make tables generation insensitive to floating-point implementation
Using doubles make the double -> int cast well defined for all the values
used, with the exception of when s[i]==1.0, which is special-cased.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-12 15:47:46 +00:00
Peter Ross
adb1ad0d80 bink: reindent after last commit
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
2011-02-11 13:47:52 +01:00
Peter Ross
e00f41d574 Bink version 'b' video decoder
Based on original patch by Kostya Shishkov

Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
2011-02-11 13:47:23 +01: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
Kostya Shishkov
03ec42aa1c Change some band size calculations in Bink decoder to use width in blocks
instead of real width, this fixes decoding of some Bink files with odd width.

Originally committed as revision 26364 to svn://svn.ffmpeg.org/ffmpeg/trunk
2011-01-15 13:29:14 +00:00
Ramiro Polla
888d78ac98 bink: make bink_rlelens static (it's only used in this file)
Originally committed as revision 25605 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-30 19:51:46 +00:00
Stefano Sabatini
e16f217ceb Use new imgutils.h API names, fix deprecation warnings.
Originally committed as revision 25058 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-07 19:15:29 +00:00
Stefano Sabatini
6ce9b4310c Remove use of the deprecated function avcodec_check_dimensions(), use
av_check_image_size() instead.

Originally committed as revision 24711 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-06 09:37:04 +00:00
Måns Rullgård
49bd8e4b84 Fix grammar errors in documentation
Originally committed as revision 23904 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 15:38:06 +00:00
Måns Rullgård
5dc051f4c1 bink: correctly align local arrays
Originally committed as revision 23425 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-02 15:22:21 +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
Kostya Shishkov
b78a985afb fix minor typo
Originally committed as revision 22614 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-21 10:26:09 +00:00
Kostya Shishkov
0bf5a0cf46 Bink version 'h' also has chroma planes swapped
Originally committed as revision 22236 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-06 15:09:14 +00:00
Måns Rullgård
84dc2d8afa Remove DECLARE_ALIGNED_{8,16} macros
These macros are redundant.  All uses are replaced with the generic
DECLARE_ALIGNED macro instead.

Originally committed as revision 22233 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-06 14:24:59 +00:00
Kostya Shishkov
4f974de6f6 Decode alpha plane in Bink video
Originally committed as revision 21982 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-23 07:07:54 +00:00
Kostya Shishkov
bf0d54a381 cosmetics: reindent after last commit
Originally committed as revision 21981 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-23 07:01:13 +00:00
Kostya Shishkov
54d4c0de7c Move plane decoding code into separate function in Bink decoder
Originally committed as revision 21980 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-23 07:00:46 +00:00
Kostya Shishkov
ba3e821414 Bink video decoder now can use extradata to detect alpha plane presence
Originally committed as revision 21979 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-23 06:39:23 +00:00
Kostya Shishkov
1d6065ad08 Make Bink decoder able to skip alpha plane
Originally committed as revision 21963 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-22 14:59:51 +00:00
Kostya Shishkov
bb29fee3a6 Make Bink decoder to stop decoding planes after all bits are used.
This prevents crashes during decoding grayscale Bink files like
samples from Impossible Creatures game demo.

Originally committed as revision 21961 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-22 12:35:12 +00:00
Kostya Shishkov
fb030bd046 Correct bundle lengths calculation for small Bink files.
This fixes issue 1764.

Originally committed as revision 21959 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-22 12:20:49 +00:00
Kostya Shishkov
342c7dfdbb Bink video decoder
Originally committed as revision 21937 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-21 13:28:46 +00:00