Haruhiko Yamagata
6ee0eb38c0
Fix H.264 picture reordering.
...
Patch by Haruhiko Yamagata, h D yamagata A nifty D com
Originally committed as revision 19239 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-20 13:16:07 +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
Haruhiko Yamagata
b19d493f2b
Add field prev_interlaced_frame to H264Context to be able to flag soft telecine
...
progressive.
Patch by Haruhiko Yamagata, h D yamagata A nifty D com
Originally committed as revision 19141 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-09 21:16:40 +00:00
Michael Niedermayer
f4ebb334be
Fix sei_ct_type check so it does not mistreat ct_type= unknown.
...
Originally committed as revision 19082 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-03 19:24:51 +00:00
Michael Niedermayer
4d95ae1882
Print ct_type and pic_struct.
...
Originally committed as revision 19081 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-03 19:23:34 +00:00
Baptiste Coudurier
87e302bfd8
remove unused hack which set AVCodecContext frame_number to pic timestamp
...
Originally committed as revision 18988 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-30 00:24:20 +00:00
Haruhiko Yamagata
86b0e9948b
H264: Don't deblock if alpha or beta is 0.
...
This ensures that the MMX loop filter is always bitexact with the C version.
Patch by Haruhiko Yamagata <h.yamagata _a_ nifty com>
Originally committed as revision 18923 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-24 03:39:20 +00:00
David Conrad
580a7465fb
Add a chroma_sample_location field to define positioning of chroma samples
...
Originally committed as revision 18795 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-11 04:34:23 +00:00
Michael Niedermayer
74b14aacfa
Support broken avc nal encapsulation.
...
Fixes issue987.
Originally committed as revision 18533 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-16 04:46:44 +00:00
Michael Niedermayer
d225a1e248
Fix 2 access units in a packet mp4s.
...
Fixes issue944 and possibly others.
Originally committed as revision 18474 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-12 20:43:52 +00:00
Michael Niedermayer
ead793358a
Get rid of the non sensical idea of using the current picture for missing
...
reference pictures.
Originally committed as revision 18473 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-12 20:40:18 +00:00
Michael Niedermayer
256299d302
Factorize field_end() out.
...
Originally committed as revision 18472 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-12 20:21:23 +00:00
Michael Niedermayer
7824b129a0
Assert that the first list1 entry is a reference frame.
...
Originally committed as revision 18471 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-12 13:58:03 +00:00
Reimar Döffinger
238ef6dadd
Add a av_fast_malloc function and replace several uses of av_fast_realloc,
...
thus avoiding potential memleaks and pointless memcpys.
Originally committed as revision 18470 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-12 13:17:37 +00:00
Reimar Döffinger
6752dd5aee
Loop up to MAX_THREADS instead of h->s.avctx->thread_count to free the thread
...
contexts, this avoids a crash when freeing the H.264 parser context introduced in
r18406, since h->s.avctx is NULL there.
Originally committed as revision 18418 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-10 14:30:04 +00:00
Reimar Döffinger
cbf1eae9a5
Add forgotten void return type to ff_h264_free_context
...
Originally committed as revision 18411 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-10 11:31:55 +00:00
Reimar Döffinger
15861962a7
Add a ff_h264_free_context function and call it from the H.264 parser.
...
This ensures that the parser will no longer leak memory for all SPS/PPS it encounters.
Originally committed as revision 18406 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-10 07:01:55 +00:00
Thilo Borgmann
7a00bbad21
Implement avcodec_decode_video2(), _audio3() and _subtitle2() which takes an
...
AVPacket argument rather than a const uint8_t *buf + int buf_size. This allows
passing of packet-specific flags from demuxer to decoder, such as the keyframe
flag, which appears necessary to playback corePNG P-frames.
Patch by Thilo Borgmann thilo.borgmann googlemail com, see also the thread
"Google Summer of Code participation" on the mailinglist.
Originally committed as revision 18351 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-07 15:59:50 +00:00
Michael Niedermayer
7ed673af71
Print timing_info on -debug 1.
...
Originally committed as revision 17949 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-13 14:10:49 +00:00
Diego Biurrun
1b0f4920b8
Mark variables "j" and "structure" in execute_ref_pic_marking() as av_uninit
...
to work around false positive 'may be used uninitialized' warnings.
Originally committed as revision 17837 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-05 23:38:52 +00:00
Ivan Schreter
70e01da3bf
Add support for ct_type to correctly detect interlaced flag
...
Originally committed as revision 17811 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-04 19:37:19 +00:00
Vitor Sessak
a66430c0d0
Add more correct bound checking in filter_mb().
...
Should fix decoding of CVMAPAQP3_Sony_E.jsv in MinGW
Originally committed as revision 17806 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-04 16:56:55 +00:00
Panagiotis Issaris
a0f8005079
When a H.264 stream references a PPS or SPS id which doesn't exist, instead of
...
just saying that a non-existing id is referenced, show the value of the id.
Originally committed as revision 17771 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-03 14:32:24 +00:00
Alex Converse
09a64ee614
H.264: Simplify decode_residual()
...
Originally committed as revision 17750 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-03 05:26:39 +00:00
Michael Niedermayer
47cd974ae5
Do not set low_delay if has_b_frames has been set before init()
...
this will be needed once the parser can figure out has_b_frames
in av_find_stream_info().
Originally committed as revision 17673 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-01 03:13:04 +00:00
Michael Niedermayer
efd8c1f64d
Adjust time_base exactly when changing ticks_per_frame to 2 this is safer
...
and for some raw h264 we managed to change the timebase twice before.
Originally committed as revision 17669 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-28 20:58:07 +00:00
Ivan Schreter
03831f462e
Correctly reset SEI variables.
...
Patch by Ivan Schreter, schreter gmx net
Originally committed as revision 17651 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-27 21:28:41 +00:00
Gwenole Beauchesne
6026a0968a
Add hardware acceleration hooks to H.264.
...
Patch by Gwenolé Beauchesne.
Originally committed as revision 17644 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-27 15:45:55 +00:00
Michael Niedermayer
19df37a8a6
Fix SVQ3 regression since ticks_per_frame=2.
...
Originally committed as revision 17640 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-27 14:01:32 +00:00
Michael Niedermayer
3797c74ba5
Add ticks_per_frame, this should hopefully fix the regressions caused
...
by the time_base change.
Originally committed as revision 17630 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-26 23:47:32 +00:00
Michael Niedermayer
f56995b4a6
Half user provided time_base once during the first frame when there is no
...
timebase stored in the h264 stream.
This should fix fate. (ffmpeg.c used pict_repeat with its default 1/25 timebase)
Originally committed as revision 17622 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-26 21:09:24 +00:00
Michael Niedermayer
d404b3edb3
Add hwaccel->decode_slice() call for avhwaccel by Gwenole Beauchesne.
...
Originally committed as revision 17591 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-25 19:39:42 +00:00
Ivan Schreter
fc9fe42833
Correct time_base of H.264 and repeat_pict.
...
Patch by Ivan Schreter, schreter gmx net
Originally committed as revision 17571 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-24 20:19:59 +00:00
Michael Niedermayer
a05aa821b6
add ff_find_hwaccel() by Gwenole Beauchesne
...
Originally committed as revision 17569 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-24 19:04:43 +00:00
Michael Niedermayer
09a9b45e4f
Add and use ff_pixfmt_list_420.
...
Originally committed as revision 17564 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-24 18:27:52 +00:00
Diego Biurrun
acced32d08
Mark two variables with av_uninit to avoid false positive gcc warnings.
...
Originally committed as revision 17552 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-24 14:13:46 +00:00
Gwenole Beauchesne
40e5d31b57
More approved hunks for VAAPI & our new and cleaner hwaccel API.
...
patch by Gwenole Beauchesne gbeauchesne splitted-desktop com
Originally committed as revision 17540 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-23 13:44:51 +00:00
Reimar Döffinger
66e6038cf1
Check return value of frame_start(), this avoids a crash if AVCodecContext::get_buffer failed.
...
Not sure if returning -1 is the best possible solution but at least avoids the crash.
Originally committed as revision 17520 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-22 09:51:58 +00:00
Ivan Schreter
1790a5e908
Make the following H264 functions available to the parser:
...
ff_h264_decode_sei, ff_h264_decode_seq_parameter_set,
ff_h264_decode_picture_parameter_set, ff_h264_decode_nal,
ff_h264_decode_rbsp_trailing
Patch by Ivan Schreter, schreter gmx net
Originally committed as revision 17487 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-21 19:54:14 +00:00
Ivan Schreter
ebb61f834a
Use last decoded SPS as current SPS in order to parse picture timing SEI
...
correctly. This works around an apparent H.264 standard deficiency.
Patch by Ivan Schreter, schreter gmx net
Originally committed as revision 17471 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-20 16:20:01 +00:00
Ivan Schreter
3878be318b
Silence two warnings:
...
cast discards qualifiers from pointer target type
Patch by Ivan Schreter, schreter gmx net
Originally committed as revision 17463 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-19 23:01:13 +00:00
Ivan Schreter
2ea89d9274
Parse buffering period (H.264, D.1.1).
...
Patch by Ivan Schreter, schreter gmx net
Originally committed as revision 17441 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-18 23:33:30 +00:00
Ivan Schreter
24a414e0fa
Store CPB count in the context.
...
Patch by Ivan Schreter, schreter gmx net
Originally committed as revision 17439 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-18 23:25:59 +00:00
Ivan Schreter
cf6065ca6b
Parse cbp_removal_delay in SEI picture structure.
...
Patch by Ivan Schreter, schreter gmx net
Originally committed as revision 17413 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-18 00:38:10 +00:00
Ivan Schreter
ff594f81df
Parse dpb_output_delay in SEI picture structure.
...
Patch by Ivan Schreter, schreter gmx net
Originally committed as revision 17412 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-18 00:36:07 +00:00
Ivan Schreter
82e38c2952
Parse initial_cpb_removal_delay_length.
...
Patch by Ivan Schreter, schreter gmx net
Originally committed as revision 17411 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-18 00:33:33 +00:00
Gwenole Beauchesne
ce09f9270a
Move initialization of {luma,chroma}_weight_flag[] up,
...
to make sure they are always initialized.
Patch by Gwenole Beauchesne g${name} splitted-desktop com
Originally committed as revision 17393 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-17 13:41:27 +00:00
Diego Biurrun
de86157836
cosmetics: 'void/int inline' --> 'inline void/int' to avoid warnings of the type
...
"'inline' is not at beginning of declaration" with -Wextra.
Originally committed as revision 17392 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-17 12:11:46 +00:00
Carl Eugen Hoyos
c99a35768f
Silence following warning if only zeros were not consumed:
...
AVC: Consumed only m bytes instead of n
Originally committed as revision 17327 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-15 15:23:02 +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
Ivan Schreter
37a558fe51
Add SEI recovery point frame counter to H264Context and use it when
...
setting key_frame.
Patch by Ivan Schreter schreter A gmx D net
Originally committed as revision 17109 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-09 23:04:16 +00:00
Ivan Schreter
dd02ea118b
Replace hard-coded SEI type constants with symbolic names
...
Patch by Ivan Schreter ( schreter gmx net )
Originally committed as revision 17064 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-08 20:28:12 +00:00
Måns Rullgård
5317c95b75
Remove CONFIG_H264_ENCODER references
...
Originally committed as revision 16996 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-04 21:28:58 +00:00
Gwenole Beauchesne
cb99c652eb
Add fields to H264Context and SPS for upcoming VA API support.
...
Patch by Gwenole Beauchesne gbeauchesne A splitted-desktop dotcom
Originally committed as revision 16976 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-03 20:49:02 +00:00
Diego Biurrun
6bf959fee5
Add av_unused to conditionally used variable, fixes the warning:
...
h264.c:6464: warning: unused variable 'dir'
Originally committed as revision 16925 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-02 00:35:25 +00:00
Diego Biurrun
bad5537e2c
Use full internal pathname in doxygen @file directives.
...
Otherwise doxygen complains about ambiguous filenames when files exist
under the same name in different subdirectories.
Originally committed as revision 16912 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-01 02:00:19 +00:00
Gwenole Beauchesne
2e584eea4b
cosmetics: Add empty line for consistent formatting.
...
patch by Gwenolé Beauchesne, gbeauchesne splitted-desktop com
Originally committed as revision 16852 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-29 22:08:32 +00:00
Stefan Gehrer
45beb850de
remove zigzag_scan8x8, it is the same as ff_zigzag_direct
...
Originally committed as revision 16744 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-24 14:30:15 +00:00
Aurelien Jacobs
199436b952
moves mid_pred() into mathops.h (with arch specific code split by directory)
...
Originally committed as revision 16681 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-18 22:57:40 +00:00
Carl Eugen Hoyos
0d3d172f32
Remove CODEC_ID_H264_VDPAU.
...
Originally committed as revision 16649 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-17 01:17:04 +00:00
Aurelien Jacobs
49fb20cb8a
replace all occurrence of ENABLE_ by the corresponding CONFIG_, HAVE_ or ARCH_
...
and remove all ENABLE_ definitions.
Originally committed as revision 16600 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-14 17:19:17 +00:00
Aurelien Jacobs
b250f9c66d
Change semantic of CONFIG_*, HAVE_* and ARCH_*.
...
They are now always defined to either 0 or 1.
Originally committed as revision 16590 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-13 23:44:16 +00:00
Carl Eugen Hoyos
1717031362
Remove H264Context from vdpau_internal.h.
...
Originally committed as revision 16524 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-11 00:48:20 +00:00
Carl Eugen Hoyos
c639fc7213
Cosmetics: Rename ff_vdpau_h264_add_data_chunk as ff_vdpau_add_data_chunk.
...
Originally committed as revision 16521 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-10 23:00:48 +00:00
Carl Eugen Hoyos
1968e438d0
Use only MpegEncContext in ff_vdpau_h264_add_data_chunk.
...
Originally committed as revision 16520 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-10 22:57:51 +00:00
Carl Eugen Hoyos
7fd3c09e0f
Move vdpau_h264_set_reference_frames() call from vdpauvideo.c into h264.c.
...
Originally committed as revision 16513 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-10 02:45:07 +00:00
Carl Eugen Hoyos
7eb6ed78ea
Move VDPAU check, make future VDPAU patches smaller.
...
Originally committed as revision 16508 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-09 22:22:40 +00:00
Carl Eugen Hoyos
090846f3b9
Rename ff_VDPAU as ff_vdpau.
...
Originally committed as revision 16492 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-07 23:48:32 +00:00
Diego Biurrun
218a6022e7
Only #include svq3.c if the SVQ3 decoder is enabled.
...
Originally committed as revision 16487 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-07 23:03:04 +00:00
Diego Biurrun
8b6871ed4d
Disable SVQ3 checks if SVQ3 support is not compiled in.
...
Originally committed as revision 16462 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-07 01:58:04 +00:00
Jason Garrett-Glaser
26ef65daf3
50l: Reenable error resilience for H264 (Patch by Dark Shikari).
...
Originally committed as revision 16434 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-05 08:46:59 +00:00
Carl Eugen Hoyos
f2c214a1ec
Cosmetics: Fix indentation.
...
Originally committed as revision 16433 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-05 00:48:44 +00:00
NVIDIA Corporation
369122dd77
Add VDPAU hardware accelerated decoding for H264 which can be used by
...
video players.
Original patch by NVIDIA corporation.
Originally committed as revision 16431 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-04 23:55:27 +00:00
Michael Niedermayer
802e91466d
export refs
...
Originally committed as revision 16306 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-24 18:39:23 +00:00
Michael Niedermayer
62ea19c061
Optimize pred_pskip_motion()
...
7 cpu cycles faster on pentium dual.
Originally committed as revision 16304 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-24 03:23:38 +00:00
Michael Niedermayer
ebfb0449d3
Indent
...
Originally committed as revision 16302 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-23 22:06:16 +00:00
Michael Niedermayer
05d3fd44d7
Integrate get_te0_golomb() calls into the code, this allows some checks
...
to be avoided and the function is pretty small.
3% speedup, though this is probably due to changed inlining and not directly
this change.
Originally committed as revision 16301 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-23 22:04:34 +00:00
Michael Niedermayer
9963b332d1
Use get_ue_golomb_31() where possible, almost all are just in headers
...
though.
Originally committed as revision 16300 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-23 21:12:19 +00:00
Michael Niedermayer
2f2893ce9b
indent
...
Originally committed as revision 16296 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-23 19:12:50 +00:00
Michael Niedermayer
d42fc4a8ca
Use the new VLC table for the first non trailing coeff too.
...
Sadly only 5 cycles faster here on pentium dual. So maybe the
complexity is not worth it and this should be reverted ...
Originally committed as revision 16295 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-23 19:10:46 +00:00
Michael Niedermayer
593af7cdda
Optimize esc removal code.
...
Originally committed as revision 16294 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-23 18:31:44 +00:00
Michael Niedermayer
2d76bf391a
Indent
...
Originally committed as revision 16292 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-23 17:50:36 +00:00
Michael Niedermayer
8140955d39
unified CAVLC level decoding LUT.
...
Quite a bit faster (HPCVMOLQ_BRCM_B.264 was 3% faster here)
Originally committed as revision 16291 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-23 17:49:38 +00:00
Michael Niedermayer
abb27cfb24
100l, I broke H.264 again, forgot one hunk.
...
Thanks to FATE for finding it.
Originally committed as revision 16285 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-23 01:11:56 +00:00
Michael Niedermayer
e08715d391
Optimize 0 0 0-3 search, 45% faster on pentium dual.
...
Originally committed as revision 16284 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-23 00:38:45 +00:00
Michael Niedermayer
ec3686e889
Simplify decode_cabac_mb_ref() a little bit, 2 cpu cycles faster on
...
pentium dual.
Originally committed as revision 16279 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-22 17:14:13 +00:00
Michael Niedermayer
26695973c7
Indent
...
Originally committed as revision 16278 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-22 16:56:05 +00:00
Michael Niedermayer
b68a455313
inline decode_cabac_mb_type for I & P frames, 9 cycles faster on pentium dual.
...
Originally committed as revision 16277 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-22 16:46:17 +00:00
Michael Niedermayer
1952ac3713
Negate 2 more variables, 1 cpu cycle faster on pentium dual.
...
Originally committed as revision 16276 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-22 16:20:13 +00:00
Michael Niedermayer
03a035e059
Simplify if/else, no speed change
...
Originally committed as revision 16275 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-22 16:14:06 +00:00
Michael Niedermayer
6f3c50f2f9
Negate a few variables, this simplifies the code and makes it 5 cycles faster
...
on pentium dual.
Originally committed as revision 16274 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-22 16:10:35 +00:00
Michael Niedermayer
60c6ba7aea
Simplify ifs(), 8 cpu cycles faster on pentium dual
...
Originally committed as revision 16273 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-22 15:54:27 +00:00
Michael Niedermayer
127a20e3b8
Simplify if(), 3 cpu cycles faster in pentium dual.
...
Originally committed as revision 16272 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-22 15:53:00 +00:00
Diego Biurrun
a6493a8fbd
Rename libavcodec/i386/ --> libavcodec/x86/.
...
It contains optimizations that are not specific to i386 and
libavutil uses this naming scheme already.
Originally committed as revision 16270 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-22 09:12:42 +00:00
Diego Biurrun
bef05f05e4
Remove a bunch of unused variables.
...
Originally committed as revision 16263 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-22 00:10:36 +00:00
Michael Niedermayer
befc8fe086
Remove useless code.
...
Originally committed as revision 16253 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-21 17:49:40 +00:00
Michael Niedermayer
c212fb0cb1
Only execute clear_blocks() when needed.
...
+0.3% speedup for both aladin & cathedral.
Originally committed as revision 16252 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-21 15:58:42 +00:00
Michael Niedermayer
66c07ca96f
Optimize get_dct8x8_allowed().
...
30 cpu cycles faster on pentium dual.
Originally committed as revision 16248 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-20 23:11:30 +00:00
Jason Garrett-Glaser
aac8b76983
H.264 loopfilter speed tweaks
...
Originally committed as revision 16240 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-19 14:49:17 +00:00
Michael Niedermayer
a5805aa9d1
Fix decoding with the plain C idcts of
...
FRExt/HPCAMOLQ_BRCM_B
FRExt/HPCAQ2LQ_BRCM_B
FRExt/HPCVMOLQ_BRCM_B
Originally committed as revision 16236 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-19 09:21:54 +00:00
Michael Niedermayer
a5b807a6c1
Replace /2 by >>1 in decode_cabac_mb_dqp()
...
3 cpu cycles speed up on pentium dual.
Originally committed as revision 16233 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-19 02:28:51 +00:00
Michael Niedermayer
1aea5d35e5
Simplify ctx update in decode_cabac_mb_dqp().
...
no speed change
Originally committed as revision 16232 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-19 02:00:33 +00:00
Michael Niedermayer
7cfca0dfd8
Simplify ctx calculation in decode_cabac_mb_dqp()
...
no speed change
Originally committed as revision 16231 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-19 01:50:20 +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
Jason Garrett-Glaser
712ca84c21
Move filter_luma_intra into dsputil for later addition of asm.
...
Originally committed as revision 16228 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-19 00:44:51 +00:00
Jason Garrett-Glaser
b9fe706305
Simplify chroma AC in CABAC residual decoding.
...
Originally committed as revision 16227 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-19 00:43:30 +00:00
Michael Niedermayer
8955b66950
Optimize ctx calculation in decode_cabac_mb_mvd(), code by dark shikari.
...
The case for 16x16 blocks becomes 10 cpu cycles faster on pentium dual,
i could not find a speed difference in the case of subblocks though.
Originally committed as revision 16226 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-19 00:05:39 +00:00
Michael Niedermayer
17779f39b6
Remove unacceptable NULL pointer hack from mc code.
...
Originally committed as revision 16225 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-18 23:52:32 +00:00
Michael Niedermayer
04618b98e3
Check ref values in CABAC H.264 for validity.
...
Originally committed as revision 16224 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-18 23:31:10 +00:00
Michael Niedermayer
c25ac15a07
Move idct_(dc)add closer to where it is needed.
...
Originally committed as revision 16223 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-18 18:25:11 +00:00
Michael Niedermayer
aebb5d6d96
indent
...
Originally committed as revision 16222 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-18 18:14:38 +00:00
Michael Niedermayer
96465b90a1
Reorder ifs in chroma hl_decode_mb to avoid a duplicate transform_bypass
...
check.
14 cpu cycles speedup on Pentium Dual
Originally committed as revision 16221 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-18 18:12:59 +00:00
Michael Niedermayer
6456d6d87c
s/h->cbp_table[mb_xy]/h->cbp/
...
Originally committed as revision 16220 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-18 17:42:44 +00:00
Michael Niedermayer
04824298a9
Faster CAVLC decoding of trailing_ones. Based on a patch by dark shikari.
...
decode_residual is about 3.3% faster.
Originally committed as revision 16219 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-18 16:11:19 +00:00
Jason Garrett-Glaser
93445d1617
Replace i by trailing_ones, part of a patch by dark shikari.
...
No speed change meassureable with START/STOP_TIMER, but this is needed
for future optimizations.
Originally committed as revision 16218 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-18 15:51:32 +00:00
Michael Niedermayer
c375d87f6f
Remove if() surrounding decode_cabac_mb_type() that can never be true.
...
Originally committed as revision 16217 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-18 15:32:07 +00:00
Michael Niedermayer
c325b5054f
Remove unreachable else clause, found by dark shikari.
...
Originally committed as revision 16216 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-18 15:21:15 +00:00
Michael Niedermayer
dae006d7d7
Remove useless IS_8x8DCT check i forgot, spotted by dark shikari.
...
Originally committed as revision 16215 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-18 11:17:12 +00:00
Michael Niedermayer
1eb960352b
Do not calculate idct_dc_add/idct_add when the variables are unused.
...
Originally committed as revision 16210 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-18 04:13:02 +00:00
Michael Niedermayer
62bc966f8f
Remove redundant nnz variable.
...
Originally committed as revision 16209 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-18 03:04:53 +00:00
Michael Niedermayer
0a8ca22f4e
indent
...
Originally committed as revision 16208 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-18 02:56:44 +00:00
Michael Niedermayer
2fd1f0e026
Use the new idct functions (except chroma as it was slower in benchmarks)
...
cathedral +0.5% speed
aladin +0.6% speed [note aladin has been cat-ed 10 times to reduce the influence
of init time]
Speedup also verified via START/STOP_TIMER (difference was very significant
for the changed parts)
Originally committed as revision 16207 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-18 02:53:18 +00:00
Michael Niedermayer
49c084a745
Skip non intra luma code when there is no coded luma.
...
0.7% speedup for the cathedral sample.
Originally committed as revision 16203 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-18 01:10:51 +00:00
Michael Niedermayer
621561cdf3
Skip chroma handling when there is no coded chroma.
...
0.5% overall speedup for the cathedral sample.
Originally committed as revision 16201 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-18 00:46:54 +00:00
Michael Niedermayer
4080e67c8e
Replace != 0 || check by |
...
3 cpu cycles faster
Originally committed as revision 16183 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-17 02:53:03 +00:00
Michael Niedermayer
ad9ca7e720
Split filter_mb_dir() out of filter_mb().
...
1% overall decoding speed up for cathedral-beta2-400extra-crop-avc.mp4
no speed change for Aladin.mpg
Benchmarks done on Pentium dual
Originally committed as revision 16182 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-17 02:35:14 +00:00
Michael Niedermayer
ac0623b23c
Fix indention, also do a little vertical alignment of changed lines.
...
Originally committed as revision 16176 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-16 22:16:11 +00:00
Michael Niedermayer
6120a343aa
Factorize 3 multiplications out, code becomes 3 cpu cycles faster.
...
(not significant as thats just per MB)
Originally committed as revision 16174 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-16 21:08:16 +00:00
Michael Niedermayer
1dd488e955
Move ENABLE_SMALL back to the per MB check, as otherwise gcc wont remove
...
the code.
Originally committed as revision 16173 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-16 20:43:39 +00:00
Michael Niedermayer
89db0bae26
Do not recalculate constant part of is_complex for every MB.
...
Originally committed as revision 16172 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-16 20:26:22 +00:00
Michael Niedermayer
41e4055b63
Support the new lossless mode.
...
Originally committed as revision 16171 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-16 20:09:09 +00:00
Michael Niedermayer
40f0624121
Enable filter_mb_fast if CODEC_FLAG2_FAST is set.
...
Originally committed as revision 16141 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-15 01:24:04 +00:00
Anders Grönberg
cac55c9196
Add a few const qualifiers in appropriate places.
...
patch by Anders Grönberg, galileo.m2 gmail com
Originally committed as revision 16120 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-14 12:24:50 +00:00
Michael Niedermayer
d23b28c78b
Check that cpb_count is within the allowed range.
...
Originally committed as revision 16010 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-05 21:44:18 +00:00
Michael Niedermayer
c9c16cacb5
Get rid of now unneeded pps/sps correctness code as pps/sps will not
...
be used at all when anything fails sanity checks.
Originally committed as revision 15972 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-01 16:24:19 +00:00
Michael Niedermayer
255d4e717f
Allocate parameter sets sanely instead of using alloc_parameter_set().
...
Avoids ending up with half initialized parameter sets.
Fixes issue282.
Originally committed as revision 15971 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-01 16:04:03 +00:00
Michael Niedermayer
ff7f75e185
Fix segfault due to deallocated entries in delayed_pic after size change.
...
Fixes issue714.
Originally committed as revision 15965 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-30 23:51:02 +00:00
Diego Biurrun
f107a02d4e
Move encoder-specific quantize_c and related tables to the H.264 encoder.
...
Originally committed as revision 15937 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-26 10:22:55 +00:00
Diego Biurrun
ee2a957fbd
Use golomb_to_pict_type instead of its duplicate, slice_type_map.
...
Originally committed as revision 15926 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-24 15:53:16 +00:00
Carl Eugen Hoyos
74e8b78b20
Fix H.264 decoding.
...
(Problem analyzed by Uoti Urpala)
Originally committed as revision 15816 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-13 11:33:26 +00:00
Roman Shaposhnik
3a84713aaa
Making it easier to send arbitrary structures as work orders to MT workers
...
Originally committed as revision 15804 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-12 17:47:23 +00:00
Andreas Öman
b09a7c05f6
h264: Implement decoding of picture timing SEI message.
...
Now correct values are propagated to interlaced_frame, top_field_first
and repeat_pict in AVFrame structure.
patch by ffdshow tryouts
Originally committed as revision 15773 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-04 18:31:48 +00:00
Michael Niedermayer
b735aeead8
Replace literally hardcoded max slice number by named constant.
...
Originally committed as revision 15736 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-28 22:50:16 +00:00
Aurelien Jacobs
37d3e0667a
uses FF_ARRAY_ELEMS() where appropriate
...
Originally committed as revision 15662 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-21 21:40:24 +00:00
Diego Pettenò
d9ec210baa
Mark ff_div6 and ff_rem6 static in h264.c. Patch by Diego Pettenò
...
Originally committed as revision 15549 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-04 09:36:35 +00:00
Carl Eugen Hoyos
8d2fc163ce
Rename copy_picture to ff_copy_picture.
...
Originally committed as revision 15508 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-02 00:27:09 +00:00
Diego Biurrun
bbc78fb4b4
Remove unused variable.
...
Originally committed as revision 15427 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-26 18:11:41 +00:00
Michael Niedermayer
6c8050078e
Avoid out of picture accesses when CODEC_FLAG_EMU_EDGE is set.
...
Fixes issue427.
Originally committed as revision 15418 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-25 21:44:07 +00:00
Michael Niedermayer
5f129a05bf
Do not free sps & pps on width/height changes.
...
Fixes issue557.
Originally committed as revision 15414 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-25 19:01:39 +00:00
Michael Niedermayer
07dff5c7a4
Initialize next/last_picture* as the generic code does not always
...
set them to sane values.
Originally committed as revision 15412 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-25 14:29:35 +00:00