1. 14 Aug, 2013 1 commit
  2. 09 Aug, 2013 1 commit
    • Dmitry Kovalev's avatar
      General code cleanup. · 6a8ec3ea
      Dmitry Kovalev authored
      Removing redundant parenthesis and curly braces. Combining declarations
      with initializations. Adding useful intermediate variables instead of
      recalculating expressions every time.
      
      Change-Id: I00106f404afd60bfc189905b0fded881684f941a
      6a8ec3ea
  3. 10 Jul, 2013 1 commit
  4. 09 Jul, 2013 1 commit
    • Ronald S. Bultje's avatar
      Make intra prediction pointers RTCD-based. · 8350e7fe
      Ronald S. Bultje authored
      This probably has a mildly negative impact on performance, but will
      (in future commits - or possibly merged with this one) allow SIMD
      implementations of individual intra prediction functions. We may
      perhaps want to consider having separate functions per txfm-size
      also (i.e. 4x4, 8x8, 16x16 and 32x32 intra prediction functions for
      each intra prediction mode), but I haven't played much with that
      yet.
      
      Change-Id: Ie739985eee0a3fcbb7aed29ee6910fdb653ea269
      8350e7fe
  5. 03 Jul, 2013 1 commit
  6. 27 Jun, 2013 1 commit
    • Jingning Han's avatar
      Make intra predictor reference buffer configurable · 861cb06c
      Jingning Han authored
      This commit enables configurable reference buffer pointer for intra
      predictor. This allows later removal of spatial dependency between
      blocks inside a 64x64 superblock in the rate-distortion optimization
      loop.
      
      Change-Id: I02418c2077efe19adc86e046a6b49364a980f5b1
      861cb06c
  7. 26 Jun, 2013 1 commit
  8. 25 Jun, 2013 1 commit
    • Jingning Han's avatar
      Refactor intra predictor block · d19ea386
      Jingning Han authored
      Remove vp9_intra4x4_predict(). Use the common intra prediction
      function for all block sizes.
      
      Change-Id: Ibd19d51dfa3da8bbdfb79ddeb81530b2e2089560
      d19ea386
  9. 21 Jun, 2013 1 commit
  10. 07 Jun, 2013 1 commit
  11. 31 May, 2013 1 commit
  12. 28 May, 2013 1 commit
    • Jingning Han's avatar
      further clean-ups on intra4x4 coding · 4729a6f3
      Jingning Han authored
      Removed one 4x4 prediction step that was unnessary in the rd loop.
      Removed a unused modecosts estimate from encoder side.
      
      Change-Id: I65221a52719d6876492996955ef04142d2752d86
      4729a6f3
  13. 22 May, 2013 2 commits
    • Yaowu Xu's avatar
      changes intra coding to be based on txfm block · 8ba92a0b
      Yaowu Xu authored
      This commit changed the encoding and decoding of intra blocks to be
      based on transform block. In each prediction block, the intra coding
      iterates thorough each transform block based on raster scan order.
      
      This commit also fixed a bug in D135 prediction code.
      
      TODO next:
      The RD mode/txfm_size selection should take this into account when
      computing RD values.
      
      Change-Id: I6d1be2faa4c4948a52e830b6a9a84a6b2b6850f6
      8ba92a0b
    • Yaowu Xu's avatar
      Generalized intra 4x4 encoding for all sizes · 232d90d8
      Yaowu Xu authored
      Change-Id: I1b86744fa247233c8df031b3f4b87b212c8dd094
      232d90d8
  14. 16 May, 2013 1 commit
  15. 07 May, 2013 3 commits
  16. 04 May, 2013 1 commit
  17. 02 May, 2013 2 commits
  18. 30 Apr, 2013 1 commit
  19. 29 Apr, 2013 3 commits
    • Yaowu Xu's avatar
      fixed new intra code for rectanglar blocks · 4747c6ed
      Yaowu Xu authored
      Also fixed two minor subtle boundary conditions in intra prediction
      code, and replaced memcpy/memset with vpx_ prefixed version.
      
      Change-Id: I9cddff3be831228b628f1f2f065a61feacbcbee6
      4747c6ed
    • Yaowu Xu's avatar
      Enabled i4x4 to use right above pixels · e388251d
      Yaowu Xu authored
      Change-Id: I7442b4600b6812bed13e655ccf68f9ea56cc83a2
      e388251d
    • Yaowu Xu's avatar
      Use same intra prediction for all block size · 3d655805
      Yaowu Xu authored
      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
      3d655805
  20. 26 Apr, 2013 2 commits
  21. 24 Apr, 2013 1 commit
  22. 23 Apr, 2013 2 commits
  23. 22 Apr, 2013 1 commit
  24. 19 Apr, 2013 1 commit
    • John Koleszar's avatar
      Move dst to per-plane MACROBLOCKD data · d12376aa
      John Koleszar authored
      First in a series of commits moving the framebuffers pointers to
      per-plane data, so that they can be indexed numerically rather than
      by name.
      
      Change-Id: I6e0d60fd4d51e6375c384eb7321776564df21775
      d12376aa
  25. 18 Apr, 2013 1 commit
    • Jingning Han's avatar
      Make the use of pred buffers consistent in MB/SB · 6f43ff58
      Jingning Han authored
      Use in-place buffers (dst of MACROBLOCKD) for  macroblock prediction.
      This makes the macroblock buffer handling consistent with those of
      superblock. Remove predictor buffer MACROBLOCKD.
      
      Change-Id: Id1bcd898961097b1e6230c10f0130753a59fc6df
      6f43ff58
  26. 16 Apr, 2013 1 commit
  27. 12 Apr, 2013 2 commits
  28. 11 Apr, 2013 2 commits
    • Jingning Han's avatar
      Make intra predictor support rectangular blocks · 815e95fb
      Jingning Han authored
      The intra predictor supports configurable block sizes. It can handle
      intra prediction down to 4x4 sizes, when enabled in BLOCK_SIZE_TYPE.
      
      Change-Id: I7399ec2512393aa98aadda9813ca0c83e19af854
      815e95fb
    • Scott LaVarnway's avatar
      WIP: removing predictor buffer usage from decoder · 6189f2bc
      Scott LaVarnway authored
      This patch will use the dest buffer instead of the
      predictor buffer.  This will allow us in future commits
      to remove the extra mem copy that occurs in the dequant
      functions when eob == 0.  We should also be able to remove
      extra params that are passed into the dequant functions.
      
      Change-Id: I7241bc1ab797a430418b1f3a95b5476db7455f6a
      6189f2bc
  29. 07 Mar, 2013 1 commit
  30. 20 Feb, 2013 1 commit
    • Tero Rintaluoma's avatar
      Avoid division in intra prediction · 56e6c66b
      Tero Rintaluoma authored
      - Using multiplication and shifting instead of division in
        intra prediction.
      - Maximum absolute difference is 1 for division statements
        in d45, d27, d63 prediction modes. However, errors can
        cumulate for large block sizes when using already predicted
        values.
      - Maximum number of non-matching result values in loops using
        division are:
        4x4        0/16
        8x8        0/64
        16x16     10/256
        32x32     13/1024
        64x64    122/4096
      
        Overall PSNR
        derf:     0.005
        yt:      -0.022
        std-hd:   0.021
        hd:      -0.006
      
      Change-Id: I3979a02eb6351636442c1af1e23d6c4e6ec1d01d
      56e6c66b