Commit Graph

7264 Commits

Author SHA1 Message Date
Michael Niedermayer
849b9cef32 Clear long_ref when a frame is no longer a long_ref.
Originally committed as revision 14384 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-25 11:52:40 +00:00
Michael Niedermayer
d9fe1749fc Make sure mmco index is 0 (instead of uninitialized) in all error returns.
Originally committed as revision 14383 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-25 11:48:32 +00:00
Michael Niedermayer
9296f5d81a Simplify strange obfuscated code in MMCO_LONG handling.
Note, this might change behavior for invalid bitstreams.

Originally committed as revision 14381 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-25 00:13:02 +00:00
Michael Niedermayer
357282c6f3 Set field_poc (it was half uninitialized before) and use it
instead of the fragile first_field check to determine if we have
2 fields at the end.

Originally committed as revision 14380 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 23:43:44 +00:00
Michael Niedermayer
b78a6baaf1 Minor simplification of code in init_poc().
Originally committed as revision 14379 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 22:29:38 +00:00
Michael Niedermayer
5710b37160 cosmetics (indent and 2 empty lines)
Originally committed as revision 14378 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 22:05:58 +00:00
Michael Niedermayer
80f8e035ba init_poc() vs. idr() cleanup
Originally committed as revision 14377 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 22:04:29 +00:00
Michael Niedermayer
ac5057c2de Fix loop filter with CAVLC 8x8dct.
Fixes at least:
FRExt/HPCV_BRCM_A.264
FRExt/HVLCFI0_Sony_B.264
FRExt/HVLCPFF0_Sony_B.264
H264_artifacts_motion.h264

Originally committed as revision 14373 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 17:13:37 +00:00
Diego Biurrun
ca74c0a180 cosmetics: Fix two common typos: wont --> will not, lets --> let us.
Originally committed as revision 14372 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 17:09:28 +00:00
Diego Biurrun
309005c047 cosmetics: Fix indentation after last commit.
Originally committed as revision 14370 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 16:54:51 +00:00
Vitor Sessak
a53b545068 Cosmetics: grammar nits
Originally committed as revision 14368 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 11:55:01 +00:00
Diego Biurrun
1412060e78 misc spelling/grammar fixes
Originally committed as revision 14367 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 10:55:36 +00:00
Diego Biurrun
80a61f08d2 Remove AltiVec vector declaration compiler compatibility macros.
The original problem was that FSF and Apple gcc used a different syntax
for vector declarations, i.e. {} vs. (). Nowadays Apple gcc versions support
the standard {} syntax and versions that support {} are available on all
relevant Mac OS X versions. Thus the greater compatibility is no longer
worth cluttering the code with macros.

Originally committed as revision 14366 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 10:53:32 +00:00
Vitor Sessak
2477d60944 Rename update() function to backward_filter() and add a doxy comment
Originally committed as revision 14364 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 04:29:23 +00:00
Vitor Sessak
a6755f8d53 Rename and comment bandwidth broadening tables
(s/table1a/syn_bw_tab/, s/table2a/gain_bw_tab/).

Originally committed as revision 14363 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 04:15:50 +00:00
Vitor Sessak
5e65f5df0e Follow FFmpeg convention of returning negative values on error in eval_lpc_coeffs()
Originally committed as revision 14362 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 04:07:50 +00:00
Vitor Sessak
a3896c6377 Rename pred() to eval_lpc_coeffs() and add a doxy comment
Originally committed as revision 14361 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 04:05:41 +00:00
Vitor Sessak
a0cce1587b Give windowing tables a more descriptive name
(s/table1/syn_window/, s/table2/gain_window/).

Originally committed as revision 14360 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 03:50:06 +00:00
Vitor Sessak
475d0e1464 Add comments to do_hybrid_window()
Originally committed as revision 14359 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 03:28:42 +00:00
Vitor Sessak
0f72a2b7d3 Give parameters of do_hybrid_window() more meaningful names
Originally committed as revision 14358 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 03:28:01 +00:00
Vitor Sessak
427981c7a6 Rename co() function to the much more descriptive name of
do_hybrid_window(). Also change a misleading and wrong comment.

Originally committed as revision 14357 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 03:23:51 +00:00
Vitor Sessak
5ab3d66fe5 Simplify co(): write constant in a more readable way
Originally committed as revision 14356 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 03:22:19 +00:00
Vitor Sessak
bf75ac57b8 Simplify co(), use memcpy/memmove and colmult() when useful.
Originally committed as revision 14355 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 03:19:52 +00:00
Michael Niedermayer
a149c1a59f Reset prev_frame_num for idr frames as required by the spec.
Originally committed as revision 14354 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 00:45:18 +00:00
Michael Niedermayer
b4cf222870 Better explanation for buf_size==0 code.
Originally committed as revision 14353 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-23 17:24:11 +00:00
Michael Niedermayer
cf67f1655c 100l cross_idr simplification had a typo
Originally committed as revision 14351 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-23 14:59:55 +00:00
Michael Niedermayer
f3ba9db42d Remove truncated support, use an AVParser if you used that, it is the same.
Originally committed as revision 14350 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-23 14:44:07 +00:00
Michael Niedermayer
617e42e2c4 Simplify cross_idr calculation.
Originally committed as revision 14349 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-23 14:37:15 +00:00
Benjamin Larsson
20455a335b Reduce the loglevel on a log message in the Nellymoser decoder. Related to Roundup 447.
Originally committed as revision 14348 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-23 12:21:56 +00:00
Michael Niedermayer
55f22dd473 Remove redundant keyframe checks.
Originally committed as revision 14347 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-23 11:24:04 +00:00
Kostya Shishkov
00a750009f In-loop deblocking filter for VC-1 decoder
Originally committed as revision 14344 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-23 06:21:27 +00:00
Vitor Sessak
144b46f21b My commit at r14340 was not the right solution. For a monochromatic
frame, there will be only one centroid and it will be impossible to
find three distinct ones. It is better to just avoid shifting if
there are not three different centroids.

