Commit Graph
100 Commits
Author SHA1 Message Date
Alexander StrangeandMichael Niedermayer 33eac92a3c h264: Complexify frame num gap shortening code
By observation it did not seem to handle prev_frame_num > frame_num.
This does not affect any files I have.
(cherry picked from commit 43c0092a80f8212cbb783260bafa157f7b85126e)
2011-06-12 18:02:24 +02:00
Alexander StrangeandMichael Niedermayer 53781bf13e Update todo
All the known bugs in h264 are fixed so I'm calling it done.
(cherry picked from commit 9cec36a6845c17e90a8d0c2cf9b03a00987c31f0)
2011-06-12 18:01:29 +02:00
Alexander StrangeandRonald S. Bultje 6a9c859444 H264/MPEG frame-level multi-threading.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-06-02 10:16:20 -07:00
Alexander StrangeandMichael Niedermayer a54dceb26a Merge remote-tracking branch 'ffmpeg-mt/master'
* ffmpeg-mt/master:
      Update todo
      The maximum buffer size needs to be 33, not 32

    merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-31 03:10:35 +02:00
Alexander StrangeandRonald S. Bultje a64c58a240 mdec: enable frame-level multithreading.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-05-18 06:54:15 -04:00
Alexander StrangeandRonald S. Bultje cb48fdf67e ffmpeg: Simplify decode loop condition to not use next_pts
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-05-10 07:23:51 -04:00
Alexander StrangeandMichael Niedermayer 7e2eb4bacd Merge remote-tracking branch 'ffmpeg-mt/master'
* ffmpeg-mt/master:
      Release unused pictures even when not calling ff_h264_frame_start()
      h264: Fix decoding race condition with PAFF
      h264: cosmetic whitespace change
    Duplicate  Fix REBASE_PICTURE with h.264
    Not pulled  Update test scripts to use ffmpeg instead of ffmpeg_g
    Duplicate  Fix ffmpeg-mt fixme in h264

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-18 00:47:35 +02:00
Alexander StrangeandRonald S. Bultje cf39b461d3 pthread: validate_thread_parameters() ignored slice-threading being intentionally off
The thread_type API allows you to request only FF_THREAD_FRAME (instead of
FRAME | SLICE), but it was being ignored.
We don't implement both of them at the same time, so there isn't an effect
on current codecs, except that you can request no kinds of threading now
(a bit useless).

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-04-09 08:23:22 -04:00
Alexander StrangeandMichael Niedermayer d0df2934ca Merge remote-tracking branch 'ffmpeg-mt/master'
* ffmpeg-mt/master:
DUPLICATE mingw32 compilation after 'unbreak avcodec_thread_init'
      pthread: validate_thread_parameters() ignored slice-threading being intentionally off
DUPLICATE Remove unnecessary parameter from ff_thread_init() and fix behavior

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-08 03:03:03 +02:00
Alexander StrangeandJanne Grunau ba9ef8d04e Remove unnecessary parameter from ff_thread_init() and fix behavior
thread_count passed to ff_thread_init() is only used to set AVCodecContext.
thread_count, and can be removed. Instead move it to the legacy implementation
of avcodec_thread_init().

