Commit Graph

434 Commits

Author SHA1 Message Date
Andreas Öman
7ae94d525c Indentation
patch by Andreas Öman

Originally committed as revision 10432 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-07 19:19:49 +00:00
Andreas Öman
ec970c2187 Let H.264 decoder skip deblocking across slices
if running with multiple threads and CODEC_FLAGS2_FAST is set.
Thus, it may decode the slices in parallel to gain speed.

Patch by Andreas Öman: [andreas olebyn nu]

Originally committed as revision 10431 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-07 18:27:13 +00:00
Jeff Downs
088ed4d636 Avoid a crash when H264 MMC operation causes the short term reference
list to be emptied.
Patch by Jeff Downs: [heydowns borg com]

Originally committed as revision 10416 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 20:04:09 +00:00
Andreas Öman
afebe2f7ca Add slice-based parallel H.264 decoding
Patch by Andreas Öman % andreas A olebyn P nu %
NB: depends on having a thread library activated at config time, and on
having a source encoded with multiple slices
Original threads:
date: May 18, 2007 11:00 PM
subject: [FFmpeg-devel] Parallelized h264 proof-of-concept
date: Jun 15, 2007 10:10 PM
subject: [FFmpeg-devel] [PATCH] h264 parallelized, (was: Parallelized h264 proof-of-concept)
date: Jun 25, 2007 7:02 PM
subject: Re: [FFmpeg-devel] [PATCH] h264 parallelized

Originally committed as revision 10407 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 16:18:15 +00:00
Kostya Shishkov
c92a30bb06 Move H.264 intra prediction functions into their own context
Originally committed as revision 10397 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-05 05:30:08 +00:00
Carl Eugen Hoyos
5d3de5ad22 Silence warnings about NAL_SVC_NON_IDR in H.264.
patch by Carl Eugen Hoyos, cehoyos ag.or at

Originally committed as revision 10289 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-04 14:48:39 +00:00
Carl Eugen Hoyos
1c746a490d Remove error raising when explicitely skipping frame
patch by Carl Eugen Hoyos: [cehoyos ag or at]
original thread:
[FFmpeg-devel] [PATCH] Don't let ctx->skip_frame>0 produce errors
date: 08/30/2007 01:30 PM

Originally committed as revision 10286 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-03 08:46:24 +00:00
Ramiro Polla
c8f9ef613e CONFIG_7REGS -> HAVE_7REGS
Originally committed as revision 10121 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-15 21:19:13 +00:00
Alexander Strange
6d324c813f Statements like a = b = c = d = e; store from right-to-left, so if
you write them in the right order it comes out backwards.
This removes them from fill_rectangle().
patch by Alexander Strange %astrange A ithinksw P com%
Original thread:
Date: Aug 14, 2007 5:36 AM
Subject: [FFmpeg-devel] [PATCH] two small h264 optimizations

Originally committed as revision 10118 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-14 22:28:09 +00:00
Alexander Strange
880003bbb9 Don't check the return value of decode_cabac_residual since it always
returns 0. This leads to a 0.4% speed-up.
Patch by Alexander Strange  astrange at_ ithinksw dot com
Original thread:
Date: Aug 11, 2007 11:44 PM
Subject: [FFmpeg-devel] [PATCH] h264: don't check decode_cabac_residual return

Originally committed as revision 10084 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-12 00:07:29 +00:00
Alex Beregszaszi
ec5dc2c1af debug: tell how much bits are skipped with unknown nal code
Originally committed as revision 9993 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-08 20:27:18 +00:00
Michael Niedermayer
873525491e use ENABLE_GRAY
Originally committed as revision 9847 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-01 01:01:03 +00:00
Andreas Öman
d4a688d029 fix cabac decoding with some Blue-Ray sources
Patch by Andreas Öman %andreas A olebyn P nu%
Original thread:
Date: Jul 7, 2007 1:23 AM
Subject: [FFmpeg-devel] Corrupted blocks and seeking issues in H264 disc sources

