Commit Graph

20572 Commits

Author SHA1 Message Date
Michael Niedermayer
aea15df3b4 ffv1dec: change bitstream end check to a exact check instead of a +-1 check
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-25 03:43:23 +02:00
Michael Niedermayer
d8676140de ffv1: inject sentinels for RC->VLC transitions begining with 1.3
This breaks bitstream compatibility of 1.3 VLC streams
This fixes very rare errors in the RC stream at the transition point
to VLC.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-25 03:43:22 +02:00
Michael Niedermayer
ad9371ef24 ffv1enc: fix RC slice sentinel
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-25 03:43:21 +02:00
Stefano Sabatini
f3bd6fa7a8 lavc/mmvideo: forward reget_buffer return value in mm_decode_frame() 2012-09-24 14:57:49 +02:00
Stefano Sabatini
efa3d5af1e lavc/roqvideodec: fix error message
Remove redundant reference to codec name, it is already mentioned in the
log header.
2012-09-24 12:02:38 +02:00
Stefano Sabatini
b1fee1be61 lavc/roqvideodec: propagate reget_buffer() error code 2012-09-24 12:02:31 +02:00
Stefano Sabatini
d2c70ec07f lavc/roqvideodec: remove useless headers 2012-09-24 12:02:23 +02:00
Michael Niedermayer
127b70e423 ra144: factor division out
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-23 21:12:23 +02:00
Reimar Döffinger
3905caf251 Document that the MPEG12 "fast" functions can read out of bounds.
This is intentional (and a reason why fast usually should not be used),
but a few people sent patches to "fix" this recently so it would be
better to document this.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-09-23 15:40:17 +02:00
Clément Bœsch
2599541b3d WebVTT demuxer and decoder. 2012-09-23 15:24:08 +02:00
Michael Niedermayer
fecfdf6e72 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  avcodec: fix memleak in avcodec_encode_audio2()

Conflicts:
	libavcodec/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-23 13:55:43 +02:00
Justin Ruggles
0ccf051a9d avcodec: fix memleak in avcodec_encode_audio2()
Ensure that padded_frame is freed before returning when needed.
2012-09-22 09:24:24 -04:00
Michael Niedermayer
8364bde02b Merge remote-tracking branch 'qatar/master'
* qatar/master:
  sipr: fall back to setting mode based on bit_rate.

Conflicts:
	libavcodec/sipr.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-22 14:04:44 +02:00
Michael Niedermayer
79bf1f0ad0 rawdec: fix "warning: assignment from incompatible pointer type"
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-22 13:48:40 +02:00
Michael Niedermayer
07cdd39478 pnmdec: use explicit casts to remove const to avoid warning with clang
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-22 04:51:47 +02:00
Michael Niedermayer
8d45c001a8 flac_parser: fix fifo ptr wrap check
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-22 04:40:10 +02:00
Reimar Döffinger
c54e00610f sipr: fall back to setting mode based on bit_rate.
Not all applications (e.g. MPlayer) set block_align, and
when using a different demuxer it might not even be
easily available.
So fall back to selecting mode based on bit rate as before
if block_align has not useful value.
It can't be worse than failing to decode completely.

(cherry picked from commit 1d0d63052b)

CC: libav-stable@libav.org
Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2012-09-21 20:11:23 +02:00
Michael Niedermayer
406cdddbdd Merge remote-tracking branch 'qatar/master'
* qatar/master:
  libx264: add forgotten ;
  matroskadec: fix a sanity check.
  matroskadec: only return corrupt packets that actually contain data
  lavf: zero data/size of the packet passed to read_packet().
  ARM: use 2-operand syntax for ADD Rd, PC in Apple PIC code
  ARM: align PIC offset pools to 4 bytes
  ARM: swap source operands in some add instructions
  configure: update tms470 detection for latest version
  lavf probe: prevent codec probe with no data at all seen
  motion_est: fix use of inline on extern functions

