1. 29 Jul, 2014 1 commit
    • Jingning Han's avatar
      Use frame index directly in get_chessboard_index · c36f78b0
      Jingning Han authored
      The get_chessboard_index() used to call the entire VP9_COMMON
      struct pointer to retrieve the chessboard pattern index. This cl
      makes it call the frame index directly.
      
      Change-Id: I3cad9d209ea2e77a358085a04fe1ff0ddec5ba03
      c36f78b0
  2. 24 Jul, 2014 1 commit
  3. 21 Jul, 2014 1 commit
  4. 15 Jul, 2014 1 commit
  5. 14 Jul, 2014 1 commit
    • Minghai Shang's avatar
      [spatial svc]Implement alt reference frames · e899859c
      Minghai Shang authored
      All changes are for spatial svc only.
      1. Enable encoding hidden frames in each layer and use alt reference idex to reference the hidden frame in each layer
      2. Use golden reference idx for spatial reference
      3. For those layers that don't have hidden frames (caused by lack of frame buffers), reference a hidden frame in lower layers
      4. Add "auto-alt-refs" in svc options
      Change-Id: Idf27d1fd2fb5f3ffd9e86d2119235e3dad36c178
      e899859c
  6. 09 Jul, 2014 1 commit
    • Yunqing Wang's avatar
      Remove repetitive code in mcomp.c · a581da21
      Yunqing Wang authored
      Deleted vp9_find_best_sub_pixel_comp_tree(), and combined it in
      vp9_find_best_sub_pixel_tree().
      
      Change-Id: Ifb25763c8b19822df5537cc1daa76ce88dc3b056
      a581da21
  7. 02 Jul, 2014 2 commits
    • Alex Converse's avatar
      Split vp9_rdopt into vp9_rdopt and vp9_rd. · 03c276ea
      Alex Converse authored
      vp9_rdopt is for making rd optimal mode decisions. vp9_rd is for all
      other rd related routines. Anything used outside of making an rd optimal
      decision belongs in rd.
      
      Change-Id: I772a3073f7588bdf139f551fb9810b6864d8e64b
      03c276ea
    • Paul Wilkins's avatar
      Multi-arf: Add code to turn it on and off. · 88307723
      Paul Wilkins authored
      Add test code to turn multi-arf on and off depending
      on group length and zero motion.
      
      Changes to active max group length for mult-arf.
      
      Fund second arf only from normal frame bits.
      
      Change-Id: I920287fac1c886428c15a39f731a25d07c2b796c
      88307723
  8. 01 Jul, 2014 1 commit
  9. 30 Jun, 2014 1 commit
    • Yunqing Wang's avatar
      Decide the partitioning threshold from the variance histogram · 9d41313e
      Yunqing Wang authored
      Before encoding a frame, calculate and store each 16x16 block's
      variance of source difference between last and current frame.
      Find partitioning threshold T for the frame from its variance
      histogram, and then use T to make partition decisions.
      
      Comparing with fixed 16x16 partitioning, rtc set test showed an
      overall psnr gain of 3.242%, and ssim gain of 3.751%. The best
      psnr gain is 8.653%.
      
      The overall encoding speed didn't change much. It got faster for
      some clips(for example, 12% speedup for vidyo1), and a little
      slower for others.
      
      Also, a minor modification was made in datarate unit test.
      
      Change-Id: Ie290743aa3814e83607b93831b667a2a49d0932c
      9d41313e
  10. 26 Jun, 2014 1 commit
    • Pengchong Jin's avatar
      Skip the partition search for the frame with no motion · 12861260
      Pengchong Jin authored
      This patch allows the encoder to skip the partition search for the
      frame if it is an inter frame and only zero motion vectors have
      been detected in the first pass. The partition size is directly
      assigned according to the difference variance.
      
      Borg tests show overall little performance changes in term of PSNR
      (derf -0.027%, yt 0.152%, hd 0.078%, stdhd 0%). The worst case of
      PSNR loss is -0.514% from yt. The best PSNR gain is 4.293% from yt.
      The second pass encoding speedup for slideshow clips is 15%-40%.
      
      Change-Id: I881f347d286553ee5594a9ea09ba1a61ac684045
      12861260
  11. 24 Jun, 2014 4 commits
    • Minghai Shang's avatar
      [spatial svc]Implement lag in frames for spatial svc · 277338f7
      Minghai Shang authored
      Change-Id: I930dced169c9d53f8044d2754a04332138347409
      277338f7
    • Paul Wilkins's avatar
      Further dual arf changes: multi_arf_allowed. · 9aca602e
      Paul Wilkins authored
      Add multi_arf_allowed flag.
      Re-initialize buffer indices every kf.
      Add some const indicators.
      
      Change-Id: If86c39153517c427182691d2d4d4b7e90594be71
      9aca602e
    • Paul Wilkins's avatar
      Clean out old CONFIG_MULTIPLE_ARF code. · 26110225
      Paul Wilkins authored
      Remove the old experimental multi arf code that was under
      the flag CONFIG_MULTIPLE_ARF.
      
      Change-Id: Ib24865abc11691d6ac8cb0434ada1da674368a61
      26110225
    • Paul Wilkins's avatar
      Experiment for mid group second arf. · 2e430cba
      Paul Wilkins authored
      This patch implements a mechanism for inserting a second
      arf at the mid position of arf groups.
      
      It is currently disabled by default using the flag multi_arf_enabled.
      
      Results are currently down somewhat in initial testing if
      multi-arf is enabled. Most of the loss is attributable to the
      fact that code to preserve the previous golden frame
      (in the arf buffer) in cases where we are coding an overlay
      frame, is currently disabled in the multi-arf case.
      
      Change-Id: I1d777318ca09f147db2e8c86d7315fe86168c865
      2e430cba
  12. 20 Jun, 2014 1 commit
  13. 13 Jun, 2014 2 commits
  14. 12 Jun, 2014 2 commits
  15. 06 Jun, 2014 1 commit
  16. 05 Jun, 2014 1 commit
  17. 03 Jun, 2014 2 commits
  18. 19 May, 2014 2 commits
    • 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
    • Paul Wilkins's avatar
      Cosmetic clean up. · f07a96fd
      Paul Wilkins authored
      Use type TWO_PASS instead of "struct twopass".
      
      Change-Id: I9d92920893bd436537b2ca19e9c9d355cca56c7c
      f07a96fd
  19. 16 May, 2014 1 commit
  20. 14 May, 2014 1 commit
  21. 01 May, 2014 2 commits
  22. 30 Apr, 2014 3 commits
  23. 29 Apr, 2014 2 commits
  24. 24 Apr, 2014 1 commit
  25. 22 Apr, 2014 2 commits
    • 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
    • Adrian Grange's avatar
      Force ARNR filtering to be centered on the ARF frame · 59e733ca
      Adrian Grange authored
      ARNR filtering is now forced to be centered on the ARF
      frame and the other two options have been removed.
      
      The other modes of constructing the ARNR frame were
      not used and there does not seem to be any good
      reason to maintain them.
      
      This is purely an encoder-side change.
      
      Change-Id: Ic772636d23f280752973852b9740083532a49de2
      59e733ca
  26. 21 Apr, 2014 1 commit
    • Paul Wilkins's avatar
      Change naming of end_usage parameter. · 4c7af859
      Paul Wilkins authored
      The end_useage parameter  is confusingly named since it
      now actually defines the rate control method used.
      
      Change-Id: I98912caabfe556b7af0b939a645d1336409e4d71
      4c7af859
  27. 18 Apr, 2014 1 commit
    • Minghai Shang's avatar
      Bug fix for svc first pass rate control. · 1ec44505
      Minghai Shang authored
      1. We didn't scale source image in lower layers so that
      the stats are incorrect.
      2. We didn't extend borders for re-constructed image.
      
      Change-Id: Ia8d7bafbdb695ffa7f504e171f9449812e7bb0a3
      1ec44505