This also fixes the problem that calling avcodec_thread_init() with pthreads
enabled did not set it since ff1efc524c.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-04-05 16:53:26 +02:00
Alexander StrangeandRonald S. Bultje a75529e81e mimic: implement multithreading. 2011-03-28 21:50:46 -07:00
Alexander StrangeandRonald S. Bultje 1500be13f2 dsputil: allow to skip drawing of top/bottom edges. 2011-03-26 17:45:38 -04:00
Alexander StrangeandRonald S. Bultje 66f608a6aa vp8.c: rename EDGE_* to VP8_EDGE_*. 2011-03-24 21:48:18 -04:00
Alexander StrangeandMichael Niedermayer e9e9139cee huffyuv: Add multithreading support
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 76d8846c4e)
2011-03-03 14:15:02 +01:00
Alexander StrangeandMichael Niedermayer 05fa64a7c5 pthreads: Fix bug introduced with thread_safe_callbacks
For intra codecs, ff_thread_finish_setup() is called before decoding starts
automatically. However, get_buffer can only be used before it's called, so
adding this requirement broke frame threading for them. Fixed by moving the
call until after get_buffer is finished.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit ad9791e12b)
2011-03-03 14:15:02 +01:00
Alexander StrangeandRonald S. Bultje 76d8846c4e huffyuv: Add multithreading support
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-01 11:39:25 -05:00
Alexander StrangeandRonald S. Bultje ad9791e12b pthreads: Fix bug introduced with thread_safe_callbacks
For intra codecs, ff_thread_finish_setup() is called before decoding starts
automatically. However, get_buffer can only be used before it's called, so
adding this requirement broke frame threading for them. Fixed by moving the
call until after get_buffer is finished.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-01 11:39:12 -05:00
Alexander StrangeandMichael Niedermayer 4a5a16898f vp3: Frame-based multithreading support
Decode times for big_buck_bunny_720p_stereo:

1 thread:
real    1m14.227s
user    1m13.104s
sys     0m1.108s

2 threads: (33% faster)
real    0m49.329s
user    1m33.735s
sys     0m1.834s

3 threads: (44% faster)
real    0m41.593s
user    1m44.884s
sys     0m1.967s
(cherry picked from commit d23845f311)
2011-02-11 02:54:08 +01:00
Alexander StrangeandMichael Niedermayer 043d2ff267 Deprecate avcodec_thread_init()
As a side effect of the last commit, avcodec_open() now calls it automatically,
so there is no longer any need for clients to call it.
Instead they should set AVCodecContext.thread_count.

avcodec_thread_free() is deprecated, and will be removed from avcodec.h at the
next MAJOR libavcodec bump.

Rename the functions to ff_thread_init/free, since they are now internal.
Wrappers are provided to maintain API compatibility.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit c0b102ca03)
2011-02-11 02:54:08 +01:00
Alexander StrangeandMichael Niedermayer b38f008ea6 Frame-based multithreading framework using pthreads
See doc/multithreading.txt for details on use in codecs.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-11 02:53:58 +01:00
Alexander StrangeandRonald S. Bultje d23845f311 vp3: Frame-based multithreading support
Decode times for big_buck_bunny_720p_stereo:

1 thread:
real    1m14.227s
user    1m13.104s
sys     0m1.108s

2 threads: (33% faster)
real    0m49.329s
user    1m33.735s
sys     0m1.834s

3 threads: (44% faster)
real    0m41.593s
user    1m44.884s
sys     0m1.967s
2011-02-09 09:17:29 -05:00
Alexander StrangeandRonald S. Bultje c0b102ca03 Deprecate avcodec_thread_init()
As a side effect of the last commit, avcodec_open() now calls it automatically,
so there is no longer any need for clients to call it.
Instead they should set AVCodecContext.thread_count.

avcodec_thread_free() is deprecated, and will be removed from avcodec.h at the
next MAJOR libavcodec bump.