Originally committed as revision 9836 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-30 21:19:36 +00:00
Panagiotis Issaris
d04d5bcd0e Fix the self tests which are contained in some codecs and are using random().
Originally committed as revision 9755 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-19 08:47:07 +00:00
Andreas Öman
9a5a05d0b3 fix visual painting of MVs from h264: they are painted twice too long
since the MVs are in qpel res.
Patch by Andreas Öman % andreas A olebyn P nu %
Date: Jul 14, 2007 12:40 PM
Subject: [FFmpeg-devel] [PATCH] h264 mv visualization

Originally committed as revision 9688 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-15 19:03:12 +00:00
Benoit Fouet
93f4823935 bring back h264 build
Originally committed as revision 9555 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-09 07:51:54 +00:00
Måns Rullgård
bad700e346 trivial warning fixes
Originally committed as revision 9547 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-08 23:14:54 +00:00
Andreas Öman
4691a77db4 Add support for streams with different chroma_qp_index_offset
for Cr and Cb
Patch by Andreas Öman % andreas A olebyn P nu %
Original thread:
Date: Jun 26, 2007 8:48 PM
subject: [FFmpeg-devel] Color corruption and seeking errors with H264 disc sources

Originally committed as revision 9505 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-06 14:21:37 +00:00
Andreas Öman
042ef4b720 Precompute a chroma_qp table with index offset for each pps,
this saves speed for the upcoming secondqp fix.
Patch by Andreas Öman % andreas A olebyn P nu %
Original thread:
Date: Jun 26, 2007 8:48 PM
subject: [FFmpeg-devel] Color corruption and seeking errors with H264 disc sources

Originally committed as revision 9498 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-06 07:58:08 +00:00
Andreas Öman
4bbdf13f9e Compute the dequant coefficient table ptr outside the loop,
this saves speed for the upcoming secondqp fix.
Patch by Andreas Öman % andreas A olebyn P nu %
Original thread:
Date: Jun 26, 2007 8:48 PM
subject: [FFmpeg-devel] Color corruption and seeking errors with H264 disc sources

Originally committed as revision 9497 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-06 07:55:37 +00:00
Diego Biurrun
e5a389a1b7 license header consistency cosmetics
Originally committed as revision 9484 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-05 10:40:25 +00:00
Andreas Öman
b69378e295 Don't swap back un-deblocked lines for intra prediction when
at slice boundaries for deblocking-type 2 content.

This is needed for slice based threading only and doesn't do much
good or bad otherwise.
Patch by Andreas Oman %andreas A olebyn P nu%
Original thread:
date: Jun 18, 2007 1:21 PM
subject: Re: [FFmpeg-devel] [PATCH] h264 parallelized,

Originally committed as revision 9380 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-21 07:52:06 +00:00
Andreas Öman
24456882f3 Do not reuse the rbsp de-escape buffer if both
the intra and inter -nal units are escaped
patch by Andreas Öman: \andreas olebyn nu/
original thread:
[FFmpeg-devel] [PATCH] h264: rbsp de-escape and data partitioning..
date: 06/20/2007 09:32 AM

Originally committed as revision 9374 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-20 08:53:53 +00:00
Andreas Öman
995a30c06b Decouple bit context from h264 context in decode_ref_pic_marking()
(done in order to implement slice-level parallel decoding)
Patch by Andreas Öman % andreas olebyn nu %
Original thread:
Date: Jun 15, 2007 10:10 PM
Subject: [FFmpeg-devel] [PATCH] h264 parallelized, (was: Parallelized h264 proof-of-concept)

Originally committed as revision 9371 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-19 21:34:04 +00:00
Andreas Öman
1c48415bb9 indentation
patch by Andreas Öman: [andreas olebyn nu]

Originally committed as revision 9360 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-18 08:48:26 +00:00
Andreas Öman
b41c1db38d Factor out init_scan_tables(), patch by Andreas Öman %andreas A olebyn.nu%
original thread:
Date: Jun 15, 2007 10:10 PM
Subject: [FFmpeg-devel] [PATCH] h264 parallelized, (was: Parallelized h264 proof-of-concept)