Conflicts:
	libavcodec/motion_est_template.c
	libavformat/matroskadec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-21 14:44:32 +02:00
Anton Khirnov
e52e4fe10d libx264: add forgotten ; 2012-09-21 09:20:09 +02:00
Andrey Utkin
cc07a7925e Add av_copy_packet()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-21 01:03:31 +02:00
Andrey Utkin
d33908a5fc Move av_dup_packet() copy logic to separate procedure
Done to simplify next commit introducing av_copy_packet()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-21 00:49:12 +02:00
Michael Niedermayer
5864ce13d1 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  mp3dec: read Xing frame TOC index
  mp3dec: use named constants for Xing header flags
  libx264: add support for nal-hrd, required for Blu-ray streams.
  mov: support random access point grouping
  matroskadec: properly support BlockDuration

Conflicts:
	libavcodec/libx264.c
	libavformat/isom.h
	libavformat/matroskadec.c
	libavformat/mov.c
	libavformat/mp3dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-20 21:46:35 +02:00
Mans Rullgard
a27a690fac ARM: swap source operands in some add instructions
This allows using a 16-bit opcode when generating Thumb2 code.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-09-20 17:07:18 +01:00
Mans Rullgard
a34a609fc1 motion_est: fix use of inline on extern functions
Inline functions declared without extern do not provide an external
definition in standard C99.  This code only works because most
compilers do not implement the inline semantics correctly.  With a
stricter compiler, linking fails with unresolved references to these
functions.

Declaring the functions extern inline works correctly with some
compilers while some others still fail to create external definitions.

For maximum portability, create a static inline version with an
externally visible wrapper for ff_get_mb_score.  ff_epzs_motion_search
is so large that no sane compiler inlines it anyway, so there the
inline keyword can simply be dropped with no effect.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-09-20 10:56:30 +01:00
Michael Niedermayer
16e52c86ba error_resilience: guess_dc: check malloc failure
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-20 05:38:53 +02:00
Michael Niedermayer
d2981b8ef1 h263dec: disable coded dimensions = 0 handling
This code causes infinite loops

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-20 04:38:46 +02:00
Michael Niedermayer
61ced71d79 Merge commit '581281e242609a222233a2e5538b89dfb88fb18e'
* commit '581281e242609a222233a2e5538b89dfb88fb18e':
  matroskadec: check realloc in lzo encoding
  matroska: honor error_recognition on unknown doctypes
  tiffdec: Add support for GRAY16LE.
  tiffenc: Add support for little endian RGB48 and GRAY16
  mpeg4: support frame parameter changes with frame-mt
  mpegvideo: check ff_find_unused_picture() return value for errors
  mpegvideo: release frame buffers before freeing them
  configure: msvc: default to 'lib' as 'ar' tool
  build: support some non-standard ar variants

Conflicts:
	libavcodec/h263dec.c
	libavcodec/mpegvideo.c
	libavcodec/tiff.c
	libavcodec/tiffenc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-20 03:20:29 +02:00
