History | View | Annotate | Download (310 KB)
Remove if() surrounding decode_cabac_mb_type() that can never be true.
Originally committed as revision 16217 to svn://svn.ffmpeg.org/ffmpeg/trunk
Remove unreachable else clause, found by dark shikari.
Originally committed as revision 16216 to svn://svn.ffmpeg.org/ffmpeg/trunk
Remove useless IS_8x8DCT check i forgot, spotted by dark shikari.
Originally committed as revision 16215 to svn://svn.ffmpeg.org/ffmpeg/trunk
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
Remove redundant nnz variable.
Originally committed as revision 16209 to svn://svn.ffmpeg.org/ffmpeg/trunk
indent
Originally committed as revision 16208 to svn://svn.ffmpeg.org/ffmpeg/trunk
Use the new idct functions (except chroma as it was slower in benchmarks)cathedral +0.5% speedaladin +0.6% speed [note aladin has been cat-ed 10 times to reduce the influenceof init time]Speedup also verified via START/STOP_TIMER (difference was very significant...
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
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
Replace != 0 || check by |3 cpu cycles faster
Originally committed as revision 16183 to svn://svn.ffmpeg.org/ffmpeg/trunk
Split filter_mb_dir() out of filter_mb().1% overall decoding speed up for cathedral-beta2-400extra-crop-avc.mp4no speed change for Aladin.mpgBenchmarks done on Pentium dual
Originally committed as revision 16182 to svn://svn.ffmpeg.org/ffmpeg/trunk
Fix indention, also do a little vertical alignment of changed lines.
Originally committed as revision 16176 to svn://svn.ffmpeg.org/ffmpeg/trunk
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
Move ENABLE_SMALL back to the per MB check, as otherwise gcc wont removethe code.
Originally committed as revision 16173 to svn://svn.ffmpeg.org/ffmpeg/trunk
Do not recalculate constant part of is_complex for every MB.
Originally committed as revision 16172 to svn://svn.ffmpeg.org/ffmpeg/trunk
Support the new lossless mode.
Originally committed as revision 16171 to svn://svn.ffmpeg.org/ffmpeg/trunk
Enable filter_mb_fast if CODEC_FLAG2_FAST is set.
Originally committed as revision 16141 to svn://svn.ffmpeg.org/ffmpeg/trunk
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
Check that cpb_count is within the allowed range.
Originally committed as revision 16010 to svn://svn.ffmpeg.org/ffmpeg/trunk
Get rid of now unneeded pps/sps correctness code as pps/sps will notbe used at all when anything fails sanity checks.
Originally committed as revision 15972 to svn://svn.ffmpeg.org/ffmpeg/trunk
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
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
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
Use golomb_to_pict_type instead of its duplicate, slice_type_map.
Originally committed as revision 15926 to svn://svn.ffmpeg.org/ffmpeg/trunk
Fix H.264 decoding.(Problem analyzed by Uoti Urpala)
Originally committed as revision 15816 to svn://svn.ffmpeg.org/ffmpeg/trunk
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
h264: Implement decoding of picture timing SEI message.
Now correct values are propagated to interlaced_frame, top_field_firstand repeat_pict in AVFrame structure.
patch by ffdshow tryouts
Originally committed as revision 15773 to svn://svn.ffmpeg.org/ffmpeg/trunk
Replace literally hardcoded max slice number by named constant.
Originally committed as revision 15736 to svn://svn.ffmpeg.org/ffmpeg/trunk
uses FF_ARRAY_ELEMS() where appropriate
Originally committed as revision 15662 to svn://svn.ffmpeg.org/ffmpeg/trunk
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
Rename copy_picture to ff_copy_picture.
Originally committed as revision 15508 to svn://svn.ffmpeg.org/ffmpeg/trunk
Remove unused variable.
Originally committed as revision 15427 to svn://svn.ffmpeg.org/ffmpeg/trunk
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
Do not free sps & pps on width/height changes.Fixes issue557.
Originally committed as revision 15414 to svn://svn.ffmpeg.org/ffmpeg/trunk
Initialize next/last_picture* as the generic code does not alwaysset them to sane values.
Originally committed as revision 15412 to svn://svn.ffmpeg.org/ffmpeg/trunk
Print which slices are IDR not just the slice type.
Originally committed as revision 15411 to svn://svn.ffmpeg.org/ffmpeg/trunk
Fix CAVLC+8x8+MBAFF loop filter.Fixes FREXT02_JVC_C.
Originally committed as revision 15410 to svn://svn.ffmpeg.org/ffmpeg/trunk
Field -> MBAFF direct mode can use data from fields that are notin the reference list. Follow the spec and no comment on the sanity of thisdesign ...Fixes HPCAMAPALQ_BRCM_B
Originally committed as revision 15407 to svn://svn.ffmpeg.org/ffmpeg/trunk
A few empty lines for readability.
Originally committed as revision 15385 to svn://svn.ffmpeg.org/ffmpeg/trunk
Another try to fix temporal direct mode references.Fixes at leastCAPAMA3_Sand_F.264CVMAPAQP3_Sony_E.jsv
Originally committed as revision 15384 to svn://svn.ffmpeg.org/ffmpeg/trunk
Fix ref_shift so that it is correct for more/all? MBAFF/PAFF mixes.Fixes at least MR9_BT_B.
Originally committed as revision 15380 to svn://svn.ffmpeg.org/ffmpeg/trunk
Originally committed as revision 15379 to svn://svn.ffmpeg.org/ffmpeg/trunk
Correct comment in the direct mode code.(note, yes this is unrelated to the previous simplification, the code always behaved like it is documented now.)
Originally committed as revision 15378 to svn://svn.ffmpeg.org/ffmpeg/trunk
Simplify initialization of a few direct mode related variables.
Originally committed as revision 15377 to svn://svn.ffmpeg.org/ffmpeg/trunk
Make MBAFF temporal direct mode closer to the spec.Fixes at least:CAMANL2_TOSHIBA_BCVMANL2_TOSHIBA_Bcamp_mot_mbaff0_full
Originally committed as revision 15375 to svn://svn.ffmpeg.org/ffmpeg/trunk
Move direct_dist_scale_factor() and direct_ref_list_init() after fill_mbaff_ref_list()as future changes will need the mbaff lists inited.
Originally committed as revision 15374 to svn://svn.ffmpeg.org/ffmpeg/trunk
Set poc for field references in MBAFF.
Originally committed as revision 15373 to svn://svn.ffmpeg.org/ffmpeg/trunk
Remove fixme that is based on the assumption of !direct_8x8_inference && MBAFF.
Originally committed as revision 15370 to svn://svn.ffmpeg.org/ffmpeg/trunk
Remove check and error message for "MBAFF + !direct_8x8_inference is not implemented" because this mode does not exist, H.264-2007 says "When frame_mbs_only_flag isequal to 0, direct_8x8_inference_flag shall be equal to 1."
Originally committed as revision 15369 to svn://svn.ffmpeg.org/ffmpeg/trunk
Make pps/sps scaling_matrix initialization closer to the spec.This does not affect any of the conformance streams.
Originally committed as revision 15365 to svn://svn.ffmpeg.org/ffmpeg/trunk
Ensure that extradata is not parsed twice.Fixes FRExt1_Panasonic.
Originally committed as revision 15361 to svn://svn.ffmpeg.org/ffmpeg/trunk
Fix incorrect printing of brainfart cropping error in some cases in progressive mode.
Originally committed as revision 15293 to svn://svn.ffmpeg.org/ffmpeg/trunk
Rename error_resilience to error_recognition.
Originally committed as revision 15270 to svn://svn.ffmpeg.org/ffmpeg/trunk
Fix artifacts of MPEG4-720I-DN-SV8K.trp caused by lack of IDR pictures andsubsequent zero POC value.
Originally committed as revision 15194 to svn://svn.ffmpeg.org/ffmpeg/trunk
Try to support invalid h264 that does not mark IDR with POC=0.Fixes issue576.
Originally committed as revision 15153 to svn://svn.ffmpeg.org/ffmpeg/trunk
Originally committed as revision 14732 to svn://svn.ffmpeg.org/ffmpeg/trunk
The deblock filter does not need all the intra availability stuff so donot recalculate it.
Originally committed as revision 14689 to svn://svn.ffmpeg.org/ffmpeg/trunk
Simplify constrained_intra_pred code in fill_caches().
Originally committed as revision 14688 to svn://svn.ffmpeg.org/ffmpeg/trunk
Support MBAFF + constrained intra prediction.(no i would not have tried to implement this had i known what mess it is)fixes at least:CAMACI3_Sony_C
Originally committed as revision 14687 to svn://svn.ffmpeg.org/ffmpeg/trunk
Mask bits of reference indexes properly to avoid negative numbers entanglingeach other.Fixes at least:CAMA1_TOSHIBA_Bcama1_vtc_cCAMA3_Sand_Ecama3_vtc_bCAMASL3_Sony_BCVMA1_TOSHIBA_BCVMAQP3_Sony_Dcvmp_mot_mbaff0_full_BFRExt/HCAMFF1_HHIFRExt/HCHP3_HHI_A...
Remove a few more lines of unneeded code in fill_caches() for MBAFF.Also document why the remaining related part is apparently needed.
Originally committed as revision 14682 to svn://svn.ffmpeg.org/ffmpeg/trunk
Use the correct reference tables for interlaced MBAFF MBs in the loop filter.Fixes at leastCAMP_MOT_MBAFF_L30CAMP_MOT_MBAFF_L31FRExt/FREXT01_JVC_D
Originally committed as revision 14680 to svn://svn.ffmpeg.org/ffmpeg/trunk
Do not execute the part of fill_caches() for the loopfilter that overwritesreference indexes and motion vectors.Fixes at least:CVMAQP2_Sony_G
Originally committed as revision 14678 to svn://svn.ffmpeg.org/ffmpeg/trunk
Remove more code that has become useless after the pairless MBAFF loopfilter cleanup.
Originally committed as revision 14676 to svn://svn.ffmpeg.org/ffmpeg/trunk
Remove odd pairwise deblock filtering applied to MBAFF MBs.
Originally committed as revision 14673 to svn://svn.ffmpeg.org/ffmpeg/trunk
Use local variabes for *stride, where local variables exist.
Originally committed as revision 14623 to svn://svn.ffmpeg.org/ffmpeg/trunk
Originally committed as revision 14622 to svn://svn.ffmpeg.org/ffmpeg/trunk
Simplify l1mv/l1ref calculation.
Originally committed as revision 14621 to svn://svn.ffmpeg.org/ffmpeg/trunk
simplify y_shift/ref_shift code
Originally committed as revision 14620 to svn://svn.ffmpeg.org/ffmpeg/trunk
Originally committed as revision 14619 to svn://svn.ffmpeg.org/ffmpeg/trunk
Factorize some code between temporal and spatial direct mode.
Originally committed as revision 14618 to svn://svn.ffmpeg.org/ffmpeg/trunk
Port b4/b8_stride code from spatial direct mode to temporal.Fixes at least:CAMANL3_Sand_E.264camp_mot_picaff0_full.26lCAPA1_TOSHIBA_B.264CVPA1_TOSHIBA_B.264
Originally committed as revision 14546 to svn://svn.ffmpeg.org/ffmpeg/trunk
Use frame_num and reference instead of poc for matching frames for directmode MBs, this seems to work better with field/frame mixes. POC of bothcan be the same and can be different that makes its use tricky.
Originally committed as revision 14545 to svn://svn.ffmpeg.org/ffmpeg/trunk
*2 /2 is wrong for PAFF references, so do not do it.
Originally committed as revision 14544 to svn://svn.ffmpeg.org/ffmpeg/trunk
Port col_parity code from spatial mode to temporal mode,I also love it if people duplicate code and fix one but not the other.
Originally committed as revision 14543 to svn://svn.ffmpeg.org/ffmpeg/trunk
The code under FRAME_MBAFF for temporal direct mode MBs is needed for PAFF as well.
Originally committed as revision 14542 to svn://svn.ffmpeg.org/ffmpeg/trunk
Remove redundant code.
Originally committed as revision 14541 to svn://svn.ffmpeg.org/ffmpeg/trunk
Fill ref_count/ref_poc for both fields of frames.
Originally committed as revision 14540 to svn://svn.ffmpeg.org/ffmpeg/trunk
Fix static leaks in h264.c.
Patch by Art Clarke aclarke A vlideshow D com
Originally committed as revision 14538 to svn://svn.ffmpeg.org/ffmpeg/trunk
Use ref_poc and ref_count from the correct field.Fixes at leastMR8_BT_B.h264
Originally committed as revision 14537 to svn://svn.ffmpeg.org/ffmpeg/trunk
Fix dist_scale_factor for long term reference pictures.
Originally committed as revision 14536 to svn://svn.ffmpeg.org/ffmpeg/trunk
Use the correct collocated field in pred_direct_motion() when it differs in parity.Fixes at least:FRExt/HPCAFL_BRCM_C.264FRExt/HPCAFLNL_BRCM_C.264FRExt/HPCVFL_BRCM_A.264FRExt/HPCVFLNL_BRCM_A.264
Originally committed as revision 14529 to svn://svn.ffmpeg.org/ffmpeg/trunk
Remove useless mb_field_decoding_flag setting code that was at the wrong spot.
Originally committed as revision 14519 to svn://svn.ffmpeg.org/ffmpeg/trunk
mb_field_decoding_flag was not initializedFixes at least:MR7_BT_B.h264Sharp_MP_PAFF_1r2.jvtSharp_MP_PAFF_2.jvt
Originally committed as revision 14518 to svn://svn.ffmpeg.org/ffmpeg/trunk
Picture.ref_count/ref_poc have to be stored per field (actually also perslice but thats a seperate bug)Fixes at least:CABREF3_Sand_D.264camp_mot_fld0_full.26lCVFI2_Sony_H.jsvCVNLFI2_Sony_H.jsv
Originally committed as revision 14511 to svn://svn.ffmpeg.org/ffmpeg/trunk
Simplify intra PCM MB handling.
Originally committed as revision 14476 to svn://svn.ffmpeg.org/ffmpeg/trunk
Use #define instead of a constant. Patch by Paul Kendall.
Originally committed as revision 14463 to svn://svn.ffmpeg.org/ffmpeg/trunk
Small h264 decoding speed optimization: while->do/while
Originally committed as revision 14459 to svn://svn.ffmpeg.org/ffmpeg/trunk
Initialize outputed_poc to INT_MIN at decoder initialization.Fixes issue 560
Originally committed as revision 14428 to svn://svn.ffmpeg.org/ffmpeg/trunk
left_block intialisation optimisation.This patch changes the left_block initialisation code in the fill_cachesfunction from individual array element setters to a simple pointer to apre-initialised array.Patch by (Paul Kendall ! paul X kcbbs knodel gen knodel nz)...
And.... Fix another spec reference to be more specific and correct.
Originally committed as revision 14423 to svn://svn.ffmpeg.org/ffmpeg/trunk
Fix reference to spec to be more specific and correct.
Originally committed as revision 14422 to svn://svn.ffmpeg.org/ffmpeg/trunk
Simple refactoring to resolve a FIXME. Patch by Paul Kendall.
Originally committed as revision 14419 to svn://svn.ffmpeg.org/ffmpeg/trunk
Originally committed as revision 14408 to svn://svn.ffmpeg.org/ffmpeg/trunk
chroma_format_idc=0 aka grayscale support.Can be disabled by removing #define ALLOW_NOCHROMA in case the extra if()slow the code down measurably.Fixes at leastFRExt/HPCAMOLQ_BRCM_B.264FRExt/HPCVMOLQ_BRCM_B.264
Originally committed as revision 14407 to svn://svn.ffmpeg.org/ffmpeg/trunk
Revert r14404 Remove another 2 incorrect checks. These would ignore fields of different parity.I was wrong, i thought pic_stricture is the current pic structure.But it does not make a difference either way on the reference bitstreams.
Originally committed as revision 14405 to svn://svn.ffmpeg.org/ffmpeg/trunk
Remove another 2 incorrect checks.These would ignore fields of different parity.
Originally committed as revision 14404 to svn://svn.ffmpeg.org/ffmpeg/trunk
Print an error if a reference picture is missing.
Originally committed as revision 14403 to svn://svn.ffmpeg.org/ffmpeg/trunk
Remove mysterious ref->data0 check.What the standard calls non-existent is not related to thevalue of the data0 pointer.
Originally committed as revision 14402 to svn://svn.ffmpeg.org/ffmpeg/trunk
10l typo, fix compilation
Originally committed as revision 14401 to svn://svn.ffmpeg.org/ffmpeg/trunk