summaryrefslogtreecommitdiff
path: root/vp9/common
AgeCommit message (Collapse)Author
2013-04-30Adding vp9_get_qindex function.Dmitry Kovalev
Moving common code from encoder and decoder to vp9_get_qindex function. Also moving quant-related constants from vp9_onyxc_int.h to vp9_quant_common.h. Change-Id: I70c5bfbaa1c8bf00fde0bfc459d077f88b6d46c8
2013-04-30Adding vp9_update_frame_size function.Dmitry Kovalev
Moving common code from encoder and decoder to vp9_update_frame_size. Change-Id: I6ca758b7d05ffd52821bd3f7ad68089da11e4165
2013-04-30Merge "Renaming refresh_entropy_probs to refresh_frame_context." into ↵Dmitry Kovalev
experimental
2013-04-30Merge "Consistent names for quant-related functions and variables." into ↵Dmitry Kovalev
experimental
2013-04-29Merge "Separate I4X4_PRED coding from macroblock modules" into experimentalJingning Han
2013-04-29Separate I4X4_PRED coding from macroblock modulesJingning Han
Separate the functionality of I4X4_PRED from decode_mb. Use decode_atom_intra instead, to enable recursive partition of superblock down to 8x8. Change-Id: Ifc89a3be82225398954169d0a839abdbbfd8ca3b
2013-04-29Merge "fixed new intra code for rectanglar blocks" into experimentalYaowu Xu
2013-04-29Merge "Enabled i4x4 to use right above pixels" into experimentalYaowu Xu
2013-04-29Merge "Use same intra prediction for all block size" into experimentalYaowu Xu
2013-04-29fixed new intra code for rectanglar blocksYaowu Xu
Also fixed two minor subtle boundary conditions in intra prediction code, and replaced memcpy/memset with vpx_ prefixed version. Change-Id: I9cddff3be831228b628f1f2f065a61feacbcbee6
2013-04-29Enabled i4x4 to use right above pixelsYaowu Xu
Change-Id: I7442b4600b6812bed13e655ccf68f9ea56cc83a2
2013-04-29Use same intra prediction for all block sizeYaowu Xu
The commmit changed to use same intra prediction function for all block sizes. Some details on the changes: 1. All directional modes except DC/TM/V/H now have built-in filtering for all pixels with filter taps either (1, 2, 1)/4 or (1, 1)/2. 2. Above edge get automatic extended to double width (bw*2), which makes a lot of the prediciton mode computation simpler. 3. Same intra prediction function is called with different size for i4x4_pred and all other larger size. Overall, the change helped keyframe only coding for both cif size and std-hd size test sets by .5% consistently on all encodings. For normal coding with single/auto key frame, the change now also is consistently net positive for all encodings. The overall gains is about .15% on std-hd set. Change-Id: I01ceb31fbc73d49776262e6bdc06853b03bbd1d1
2013-04-29Merge "Change above/left_context to use an 8x8 basis." into experimentalRonald S. Bultje
2013-04-29Change above/left_context to use an 8x8 basis.Ronald S. Bultje
Output changes slightly because of a minor bug in (at least) the sb32x16 block2above tx16x16 tables that previously existed in vp9_blockd.c. Change-Id: I624af28ac200a8322d64454cf05c79e9502968cc
2013-04-29Turning model based reverse update on for coefsDeb Mukherjee
Turns model based reverse updates on for coefficients in an effort to reduce the memory requirement for counters. With this patch the counters needed will be reduced by about 75% since only 3 counts are needed instead of 12. The impact in performance is: derf300: -0.252% stdhd250: -0.046% However retraining should alleviate some of the drop in performance. Change-Id: I6f2b3e13f6d5520aa3400b0b228fb5e8b4a43caa
2013-04-27Merge "Minor tweak to implicit segmentation experiment." into experimentalPaul Wilkins
2013-04-26Merge "Grow MODE_INFO array to use an 8x8 basis." into experimentalRonald S. Bultje
2013-04-26Renaming refresh_entropy_probs to refresh_frame_context.Dmitry Kovalev
Change-Id: I5429c02246d198eb1b6aadbc3313b26bf3436062
2013-04-26Merge "Merge branch 'master' into experimental" into experimentalJohann
2013-04-26Merge branch 'master' into experimentalJohann
Conflicts: vp9/common/vp9_findnearmv.c vp9/common/vp9_rtcd_defs.sh vp9/decoder/vp9_decodframe.c vp9/decoder/x86/vp9_dequantize_sse2.c vp9/encoder/vp9_rdopt.c vp9/vp9_common.mk Resolve file name changes in favor of master. Resolve rdopt changes in favor of experimental, preserving the newer experiments. Change-Id: If51ed8f457470281c7b20a5c1a2f4ce2cf76c20f
2013-04-26Consistent names for quant-related functions and variables.Dmitry Kovalev
Change-Id: I3a6d601e90e8740b9c26dd0afbfe9d467b75d367
2013-04-26Grow MODE_INFO array to use an 8x8 basis.Ronald S. Bultje
Change-Id: I087e08e7909a406b71715b8525c104208daa6889
2013-04-26Remove BLOCKD structureJohn Koleszar
All members can be referenced from their per-plane counterparts, and removes assumptions about 24 blocks per macroblock. Change-Id: I7ff2fa72d22c29163eb558981c8193765a8113d9
2013-04-26Remove destination pointers from BLOCKDJohn Koleszar
Access these members from MACROBLOCKD instead. Change-Id: I7907230dd473ff12ebe182b9280d8b7f12a888c4
2013-04-26Removed bmi from blockdScott LaVarnway
This originally was "Removed update_blockd_bmi()". Now, this patch removed bmi from blockd and uses the bmi found in mode_info_context. Eliminates unnecessary bmi copies between blockd and mode_info_context. Change-Id: I287a4972974bb363f49e528daa9b2a2293f4bc76
2013-04-25Remove implicit assumption that mode_info_stride == mb_cols + 1.Ronald S. Bultje
Change-Id: I3030d7adac73109aeaa1ecc0f78ac968c092d9aa
2013-04-25Use b_width/height_log2 instead of mb_ where appropriate.Ronald S. Bultje
Basic assumption: when talking about transform units, use b_; when talking about macroblock indices, use mb_. Change-Id: Ifd163f595d4924ff892de4eb0401ccd56dc81884
2013-04-25Remove predictor pointers from BLOCKDJohn Koleszar
Access these members from MACROBLOCKD instead. Change-Id: I2574622e577bb9feede47f6b7ccbb11f3e928ca8
2013-04-25Remove diff from BLOCKDJohn Koleszar
The underlying storage for these buffers is in the per-plane MACROBLOCKD area, so read it from there directly. Change-Id: Id6bd835117fdd9dea07db95ad06eff9f12afaaf7
2013-04-25Move dequant from BLOCKD to per-plane MACROBLOCKDJohn Koleszar
This data can vary per-plane, but not per-block. Change-Id: I1971b0b2c2e697d2118e38b54ef446e52f63c65a
2013-04-25Remove BLOCK structureJohn Koleszar
All members can be referenced from their per-plane counterparts, and removes assumptions about 24 blocks per macroblock. Change-Id: I593fb0715e74cd84b48facd1c9b18c3ae1185d4b
2013-04-25Rename vp9_idct_x86.cJohann
Remove similarly named header file. It is obsolete. Move file to match naming style. Adjust make file to include the file correctly and remove extra unnecessary #if guard. Change-Id: Ifba07ba9938a5df08a9f4eda54a3ac4d6983f7bf
2013-04-25Adding is_inter_mode function.Dmitry Kovalev
Change-Id: I2d32d46002cb92c63050c2b8328865c406103621
2013-04-25Merge "Removing unused mi_mv_pred_row and mi_mv_pred_col functions." into ↵Dmitry Kovalev
experimental
2013-04-25Merge "Using ROUND_POWER_OF_TWO macro inside vp9_loopfilter_filters.c." into ↵Dmitry Kovalev
experimental
2013-04-25Merge "Handling frame references and scale factors in one for loop." into ↵Dmitry Kovalev
experimental
2013-04-25Merge "Move sbsegment out of experimental list" into experimentalJingning Han
2013-04-25Merge "Moved dequantization into the token decoder" into experimentalScott LaVarnway
2013-04-24Handling frame references and scale factors in one for loop.Dmitry Kovalev
Using ALLOWED_REFS_PER_FRAME constants instead of hard coded 3, replacing memcpy with plain struct assignment. Change-Id: Ibc86f5d175fcb3f3a3eddacf593525370f1f854c
2013-04-24Merge two similar functions into oneYaowu Xu
Function set_mb_row() and set_mb_col() do similar work and are always called together, this commit merged them into a single function for clarity and easy maintainence. This was a TODO item. Change-Id: I956bd9ed6afb8b2b0469b20fd8bc893b26f8a0f3
2013-04-24Merge "Fixing PRED_SWITCHABLE_INTERP case in vp9_get_pred_context function." ↵Dmitry Kovalev
into experimental
2013-04-24Move sbsegment out of experimental listJingning Han
Move rectangular superblock coding out of experimental list. Change-Id: I96c37547d122330d666a67b4bf577ae54547857f
2013-04-24Contextual entropy coding of partition syntaxJingning Han
This commit enables selecting probability models for recursive block partition information syntax, depending on its above/left partition information, as well as the current block size. These conditional probability models are reasonably stationary and consistent across frames, hence the backward adaptive approach is used to maintain and update the contextual models. It achieves coding performance gains (on top of enabling rectangular block sizes): derf: 0.242% yt: 0.391% hd: 0.376% stdhd: 0.645% Change-Id: Ie513d9673337f0d27abd65fb566b711d0844ec2e
2013-04-24Using ROUND_POWER_OF_TWO macro inside vp9_loopfilter_filters.c.Dmitry Kovalev
Change-Id: Icb671cd011f645a3361684207840d14330ca7488
2013-04-24Merge "Change chroma loopfilter to skip inner SB edges for tx16x16 also." ↵Ronald S. Bultje
into experimental
2013-04-24Merge "Minor indent changes in loopfilter code." into experimentalRonald S. Bultje
2013-04-24Merge "Add basic building blocks for 8x8 superblocks experiment." into ↵Ronald S. Bultje
experimental
2013-04-24Fixing PRED_SWITCHABLE_INTERP case in vp9_get_pred_context function.Dmitry Kovalev
Adding xd->up_available as additional check for above context. Change-Id: If5654e4cae184b9c369b7b2e08076cb2951d00ed
2013-04-24Change chroma loopfilter to skip inner SB edges for tx16x16 also.Ronald S. Bultje
Change-Id: I6ea9e110b5c5b07ab7d092886dbd51a6eccc0217
2013-04-24Merge "Extension of segmentation to 8 segments." into experimentalPaul Wilkins