Originally committed as revision 14343 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-23 05:54:34 +00:00
Vitor Sessak
6de727244c Do declaration and initialization separately in elbg.c
to workaround an ICC bug.

Originally committed as revision 14342 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-23 03:56:13 +00:00
Vitor Sessak
6bf8b04764 When picking a "high utility centroid" do not pick one
that has no corresponding points. Not only it is the
worst possible pick, but also the code was written
without this case in mind.

Originally committed as revision 14341 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-23 03:55:37 +00:00
Vitor Sessak
5916af1954 The codebook generator algorithm involves picking three
different codebook centroids ("high utility", "low
utility" and "closest to the low utility one"). This
change avoid the corner case of choosing two times the
same centroid.

Originally committed as revision 14340 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-23 03:54:31 +00:00
Michael Niedermayer
26b86e47c0 Support gaps in the frame num.
Fixes at least:
MR3_TANDBERG_B.264
MR4_TANDBERG_C.264
MR5_TANDBERG_C.264

Originally committed as revision 14339 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-23 02:12:54 +00:00
Michael Niedermayer
e44e48372b Reset frame_num for MMCO 5.
Fixes at least
MR2_TANDBERG_E.264

Originally committed as revision 14338 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-22 19:30:45 +00:00
Michael Niedermayer
2e916cb392 3rd try to get the loop filter ref/mv check working correctly.
Fixes at least:
src19td.IBP.264
CVWP3_TOSHIBA_E.264
cvmp_mot_picaff0_full_B.26l
CVMP_MOT_FRM_L31_B.26l
cvmp_mot_frm0_full_B.26l
CVMP_MOT_FLD_L30_B.26l
cvmp_mot_fld0_full_B.26l

Originally committed as revision 14337 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-22 17:44:36 +00:00
Michael Niedermayer
5a78bfbde7 qscale has a range of 0..51 we thus do not need a 256 entry table and neither need
to and it with 0xFF.

Originally committed as revision 14336 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-22 13:01:10 +00:00
Michael Niedermayer
a82688b003 Setting chroma_qp to 0 for PCM blocks is really an interesting minor
optimization, more interresting would it have been had the author
thought about what value chroma_qp would have for the following MB.
Or failing that, had actually tested the code.
So this reverts this non-functional optimization, and makes the code work.
Fixes at least CAPM3_Sony_D.jsv

Originally committed as revision 14335 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-22 12:31:48 +00:00
Michael Niedermayer
3a75616940 Deobfusate chroma_qp_table[1] init code.
Originally committed as revision 14334 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-22 11:56:56 +00:00
Carl Eugen Hoyos
6aaff88fd9 Revert r13542: Spatial direct mode probably also works with PAFF.
Originally committed as revision 14332 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-21 22:46:47 +00:00
Michael Niedermayer
c32867b5b6 Loop filtering with multiple slice types fix.
Fixes at least:
CABAST3_Sony_E.jsv
CABASTBR3_Sony_A.jsv
CABASTBR3_Sony_B.jsv

Originally committed as revision 14331 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-21 22:19:06 +00:00
tripp
662e54119c Correct b_quant offset comment in avcodec.h, it is the description for
b_quant factor. patch by tripp, eliared yahoo com

Originally committed as revision 14328 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-21 20:52:24 +00:00
Michael Niedermayer
9f5c1037b1 Use slice_type_nos instead of slice_type where it makes no difference.
This way we use slice_type_nos almost everywhere which means 1 variable less
for gcc to put in a register.

Originally committed as revision 14326 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-21 19:11:41 +00:00
Michael Niedermayer
4b30289ec9 SI/SP slice support. (not bitexact)
SI untested as I did not find any samples.

Originally committed as revision 14325 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-21 18:44:57 +00:00
Michael Niedermayer
932f396f50 Remove superfluous ().
Originally committed as revision 14324 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-21 18:26:11 +00:00
Michael Niedermayer
e3e6f18f16 Simplify slice type checks.
Originally committed as revision 14323 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-21 18:24:45 +00:00
Michael Niedermayer
72caa912f2 More correct ref comparison in the loop filter.
Originally committed as revision 14322 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-21 18:06:23 +00:00
Michael Niedermayer
29d05ebc7a Simplify spatial direct ref selection with FFMIN3()
Originally committed as revision 14319 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-21 01:41:56 +00:00