Originally committed as revision 9341 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-16 19:54:04 +00:00
Måns Rullgård
706da4af32 fix some printf format specifiers
Originally committed as revision 9334 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-16 14:52:05 +00:00
Diego Biurrun
90b5b51eab misc typo fixes
Originally committed as revision 9291 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-12 18:50:50 +00:00
Diego Biurrun
755bfeabcc misc spelling fixes
Originally committed as revision 9289 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-12 09:29:25 +00:00
Andreas Öman
93cc10fa9c h264: use 'simple' in border backup / xchg
patch by Andreas Öman: [andreas olebyn nu]
original thread:
subject: [FFmpeg-devel] [patch] h264: use 'simple' in border backup / xchg
date: 06/07/2007 03:24 PM

Originally committed as revision 9237 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-07 13:51:06 +00:00
Andreas Öman
83b3401731 filter_mb_fast() doesn't handle h->deblocking_filter==2 (skip slice edges), so delegate that case to filter_mb().
Patch by Andreas Öman [andreas at olebyn dot nu].

Originally committed as revision 9180 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-03 11:44:43 +00:00
Carl Eugen Hoyos
154e30f6c2 rename attribute_unused to av_unused and moves its declaration to common.h
patch by Carl Eugen Hoyos cehoyos chez ag or at
original thread: [FFmpeg-devel] [PATCH] attribute_unused -> av_unused
date: 05/29/2007 01:23 PM

Originally committed as revision 9155 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-30 09:32:25 +00:00
Andreas Öman
7978debdc2 allocate PPS and SPS dynamically
patch by Andreas Öman andreas ta olebyn tod nu
reference thread:
subject: [FFmpeg-devel] [PATCH] h264: allocate PPS and SPS dynamically
date: 05/28/2007 03:00 PM

Originally committed as revision 9148 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-29 14:35:29 +00:00
Panagiotis Issaris
cb1a74cf8c Export the four remaining H.264 decoder intra prediction functions for reuse in
the H.264 encoder. These functions are: pred8x8_left_dc_c, pred8x8_top_dc_c,
pred16x16_left_dc_c and pred16x16_top_dc_c.

Originally committed as revision 9107 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-23 13:46:11 +00:00
Reimar Döffinger
2c32b173d9 Move attribute_unused to variable declarations in macros instead of
introducing a useless extra variable.

Originally committed as revision 9052 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-17 20:18:46 +00:00
Reimar Döffinger
e36d79c837 Change some leftover __attribute__((unused)) and __attribute__((used)) to
attribute_unused and attribute_used respectively to ease compiling on non-gcc.

Originally committed as revision 9024 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-14 14:07:50 +00:00
Diego Biurrun
a2e4c0ddae Remove duplicate #includes, avcodec.h #includes common.h.
Originally committed as revision 8995 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-11 07:21:14 +00:00
Aurelien Jacobs
26b4fe821c split h264.c to move parser in its own file
Originally committed as revision 8985 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-10 22:26:44 +00:00
Aurelien Jacobs
c53d2d9042 make some parser parameters const to avoid casting const to non-const
Originally committed as revision 8921 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-07 00:47:03 +00:00
Diego Biurrun
5a6a6cc7dc Fix multiple "‘inline/static’ is not at beginning of declaration" warnings.
Originally committed as revision 8894 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-05 12:18:14 +00:00
Diego Biurrun
e24465962d Remove unused variable.
Originally committed as revision 8878 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-02 23:11:23 +00:00
Mean
dcc3a30b58 prevent going out of the buffer if the nal size does not fit in the buffer.
Patch by Mean % fixounet A free P fr %
Original thread:
Date: Apr 29, 2007 2:00 PM
Subject: Re: [Ffmpeg-devel] [patch] h264.c, dont go beyond buffer in h264_decode_nal_unit

