1. 03 Oct, 2013 - 3 commits
    • Paul Wilkins's avatar
      Speed setting review. · 6253cc92
      Paul Wilkins authored
      Substantial reworking of the speed vs quality trade offs for
      speed 1 and 2.
      
      In this patch I am attempting to freeze the "quality" meaning of
      speeds 1 and 2 relative to speed 0 so that in future we can
      better evaluate progress.
      
      I am targeting :
      Speed 1 quality ~-5% vs speed 0.
      Speed 2 quality ~-10% vs speed 0
      
      It is inevitable that quality will still fluctuate a little as we adjust
      settings and add new features, but we will attempt to keep as
      close as possible to these values. Above speed 2 things will remain
      a bit more fluid for now.
      
      In this patch speed 1 is approximately 4-5x as fast as speed 0. This
      is similar to before but the quality hit is a lot less. Likewise speed 2
      is approximately 2x as fast as speed 1 but is similar in quality to the
      previous speed 1 configuration.
      
      Also slight change to behavior of FLAG_EARLY_TERMINATE to insure
      all reference frames get at least one rd test. Important for very low
      variance regions.
      
      WIP :- Added a new speed level with old speed 4 becoming speed 5.
      Speed 3 and 4 tradeoffs still WIP
      
      Change-Id: Ic7a38dd7b5b63ab1501f9352411972f480ac6264
      6253cc92
    • Jim Bankoski's avatar
      make use last partition consider motion · f1d3e5e4
      Jim Bankoski authored
      This commit causes use last partition to consider whether a 64x64 has
      motion that might make a new partitioning worth while.
      
      Change-Id: I3a57bedef4f3cd961fadbfa96651c206fa36da4a
      f1d3e5e4
    • Dmitry Kovalev's avatar
      BITSTREAM - RESTORING BILINEAR INTERPOLATION FILTER SUPPORT · 68a3e4a8
      Dmitry Kovalev authored
      Adding appropriate test vector vp90-2-06-bilinear.webm.
      
      Change-Id: Ia3bbf57318e0cc61a1b724fe751e3f9c7e11b337
      68a3e4a8
  2. 02 Oct, 2013 - 1 commit
  3. 01 Oct, 2013 - 4 commits
  4. 30 Sep, 2013 - 3 commits
    • Jingning Han's avatar
      Fix rectangular partition check in speed 1 · 195061fe
      Jingning Han authored
      Make encoder skip rectangular partition check in speed 1 and above,
      when early termination was triggered in partition split.
      Thanks Guillaume (gmartres@) for catching this issue.
      
      This change makes bus_cif at 2000kbps speed 1 runtime goes down from
      25612ms to 23438ms (about 9% speed-up), at the expense of -0.235%
      performance down.
      
      Change-Id: I98613fad081a261d30d5fa206f934ca70601c180
      195061fe
    • Paul Wilkins's avatar
      Improved auto_partition_range. · 65b93c7e
      Paul Wilkins authored
      The code now takes into account temporal and spatial
      information to determine the partition size range, but the
      frequency counts have been removed.
      
      The net effect is similar in quality but about 10% faster.
      
      Change-Id: I39a513fb79cec9177b73b2a7218f0da70963ae95
      65b93c7e
    • Paul Wilkins's avatar
      Alter Speed 3. · a76caa7f
      Paul Wilkins authored
      This patch deletes the variance based speed three partitioning.
      Speed 3 now uses the same partitioning method as speed 2
      but with some stricter conditions.
      
      The speed and quality are now somewhere between speeds 2 and 4
      whereas before it was worse in both than speed 4.
      
      Change-Id: Ia142e7007299d79db3ceee6ca8670540db6f7a41
      a76caa7f
  5. 27 Sep, 2013 - 4 commits
  6. 26 Sep, 2013 - 3 commits
  7. 25 Sep, 2013 - 4 commits
  8. 24 Sep, 2013 - 11 commits
  9. 23 Sep, 2013 - 3 commits
    • Yaowu Xu's avatar
      Correct 3 step search site initialziation · 838eae39
      Yaowu Xu authored
      39c7b01d accidently reverted the row/col initialization, which broke
      mv clamps, which is dependent on the sites for valid motion vector
      range. This commit fixed the issue.
      
      Change-Id: Ibcce0226e0360b1ef483fe760b2e33f1af4bf494
      838eae39
    • Jingning Han's avatar
      Enable per transformed block zero coeffs forcing · a517343c
      Jingning Han authored
      This commit enables forcing all coefficients zero per transformed
      block, when its rate-distortion cost is lower than regular coeff
      quantization.
      
      The overall performance improvement (including its parent patch on
      calculating rd cost per transformed block) at speed 1:
      derf:  0.298%
      yt:    0.452%
      hd:    0.741%
      stdhd: 0.006%
      
      Change-Id: I66005fe0fd7af192c3eba32e02fd6d77952accb5
      a517343c
    • Deb Mukherjee's avatar
      Improves constant qual, constrained qual turned on · d11221f4
      Deb Mukherjee authored
      Adds modeled functions to decide the qp for altref frames in constant q
      mode similar to other functions in use in bitrate mode.
      
      Also turns on the constrained quality mode (end-usage=2) option which
      was turned off before. Basic testing shows the mode works in principle,
      to cap bitrate to the target-bitrate specified, while allowing lower
      bitrate depending on the cq-level specified. The mode will need to be
      improved over time.
      
      Results for constant quality vs bitrate control mode:
      derfraw300/fullderfraw: +3.0% at constant quality over bitrate control.
      fullstdhdraw: +4.341%
      stdhdraw250: +5.361%
      
      Change-Id: If5027c9ec66c8e88d33e47062c6cb84a07b1cda9
      d11221f4
  10. 20 Sep, 2013 - 4 commits
    • Jingning Han's avatar
      Calculate rd cost per transformed block · 78fbb106
      Jingning Han authored
      This commit makes the rate-distortion optimization loop evaluate
      the rd costs of regular quantization and all zero coeffs, per
      transformed block. It improves speed 1 compression performance:
      
      derf: 0.245%
      yt:   0.515%
      
      For a large partition that consists multiple transformed blocks,
      this allows more flexibility to selectively force a portion of
      them coded as all zero coeffs, as well be continued in the next
      patches.
      
      Change-Id: I211518be4179747b57375696f017d1160cc91851
      78fbb106
    • Dmitry Kovalev's avatar
      Adding best_mv[2] array instead of two variables. · bb5e2bf8
      Dmitry Kovalev authored
      Change-Id: I584fe50f73879f6a72fada45714ef80893b6d549
      bb5e2bf8
    • Dmitry Kovalev's avatar
      Moving from int_mv to MV. · e51e7a0e
      Dmitry Kovalev authored
      Converting vp9_mv_bit_cost, mv_err_cost, and mvsad_err_cost
      functions for now.
      
      Change-Id: I60e3cc20daef773c2adf9a18e30bc85b1c2eb211
      e51e7a0e
    • Dmitry Kovalev's avatar
      Cleanup in vp9_init3smotion_compensation. · 39c7b01d
      Dmitry Kovalev authored
      Change-Id: Ie47f53e76bc9530475c8c6d24e9b7a5a0189de56
      39c7b01d