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
    • James Zern's avatar
      vp9_loopfilter: quiet integer constant size warnings · 279d350f
      James Zern authored
      mark uint64_t constants with 'ULL'
      Change-Id: I7648e161b4004fba35e1fa7ab79e34cc19e39716
    • 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
  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
    • 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
  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
    • 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
    • Jingning Han's avatar
    • 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
      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
      Change-Id: Ieaf633ab77f4838cb3c45cf69065b29d55f8ae6c
    • 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