summaryrefslogtreecommitdiff
path: root/vp9/common
AgeCommit message (Collapse)Author
2013-05-16Removed Q threshold in the usage of ADSTYaowu Xu
Test on cif set showed small but consistent compression gain for almost all encodings with overall impact of .08%. The gains average aournd .12% combined with D63 adst change. Test encoding on std-hd set is ongoing.. Change-Id: If4d94799cf0486fb9c770b193e5c386d13d99d59
2013-05-16Add building blocks for 4x8/8x4 rd searchJingning Han
These building blocks enable rate-distortion optimization search over block sizes of 8x4 and 4x8. Need to convert them into mmx/sse forms. Change-Id: I570ea2d22d14ceec3fe3575128d7dfa172a577de
2013-05-16Merge "Fix the transform type selection in 4x4 partition" into experimentalJingning Han
2013-05-16Merge "Further Implicit Segmentation Changes" into experimentalPaul Wilkins
2013-05-15Merge "Fix vp9_build_intra_predictors_sbuv_s for non-4:2:0" into experimentalJohn Koleszar
2013-05-15Fix vp9_build_intra_predictors_sbuv_s for non-4:2:0John Koleszar
Remove an assumption about chroma size, and the number of planes. Change-Id: I286a7fac296ec334c6a8ad847f663f3adbb9f43e
2013-05-15Moving the same code to new function vp9_setup_scale_factors.Dmitry Kovalev
Change-Id: I2408ad22717784a40e23701ccb9d978265440e4f
2013-05-15Fix the transform type selection in 4x4 partitionJingning Han
This commit allows proper transform type (DCT/ADST) selection in the settings of partition 4x4 level. Change-Id: Iec6f922a46480d777e7ca9142a99e8c131f0077b
2013-05-15Merge "Preparing vp9_deblock and vp9_denoise to alpha support." into ↵Dmitry Kovalev
experimental
2013-05-15Merge "Moving several static functions from vp9_reconinter.h to ↵Dmitry Kovalev
vp9_reconinter.c." into experimental
2013-05-15WIP: 16x16 idct/recon mergeScott LaVarnway
This patch eliminates the intermediate diff buffer usage by combining the short idct and the add residual into one function. The encoder can use the same code as well. Change-Id: Iea7976b22b1927d24b8004d2a3fddae7ecca3ba1
2013-05-15Further Implicit Segmentation ChangesPaul Wilkins
Trial use of a combination of reference frame, prediction block size and mv to define segmentation. Change-Id: Ie8946a0446dbad777fdcf7626f89e5af0994db50
2013-05-14Moving several static functions from vp9_reconinter.h to vp9_reconinter.c.Dmitry Kovalev
Change-Id: I5da9c16bab26f6ff0c9d3a2a29ef6c84f5093161
2013-05-14WIP: 32x32 idct/recon mergeScott LaVarnway
This patch eliminates the intermediate diff buffer usage by combining the short idct and the add residual into one function. The encoder can use the same code as well. Change-Id: I4ea09df0e162591e420d869b7431c2e7f89a8c1a
2013-05-14Enable recursive partition down to 4x4Jingning Han
This commit allows the rate-distortion optimization recursion at encoder to go down to 4x4 block size. It deprecates the use of I4X4_PRED and SPLITMV syntax elements from bit-stream writing/reading. Will remove the unused probability models in the next patch. The partition type search and bit-stream are now capable of supporting the rectangular partition of 8x8 block, i.e., 8x4 and 4x8. Need to revise the rate-distortion parts to get these two partition tested in the rd loop. Change-Id: I0dfe3b90a1507ad6138db10cc58e6e237a06a9d6
2013-05-14Preparing vp9_deblock and vp9_denoise to alpha support.Dmitry Kovalev
Change-Id: I299feefa64b93bd62263aea1ff1e41e85faeb6ca
2013-05-14Merge "changed to use adst for D63_PRED" into experimentalYaowu Xu
2013-05-14Merge "Revert "Preparing vp9_deblock and vp9_denoise to alpha support."" ↵John Koleszar
into experimental
2013-05-14Revert "Preparing vp9_deblock and vp9_denoise to alpha support."John Koleszar
This reverts commit a933311131bfc77ffd1c64b29f7e1688a1c4b192 Change-Id: I2321f88011178381adbcffeda1bcc6a430ab8f1d
2013-05-13changed to use adst for D63_PREDYaowu Xu
To be consistent with other prediciton modes Change-Id: If9e1464e5c807f0b36047a046c4ac59d91b1b868
2013-05-13Merge "Preparing vp9_deblock and vp9_denoise to alpha support." into ↵Dmitry Kovalev
experimental
2013-05-13Merge "Code cleanup inside vp9_firstpass.c." into experimentalDmitry Kovalev
2013-05-13Merge "Removing simple loopfilter and code duplication from loopfilter ↵Dmitry Kovalev
code." into experimental
2013-05-13Removing simple loopfilter and code duplication from loopfilter code.Dmitry Kovalev
Change-Id: Ib19352e391408507f2237985501406900a355964
2013-05-13Preparing vp9_deblock and vp9_denoise to alpha support.Dmitry Kovalev
Change-Id: Id1cc1c2663b9c2219cb830ffb4b0c6ab3468dc04
2013-05-13Merge "Use consistent partition context setup in enc/dec" into experimentalJingning Han
2013-05-13Merge "Move get_sb_index to vp9_blockd.h" into experimentalJingning Han
2013-05-13Change to band calculation.Paul Wilkins
Change band calculation back to simpler model based on the order in which coefficients are coded in scan order not the absolute coefficient positions. With the scatter scan experiment enabled the results were appear broadly neutral on derf (-0.028) but up a little on std-hd +0.134). Without the scatterscan experiment on the results were up derf as well. Change-Id: Ie9ef03ce42a6b24b849a4bebe950d4a5dffa6791
2013-05-11Use consistent partition context setup in enc/decJingning Han
Move set_partition_seg_context_ to common file. Use consistent context setup conditions for partition probability model update at encoder and decoder. Change-Id: I24b7ed3b1c48e3d2568191a46b70136b99b67b1a
2013-05-11Move get_sb_index to vp9_blockd.hJingning Han
Use common function to fetch/assign sb_index in rd loop, bit-stream writing and reading. Change-Id: I1d8a214a57ed9cbcd026040436ef33e5e39d65b7
2013-05-10Merge "Fix token allocation for non-4:2:0" into experimentalJohn Koleszar
2013-05-10Merge "Fix non-4:2:0 chroma MV calculation for SPLITMV" into experimentalJohn Koleszar
2013-05-10Merge "Subsampling aware allocs and bitstream" into experimentalJohn Koleszar
2013-05-10Merge "Removing unused simple loopfilter code." into experimentalDmitry Kovalev
2013-05-10Removing unused simple loopfilter code.Dmitry Kovalev
Change-Id: Ic11dc052fb641687c015e1bbc37181b9babcd43e
2013-05-10Add joint motion search in comp_inter_inter mode(experiment)Yunqing Wang
In current code, motion vectors got from single prediction mode are used in compound prediction mode directly. These motion vectors may not give accurate prediction since they are searched independently. In this patch, we took Pascal's suggestion, and did joint motion search in compound prediction mode to find better motion vectors in this situation. Test results: Overall PSNR: 0.570%(derf), 0.918%(stdhd); SSIM: 0.572%(derf), 1.009%(stdhd); The encoder is a little slower. This can be improved since some c code is used in motion search. Change-Id: Ib30c9240f6c56c9b070867b4ca89412a76d9f3c6
2013-05-09Fix token allocation for non-4:2:0John Koleszar
Increase the allocated size of the token array to support 4:4:4. Change-Id: I7766a7bedc74b819dcc1f3622d634f340fd3186d
2013-05-09Fix non-4:2:0 chroma MV calculation for SPLITMVJohn Koleszar
The previous code was somewhat vestigial for 16x16 MI units, but was incorrect when called with chroma blocks larger than 4x4 because the block index caused a reference to a non-existent BMI. This patch uses the same MV for all chroma subblocks in SPLITMV mode, which is suboptimal for non-4:2:0 subsamplings, but as SPLITMV may be removed in the near future, will use this as a stop gap. Change-Id: I3211cee5ccf1cfb426e5eef5353b0ce5bb92b4cd
2013-05-09Subsampling aware allocs and bitstreamJohn Koleszar
Make framebuffer allocations according to the chroma subsamping factors in use. A bit is placed in the raw part of the frame header for each of the two subsampling factors. This will be moved in a future commit to make them part of the TBD feature set bits, probably only set on keyframes, etc. Change-Id: I59ed38d3a3c0d4af3c7c277617de28d04a001853
2013-05-09Merge "Use common get_uv_tx_size()" into experimentalJohn Koleszar
2013-05-09Updating comments for prediction modes.Dmitry Kovalev
Change-Id: If4063184f7b37dc011ec6a7a3e75260f4251e984
2013-05-08Use common get_uv_tx_size()John Koleszar
Use a single method for calculating the transform size of non-luma planes. Change-Id: I16ebd10e7944d7b9075ab79d15e6a5b5f9bab775
2013-05-08Code cleanup inside vp9_firstpass.c.Dmitry Kovalev
Change-Id: Ia2814402e3c2ec97c24c536c05f0f526fe1a431c
2013-05-08Removing LOOPFILTER_TYPE and corresponding bit in bitstream.Dmitry Kovalev
We don't have two loopfilter types anymore. Change-Id: I53c0137361342c7d00887ad03be3490f0dfa3532
2013-05-08Merge "Using 4-iteration loop for extra_mb_col inside loopfilter function." ↵Dmitry Kovalev
into experimental
2013-05-08Merge "Eliminating several YV12_BUFFER_CONFIG usages." into experimentalDmitry Kovalev
2013-05-08Merge "Extend left/above partition context to per mi(8x8)" into experimentalJingning Han
2013-05-08Eliminating several YV12_BUFFER_CONFIG usages.Dmitry Kovalev
Change-Id: Ia85b987c935d545920dcae5a6f44136b1a08a008
2013-05-08Using loop to iterate through YV12_BUFFER_CONFIG planes.Dmitry Kovalev
Change-Id: I22f1066eb0022c8d75f65a78435ee4ffecdfe0c9
2013-05-08Merge "Removing unused code + little cleanup." into experimentalDmitry Kovalev