Commit Graph

9827 Commits

Author SHA1 Message Date
Diego Biurrun
95a61cfc24 Make VAAPI/VDPAU variant of decoder foo depend on decoder foo.
The VAAPI/VDPAU variants of foo require almost all of the code of foo.
Thus it makes little sense to enable just the accelerated variant.
This allows refactoring some object dependencies in the Makefiles.

Originally committed as revision 19403 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-12 13:22:01 +00:00
Alex Converse
36f517736f Cosmetics: reindent after last commit
Originally committed as revision 19400 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-10 21:54:06 +00:00
Alex Converse
6308765cb5 Ignore subsequent channel configurations after the first in an AAC file. The
current code doesn't handle them properly, and they are a dubious construction
at best.

Originally committed as revision 19399 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-10 21:53:04 +00:00
Alex Converse
c8ec2f1cb8 Mark iir filter init and free functions av_cold.
Originally committed as revision 19398 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-10 20:55:15 +00:00
Alex Converse
47f49f98ca Fix "iirfilter.c:55: warning: unused variable ‘size’"
Originally committed as revision 19397 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-10 20:51:22 +00:00
Alex Converse
e187d87d7d Eliminate use of complex.h from iirfilter.c
Originally committed as revision 19396 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-10 20:45:13 +00:00
Alex Converse
988c170547 Change fminf/fmaxf to FFMIN/FFMAX to fix the build on broken operating systems.
Originally committed as revision 19391 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-09 17:22:59 +00:00
Måns Rullgård
181b336304 Fix declarations of complex numbers
Complex numbers must be declared using a base type of float, double,
or long double.

Originally committed as revision 19390 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-09 10:16:00 +00:00
Alex Converse
f11bfe3065 Reindent after last commit
Originally committed as revision 19382 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-08 23:14:47 +00:00
Alex Converse
48d20c11ba Prevent AAC frame size overflows.
Originally committed as revision 19381 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-08 23:12:53 +00:00
Alex Converse
5962f6b0da Refactor windowing and early psy from bitstream writing parts of the AAC encoder.
Originally committed as revision 19380 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-08 23:10:13 +00:00
Alex Converse
7a4eebcdce Turn on AAC rate control.
Originally committed as revision 19379 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-08 23:04:22 +00:00
Diego Biurrun
c8f47d8b79 cosmetics: Remove unnecessary {} around if/for blocks;
move statements after if/for to the next line.

Originally committed as revision 19378 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-08 21:36:33 +00:00
Diego Biurrun
99d61d340c cosmetics: prettyprinting, K&R style, break overly long lines
Originally committed as revision 19377 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-08 21:16:06 +00:00
Alex Converse
fd257dc4c0 Cosmetics: Pretty print the AAC encoder.
Originally committed as revision 19376 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-08 20:36:45 +00:00
Alex Converse
78e65cd772 Merge the AAC encoder from SoC svn. It is still considered experimental.
Originally committed as revision 19375 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-08 20:01:31 +00:00
Reimar Döffinger
5e039e1b4c Add extra validation checks to ff_vorbis_len2vlc.
They should not be necessary, but it seems like a reasonable precaution.

Originally committed as revision 19374 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-08 19:39:23 +00:00
Reimar Döffinger
1de4ba7155 Make sure that values generated for ff_vorbis_len2vlc in
vorbis_parse_setup_hdr_codebooks are in the valid range (<=32).

Originally committed as revision 19373 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-08 19:31:04 +00:00
Alexis Ballier
287fff266f Add PIX_FMT_ARGB encoding to qtrle.
Patch by Alexis Ballier, alexis ballier gmail

Originally committed as revision 19372 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-08 14:58:16 +00:00
Diego Biurrun
6ae5c1f0fb whitespace cosmetics: Realign colums after last commit.
Originally committed as revision 19367 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-07 09:33:53 +00:00
Diego Biurrun
36b38500b6 Check for CONFIG_LIBFOO_DECODER/CONFIG_LIBFOO_ENCODER instead of just
CONFIG_LIBFOO in the external libraries section.
This is more consistent with the rest of the Makefiles, it makes clearer what
is actually implemented and should be advantageous if we implement an external
library encoder where we previously just had the decoder and vice versa.

Originally committed as revision 19366 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-07 09:33:08 +00:00
Diego Biurrun
fc1206a4d9 Remove support for nonfree libamr library for AMR-NB/WB decoding/encoding.
libopencore can now be used as a replacement except for AMR-WB encoding.

Originally committed as revision 19365 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-07 00:28:16 +00:00
Reimar Döffinger
4f76697b3e Change av_free to av_freep
Originally committed as revision 19360 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-06 16:49:36 +00:00
Reimar Döffinger
16c8318513 Reallocate internal buffer when coded frame size changes.
Fixes out-of-bounds reads and writes with i32/smclocki32.avi.1.0 from issue 1240.

Originally committed as revision 19359 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-06 16:48:23 +00:00
Reimar Döffinger
28bcc76ab7 Change iv_decode_frame to get AVCodecContext as argument, so that
avcodec_check_dimensions can be called with a proper context instead of NULL.

Originally committed as revision 19358 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-06 16:45:12 +00:00
Reimar Döffinger
c79c960ade Remove useless ret variable added in last revision again.
Originally committed as revision 19357 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-06 10:28:58 +00:00
Reimar Döffinger
7cda815044 100l, theora_decode_init must pass on errors from vp3_decode_init
Originally committed as revision 19356 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-06 09:35:00 +00:00
Reimar Döffinger
c4b7b8bf9c Make decode_init fail if the huffman tables are invalid and thus init_vlc fails.
Otherwise this will crash during decoding because the vlc tables are NULL.
Partially fixes ogv/smclock.ogv.1.101.ogv from issue 1240.

