Commit Graph

35236 Commits

Author SHA1 Message Date
Michael Niedermayer 2bb79b23fe pthread: next try on freeing threads without crashing.
This should fix mingw

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-27 05:55:20 +01:00
Peter Ross 3d977edb04 HAM6/HAM8 support for IFF ACBM decoder
Based on patch by ami_stuff

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-27 03:11:08 +01:00
Peter Ross b488679510 iff: fix invalid reads (ticket 689)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-27 03:11:08 +01:00
Kostya Shishkov 801393bc96 vc1: select interlaced scan table by FCM element
Interlaced videos can contain progressive frames too and now wrong scantable
is selected for them.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-27 02:03:25 +01:00
Michael Niedermayer 5c15b78e4a Merge remote-tracking branch 'qatar/master'
* qatar/master: (42 commits)
  swscale: fix signed overflow in yuv2mono_X_c_template
  snow: fix integer overflows
  svq1enc: remove stale altivec-related hack
  snow: fix signed overflow in byte to 32-bit replication
  adx: rename ff_adx_decode_header() to avpriv_adx_decode_header()
  avformat: add CRI ADX format demuxer
  adx: add an ADX parser.
  adx: move header decoding to ADX common code
  adx: calculate the number of blocks in a packet
  adx: define and use 2 new macro constants BLOCK_SIZE and BLOCK_SAMPLES
  adx: check for unsupported ADX formats
  adx: simplify encoding by using put_sbits()
  adx: calculate correct LPC coeffs
  adx: use 12-bit coefficients instead of 14-bit to avoid integer overflow
  adx: simplify adx_decode() by using get_sbits() to read residual samples
  adx: fix the data offset parsing in adx_decode_header()
  adx: remove unneeded post-decode channel interleaving
  adx: validate header values
  adx: cosmetics: general pretty-printing and comment clean-up
  adx: remove useless comments
  ...

Conflicts:
	Changelog
	libavcodec/cook.c
	libavcodec/fraps.c
	libavcodec/nuv.c
	libavcodec/pthread.c
	libavcodec/version.h
	libavformat/Makefile
	libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-27 00:30:13 +01:00
Mans Rullgard 7c5ce99bd9 swscale: fix signed overflow in yuv2mono_X_c_template
As old bits are shifted out of the accumulator, they cause signed
overflows when they reach the end.  Making the variable unsigned fixes
this.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-11-26 22:53:47 +00:00
Mans Rullgard 8540dcfd7a snow: fix integer overflows
The way these values are used, they should have an unsigned type.
A similar change was made for mpegvideo in cb66847.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-11-26 22:53:47 +00:00
Mans Rullgard 0e55edcb57 svq1enc: remove stale altivec-related hack
altivec.h is no longer (indirectly) included, so this hack is not
needed.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-11-26 22:53:47 +00:00
Mans Rullgard ff6d9cc558 snow: fix signed overflow in byte to 32-bit replication
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-11-26 22:53:46 +00:00
Michael Niedermayer 22cb8e7b34 fate: enable new sbr tests after our rsync server has them now.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-26 23:13:50 +01:00
Michael Niedermayer 4fd5e7639b vc1: Fix pic_header_flag=0 (SA10143.vc1)
Bug introduced in:
commit 4509be3d2f
Author: Michael Niedermayer <michaelni@gmx.at>
Date:   Tue Oct 11 11:56:42 2011 +0200

    vc1: reset interlaced variables, prevent another bunch of crashes.

    Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-26 23:13:50 +01:00
