Commit Graph
13920 Commits
Author SHA1 Message Date
Reimar Döffinger 6fd00e9dd9 aacdec: add decode_channel_map overread check
All decode_channel_map calls together can easily read
more data than the amount of padding available.
Thus below patch adds an input length check before reading them.
Fixes some invalid reads with sample from
http://bugzilla.mplayerhq.hu/show_bug.cgi?id=1138
2011-05-07 18:08:46 +02:00
Stefano Sabatini 01042d4123 lavc: set defaults in internal codec frames
This is required specifically for setting frame->format to -1,
otherwise it will be set to 0 = PIX_FMT_YUV420P and code reading
the format from the output decoded frame will get misled.

In particular fix regressions occurring with the pending vsrc_buffer
patch.
2011-05-07 12:03:59 +02:00
Stefano Sabatini 18ded93ab3 lavc: add format field to AVFrame
The format is a per-frame property, having it in AVFrame simplify the
operation of extraction of that information, since avoids the need to
access the codec/stream context.
2011-05-07 11:45:37 +02:00
Stefano Sabatini 22333a6b19 lavc: add width and height fields to AVFrame
width and height are per-frame properties, setting these values in
AVFrame simplify the operation of extraction of that information,
since avoids the need to check the codec/stream context.
2011-05-07 11:45:30 +02:00
Reimar Döffinger f44967b1b5 Use av_fast_malloc instead of av_fast_realloc.
Avoids a memleak, is less code and might be faster.
2011-05-07 09:58:38 +02:00
Reimar Döffinger 20e5d64a1a msvideo1enc: minor cosmetic cleanup, use FFALIGN, avoid calculating value
twice and add a missing "const".
2011-05-07 09:40:45 +02:00
Michael Niedermayer e5a85164b1 Merge remote branch 'qatar/master'
* qatar/master:
  mov: fix composition timestamps on movie fragments.
  wmavoice: Use proper size in memeset().
2011-05-07 04:14:09 +02:00
Michael Niedermayer c25a8d7dfb mpegvideo: fix 422 lowres
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-06 19:32:30 +02:00
JULIAN GARDNERandMichael Niedermayer 423986fc09 Allow encodiing empty subtitles. 2011-05-06 17:12:42 +02:00
Alex ConverseandAlex Converse 869303bebd wmavoice: Use proper size in memeset().
sizeof(array_functrion_argument) gives the size of the pointer type not
the size of the array to which it points.
2011-05-05 21:25:48 -07:00
Baptiste CoudurierandMichael Niedermayer 0fa8d19987 In svq3 decoder, check negative mb_type, fix potential crash.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-06 00:30:03 +02:00
Michael Niedermayer 757ec2d7e7 MPEG: support 4:4:4 lowres
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-05 21:44:32 +02:00
Michael Niedermayer 59b9c75d0e MPEG: support 4:4:4 intra lowres
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-05 21:42:41 +02:00
Baptiste CoudurierandMichael Niedermayer 2264c11081 SVQ3: do not modify const input buffer
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-05 15:43:58 +02:00
Baptiste CoudurierandMichael Niedermayer b0e7a932e6 SVQ3: Check that things match up after a frame.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-05 15:43:58 +02:00
Baptiste CoudurierandMichael Niedermayer 8811679c8e SVQ3: Move svq3 specific fields to their own context.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-05 15:43:46 +02:00
Michael Niedermayer b000b86e1d Merge remote branch 'qatar/master'
* qatar/master: (23 commits)
  doc: Check standalone compilation before submitting new components.
  Fix standalone compilation of pipe protocol.
  Fix standalone compilation of ac3_fixed encoder.
  Fix standalone compilation of binkaudio_dct / binkaudio_rdft decoders.
  Fix standalone compilation of IMC decoder.
  Fix standalone compilation of WTV demuxer.
  Fix standalone compilation of MXPEG decoder.
  flashsv: K&R cosmetics
  matroskaenc: fix memory leak
  vc1: make overlap filter for I-frames bit-exact.
  vc1dec: use s->start/end_mb_y instead of passing them as function args.
  Revert "VC1: merge idct8x8, coeff adjustments and put_pixels."
  Replace strncpy() with av_strlcpy().
  indeo3: Eliminate use of long.
  get_bits: make cache unsigned to eliminate undefined signed overflow.
  asfdec: fix assert failure on invalid files
  avfilter: check malloc return values.
