1. 29 Feb, 2012 3 commits
  2. 28 Feb, 2012 9 commits
    • Paul Wilkins's avatar
      dc825f1e
    • Deb Mukherjee's avatar
      Initial refactoring of high_precision mv code. · 3e1cad9c
      Deb Mukherjee authored
      This is the first patch for refactoring of the code related to
      high-precision mv, so that 1/4 and 1/8 pel motion vectors can
      co-exist in the same bit-stream by use of a frame level flag.
      The current patch works fine for only use of 1/4th and
      only use of 1/8th pel mv, but there are some issues with the
      mode switching in between. Subsequent patches on this change Id
      will fix the remaining issues.
      
      Patch 2: Adds fixes to make sure that multiple mv precisions can
      co-exist in the bit-stream. Frame level switching has been tested
      to work correctly.
      
      Patch 3: Fixes lines exceeding 80 char
      
      Patch 4:
      http://www.corp.google.com/~debargha/vp8_results/enhinterp.html
      
      Results on derf after ssse3 bugfix, compared to everything
      enabled but the 8-tap, 1/8-subpel and 1/16-subpel uv. Overall the
      gains are about 3% now. Hopefully there are no more bugs lingering.
      Apparently the sse3 bug affected the quartel subpel results more than
      the eighth pel ones (which is understandabale because one bad predictor
      due to the bug, matters less if there are a lot more subpel options
      available as in the 1/8 subpel case).
      The results in the 4th column correspond to the current settings.
      The first two columns correspond to two settings of adaptive switching
      of the 1/4 or 1/8 subpel mode based on initial Q estimate. These
      do not work as good as just using 1/8 all the time yet.
      
      Change-Id: I3ef392ad338329f4d68a85257a49f2b14f3af472
      3e1cad9c
    • Yaowu Xu's avatar
    • Paul Wilkins's avatar
      Merge new loop filter. · 19b9d28f
      Paul Wilkins authored
      Merge of the NEWLPF configuration experiment so it is always on.
      
      Change-Id: I7054772b6eab28bad1ff807bfa54d98f83de9308
      19b9d28f
    • Yaowu Xu's avatar
      Try to enable 8x8 tranform for smaller resolution · 42891098
      Yaowu Xu authored
      The commit overall on derf test is break even to very slightly positive
      comparing to all 4x4 transform.
      
      Change-Id: I2a7c19599aa54c2d3a5b35db0dc891ba8a6a2b26
      42891098
    • Paul Wilkins's avatar
      Experimental branch code clean up. · 25c127f5
      Paul Wilkins authored
      Removal of some further code relating to partitions
      and error resilience.
      
      Spelling correction.
      
      Change-Id: I36067aae67a4a23bec359541dda3400b0bbf26d0
      25c127f5
    • Paul Wilkins's avatar
      Code Simplification · b6f02c85
      Paul Wilkins authored
      Removal of code relating to token partitioning
      
      Change-Id: Iaf3c88d6758639a55bd92c3be5c51e6bed407a3c
      b6f02c85
    • Yaowu Xu's avatar
      fixed a wrong intialization value · eb87b56e
      Yaowu Xu authored
      The "update" variable was used as a flag in coef_prob update dry run
      that tests if a frame should encodes update at all. The wrong init
      value forced the update happening always. fixing this has a minor
      improvement in low bit rate situation when 8x8 transform is allowed.
      
      Change-Id: Icb498e8d6a62fd074dcbc2065b797cba9237cb51
      eb87b56e
    • Paul Wilkins's avatar
      3cdd0a8e
  3. 27 Feb, 2012 5 commits
  4. 26 Feb, 2012 2 commits
  5. 25 Feb, 2012 2 commits
    • Paul Wilkins's avatar
      Removal of temporal re sampling code. · 80b873e3
      Paul Wilkins authored
      For now the interface elements have been left in place
      to make sure existing parameter files work but parameters
      relating to drop frame wont do anything.
      
      Change-Id: I579ee614726387381c546845dac4bc03c74c6a07
      80b873e3
    • Deb Mukherjee's avatar
      Bug fix in ssse3 variance computation. · 88b36eb0
      Deb Mukherjee authored
      Fixes a bug that was introduced in the high precision mv patch.
      
      Change-Id: Ieadb433ebe4c3ef3e0e63944dab11528bf8bd73a
      88b36eb0
  6. 24 Feb, 2012 4 commits
  7. 23 Feb, 2012 2 commits
    • Deb Mukherjee's avatar
      Clean ups and minor changes in high precision mv with 8-tap interpolation · fb472c5b
      Deb Mukherjee authored
      * Removes EDGE_PIXEL_FILTER for external sanpshot
      * changes the default 8-tap filter based on high precision results
      in http://www.corp.google.com/~debargha/vp8_results/enhinterpn.html
      * changes the default prob tables for high-precision mv encoding to
      favor zeros in the last bit (i.e. quarter pel). This is only important
      for short clips.
      
      Change-Id: I02bb0de8679d9eec06cdbcc8160dbf073cd847a4
      fb472c5b
    • Deb Mukherjee's avatar
      Supporting high precision 1/8-pel motion vectors · 18e90d74
      Deb Mukherjee authored
      This is the initial patch for supporting 1/8th pel
      motion. Currently if we configure with enable-high-precision-mv,
      all motion vectors would default to 1/8 pel. Encode and
      decode syncs fine with the current code. In the next phase
      the code will be refactored so that we can choose the 1/8
      pel mode adaptively at a frame/segment/mb level.
      
      Derf results:
      http://www.corp.google.com/~debargha/vp8_results/enhinterp_hpmv.html
      (about 0.83% better than 8-tap interpoaltion)
      
      Patch 3: Rebased. Also adding 1/16th pel interpolation for U and V
      
      Patch 4: HD results.
      http://www.corp.google.com/~debargha/vp8_results/enhinterp_hd_hpmv.html
      Seems impressive (unless I am doing something wrong).
      
      Patch 5: Added mmx/sse for bilateral filtering, as well as enforced
      use of c-versions of subpel filters with 8-taps and 1/16th pel;
      Also redesigned the 8-tap filters to reduce the cut-off in order to
      introduce a denoising effect. There is a new configure option
      sixteenth-subpel-uv which will use 1/16 th pel interpolation for
      uv, if the motion vectors have 1/8 pel accuracy.
      
      With the fixes the results are promising on the derf set. The enhanced
      interpolation option with 8-taps alone gives 3% improvement over thei
      derf set:
      http://www.corp.google.com/~debargha/vp8_results/enhinterpn.html
      
      Results on high precision mv and on the hd set are to follow.
      
      Patch 6: Adding a missing condition for CONFIG_SIXTEENTH_SUBPEL_UV in
      vp8/common/x86/x86_systemdependent.c
      
      Patch 7: Cleaning up various debug messages.
      
      Patch 8: Merge conflict
      
      Change-Id: I5b1d844457aefd7414a9e4e0e06c6ed38fd8cc04
      18e90d74
  8. 22 Feb, 2012 5 commits
  9. 18 Feb, 2012 1 commit
  10. 17 Feb, 2012 2 commits
  11. 16 Feb, 2012 5 commits
    • Yaowu Xu's avatar
      a bit code clean-up · 47d545f1
      Yaowu Xu authored
      Removed some transform code that is not in use.
      
      Change-Id: I9489af7e23d9d7fe052feb6c8bbafa62ebbda39c
      47d545f1
    • Yaowu Xu's avatar
      Reworked context conversion between 8x8 and 4x4 · b92a96d8
      Yaowu Xu authored
      The commit rationized and simplified the entropy context conversion
      betwen MB using 8x8 transform and MB using 4x4 transform. The old version
      had a number of weirdness in how 4x4 transform MB's context is used for
      8x8 blocks other than the first 8x8 within a MB.
      
      Test showed the change has a gain ~.1% for avg psnr, glb psnr and ssim on
      the limited HD set.
      
      Change-Id: I774536c416baa6845aa741f956d8a69fa40e5d47
      b92a96d8
    • Deb Mukherjee's avatar
      Removing a stray CONFIG_DUALPRED, and a INTERP_EXTEND fix. · 6b86208d
      Deb Mukherjee authored
      Change-Id: I7549e424ca6846b07a796f2b9cd4e9d4e550ca9b
      6b86208d
    • Paul Wilkins's avatar
      Code simplification · 79d330d7
      Paul Wilkins authored
      Removal of the pickinter.c and .h files and calls to this
      code.
      
      Removal of some code relating to real time and one pass
      settings  though there is more to be done in this regard.
      
      However,  vp8_set_speed_features() now
      only supports modes 0 and 1 and speeds up to 3
      so rd should always be set.
      
      Change-Id: I62c0c1b6154ab499785baef310536080e87bc4d8
      79d330d7
    • Deb Mukherjee's avatar