1. 24 Jan, 2018 2 commits
    • James Zern's avatar
      vpx_codec_enc_init_multi: fix segfault w/vp9 · 81d66e2c
      James Zern authored
      vp9 does not support multi-res encoding, the request should not crash.
      
      + encode_api_test: unconditionally expose multi-res test
      
      vpx_codec_enc_init_multi should fail independent of
      CONFIG_MULTI_RES_ENCODING if not for the same reason.
      
      Change-Id: I44fc58ef70ee4e0e482cb6a5736885f4cb2a8517
      (cherry picked from commit 004fb914)
      81d66e2c
    • Jerome Jiang's avatar
      Fix crash invalid params for vp8 multres. Add test. · 9f36419b
      Jerome Jiang authored
      Fix is from the patch in the issue.
      Release memories allocated before early exit.
      
      BUG=webm:1482
      
      Change-Id: I64952af99c58241496e03fa55da09fd129a07c77
      (cherry picked from commit 5b6ae020)
      9f36419b
  2. 17 Jan, 2018 2 commits
  3. 11 Dec, 2017 1 commit
    • Jerome Jiang's avatar
      vp9 svc: Allow denoising next to highest resolution. · c1e511fd
      Jerome Jiang authored
      Denoise 2 spatial layes at most.
      
      Add noise sensitivity level 2 for vp9 such that applications can control
      whether to denoise the second highest spatial layer.
      
      Add tests to cover this case.
      
      Change-Id: Ic327d14b29adeba3f0dae547629f43b98d22997f
      c1e511fd
  4. 06 Dec, 2017 1 commit
  5. 30 Nov, 2017 1 commit
    • James Zern's avatar
      decouple spatial-svc from encoder abi · 5044779e
      James Zern authored
      this is only meant for testing. along with --enable-experimental
      --enable-spatial-svc require VPX_TEST_SPATIAL_SVC to be defined rather
      than bumping the encoder ABI.
      
      Change-Id: I7f34d9f60300fa31ccf22e1a4aa619392c391b2e
      5044779e
  6. 17 Nov, 2017 1 commit
  7. 13 Nov, 2017 2 commits
    • Jerome Jiang's avatar
      vp9 svc: Change conditions on VPX_ENCODER_ABI_VERSION. · 0d2555bd
      Jerome Jiang authored
      VPX_ENCODER_ABI_VERSION was bumped up in 93e83f.
      
      Change-Id: Id5707f9f9db56fa96549bc8f54e1cfa04e7fa4cd
      0d2555bd
    • paulwilkins's avatar
      New content type to improve grain retention. · a73cee28
      paulwilkins authored
      For new VP9 only content type adjust  the rate distortion and ARF
      filter based on the relative spatial variance of the source and
      reconstruction.
      
      In regards to the RD loop the method favors modes where the
      reconstruction variance is similar to the source variance. However it
      is currently only applied to regions where the source variance is quite
      low.
      
      For very low variance blocks it applies a further bias against intra
      coding and large prediction block sizes (the later in particular limit
      the usefulness of the loop filter).
      
      The final part of this change is to lower the strength of the ARF
      filter for blocks where the source has very low spatial variance, to
      encourage some low amplitude texture or noise to pass through
      the filter.
      
      This change improves the retention of film grain and fine noise /
      texture in spatially flat regions, but as expected causes a significant
      drop in PSNR on many clips. This is to be expected because similar
      but misaligned noise or texture will give a lower PSNR than a flat
      noise free reconstruction. However, it is worth noting that most clips
      show a strong gain in FAST SSIM.
      
      The features are enabled on the vpxenc command line by setting
      --tune-content=film.
      
      VPX_ENCODER_ABI_VERSION bumped for this change and cvbr.
      
      Change-Id: I26a4e4edfa3dc5cacead82fa701fe7a9118ccd0a
      a73cee28
  8. 08 Nov, 2017 1 commit
    • paulwilkins's avatar
      CVBR command line option. · 93e83fd7
      paulwilkins authored
      Added command line control of Corpus VBR.
      
      The new corpus vbr mode is a variant of standard
      VBR (end-usage=0) where the complexity distribution
      mid point is passed in rather than calculated for a specific
      clip or chunk.
      
      The new variant is enabled by setting a new command line
      parameter --corpus-complexity to a zero value. Omitting
      this parameter or setting it to 0 will cause the codec to use
      standard vbr mode.
      
      The correct value for a given corpus needs to be derived
      experimentally using a training set such that the average
      rate for the corpus is close to the target value.
      
      For example our using our low res test set with upper and lower
      vbr limits of 50%-150% and a corpus complexity value of 650
      gives a similar average data rate across the set to using standard
      vbr. However, with the corpus mode easier clips will be allocated
      fewer bits and harder clips more bits rather than having the same
      rate target for all.
      
      Change-Id: I03f0fc8c6fb0ee32dc03720fea6a3f1949118589
      93e83fd7
  9. 10 Oct, 2017 1 commit
  10. 05 Oct, 2017 1 commit
  11. 28 Sep, 2017 1 commit
  12. 06 Jul, 2017 2 commits
  13. 10 May, 2017 1 commit
  14. 24 Apr, 2017 1 commit
    • Yunqing Wang's avatar
      Make the row based multi-threaded encoder deterministic · 10a497bd
      Yunqing Wang authored
      This patch followed allow_exhaustive_searches feature modification and
      continued to modify the encoder to achieve the determinism in the row
      based multi-threaded encoding. While row-mt = 1 and using multiple
      threads, the adaptive feature in encoder was disabled, which gave
      BDRate gain(at speed 1, -0.6% ~ -0.7%; at speed 2, -0.46% ~ -0.59%),
      but some encoder speed losses(7% ~ 10% at speed 1 and 3% ~ 6% at
      speed 2). These speed losses were acceptable considering the speed
      gains obtained from row-mt.
      
      Change-Id: I60d87a25346ebc487a864b57d559f560b7e398bb
      10a497bd
  15. 06 Apr, 2017 1 commit
    • Yunqing Wang's avatar
      VP9 motion vector unit test · 1aa46abb
      Yunqing Wang authored
      To prevent the motion vector out of range bug, added a motion vector unit
      test in VP9. In the 4k video encoding, always forced to use extreme motion
      vectors and also encouraged to use INTER modes. In the decoding, checked if
      the motion vector was valid, and also checked the encoder/decoder mismatch.
      
      The tests showed that this unit test could reveal the issue we saw before.
      
      Change-Id: I0a880bd847dad8a13f7fd2012faf6868b02fa3b4
      1aa46abb
  16. 16 Mar, 2017 1 commit
    • Marco's avatar
      vpx_codec.h: include vpx/*.h -> ./*.h · ba8bfaaf
      Marco authored
      This matches the other includes and also fixes a compile issue in
      chromium.
      
      Change-Id: I45e00a1454f7ed948aa3b96b04cc5946b1d02985
      ba8bfaaf
  17. 07 Mar, 2017 1 commit
  18. 01 Mar, 2017 1 commit
    • Chris Cunningham's avatar
      VPX_CODEC_CAP_HIGHBITDEPTH for decoder interface · bcd0c49a
      Chris Cunningham authored
      Moves the def from vpx_encoder.h -> vpx_codec.h. The defined value
      is changed as part of this move.
      
      Adds the value to decoder capabilities when CONFIG_VP9_HIGHBITDEPTH.
      
      Change-Id: I7d61fc821cda29f1e32bb9b2b9ffd3d83966e419
      bcd0c49a
  19. 27 Feb, 2017 1 commit
    • Vignesh Venkatasubramanian's avatar
      vp9: Rename new_mt to row_mt · 58816014
      Vignesh Venkatasubramanian authored
      new_mt is a very generic name that will get obsolete soon enough.
      Since this is exposed as a codec control, renaming it to row_mt to
      signify row level paralellism. Also renaming the ETHREAD_BIT_MATCH
      codec control to ROW_MT_BIT_EXACT.
      
      Change-Id: Ic7872d78bb3b12fb4cf92ba028ec8e08eb3a9558
      58816014
  20. 13 Feb, 2017 1 commit
    • Yunqing Wang's avatar
      The bitstream bit match test in multi-threaded encoder · 318ca076
      Yunqing Wang authored
      While the new-mt mode is enabled(namely, allowing to use row-based
      multi-threading in encoder), several speed features that adaptively
      adjust encoding parameters during encoding would cause mismatch
      between single-thread encoded bitstream and multi-thread encoded
      bitstream. This patch provides a set_control API to disable these
      features, so that the bit match bitstream is obtained in the unit
      test.
      
      Change-Id: Ie9868bafdfe196296d1dd29e0dca517f6a9a4d60
      318ca076
  21. 24 Jan, 2017 1 commit
  22. 12 Jan, 2017 1 commit
  23. 28 Nov, 2016 1 commit
    • Jim Bankoski's avatar
      svc_test: fix two warnings · 27b5cc31
      Jim Bankoski authored
      Use of possibly uninitialized variable and missing test initializer.
      
      Change-Id: I2192c81c39ef4239cc11a309850c0ee8781ef17e
      27b5cc31
  24. 03 Nov, 2016 1 commit
  25. 31 Oct, 2016 1 commit
  26. 28 Oct, 2016 1 commit
    • Marco's avatar
      vp9: Updates to SVC sample encoder. · a8fdb392
      Marco authored
      Allow for passing in the layer bitrates at command line.
      Fix to allow passing in bitrate for each spatial-temporal layer.
      
      Change to some default values for 1 pass cbr mode:
      spatial scale and qp-max/min.
      
      Small fixes to some build warnings.
      
      Change-Id: I3f9a776262712480a6570bb863a835b2fc49935a
      a8fdb392
  27. 19 Oct, 2016 1 commit
    • Marco's avatar
      vp8: Add control for gf boost for 1 pass cbr. · ff38b8df
      Marco authored
      Control already exists for vp9, adding it to vp8.
      Usage is only when error_resilient is off.
      Added a datarate unittest for non-zero boost.
      
      Change-Id: I4296055ebe2f4f048e8210f344531f6486ac9e35
      ff38b8df
  28. 21 Sep, 2016 1 commit
    • James Zern's avatar
      vp8: remove VP8_SET_DBG* control support · 3f725095
      James Zern authored
      the --enable-postproc-visualizer configure option remains as a no-op as
      do the control names and values for compatibility
      + remove the corresponding debug flags from vpxdec: --pp-*
      
      Change-Id: I4a001cd9962b59560d7d6bda6272d4ff32b8d37c
      3f725095
  29. 10 Sep, 2016 1 commit
  30. 24 Aug, 2016 1 commit
    • Yury Gitman's avatar
      Add --alt-ref-aq=<int> option · d7c20079
      Yury Gitman authored
      In the future this option will activate adaptive quantization special
      for altref frames. Encoder will  create the adaptive quantization map
      on the basis of lookahead buffers similarity which is the estimate of
      the future motion compensation performance.
      
      Change-Id: Ia0088b3babb0f9a4899c79d8d819947ba5a03df2
      d7c20079
  31. 25 Jul, 2016 1 commit
  32. 22 Jul, 2016 1 commit
  33. 29 Jun, 2016 1 commit
  34. 24 Jun, 2016 2 commits
  35. 18 Jun, 2016 1 commit
    • James Zern's avatar
      remove vp10 · 67edc5e8
      James Zern authored
      development has moved to the nextgenv2 branch and a snapshot from here
      was used to seed aomedia
      
      BUG=b/29457125
      
      Change-Id: Iedaca11ec7870fb3a4e50b2c9ea0c2b056a0d3c0
      67edc5e8