1. 24 Jun, 2014 1 commit
    • Yunqing Wang's avatar
      Reuse inter prediction result in real-time speed 6 · 0aae1000
      Yunqing Wang authored
      In real-time speed 6, no partition search is done. The inter
      prediction results got from picking mode can be reused in the
      following encoding process. A speed feature reuse_inter_pred_sby
      is added to only enable the resue in speed 6.
      
      This patch doesn't change encoding result. RTC set tests showed
      that the encoding speed gain is 2% - 5%.
      
      Change-Id: I3884780f64ef95dd8be10562926542528713b92c
      0aae1000
  2. 18 Jun, 2014 1 commit
    • Yunqing Wang's avatar
      Modify non-rd intra mode checking · 55834d42
      Yunqing Wang authored
      Speed 6 uses small tx size, namely 8x8. max_intra_bsize needs to
      be modified accordingly to ensure valid intra mode checking.
      Borg test on RTC set showed an overall PSNR gain of 0.335% in speed
      -6.
      
      This also changes speed -5 encoding by allowing DC_PRED checking
      for block32x32. Borg test on RTC set showed a slight PSNR gain of
      0.145%, and no noticeable speed change.
      
      Change-Id: I1502978d8fbe265b3bb235db0f9c35ba0703cd45
      55834d42
  3. 12 Jun, 2014 1 commit
    • Dmitry Kovalev's avatar
      Adding MV_SPEED_FEATURES struct. · 4ff1a614
      Dmitry Kovalev authored
      Moving all motion vector related speed parameters from SPEED_FEATURES to
      MV_SPEED_FEATURES.
      
      Change-Id: I3e9af0039c7162f8671878c5920bce3cb256a84e
      4ff1a614
  4. 09 Jun, 2014 1 commit
    • Yunqing Wang's avatar
      Use small transform size in non-rd real-time mode · b04d7668
      Yunqing Wang authored
      In non-rd real-time mode, choosing smaller transform size in
      encoding gives better video quality and good speed gain than
      choosing larger transform size. This patch set tx size search
      method to ALLOW_8X8, which is better than using 4x4 or other
      larger sizes.
      
      Borg tests on rtc set at speed 6 showed significant gain on quality.
      PSNR gain: 11.034% and SSIM gain: 15.466%.
      
      The speed gain is 5% - 12% for <720p clips, and 2% - 7% for
      720p clips.
      
      Change-Id: If4dc74ed2df359346b059f47fb73b4a0193ec548
      b04d7668
  5. 06 Jun, 2014 1 commit
  6. 03 Jun, 2014 1 commit
  7. 29 May, 2014 3 commits
  8. 22 May, 2014 1 commit
  9. 21 May, 2014 1 commit
    • Yaowu Xu's avatar
      Enable various thresholds of motion detection · 3bda7ec1
      Yaowu Xu authored
      This commit changed to enable the encoder to adjust motion dection
      speed threshold based on picture size. In addition, cpu-used 1 now
      does a partition search every other frame instead of every third
      frame for low resolution inputs.
      
      The change has no quality/speed impact for 720p and above. Test
      showed the change increase encoding time by between 3% to 6% for
      cpu-used 2 encodiong of 360p sequences. It also has a compression
      gain about .3%.
      
      For cpu-used 2, the change resolved some very disturbing visual
      artifacts in certain sequences when large block partitionings and
      transforms are used as a result of copying the partition from a
      previous frame.
      
      Change-Id: Ic7fd22508cdb811d4ca935655adbf20109286cfa
      3bda7ec1
  10. 19 May, 2014 1 commit
    • Yunqing Wang's avatar
      Add static-threshold skipping in non-rd mode · b91b146d
      Yunqing Wang authored
      Added a skipping test in non-rd inter-mode. After interpolation
      prediction step, the residuals are tested to see if they will be
      quantized to 0 based on modeling between spatial domain and
      frequency domain.
      
      Set static-thresh to 800 for >=720p and 300 for <720p, rtc set
      tests showed
      1. Speed 5, psnr: -0.514%; ssim: -1.748%;
         speedup on related clips: 5% -11%
      2. Speed 6, psbr: -0.628%; ssim: -1.637%;
         speedup on related clips: 4% - 9%
      
      Change-Id: I62fbf26bc043ecd2b584f255f1a4ee5ab52bfcf3
      b91b146d
  11. 23 Apr, 2014 1 commit
    • Jingning Han's avatar
      Chessboard pattern prediction filter type search in non-RD coding · 8969f7c8
      Jingning Han authored
      This commit introduces a chessboard pattern search for the prediction
      filter type search. It runs extensive search in alternate blocks and
      allows the rest blocks to refer coding decisions of their nearby
      neighbors.
      
      For pedestrian 1080p at 4000 kbps, the runtime of speed -5 goes down
      from 43990 ms to 42200 ms. The overall compression performance for
      RTC set is changed by -1.37%.
      
      Change-Id: Icfe220c49451cda796f0ca91d935c9ed01e56c9d
      8969f7c8
  12. 22 Apr, 2014 1 commit
    • Dmitry Kovalev's avatar
      Renaming "onyx" to "encoder". · ef003078
      Dmitry Kovalev authored
      Actual renames:
        vp9_onyx_if.c -> vp9_encoder.c
        vp9_onyx_int.h -> vp9_encoder.h
      
      Change-Id: I80532a80b118d0060518e6c6a0d640e3f411783c
      ef003078
  13. 21 Apr, 2014 1 commit
    • Yaowu Xu's avatar
      Allow full RD TX size search for GF/ALT at speed 2 · d928b34e
      Yaowu Xu authored
      For speed 3 and above, such search is only allowed at speed 3.
      The change helped cif and stdhd set by 1.2% and .7% in compression,
      but increased the encoding time by around 5%.
      
      Change-Id: Ifa4832327f1c1bef3decb032ceb769cbf50e059f
      d928b34e
  14. 18 Apr, 2014 1 commit
  15. 17 Apr, 2014 1 commit
  16. 14 Apr, 2014 4 commits
    • Dmitry Kovalev's avatar
      Using anonymous enum instead of macros. · c1981bdd
      Dmitry Kovalev authored
      Change-Id: I5ed360585dae2c9fea6c32058dbfb8ec07700677
      c1981bdd
    • Dmitry Kovalev's avatar
      Consistent mode names. · f3739f90
      Dmitry Kovalev authored
      Change-Id: Icb4851d98c951506fe5d73d8d5a8ac7e53fecfd0
      f3739f90
    • Paul Wilkins's avatar
      Remove vp9_ prefix on static inline function. · 19536d69
      Paul Wilkins authored
      This prefix reserved for global scope functions etc.
      
      Change-Id: I671cda2a63e01a40aae3d7407dd1bb4d338d709c
      19536d69
    • Paul Wilkins's avatar
      Speed 2 alternative balance. · 0639b5cf
      Paul Wilkins authored
      A previous path improved speed 2 quality a little but
      more extensive testing showed that it slowed encode
      by a few %.
      
      The change will have a similar effect for speed 3 but
      should not impact speeds 4+;
      
      This experiment should reverse that and give a speed
      up at the cost of a small quality loss.
      
      Borg results pending.
      
      Change-Id: I4493fc1541aaf44587f1a41ff219f7088da9252c
      0639b5cf
  17. 09 Apr, 2014 2 commits
    • Yaowu Xu's avatar
      Remove duplicate code · 585e01bf
      Yaowu Xu authored
      Change-Id: Ie26b6ca8de733a527f820b16148e7a2231073f0f
      585e01bf
    • Yunqing Wang's avatar
      Use source frame difference to make partition decision · 4e66293f
      Yunqing Wang authored
      Calculate the difference variance between last source frame and
      current source frame. The variance is calculated at 16x16 block
      level. The variances are compared to several thresholds to decide
      final partition sizes.
      
      An adaptive strategy is implemented to decide using
      SOURCE_VAR_BASED_PARTITION or FIXED_PARTITION based on motions
      in the video. The switching test is done once every
      search_type_check_frequency frames.
      
      The selection of source_var_thresh needs to be investigated
      further later.
      
      RTC set Borg test showed 0.424% overall psnr gain, and 0.357%
      ssim gain. For clips with large enough static area, the
      encoding speedup is around 2% to 15%.
      
      Change-Id: Id7d268f1d8cbca7fb8026aa4a53b3c77459dc156
      4e66293f
  18. 07 Apr, 2014 2 commits
  19. 04 Apr, 2014 1 commit
  20. 03 Apr, 2014 2 commits
  21. 02 Apr, 2014 4 commits
  22. 28 Mar, 2014 2 commits
    • Yaowu Xu's avatar
      Adjust rt speed steps. · 6fc20a84
      Yaowu Xu authored
      This commit adjusted the speed steps in rt mode to make the steps
      more evenly spaced on speed and quality, specifically:
      1. Merged 3 and 4 into one single step 3 and removed confilicting
      features.
      2. Move 8, 7, 6, 5 to be 7, 6, 5, 4 repsectively.
      
      Change-Id: I38d56d61531f3561d772aef953c411c8fb38c063
      6fc20a84
    • Dmitry Kovalev's avatar
      Adding vp9_speed_features.{h, c}. · 0a6d5547
      Dmitry Kovalev authored
      Change-Id: I7d9874da8ff78a2d7e0cf11073af9c30538bc9a6
      0a6d5547