Michael Niedermayer
d1974e05d1 j2k: fix "static is not at beginning of declaration" warning
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-20 02:13:52 +02:00
Michael Niedermayer
36c2694d83 dcadec: fix "set but not used" variable
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-19 23:29:37 +02:00
John Van Sickle
9bf41210a9 libx264: add support for nal-hrd, required for Blu-ray streams.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2012-09-19 20:59:24 +02:00
Alex Converse
df6c3f9fb3 tiffdec: Add support for GRAY16LE.
Tested with the GraphicsMagick TIFF archive and Libav generated files.
2012-09-19 11:05:36 -07:00
Alex Converse
298ed797e1 tiffenc: Add support for little endian RGB48 and GRAY16 2012-09-19 11:05:36 -07:00
Janne Grunau
8701f4f8e8 mpeg4: support frame parameter changes with frame-mt
Adds a flag context_reinit to MpegEncContext to relieable keep track
of frame parameter changes which require a context reinitialization.
This is required for broken inputs which change the frame size but
error out before the context can be reinitialized.
2012-09-19 19:58:15 +02:00
Janne Grunau
01fc5d6609 mpegvideo: check ff_find_unused_picture() return value for errors 2012-09-19 19:58:15 +02:00
Janne Grunau
32c7589bb7 mpegvideo: release frame buffers before freeing them
Fixes triggering an assert in avcodec_default_release_buffer()
introduced in 1b3439b30.
2012-09-19 19:58:15 +02:00
Michael Niedermayer
d5fd610dab wmavoice: initialize best_hist_ptr to NULL to prevent (incorrect) warning.
As a sideeffect this makes the code more robust if a future change leaves
a path where it may be uninitialized otherwise.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-19 18:33:30 +02:00
Michael Niedermayer
8846115b1a Merge remote-tracking branch 'qatar/master'
* qatar/master:
  rv34: use ff_MPV_common_frame_size_change()
  mpegvideo: add reinit function for frame parameter changes

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-19 15:30:34 +02:00
Michael Niedermayer
67d501b4f1 Merge commit '1b3439b3055b083df51d7f7838ecc6b3f708b15c'
* commit '1b3439b3055b083df51d7f7838ecc6b3f708b15c':
  mpegvideo: move frame size dependent memory management to separate functions
  configure: add --toolchain option
  configure: Make the smoothstreaming muxer enable the ismv muxer
  smoothstreaming: Export the mp4 codec tags
  mov: check for EOF in long lasting loops
  avcodec: cleanup utils.c
  binkaudio: remove unneeded GET_BITS_SAFE macro
  binkaudio: use float sample format
  binkaudio: use a different value for the coefficient scale for the DCT codec

Conflicts:
	configure
	libavcodec/mpegvideo.c
	libavcodec/utils.c
	libavformat/Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-19 15:13:53 +02:00
Janne Grunau
b16d001b62 rv34: use ff_MPV_common_frame_size_change()
Specialised functionality for size changes with the advantage of
supporting frame size changes during frame-based multithreading.
2012-09-19 11:06:40 +02:00
Janne Grunau
435c0b87d2 mpegvideo: add reinit function for frame parameter changes
This is mainly required for frame parameter changes during frame based
multithreading but single threaded usage profits too from avoiding
ff_MPV_common_end()/ff_MPV_common_init() cycles.
2012-09-19 11:06:39 +02:00
Janne Grunau
1b3439b305 mpegvideo: move frame size dependent memory management to separate functions
This is a preparation for supporting frame size changes during
frame-based multithreading.
2012-09-19 11:06:31 +02:00
Michael Niedermayer
0b2ac679e2 sonic: factorize tail_size
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-18 17:37:41 +02:00
Michael Niedermayer
512beea529 sonicenc: limit quant so that golomb codes are less than 32 bits long
before they could become 33 bits

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-18 17:33:55 +02:00
Michael Niedermayer
efac6f7472 x86/mpegaudiodec: drop likely now unneeded #if HAVE_AVX_EXTERNAL
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-18 16:15:17 +02:00
Michael Niedermayer
c0dfc720ef mpegaudiodec: add prototypes for all functions that may need them
fixes compile failure

Found-by: kriegerod
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-18 16:10:09 +02:00
Michael Niedermayer
36e5c472c8 allcodecs: re-enable sonic
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-18 15:45:20 +02:00
Michael Niedermayer
a44cbc1cbc sonic: update to encode2() API
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-18 15:45:07 +02:00
Luca Barbato
419ffb2390 avcodec: cleanup utils.c 2012-09-18 15:32:52 +02:00
Justin Ruggles
ee90119e9e binkaudio: remove unneeded GET_BITS_SAFE macro
Normal get_bits() already has overread protection.
2012-09-18 09:27:23 -04:00
Justin Ruggles
7bfd1766d1 binkaudio: use float sample format
Use planar for DCT codec, interleaved for RDFT codec.
2012-09-18 09:27:23 -04:00