Originally committed as revision 8858 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-04-29 23:18:39 +00:00
Diego Biurrun
e69364b700 Mark code parts that cannot work on AMD64 due to broken relocations as such.
This allows building shared libraries on AMD64 again.
based on a patch by Diego 'Flameeyes' Pettenò and suggestions by Michael
original thread:
Date: Wed, 18 Apr 2007 11:26:12 +0200
Subject: [Ffmpeg-devel] [PATCH] (try 2) Build shared libraries on AMD64 again

Originally committed as revision 8849 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-04-27 09:32:31 +00:00
Diego Biurrun
784b7f77c8 10l: Rename missed occurrences of CONFIG_EBX_AVAILABLE to HAVE_EBX_AVAILABLE.
Originally committed as revision 8821 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-04-26 00:32:31 +00:00
Limin Wang
3b77e48f0a add a check before find_frame_end call
Patch by Limin Wang % lance P lmwang A gmail P com %
Original thread:
date: 04/09/2007 03:54 PM
subject: [Ffmpeg-devel] [PATCH] fix segment fault in h264_parse if buf_size is zero

Originally committed as revision 8714 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-04-11 14:04:47 +00:00
Reinhard Nissl
ad1ea1f155 When dst_length == 0 bit_length has to be 0, too, but the current code still
calls decode_rbsp_trailing() and therefore bit_length might get negative.
Although the remaining code is able to handle a negative bit_length, avoid
the calculation at all by setting bit_length to 0 for dst_length == 0.
patch by Reinhard Nissl, rnissl gmx de

Originally committed as revision 8690 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-04-09 14:10:07 +00:00
Reinhard Nissl
6ac9696e77 Remove a NAL unit's trailing zero bytes even when dst_length is 1.
Consider the following byte sequence

    00 00 01 0a 00 00 00 01 09 ...
               ^  ^
               A  B

decode_nal() determines dst_length to be 1 (i. e. the byte between label
A and B above). However, this byte is a trailing zero byte as the spec
says the the current NAL unit is terminated by a byte sequence 00 00 00.

The current code used a loop to decrement dst_length accordingly. But the
loop doesn't start as the loop condition checks for dst_length > 1, which
should read dst_length > 0.
patch by Reinhard Nissl, rnissl gmx de

Originally committed as revision 8689 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-04-09 13:39:35 +00:00
Reinhard Nissl
ff82e429cb scenario: A properly coded frame is followed by an end of sequence NAL unit,
i.e. the four bytes 00 00 01 0a.
When decode_nal() decodes the end of sequence NAL unit, it returns with
dst_length == 0. The original code leads to a return -1 which discards
the current properly decoded frame.
patch by Reinhard Nissl, rnissl gmx de

Originally committed as revision 8688 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-04-09 12:55:07 +00:00
Diego Biurrun
e42dba481f typos/grammar
Originally committed as revision 8641 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-04-07 14:09:20 +00:00
Stefan Huehner
2b100ab2bf changes some function declarations from () to (void) as per ansi c.
Patch by Stefan Huehner % stefan A huehner P org %

Originally committed as revision 8625 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-04-04 11:51:08 +00:00
Panagiotis Issaris
449659919c Fix compilation when using the --disable-opts parameter. This to help those
interested in using a debugger to debug FFmpeg.

Original thread:
Subject: [PATCH] Fix compilation when using --disable-opts
Date: 2007-03-15 16:58:35 GMT

Originally committed as revision 8549 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-03-29 14:20:30 +00:00
Baptiste Coudurier
b21c9af936 reindent after last commit
Originally committed as revision 8399 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-03-14 11:13:17 +00:00
Baptiste Coudurier
1153be3be1 h264 complete frames parsing support
Originally committed as revision 8398 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-03-14 11:12:02 +00:00
Michael Niedermayer
56c70e1d3a check for no frame and prevent segfault
Originally committed as revision 8211 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-03-03 21:33:33 +00:00
Michael Niedermayer
66a4b2c179 support feeding individual NAL units to the decoder instead of just complete frames
Originally committed as revision 8197 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-03-02 23:35:26 +00:00
Michel Bardiaux
a9c9a2400b Supply context to tprintf
Originally committed as revision 8142 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-27 09:39:04 +00:00
Reimar Döffinger
f66e4f5f9e Add av_ prefix to clip functions
Originally committed as revision 8122 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-25 10:27:12 +00:00
Michael Niedermayer
0268a54a65 rewrite find_frame_end()
new code correctly splits long start codes, also its about twice as fast