Not pulled as reason for reindent is not pulled:  mpegvideo: reindent.
  nutenc: check malloc return values.
Not pulled due to much simpler solution in ffmpeg  *: don't av_malloc(0).
  ...

Conflicts:
	doc/developer.texi
	libavcodec/Makefile
	libavcodec/get_bits.h
	libavcodec/mpegvideo.c
	libavformat/Makefile
	libavutil/log.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-05 03:30:24 +02:00
Michael Niedermayer 334187ade7 Fix "libavcodec/dfa.c:189: warning: unused variable ‘frame_end’"
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-04 23:33:59 +02:00
JULIAN GARDNERandMichael Niedermayer e822c237b3 dvbsubdec: Split delete_state() 2011-05-04 23:33:59 +02:00
Michael Niedermayer 9522a752bf xsubenc: only 1 rectangle is supported so dont allow 0 as it would crash.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-04 23:33:59 +02:00
Justin RugglesandMichael Niedermayer d7c91c4cea sonic: fix sonic decoder to match encoder for sample rates other than 44100. 2011-05-04 23:33:59 +02:00
Michael Niedermayer 105a3c7a6b bitstream_reader: Try to fix "get_bits.h:305:45: warning: variable ‘re_cache’ set but not used [-Wunused-but-set-variable]"
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-04 21:31:07 +02:00
Diego Biurrun 61165a1bba Fix standalone compilation of WTV demuxer. 2011-05-04 21:12:40 +02:00
Diego Biurrun 091018e0dd Fix standalone compilation of MXPEG decoder. 2011-05-04 21:12:40 +02:00
Diego Biurrun 35e376b0d2 flashsv: K&R cosmetics 2011-05-04 21:12:39 +02:00
Michael Niedermayer 3acc44b739 bitstream reader: remove unneeded variable initilization.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-04 20:26:33 +02:00
Ronald S. Bultje 7d2e03afc8 vc1: make overlap filter for I-frames bit-exact. 2011-05-04 07:40:53 -04:00
Ronald S. Bultje 5c9f147e05 vc1dec: use s->start/end_mb_y instead of passing them as function args. 2011-05-04 07:40:02 -04:00
Ronald S. Bultje 18b6a69ce9 Revert "VC1: merge idct8x8, coeff adjustments and put_pixels."
This reverts commit f8bed30d8b. The reason
for this is that the overlap filter, which runs after IDCT, should run
on unclamped values, and thus IDCT and put_pixels() cannot be merged if
we want to attempt to be bitexact.
2011-05-04 07:40:01 -04:00
Alex ConverseandAlex Converse 1a5e4fd8c5 Replace strncpy() with av_strlcpy(). 2011-05-03 21:20:13 -07:00
Alex ConverseandAlex Converse aab6374bbe indeo3: Eliminate use of long. 2011-05-03 21:20:05 -07:00
Alex ConverseandAlex Converse 47bc52f821 get_bits: make cache unsigned to eliminate undefined signed overflow. 2011-05-03 21:14:39 -07:00
Ronald S. Bultje d969e93a72 mpegvideo: reindent. 2011-05-03 22:35:19 -04:00
Ronald S. Bultje fb22c23715 mpegvideo: don't av_malloc(0). 2011-05-03 22:29:00 -04:00
Kostya ShishkovandMichael Niedermayer e4be3485af MS Video 1 encoder 2011-05-04 02:22:12 +02:00
ami_stuffandMichael Niedermayer c402ce418a Remove lowres support from wmv2 decoder
lowres option crashes with wmv2 files which I have for test,
so I think it's better to remove the support to the time when
lowres will be really supported by this codec

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-03 04:38:22 +02:00
Michael Niedermayer 2525821f1a Merge remote branch 'qatar/master'
* qatar/master:
  vp8: frame-multithreading.
Duplicate  Replace deprecated FF_*_TYPE symbols with AV_PICTURE_TYPE_*.
Duplicate  Replace deprecated av_get_pict_type_char() with av_get_picture_type_char().
Bug spoted&removed in last merge:  dpx: Do not use DPX encoder for decoding.

Conflicts:
	ffmpeg.c
	ffplay.c
	libavcodec/h264.c
	libavcodec/mpeg12.c
	libavcodec/mpeg4videodec.c
	libavcodec/mpegvideo.c
	libavcodec/mpegvideo_enc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-03 04:08:23 +02:00