Rename the functions to ff_thread_init/free, since they are now internal.
Wrappers are provided to maintain API compatibility.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-09 09:17:28 -05:00
Alexander StrangeandRonald S. Bultje 37b00b47cb Frame-based multithreading framework using pthreads
See doc/multithreading.txt for details on use in codecs.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-09 09:17:28 -05:00
Alexander StrangeandMichael Niedermayer 3c90abf40f vp3: Move table allocation code into a new function
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit edbb0c0708)
2011-02-06 20:31:45 +01:00
Alexander StrangeandMichael Niedermayer dc4a188309 vp3: Factor out expression
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit e8dcd73058)
2011-02-06 20:31:45 +01:00
Alexander StrangeandMichael Niedermayer fd0ae17aaf Adopt pkt_dts/pkt_pts in lavc clients
No behavior change; this makes DTS reliable with the next patch.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 6b47495397)
2011-02-06 20:31:45 +01:00
Alexander StrangeandRonald S. Bultje edbb0c0708 vp3: Move table allocation code into a new function
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-05 20:00:57 -05:00
Alexander StrangeandRonald S. Bultje e8dcd73058 vp3: Factor out expression
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-05 19:57:01 -05:00
Alexander StrangeandRonald S. Bultje 6b47495397 Adopt pkt_dts/pkt_pts in lavc clients
No behavior change; this makes DTS reliable with the next patch.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-05 16:37:43 -05:00
Alexander Strange 6ee99a7e13 VP3: remove an unnecessary static variable
Originally committed as revision 26398 to svn://svn.ffmpeg.org/ffmpeg/trunk
2011-01-17 08:36:13 +00:00
Alexander Strange 0f01602362 SVQ3: Allow decoding if thread_count is > 1
svq3 still doesn't support multithreading, but it's simpler for clients if
they can enable threading for all codecs by default.

Originally committed as revision 26015 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-15 00:22:47 +00:00
Alexander Strange e4dccc0d59 Update rv30 FATE reference after last commit
The rm demuxer has timestamp bugs, so this test is sensitive to changes in
timestamp correction. The previous commit did not make output any better or worse
on this test, just different.

See https://roundup.ffmpeg.org/issue2288 for details.

Originally committed as revision 25432 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-10 02:20:02 +00:00
Alexander Strange 0ff4f0c0fc ffmpeg: Use guess_correct_pts() to set decoded picture timestamps
Originally committed as revision 25431 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-10 02:17:26 +00:00
Alexander Strange 1bb56bdb41 rawdec: Properly pass reordered_opaque through the decoder
Originally committed as revision 25261 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-29 15:43:37 +00:00
Alexander StrangeandRonald S. Bultje 5ba24e4982 Fix compile on Darwin (FATE). Compile error:
yadif.c:226: error: can't find a register in class 'GENERAL_REGS' while reloading 'asm'
yadif.c:220: error: 'asm' operand has impossible constraints

Patch by Alexander Strange <astrange ithinksw com>.

Originally committed as revision 25251 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-29 12:34:01 +00:00
Alexander Strange 01d461980e All else being equal, prefer PTS over DTS in timestamp correction
Because DTS values aren't passed through decoders, they tend to be
inaccurate if decoder delay doesn't match what was expected by the encoder.

In particular this improves timestamps for H.264 without num_reorder_frames
set and with -strict 1, which causes DTS to be up to 16 frames ahead of the
picture.

Note that this doesn't really improve any file with very broken PTS/DTS,
since PTS isn't much more accurate in these.

Originally committed as revision 25242 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-28 03:45:27 +00:00
Alexander Strange 7a8bfa5d67 Extract timestamp correction code from ffplay.c to cmdutils.c
Originally committed as revision 25241 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-28 02:05:12 +00:00
Alexander Strange 28db32159e ffmpeg: cosmetics: combine two variable declarations
Originally committed as revision 23677 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-21 04:15:18 +00:00
Alexander Strange 7a5c850be9 H264: Copy h264dsp when creating new slice threads
Fixes slice multithreading (broken in r22565)
Fixes issue1815

Originally committed as revision 22740 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-31 03:55:42 +00:00
Alexander Strange 13cb218724 configure: restore -mdynamic-no-pic on darwin (missing since r20497)
Darwin compilers default to PIC on, so -mdynamic-no-pic (which disables it
again) needs to be added to cflags before enable pic is checked.

Fixes compilation without --enable-shared at least the 10.6 system compiler
for x86-32.
Fixes speed regression on all darwin arches except x86-64.

Originally committed as revision 22730 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-30 16:28:00 +00:00
Alexander Strange 767738f7a3 h264: Use + instead of | in some places
6 insns less on x86-64/gcc 4.2.