Originally committed as revision 8120 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-25 02:38:08 +00:00
Alexander Strange
bd91fee3d7 h264 optimization: common case hl_decode_mb patch by (Alexander Strange astrange ithinksw com)
144095->142319 dezicycles for hl_decode_mb() on duron
trailing whitespace removed by me

Originally committed as revision 8106 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-24 00:58:28 +00:00
Michael Niedermayer
97bbb8851b output delayed frames
fixes:
CANL4_SVA_B.264
NL3_SVA_C.264
NL3_SVA_E.264

Originally committed as revision 8055 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-21 21:16:07 +00:00
Diego Biurrun
0afd2a92bd cosmetics: Fix a common typo, sepErate --> sepArate.
Originally committed as revision 8047 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-21 10:15:08 +00:00
Loren Merritt
4672503d8c simplify in fill_caches
Originally committed as revision 8026 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-19 04:44:17 +00:00
Michael Niedermayer
fda51641b1 factorize more calls to fill_rectangle()
Originally committed as revision 8017 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-18 01:37:50 +00:00
Michael Niedermayer
d19f5acb36 factorize fill_rectangle() calls
Originally committed as revision 8016 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-18 01:24:57 +00:00
Michael Niedermayer
8d6947bc7d factorize fill_rectangle()
remove more silly ref_count checks
use list_count where appropriate

Originally committed as revision 8000 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-16 21:50:37 +00:00
Michael Niedermayer
3425501d3b replace list<2 checks by list<list_count
remove silly ref_count<0 and ref_count==0 checks its impossible for this variable to have such a value

Originally committed as revision 7999 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-16 21:42:01 +00:00
Michael Niedermayer
187696fa72 fix 2nd ref_count check
add list_count

Originally committed as revision 7998 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-16 21:34:21 +00:00
Michael Niedermayer
0565c64834 fix ref_count check
Originally committed as revision 7997 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-16 21:29:15 +00:00
Michael Niedermayer
65a0f3fd47 factorize mv_cache and mvd_cache init
Originally committed as revision 7996 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-16 21:27:59 +00:00
Michael Niedermayer
43ff071456 simplify
Originally committed as revision 7995 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-16 21:25:22 +00:00
Francois Oligny-Lemieux
6ff9b4226b always decode extradata when of non-avc stream (like RTSP)
Patch by Francois Oligny-Lemieux % eucloid A gmail P com %
Original thread:
Date: Feb 9, 2007 12:00 AM
Subject: [Ffmpeg-devel] h264.c patch, always decoding extradata when on non avc stream

Originally committed as revision 7904 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-09 22:25:29 +00:00
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
Måns Rullgård
af9e7d1810 --enable/disable parsers. Warning: some combinations are broken.
Originally committed as revision 5691 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-09 12:02:15 +00:00
Michael Niedermayer
784036e404 simplify intra prediction mode decoding
Originally committed as revision 5612 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-04 17:06:43 +00:00
Måns Rullgård
91c58c944f fill_mbaff_ref_list is missing a return statement, its return value
is ignored, and it can't possibly fail, so make it void

