Commit Graph

263 Commits

Author SHA1 Message Date
Michael Niedermayer
08eb8fcdbf fix segfault with darkkben.free.fr/corrupted_h264.mp4
Originally committed as revision 7671 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-01-23 19:32:26 +00:00
Michael Niedermayer
2f29af3952 flame
Originally committed as revision 7664 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-01-23 13:42:09 +00:00
Michael Niedermayer
6f9ca74bec check num_reorder_frames for validity
increase delayed_pic buffer size (one temporary is used and a terminating NULL is assumed by most code so it has to be 18 large)

Originally committed as revision 7663 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-01-23 13:36:56 +00:00
Michael Niedermayer
9170e34537 adding assert to protect delayed_pic
Originally committed as revision 7661 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-01-23 12:45:57 +00:00
Michael Niedermayer
88e7a4d18c checking bitstream values and other related changes
some of these might have been exploitable

Originally committed as revision 7591 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-01-20 13:50:00 +00:00
Alex Beregszaszi
fead30d444 rename BE/LE_8/16/32 to AV_RL/B_8/16/32
Originally committed as revision 7587 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-01-19 22:12:59 +00:00
Guillaume Poirier
50eaa857c0 remove useless cast that makes code unreadable
Originally committed as revision 7586 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-01-19 12:41:56 +00:00
Francois Oligny-Lemieux
ac658be5db harden h264 decoding to prevent some crashes when input data is corrupted.
Patch by Frank %eucloid A gmail P com%
date: Jan 18, 2007 6:48 PM
subject: Re: [Ffmpeg-devel] h264, protection against corrupted data (second try patch)
AND
date: Jan 17, 2007 8:22 PM
subject: [Ffmpeg-devel] h264, protection against corrupted data

this also fixes a possible security issue (the sps and pps ids where not checked,
then used as index into an array of sps/pps structs which was then filled with data from the bitstream)

Originally committed as revision 7585 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-01-19 09:37:04 +00:00
Reimar Döffinger
b18e5c031c Avoid calling decode_slice when context_initialized is not set.
Avoids a crash due to dsp.clear_blocks being NULL when called.

Originally committed as revision 7547 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-01-16 17:46:26 +00:00
Michael Niedermayer
6de062957b fix 16 CABAC_BIT * 10l bug introduced in r6578
Originally committed as revision 7440 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-01-13 00:56:43 +00:00
Måns Rullgård
849f10351d rename always_inline to av_always_inline and move to common.h
Originally committed as revision 7256 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-12-08 00:35:08 +00:00
Panagiotis Issaris
acd8d10ffb Making rem6 and div6 globally visible and thus adding prefixes.
Originally committed as revision 7245 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-12-07 09:59:05 +00:00
Panagiotis Issaris
14e95e2c92 Removing unused code
Originally committed as revision 7244 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-12-07 09:47:29 +00:00
Panagiotis Issaris
a074f143dd Export symbols of several H.264 intra prediction functions
Originally committed as revision 7232 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-12-06 08:17:43 +00:00
Alexander Chemeris
a083f53c45 fix crash when decoding a truncated H264 slice
patch by Alexander Chemeris % ipse P ffmpeg A gmail.com %
Original thread:
date: Dec 5, 2006 7:26 PM
subject: [Ffmpeg-devel] [PATCH] Fix crush when truncated slice passed to H.264 decoder

Originally committed as revision 7229 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-12-05 22:18:19 +00:00
Panagiotis Issaris
3ee5c5b739 Removing unused code
Originally committed as revision 7228 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-12-05 22:05:09 +00:00
Panagiotis Issaris
550e66cb59 Change NAL unit type defines to an enum and move to a header file for usage
in other code.

Originally committed as revision 7226 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-12-05 21:52:15 +00:00
Måns Rullgård
55fde95e3b rename cropTbl -> ff_cropTbl
Originally committed as revision 6992 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-12 20:08:09 +00:00
Panagiotis Issaris
c2212338e8 Remove the H264Context parameter from decode_init_vlc() as it is not being used.
Originally committed as revision 6955 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-09 16:40:33 +00:00
Michael Niedermayer
65342b2b4a merge clip() into the alpha/beta/tc0 tables (10% faster filter_mb_fast() on P3)
Originally committed as revision 6863 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-01 19:34:30 +00:00
Reimar Döffinger
d55f46e5a8 Reenable AMD64 optimizations for cabac accidentially disabled in r6852
Originally committed as revision 6853 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-01 17:18:49 +00:00
Diego Biurrun
419b878494 Add ARCH_X86_32 as a new define for 32 bit x86 architectures and change
the semantics of ARCH_X86 to mean both 32 and 64 bits.

Originally committed as revision 6852 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-01 17:01:33 +00:00
Diego Biurrun
d5cd50ed73 Fix compilation with PIC enabled, BRANCHLESS_GET_CABAC is defined under
!PIC but gets used without a check for !PIC.