Originally committed as revision 22692 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-26 05:04:03 +00:00
Alexander Strange 601ca8c55c h264: Remove unused function argument
Originally committed as revision 22690 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-26 03:31:56 +00:00
Alexander Strange f7ba470d58 h264: Simplify decode_cabac_residual() specialization
Gives more consistent inlining with some compilers (such as llvm).

Originally committed as revision 22689 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-26 03:29:31 +00:00
Alexander Strange d55065a29f ffmpeg: Combine variable declaration and definition
Originally committed as revision 22537 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-15 02:33:49 +00:00
Alexander Strange 47b229dbab ffmpeg: Factor out redundant sync_ipts calculation
Originally committed as revision 22536 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-15 02:32:21 +00:00
Alexander Strange 78998bf217 h264: Remove unused variables.
Originally committed as revision 21815 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 21:09:38 +00:00
Alexander Strange 677dab59cb h264: Fix pointer warnings by removing redundant [0]
Fixes:
h264.h:1222:38: warning: initialization from incompatible pointer type
h264.h:1299:38: warning: initialization from incompatible pointer type
h264.h:1314:42: warning: initialization from incompatible pointer type

Originally committed as revision 21814 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 21:08:17 +00:00
Alexander Strange cd12c37729 Fix integer overflow warnings in h264.h
Fixes:
h264.h: In function 'fill_filter_caches':
h264.h:1216:73: warning: integer overflow in expression
h264.h:1307:81: warning: integer overflow in expression

Originally committed as revision 21813 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-13 20:57:13 +00:00
Alexander Strange 1e4f1c56d7 100l, correct wrong H.264+adaptive MBAFF decoding
Fixes several FATE tests.

Originally committed as revision 21445 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-25 01:56:13 +00:00
Alexander Strange 0b69d6254f H.264: Use 64-/128-bit write-combining macros for copies
2-3% faster decode on x86-32 core2.

Originally committed as revision 21440 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-25 00:30:44 +00:00
Alexander Strange bec358d683 H.264: Declare bS with DECLARE_ALIGNED_8 for uint64_t casts.
Originally committed as revision 21345 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-20 03:28:57 +00:00
Alexander Strange f6d0390657 Add macros for 64- and 128-bit write-combining optimization to intreadwrite.h.
Add x86 implementation using MMX/SSE.

Originally committed as revision 21281 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-18 10:24:33 +00:00
Alexander Strange 0209e1e160 Add missing Makefile dependencies to CONFIG_SNOW_ENCODER.
Fixes build with --disable-encoders --enable-encoder=snow.
This fixes MPlayer build with --disable-mencoder.

Originally committed as revision 21259 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-17 08:24:45 +00:00
Alexander Strange f267d3ac75 Implement alpha channel decoding for BGR HuffYUV.
Since BGR24 is decoded as BGR32, fill its alpha channel with 255
using the appropriate predictors.

Originally committed as revision 21211 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-14 01:32:49 +00:00
Alexander Strange 7ffd8332c7 Add missing internal.h to files calling ff_match_2uint16().
Fixes warnings:
libavcodec/mpegvideo_enc.c:574: warning: implicit declaration of function
'ff_match_2uint16'
libavcodec/ituh263enc.c:143: warning: implicit declaration of function
'ff_match_2uint16'
libavcodec/svq1enc.c:97: warning: implicit declaration of function
'ff_match_2uint16'

Originally committed as revision 21133 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-11 04:57:04 +00:00
Alexander Strange 35164ffe50 Correct truncated ID3v1 genre name.
Originally committed as revision 20843 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-13 22:31:29 +00:00
Alexander Strange f076fe4422 Remove a meaningless 'inline' from add_hfyu_left_prediction_bgr32_c().
Originally committed as revision 20260 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-16 23:06:55 +00:00
Alexander Strange 2d4bbdecee Huffyuv: Add missing const to src pointers in dsputil functions.
Originally committed as revision 20259 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-16 23:04:41 +00:00
Alexander Strange 8471a1873d Huffyuv: Remove unnecessary allocation in alloc_temp().
RGB only needs one temp array.