Originally committed as revision 19355 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-06 09:22:39 +00:00
Reimar Döffinger
e13cca4b14 Ensure that the filter limit values do not exceed the maximum allowed value of 127.
Originally committed as revision 19351 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-05 18:27:39 +00:00
Reimar Döffinger
7fa5f9990b Extend init_loop_filter to work for filter limit values up to 127 instead
of only up to 64. 127 is the maximum value allowed by the theora specification.

Originally committed as revision 19350 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-05 18:25:58 +00:00
Reimar Döffinger
ad92108694 Add a check to vp6_parse_coeff_huffman to ensure it does not overread the input buffer.
Originally committed as revision 19349 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-05 16:01:51 +00:00
Aurelien Jacobs
7576516a7e vp56dec: ensure range coder won't read past the end of input buffer
Originally committed as revision 19348 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-05 15:23:42 +00:00
Reimar Döffinger
5be5daf1e5 Check that palctrl is available on init instead of crashing when trying to use
it on decode.
Fixes mpeg2/smclockmpeg2.avi.2.1 from issue 1240.

Originally committed as revision 19347 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-05 12:14:05 +00:00
Loren Merritt
e30004fa73 fix a buffer overrun on corrupt huffyuv streams
Originally committed as revision 19346 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-04 23:59:10 +00:00
David Conrad
2483298ae2 ARM: NEON VP3 IDCT
15% faster VP3/Theora, 10% faster VP6

Originally committed as revision 19345 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-04 20:41:11 +00:00
Reimar Döffinger
82c9182fe3 If the end of the input buffer is reached while decoding MJPEG and at least
a valid SOF was found, emulate an EOI.
This allows e.g. to at least decode the available part of incomplete MJPEG frames.

Originally committed as revision 19344 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-04 18:24:43 +00:00
Reimar Döffinger
1496b04c28 Make the MJPEG decoder return -1 when no image was decoded so that decode
errors are actually recognizable as such.

Originally committed as revision 19343 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-04 18:22:33 +00:00
Reimar Döffinger
643fd8a198 Add a got_picture flag to MJpegDecodeContext which indicates if its picture
element is valid. Skip the code handling SOS and EOI if not, since it can not
work without a valid AVPicture.
This fixes a crash with mjpeg/smclockmjpeg.avi.1.0 from issue 1240 where the
decoder returned an invalid AVPicture.

Originally committed as revision 19342 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-04 18:20:35 +00:00
Reimar Döffinger
b27bf2a7b4 mjpegdec: check that the coded dc_index and ac_index have a valid associated VLC table.
Removes some disabled dc_index/ac_index checking code that seems to have had
some undocumented issues and should not really be necessary anymore now.
Fixes from issue 1240 the files mjpeg/smclockmjpeg.avi.1.10 and mjpeg/smclockmjpeg.avi.1.171.

Originally committed as revision 19341 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-04 12:54:36 +00:00
Alexander Strange
e5f61b94a1 H.264: Check the return value of decode_vui_parameters()
Files with invalid VUI are now rejected like
other invalid SPS are.

Fixes issue1231.

Originally committed as revision 19335 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-04 07:46:58 +00:00
Alexander Strange
0410ee8f86 H.264: Don't set data_partitioning for invalid NAL_DPA.
Before, the decoder could interpret a corrupt frame
as a NAL_DPA and NAL_DPC, and then start decoding
even if decode_slice_header() returned an error.
This frequently caused crashes.

Fixes issue1228, issue1229, and partially issue1238.

Originally committed as revision 19328 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-03 05:52:00 +00:00
Art Clarke
bda1ad1e73 Cleanup properly at the end of MPEG Audio parsing.
Patch by Art Clarke (aclarke AT xuggle com)

Originally committed as revision 19327 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-02 13:13:20 +00:00
Baptiste Coudurier
6be8b20466 Revert r19317, "simplify slice_end, return size of output frame".
It returns non decodable B-frames.

Originally committed as revision 19324 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-01 20:35:28 +00:00
Michael Niedermayer
fb6ecd7285 indent
Originally committed as revision 19323 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-01 20:34:16 +00:00
Michael Niedermayer
37458d7e1b Make sure we dont read over the end.
Fixes issue1237.

Originally committed as revision 19322 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-01 20:30:37 +00:00
Måns Rullgård
ec62d942ea Fix potentially unaligned accesses in ff_copy_bits()
A pointer should never be assigned a value which may have less than the
required alignment of the target type.  Compilers may assume pointer
values have the required alignment, and emit normal load/store instructions.

Unaligned pointers should use a character type or compiler-specific
type modifiers.

Originally committed as revision 19318 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-01 17:48:22 +00:00
Baptiste Coudurier
f7f1eb6cc9 simplify slice_end, return size of output frame
Originally committed as revision 19317 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-01 17:29:52 +00:00
Kostya Shishkov
39c601b5e7 RV3/4 intra types array causes alignment issues (at least on ARM5), thus change
its stride and offset to always have align 4.

Originally committed as revision 19316 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-01 15:08:02 +00:00
Måns Rullgård
4a30fff60d Fix argument type mismatches for av_picture_crop and av_picture_fill
Originally committed as revision 19314 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-01 10:36:18 +00:00
Baptiste Coudurier
fb0a835ff4 add missing \n to error message
Originally committed as revision 19313 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-01 06:48:27 +00:00