1. 27 Feb, 2015 1 commit
  2. 26 Feb, 2015 9 commits
  3. 25 Feb, 2015 9 commits
  4. 24 Feb, 2015 3 commits
    • Jingning Han's avatar
      Re-distribute hierarchical vector match pattern · f87e315e
      Jingning Han authored
      This commit modifies the hierarchical vector match patter. It
      avoids repeated SAD computation at same points. The function
      vp9_vector_sad_sse2 is called 12 times per 64x64 block, instead
      of 15 times as before. The effective coverage remains the same.
      
      Change-Id: I91ad9d27d40db8963c907d02af84e10702136994
      f87e315e
    • James Zern's avatar
      vp9_loopfilter: quiet integer constant size warnings · 279d350f
      James Zern authored
      mark uint64_t constants with 'ULL'
      
      Change-Id: I7648e161b4004fba35e1fa7ab79e34cc19e39716
      279d350f
    • Yunqing Wang's avatar
      Fix ssse3 quantize_fp functions while skip=1 · 58e0159c
      Yunqing Wang authored
      In ssse3 functions, DEFINE_ARGS macro hard codes qcoeff and dqcoeff
      to r3 and r4. If skip is 1, qcoeff and dqcoeff need to be loaded
      from the stack, which doesn't work because of the above definitions.
      Currently, skip=1 case is not used in the encoder. This patch fixed
      the issue, so it can be turned on later.
      
      Change-Id: I998d696b1a7a85dca2b3bcee790b21c21e039147
      58e0159c
  5. 23 Feb, 2015 2 commits
    • Yaowu Xu's avatar
      fix the propagation of color space info in decoder · 6cf30312
      Yaowu Xu authored
      This addresses the issue #960
      
      Change-Id: Iddf45b4bd4f53cb0ddfd879e800a071cd843b915
      6cf30312
    • paulwilkins's avatar
      Account for rate error in GF group Q calculation. · 8d7f53f0
      paulwilkins authored
      When GF group adaptive maxQ is enabled this patch accounts
      somewhat for accumulated error in the rate control.
      
      This improves accuracy quite a bit on many clips especially
      when there is  overshoot.
      
      Examples when the overshoot and undershoot command line
      parameters are set to 100:
      
      Hall @ 1200 overshoot is reduced from 67-24%.
      Akiyo @ 400 undershoot is reduced from 28%-15%.
      
      Setting a lower value for undershoot or overshoot still
      reduces the error further.
      
      Impact on metrics is mixed with some gains in average psnr
      but generally a little lower (e.g. 0.5%) on overall and ssim.
      
      The GF group adaptation is still off by default in this patch.
      Compared to with the head, enabling this mode now gives
      big average psnr gains on the YT sets (e.g. YT_HD >11.2%),
      a drop in overall PSNR (YT-HD 3.9%) and a smaller drop or
      neutral for SSIM.
      
      Change-Id: If4b32cd0740d3fb941317b374f9c2951954eee90
      8d7f53f0
  6. 21 Feb, 2015 1 commit
  7. 20 Feb, 2015 9 commits
  8. 19 Feb, 2015 6 commits
    • Hangyu Kuang's avatar
      Optimize the dequantization process on decoder side. · bdd249be
      Hangyu Kuang authored
      Change-Id: I00621ff7165bbe86a18794b4a816976c9effaf78
      bdd249be
    • Yunqing Wang's avatar
    • Adrian Grange's avatar
      Fix control string in firstpass stats fprintf · 2ae314fe
      Adrian Grange authored
      20 items in the control string but only 19 arguments.
      
      Change-Id: I51dab9aa1c58c653b52395005a9cb41f09feb484
      2ae314fe
    • Jingning Han's avatar
      216b171d
    • Yunqing Wang's avatar
      Improve skip_txfm thresholds in the non-rd mode selection · 81fc5bf8
      Yunqing Wang authored
      Modified the thresholds of deciding whether or not to skip
      the transforms in model_rd_for_sb_y(). Used zbin[] instead
      of dequant[] to be more precise. Also, modified the checking
      coditions.
      
      Rtc set borg test results (at speed 6) showed:
      average PSNR gain: 0.138%, overall PSNR gain: 0.158%,
      and SSIM gain: 0.177%.
      
      The data rate test was modified slightly as suggested by
      Marco.
      
      Change-Id: Ieaf633ab77f4838cb3c45cf69065b29d55f8ae6c
      81fc5bf8
    • Jingning Han's avatar
      Integral projection based motion estimation · ed2dc59c
      Jingning Han authored
      This commit introduces a new block match motion estimation
      using integral projection measurement. The 2-D block and the nearby
      region is projected onto the horizontal and vertical 1-D vectors,
      respectively. It then runs vector match, instead of block match,
      over the two separate 1-D vectors to locate the motion compensated
      reference block.
      
      This process is run per 64x64 block to align the reference before
      choosing partitioning in speed 6. The overall CPU cycle cost due
      to this additional 64x64 block match (SSE2 version) takes around 2%
      at low bit-rate rtc speed 6. When strong motion activities exist in
      the video sequence, it substantially improves the partition
      selection accuracy, thereby achieving better compression performance
      and lower CPU cycles.
      
      The experiments were tested in RTC speed -6 setting:
      cloud 1080p 500 kbps
      17006 b/f, 37.086 dB, 5386 ms ->
      16669 b/f, 37.970 dB, 5085 ms (>0.9dB gain and 6% faster)
      
      pedestrian_area 1080p 500 kbps
      53537 b/f, 36.771 dB, 18706 ms ->
      51897 b/f, 36.792 dB, 18585 ms (4% bit-rate savings)
      
      blue_sky 1080p 500 kbps
      70214 b/f, 33.600 dB, 13979 ms ->
      53885 b/f, 33.645 dB, 10878 ms (30% bit-rate savings, 25% faster)
      
      jimred 400 kbps
      13380 b/f, 36.014 dB, 5723 ms ->
      13377 b/f, 36.087 dB, 5831 ms  (2% bit-rate savings, 2% slower)
      
      Change-Id: Iffdb6ea5b16b77016bfa3dd3904d284168ae649c
      ed2dc59c