Justin Ruggles 9d2dd356c2 adx: rename ff_adx_decode_header() to avpriv_adx_decode_header()
It is used by the ADX decoder, and therefore needs to be exported in order to
work with shared libs.
2011-11-26 17:00:00 -05:00
Justin Ruggles a17c3c7d15 avformat: add CRI ADX format demuxer 2011-11-26 16:25:07 -05:00
Justin Ruggles 27360ccc5e adx: add an ADX parser.
This simplifies the decoder so it doesn't have to process an in-packet header
or handle arbitrary-sized packets. It also fixes decoding of files with large
headers.
2011-11-26 16:25:07 -05:00
Justin Ruggles d8cec2d7fc adx: move header decoding to ADX common code 2011-11-26 16:25:07 -05:00
Justin Ruggles 7ff55d9bdb adx: calculate the number of blocks in a packet 2011-11-26 16:25:07 -05:00
Justin Ruggles 05c1f11b56 adx: define and use 2 new macro constants BLOCK_SIZE and BLOCK_SAMPLES 2011-11-26 16:25:07 -05:00
Justin Ruggles d1745619db adx: check for unsupported ADX formats 2011-11-26 16:25:07 -05:00
Justin Ruggles 994238536a adx: simplify encoding by using put_sbits() 2011-11-26 16:25:07 -05:00
Justin Ruggles b237248e29 adx: calculate correct LPC coeffs
Instead of using fixed coefficients, the correct way is to calculate the
coefficients using the highpass cutoff frequency from the ADX stream header
and the sample rate.
2011-11-26 16:25:06 -05:00
Justin Ruggles 954d94dd5e adx: use 12-bit coefficients instead of 14-bit to avoid integer overflow 2011-11-26 16:25:06 -05:00
Justin Ruggles c52ddc6024 adx: simplify adx_decode() by using get_sbits() to read residual samples 2011-11-26 16:25:06 -05:00
Justin Ruggles ca9e4727ba adx: fix the data offset parsing in adx_decode_header()
first 2 bytes are 0x80, 0x00. offset is only 16-bit.
this is according to format descriptions on multimedia wiki and wikipedia.
2011-11-26 16:25:06 -05:00
Justin Ruggles 837bbd19eb adx: remove unneeded post-decode channel interleaving
instead interleave channels while decoding
2011-11-26 16:25:06 -05:00
Justin Ruggles e2d1eace00 adx: validate header values 2011-11-26 16:25:06 -05:00
Justin Ruggles 8db67610c0 adx: cosmetics: general pretty-printing and comment clean-up 2011-11-26 16:25:06 -05:00
Justin Ruggles fbc79a9101 adx: remove useless comments 2011-11-26 16:25:06 -05:00
Justin Ruggles e0722d7fb7 adx: change short to int16_t 2011-11-26 16:25:06 -05:00
Justin Ruggles dd1b9f7cd9 adx: rename struct PREV to ADXChannelState 2011-11-26 16:25:06 -05:00
Mans Rullgard 3a83b2461e dnxhdenc: fix signed overflows
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-11-26 20:52:10 +00:00
Mans Rullgard b6ae086682 dv: simplify bitstream splicing in dv_decode_ac()
This is simpler and fixes some overflow checker warnings.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-11-26 20:52:09 +00:00
Mans Rullgard b02aa3a8ea s3tc: fix shift overflow by using unsigned constant
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-11-26 18:50:42 +00:00
Mans Rullgard f7f892e4d5 svq1enc: fix signed multiplication overflow
This multiplication can overflow the signed range but not the
unsigned.  After right-shifting it will thus fit in the signed
range again.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-11-26 18:50:27 +00:00
Mans Rullgard e4faa31a0a svq1dec: use sign_extend()
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-11-26 18:50:02 +00:00
Mans Rullgard 171ec81223 rv34: fix signed multiplication overflow
Multiply by unsigned 0x01010101 to replicate bytes into 32-bit
word.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-11-26 18:49:51 +00:00
Cheng Sun e524eadbf8 [PATCH] Fix crash when initializing multi-threaded decoding for corrupted file.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-11-26 10:46:08 -08:00
Clément Bœsch c1ae524e2b avfilter: fix AVFilterPad video only comment. 2011-11-26 19:30:30 +01:00
Michael Niedermayer 1b84e06244 lavfi-showfiltfmts.c: fix handling of null names
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-26 18:12:25 +01:00
Michael Niedermayer 61c2cec957 pthreads: fix segfault due to the thread beimg killed before it has been allocated
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-26 17:55:01 +01:00
kaptnole cb8db6423a aacdec: Fix Sound fragments after seeking
Fixes Ticket420

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-26 14:37:39 +01:00
Michael Niedermayer 8f37c8f0f8 opt_pix_fmts: try to fix segfault on open solaris
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-26 13:25:29 +01:00
Mans Rullgard 3d1af11df4 sol: use AV_RL32 instead of raw pointer cast
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-11-26 11:38:41 +00:00
Mans Rullgard b7581b5c83 cook: use a table for xor key rotation
This is simpler and avoids an invalid shift by 32 in the
aligned case.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-11-26 11:38:41 +00:00
Mans Rullgard 644bff6c9b apedec: fix signed integer overflows
This bit manipulation is equivalent but avoids undefined
shifts and overflows.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-11-26 11:38:41 +00:00
Mans Rullgard 93c286e54f qtrle: simplify 32-bit decode using intreadwrite macros
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-11-26 11:38:41 +00:00
Mans Rullgard 3bd1162a52 gif: fix invalid signed shifts
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-11-26 11:38:40 +00:00
Stefano Sabatini 28338bc2a3 lavfi: add libass based subtitles renderer 2011-11-26 10:42:33 +01:00
Reimar Döffinger 7fb55e0b02 rtjpeg: simplify get_block() by using get_bits_left.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-11-26 08:40:51 +01:00
Reimar Döffinger 7a62ddb689 rtjpeg: check get_block return value for error.
This avoids crashes due to reading out-of-bounds.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-11-26 08:39:58 +01:00
Reimar Döffinger f6afacdb3b nuv: check per-frame header for validity.
Since it contains dimensions parsing an invalid one has rather
annoying effects.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-11-26 08:38:59 +01:00