Originally committed as revision 5566 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-01 17:33:48 +00:00
Loren Merritt
c4da83fb0f h264: accept rbsp_trailing longer than 1 byte
Originally committed as revision 5467 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-06-12 09:30:17 +00:00
Michael Niedermayer
b3aaa7bea6 typo me thinks ...
Originally committed as revision 5421 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-05-29 16:39:40 +00:00
Loren Merritt
5d18eaad13 h264: MBAFF interlaced decoding
Originally committed as revision 5419 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-05-28 22:44:14 +00:00
Loren Merritt
67a8208695 h264: faster fill_rectangle()
Originally committed as revision 5418 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-05-28 22:28:08 +00:00
Michael Niedermayer
2d661e073e cosmetics (initalize variables where they are used)
Originally committed as revision 5356 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-05-10 11:05:03 +00:00
Michael Niedermayer
11b681687d decoders should (IMHO) not duplicate frames, the application can do this if it wants
Originally committed as revision 5355 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-05-10 10:57:27 +00:00
Loren Merritt
09786209e6 reinit quant matrices if pps is overwritten by another of the same pps_id.
Originally committed as revision 5346 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-05-05 18:08:01 +00:00
Loren Merritt
89ddb72aa1 warn on interlaced streams
Originally committed as revision 5337 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-04-30 19:31:45 +00:00
Loren Merritt
2848ce84d2 don't force asserts in release builds. 2% faster h264.
Originally committed as revision 5332 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-04-29 00:43:15 +00:00
Loren Merritt
2ea392529a 10l in 1.199 (write_back_motion with B-pyramid + spatial)
Originally committed as revision 5215 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-25 09:46:43 +00:00
Loren Merritt
513fbd8e5a prefetch pixels for future motion compensation. 2-5% faster h264.
Originally committed as revision 5203 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-23 20:16:36 +00:00
Loren Merritt
53b19144e7 1.5x faster write_back_motion, 1-3% overall
Originally committed as revision 5198 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-22 12:41:02 +00:00
Michael Niedermayer
4cb8574dc8 fixing coverity warnig CID: 253 (reading over the end of the aspect_ratio array for illegal aspect ratios)
Originally committed as revision 5163 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-13 23:46:47 +00:00
David S. Miller
bf4665eeec Alignment fixes, caused problems on SPARC.
patch by "David S. Miller" davem <<at>> davemloft <<dot>> net

Originally committed as revision 5130 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-09 08:05:45 +00:00
Steve L'Homme
267f7edcd1 (f)printf --> av_log conversion
taken from a patch by Steve L'Homme

Originally committed as revision 5127 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-08 11:43:10 +00:00
Loren Merritt
548a1c8a35 h264_idct8_add_mmx
Originally committed as revision 5123 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-07 22:45:56 +00:00
Loren Merritt
9e4cc776da keyframe flag was wrong if SEIs followed the keyframe
Originally committed as revision 5107 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-04 03:57:33 +00:00
Måns Rullgård
1bd8624697 kill some warnings
Originally committed as revision 5063 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-25 22:41:31 +00:00
Loren Merritt
285b570fd2 fix a memory leak on seeking.
Originally committed as revision 5062 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-25 22:15:24 +00:00
Loren Merritt
85ed1022b3 minor simplifications in cabac_mb_type
Originally committed as revision 5048 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-22 05:59:44 +00:00
Loren Merritt
db8a64cba0 don't arbitrarily limit delta_qp
Originally committed as revision 5026 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-16 01:16:12 +00:00
Loren Merritt
8b03135958 fix some crashes on negative nalsize.
Originally committed as revision 5022 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-14 05:40:53 +00:00
Loren Merritt
171c407621 fix some crashes when missing frames
Originally committed as revision 5019 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-13 18:13:13 +00:00
Loren Merritt
ef9d1d1575 h264: special case dc-only idct. ~1% faster overall
Originally committed as revision 4971 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-10 06:55:25 +00:00
Loren Merritt
c0234aa44c slightly faster loopfilter
Originally committed as revision 4958 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-08 07:04:32 +00:00
Steve L'Homme
68b51e58ce MSVC-compatible __align8/__align16 declaration
patch by Steve Lhomme, steve .dot. lhomme .at. free .dot. fr

Originally committed as revision 4942 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-05 13:35:17 +00:00