Originally committed as revision 6834 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-29 13:14:37 +00:00
Michael Niedermayer
e08f580644 decode_significance_8x8_x86()
8% faster decode_cabac_residual() (8x8 case only) on P3

Originally committed as revision 6750 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-20 21:34:02 +00:00
Michael Niedermayer
f624f029f0 slightly faster decode_cabac_mb_mvd()
Originally committed as revision 6735 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-19 14:54:34 +00:00
Michael Niedermayer
aa1da263aa 1 variable less in decode_cabac_residual() no speed change (but less vars means less things gcc can load and store redundantly)
Originally committed as revision 6734 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-19 10:33:56 +00:00
Michael Niedermayer
ebd624b662 optimize sign decoding code in decode_residual()
x86 is 4% faster on P3
C sign stuff + x86 code for everything else is also faster then before (sorry forgot to test pure C)
... and if i replace the second occurance of the sign decoding in decode_residual by the asm too then everything gets slower iam starting to think that it might be best to write the whole function in asm, playing this avoid random deoptimizations game with gcc is not fun at all

Originally committed as revision 6732 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-19 01:19:03 +00:00
Michael Niedermayer
30865e2aa1 copy cabac context onto the stack for the c code in decode_cabac_residual() (15% faster on P3 but still slower then the current asm)
Originally committed as revision 6725 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-17 23:59:21 +00:00
Michael Niedermayer
eb73bf723d x86 asm version of the decode significance loop (not 8x8) of decode_residual() 5% faster decode_residual() on P3
Originally committed as revision 6724 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-17 22:18:29 +00:00
Michael Niedermayer
b566bd65e2 simplify escape decoding
Originally committed as revision 6685 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-13 16:19:15 +00:00
Michael Niedermayer
de1013e1ca 10l int vs uint8_t
Originally committed as revision 6675 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-12 18:41:29 +00:00
Michael Niedermayer
851ded8918 prevent "mb level" get_cabac() calls from being inlined (3% faster decode_mb_cabac() on P3)
Originally committed as revision 6674 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-12 14:49:19 +00:00
Michael Niedermayer
1f6049f515 int->uint8_t for 2 tables
Originally committed as revision 6673 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-12 12:27:02 +00:00
Diego Biurrun
c26abfa541 Rename ABS macro to FFABS.
Originally committed as revision 6666 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-11 23:17:58 +00:00
Loren Merritt
a957c27b03 more prefetches, 2% faster h264
Originally committed as revision 6664 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-11 21:34:15 +00:00
Michael Niedermayer
d61c4e731e make state transition tables global as they are constant and the code is slightly faster that way
Originally committed as revision 6655 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-11 14:44:17 +00:00
Michael Niedermayer
0fa352c7e6 make lps_range a global table its constant anyway (saves 1 addition for accessing it)
Originally committed as revision 6653 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-11 13:21:42 +00:00
Michael Niedermayer
7822e1c1ff reverse remainder of the failed attempt to optimize *state=c->mps_state[s]
Originally committed as revision 6609 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-09 21:14:16 +00:00
Michael Niedermayer
1c2a417f6a move outcommented START/STOP_TIMER to a hopefully better place for benchmarking ...
Originally committed as revision 6605 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-09 18:20:00 +00:00
Michael Niedermayer
99ce10873d 5% faster get_cabac()
Originally committed as revision 6586 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-08 11:24:37 +00:00
Diego Biurrun
e16c407a81 output typo fixes
Originally committed as revision 6585 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-08 10:11:58 +00:00
Michael Niedermayer
5659b509c7 refill cabac variables in 16bit steps, 3% faster get_cabac()
Originally committed as revision 6578 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-07 15:44:14 +00:00
Diego Biurrun
b78e7197a8 Change license headers to say 'FFmpeg' instead of 'this program/this library'
and fix GPL/LGPL version mismatches.

Originally committed as revision 6577 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-07 15:30:46 +00:00
Loren Merritt
e6e77eb6fa simplify write_back_motion for skip mbs
Originally committed as revision 6548 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-04 07:08:26 +00:00
Loren Merritt
2833fc4646 approximate qpel functions: sacrifice some quality for some decoding speed. enabled on B-frames with -lavdopts fast.
Originally committed as revision 6412 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-01 21:25:17 +00:00
Måns Rullgård
191e8ca752 fix some signedness warnings
Originally committed as revision 6355 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-27 19:47:39 +00:00
Loren Merritt
776fe466b2 slightly faster deblock
Originally committed as revision 6121 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-08-29 03:07:58 +00:00
Loren Merritt
3e20143ee7 mmx implementation of deblocking strength decision.
2-3% faster h264.

Originally committed as revision 6113 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-08-28 09:33:01 +00:00
Loren Merritt
ae08a5631e 10l in r5768 (broke mbaff)
Originally committed as revision 5831 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-27 20:37:21 +00:00
Loren Merritt
717b173366 slightly faster h264 fill_caches()
Originally committed as revision 5768 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-16 18:55:18 +00:00