Carl Eugen Hoyos 7d70d1937a Support decoding of 24 bit True Audio samples-
Many samples will fail because "Output buffer size is too small."
2011-05-03 01:09:30 +02:00
Carl Eugen Hoyos 4cf2e30f05 Support decoding of 8 bit True Audio samples-
Many samples will fail because "Output buffer size is too small."
2011-05-03 01:06:18 +02:00
Carl Eugen Hoyos fba418e670 Do not assume AV_SAMPLE_FMT_S16 as tta sample format. 2011-05-03 01:02:07 +02:00
Alexandre ColucciandReimar Döffinger 3b4621acbb Fix init_get_bits length argument for init_get_bits.
Do not use rlelen for buffer size in init_get_bits, it is
only the size of the data for the first field.
Since it is not reliable, just use the size of the whole buffer.
Additional comments add removal of unused rlelen variable by
Reimar Döffinger.
2011-05-02 18:57:51 +02:00
Reimar Döffinger cf16104ad1 Change guess_palette so its output matches the most common palette.
This means it uses full brightness range and brightness
increasing instead of decreasing with index of non-opaque
color.

Based on patch by Alexandre Colucci [alexandre elgato com]
2011-05-02 18:39:03 +02:00
Ronald S. BultjeandAnton Khirnov 4773d90421 vp8: frame-multithreading.
Tested on a Mac Pro, 2 CPUs, 2 cores each, OSX 10.6.6:

time ./ffmpeg -v 0 -vsync 0 -threads [1234] -i \
  ~/Downloads/sintel_trailer_1080p_vp8_vorbis.webm \
  -f null -vcodec rawvideo -an -
1: 0m14.630s (89.9 fps)
2: 0m8.056s (163.2 fps)
3: 0m5.882s (223.6 fps)
4: 0m4.952s (265.6 fps)

time ./ffmpeg -v 0 -vsync 0 -threads [1234] -i \
  ~/Downloads/Elephants_Dream-720p-Stereo.webm \
  -f null -vcodec rawvideo -an -
1: 1m12.962s (215.1 fps)
2: 0m44.682s (351.2 fps)
3: 0m31.183s (503.2 fps)
4: 0m25.284s (620.6 fps)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-05-02 17:03:31 +02:00
Stefano Sabatini ce5e49b0c2 replace deprecated FF_*_TYPE symbols with AV_PICTURE_TYPE_* 2011-05-02 16:41:41 +02:00
Stefano Sabatini 301183d9be replace deprecated av_get_pict_type_char() with av_get_picture_type_char() 2011-05-02 16:41:35 +02:00
Stefano SabatiniandDiego Biurrun 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
Stefano SabatiniandDiego Biurrun 6209669de4 Replace deprecated av_get_pict_type_char() with av_get_picture_type_char().
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-05-02 11:24:45 +02:00
Kostya ShishkovandDiego Biurrun b178cd76b2 dpx: Do not use DPX encoder for decoding.
10l to the one who hasn't checked this.
2011-05-02 11:04:20 +02:00
Michael Niedermayer c3f5b81125 Merge remote branch 'qatar/master'
* qatar/master:
  ALPHA: Replace sized int_fast integer types with plain int/unsigned.
Duplicate  DPX image encoder
Duplicate  DPX decoder: read sample aspect ratio
Duplciate  DPX decoder: add buffer size checks.
  ac3enc: clip large coefficient values and negative exponents rather than using av_assert2().
  ac3enc: do not store a bandwidth code for each channel.
  ac3enc: remove bandwidth reduction as fallback for bit allocation failure.
  ac3enc: merge compute_exp_strategy_ch() into compute_exp_strategy()
  ac3enc: return error if frame+exponent bits are too large instead of using av_assert2().
  ac3enc: differentiate between current block and reference block in bit_alloc()
  ac3enc: simplify exponent_init() by calculating exponent_group_tab[] based on exponent group sizes.
  ac3enc: simplify stereo rematrixing decision options
Include both URLs:  Update URL to fate samples

Conflicts:
	Changelog
	doc/fate.txt
	libavcodec/ac3enc.c
	libavcodec/dpxenc.c
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-02 03:45:58 +02:00
Michael Niedermayer 007d352c1c dct-test: Support testing bits>8
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-02 02:58:09 +02:00