Originally committed as revision 20258 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-16 22:55:34 +00:00
Alexander Strange 6ec8eadda4 Huffyuv: Fix a valgrind warning in get_vlc2().
The padding in bitstream_buffer wasn't initialized.

Originally committed as revision 20257 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-16 22:52:23 +00:00
Alexander Strange 2704bd1a09 Fix the EBX available configure check on Darwin/i386.
-mdynamic-no-pic is required for it, but it was only
added to CFLAGS and the check only used ASFLAGS.

Originally committed as revision 19614 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-10 08:18:05 +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
Alexander Strange 0b389aee4d Add '.mp1' for MP1 audio in MOV/CAF.
Tested with streamcopy of 'mp1-sample.mp1' in incoming.

Originally committed as revision 19212 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-17 00:37:06 +00:00
Alexander Strange d2d5e06735 H.264: Fix memory leaks with multithreading.
The threads' contexts and rbsp_buffers were not freed at the end
of decoding.

Fixes issue 1581

Originally committed as revision 19207 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-16 21:50:36 +00:00
Alexander Strange 2b9969a945 H264: Fix out of bounds reads in SSSE3 MC
Reading above src[-2] isn't safe, so move loads and palignr ahead
3 pixels to load starting at the first pixel actually used.

Fixes issue941.

Originally committed as revision 18999 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-30 22:19:14 +00:00
Alexander Strange b6188c5a55 Put dispatch_tab in the rodata section for macho64.
This fixes linking shared libavcodec, since the linker doesn't allow
text relocations in shared libraries under Darwin/x86_64.

Based on a patch by Art Clarke (aclarke xuggle com)

Originally committed as revision 17197 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-13 00:57:22 +00:00
Alexander Strange 898189880b H264: Change left_block_options to uint8_t from int, saving a little space.
Originally committed as revision 17147 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-11 06:03:18 +00:00
Alexander Strange d43696309a Clear FF_INPUT_BUFFER_PADDING_SIZE bytes at the end of NALs in rbsp_buffer.
Fixes valgrind uninitialized value warnings at the end of decoding H.264
frames.

Originally committed as revision 16230 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-19 01:11:52 +00:00
Alexander Strange 1ca610c015 Allocate and clear FF_INPUT_BUFFER_PADDING_SIZE bytes at the end of mkv
extradata.

Fixes valgrind invalid read warnings during H.264 extradata parsing.

Originally committed as revision 16229 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-19 01:00:44 +00:00
Alexander Strange 385c820b4a Add a new -debug option for tracing calls to the default get/release_buffer functions.
Originally committed as revision 14406 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-26 01:57:10 +00:00
Alexander Strange 64b9d48f76 Move the size of the H264Context delayed_pic array into a #define.
This improves readability by getting rid of some magic numbers.

Originally committed as revision 14248 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-15 21:30:04 +00:00
Alexander Strange b1e12f99a2 Print the address of the AVCodecContext in av_log().
This makes debug output much easier to read when the
same codec is open more than once.

Originally committed as revision 14237 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-15 17:17:35 +00:00
Alexander Strange 88c5cadc2a Cosmetics: reindent.
Originally committed as revision 27279 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-07-13 22:27:50 +00:00
Alexander Strange 2ac6ff2ecb Remove const vector casts.
Fixes compilation with altivec and -std=gnu99.

Originally committed as revision 27278 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-07-13 22:27:19 +00:00
Alexander Strange bc31447225 Make the function prototype visible to comply with C99 inline.
Fixes building with gcc -std=gnu99.

Originally committed as revision 14140 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-09 17:51:57 +00:00
Alexander Strange 58cc7dd9fc Cosmetics: split a long line.
Originally committed as revision 14055 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-02 22:28:47 +00:00
Alexander Strange 92ed1ec957 Use get_cabac_bypass_sign instead of an if/else.
Originally committed as revision 14054 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-02 22:25:17 +00:00
Alexander Strange 142ee5d73d Reorder the if/else for residual cats to match gcc's branch prediction.
Originally committed as revision 14053 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-02 22:20:06 +00:00
Alexander Strange 47775cb8de Simplify loop condition for readability.
Originally committed as revision 14052 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-02 22:15:05 +00:00
Alexander Strange 9f734c3b57 Reindent.
Originally committed as revision 14051 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-02 22:12:01 +00:00
Alexander Strange 9588ec340c Clone decode_cabac_residual() for DC residuals, to get rid of a bunch of branches in the main loop.
Originally committed as revision 14050 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-02 22:08:12 +00:00
Alexander Strange 2e254bc583 Don't generate two copies of hl_decode_mb() under ENABLE_SMALL.
(assuming your compiler removes unused static functions)

Originally committed as revision 14049 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-02 22:03:53 +00:00
Alexander Strange fedec603db Don't test for H264 encoding unless an encoder exists.
Originally committed as revision 14048 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-02 21:46:18 +00:00
Alexander Strange 74fd9022b5 Realign newlines.
Originally committed as revision 14023 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-28 18:30:50 +00:00
Alexander Strange 00969e1c59 Use MANGLE() instead of memory operands to read globals.
(fixes out of registers with apple gcc 4.2)

Originally committed as revision 14022 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-28 18:27:31 +00:00
Alexander Strange b6a66897b6 Remove pointless AVFrame* casting.
Originally committed as revision 14011 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-27 18:53:41 +00:00
Alexander Strange 39047aecac Remove duplicate emms.
Originally committed as revision 14010 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-27 18:52:02 +00:00
Alexander Strange 8b9bda1c37 Remove commented-out code.
Originally committed as revision 14009 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-27 18:51:01 +00:00
Alexander Strange 2f3b1b801a Export qscale so that postprocessing works.
Originally committed as revision 14008 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-27 18:50:06 +00:00
Alexander Strange de7bdf58f4 Remove unused PutBitContext.
Originally committed as revision 14007 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-27 18:47:01 +00:00
Alexander Strange ff558537f0 Don't set mm_flags in fft-test, since it doesn't do anything anyway.
Originally committed as revision 13968 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-25 17:37:47 +00:00
Alexander Strange dafe882457 Use a local variable instead of mm_flags in dct-test.
Originally committed as revision 13967 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-25 17:33:55 +00:00
Alexander Strange f67a10cd0c Define mm_flags/support to be 0 on architectures where they don't exist.
Make sure we don't try to set them if that's the case.
This lets dct-test and fft-test build with --disable-mmx on x86, but not yet on ARM.

Originally committed as revision 13957 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-24 23:51:17 +00:00
Alexander Strange 5da1ab1ae1 Previous commit missed an initialization - this fixes FATE's test sample.
Originally committed as revision 13131 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-11 23:39:55 +00:00
Alexander Strange 488aca9b1e Set and use h->mb_xy in SVQ3 too.
Originally committed as revision 13129 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-11 20:26:35 +00:00
Alexander Strange bff2266a7f Remove newly unused variables.
Originally committed as revision 13127 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-11 19:22:28 +00:00
Alexander Strange d2b54ec801 Use h->mb_xy directly in decode_cabac_residual().
Originally committed as revision 13126 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-11 19:18:39 +00:00
Alexander Strange 64514ee8de Store mb_xy in H264Context and only calculate it once per MB.
Originally committed as revision 13125 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-11 19:16:21 +00:00
Alexander Strange f946a9a431 Use check_cflags for -mdynamic-no-pic so third-party compilers will work on Darwin.
Originally committed as revision 13007 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-27 16:12:24 +00:00