1. 28 Nov, 2016 1 commit
    • Urvang Joshi's avatar
      Add a new intra prediction mode "smooth". · 6be4a54b
      Urvang Joshi authored
      This is added as part of ALT_INTRA experiment.
      
      This uses interpolation between top row and estimated bottom row; as
      well as left column and estimated right column to generate the
      predicted block.The interpolation is done using a predefined weight
      array.
      
      Based on experiments, the currently chosen weight array was created
      to represent a quadratic curve, but can be tuned further if needed.
      
      Improvement from baseline on Derf set:
      ALL Keyframes: 1.279%
      
      Improvement from existing ALT_INTRA:
      ALL Keyframes: 1.146%
      
      Change-Id: I12637fa1b91bd836f1c59b27d6caee2004acbdd4
      6be4a54b
  2. 23 Nov, 2016 1 commit
  3. 21 Nov, 2016 1 commit
    • iole moccagatta's avatar
      Add coef_interleave experiment · f25a4cf9
      iole moccagatta authored
      This commit adds an experiment to interleave the coding of transform
      coefficients from YUV planes.  The experiment can be enabled at config
      time by --enable-coef-interleave.
      
      Change-Id: Ifd92f9c367304bca9732f13fa026eb8996363677
      f25a4cf9
  4. 12 Nov, 2016 1 commit
  5. 11 Nov, 2016 2 commits
  6. 10 Nov, 2016 1 commit
  7. 08 Nov, 2016 4 commits
    • Angie Chiang's avatar
      Replace rate distortion sse skip by RD_STATS in rdopt.c · 7c2b7f25
      Angie Chiang authored
      This CL doesn't change any coding behavior.
      The functions modified in this CL include
      choose_smallest_tx_size()
      choose_largest_tx_size()
      choose_tx_size_type_from_rd()
      txfm_rd_in_plane()
      txfm_yrd()
      
      This change make the code cleaner and will facilitate rd_debug
      implementation
      
      Change-Id: I19b1b2384dce8b46b28d4c9baf80ff92998d05b6
      7c2b7f25
    • Jingning Han's avatar
      Add min_tx_size variable to recursive transform block partition system · e67b38aa
      Jingning Han authored
      Replace max_tx_size with min_tx_size for transform type decision.
      
      Change-Id: I64e39923a67903d52b381bd93eaac33b3400a201
      e67b38aa
    • Yushin Cho's avatar
      Fix the bug that PVQ commit broke dering · 48f84dbd
      Yushin Cho authored
      Since PVQ's max block size equals to the max transform size,
      daala's definition of OD_BSIZE_MAX was changed from 5 down to 4 to
      use AV1's max trasform size 32x32. However, dering also uses
      OD_BSIZE_MAX and assumes its value is 5, which caused dering
      not working.
      
      Change-Id: I9d82bb24adc7d57552a8e0a8a7e798e77d96fd4b
      48f84dbd
    • Yushin Cho's avatar
      Fix the bug that PVQ commit broke dering · 7d208d08
      Yushin Cho authored
      Since PVQ's max block size equals to the max transform size,
      daala's definition of OD_BSIZE_MAX was changed from 5 down to 4 to
      use AV1's max trasform size 32x32. However, dering also uses
      OD_BSIZE_MAX and assumes its value is 5, which caused dering
      not working.
      
      Change-Id: I9d82bb24adc7d57552a8e0a8a7e798e77d96fd4b
      7d208d08
  8. 07 Nov, 2016 1 commit
    • Yushin Cho's avatar
      New experiment: Perceptual Vector Quantization from Daala · 77bba8d3
      Yushin Cho authored
      PVQ replaces the scalar quantizer and coefficient coding with a new
      design originally developed in Daala. It currently depends on the
      Daala entropy coder although it could be adapted to work with another
      entropy coder if needed:
      ./configure --enable-experimental --enable-daala_ec --enable-pvq
      
      The version of PVQ in this commit is adapted from the following
      revision of Daala:
      https://github.com/xiph/daala/commit/fb51c1ade6a31b668a0157d89de8f0a4493162a8
      
      More information about PVQ:
      - https://people.xiph.org/~jm/daala/pvq_demo/
      - https://jmvalin.ca/papers/spie_pvq.pdf
      
      The following files are copied as-is from Daala with minimal
      adaptations, therefore we disable clang-format on those files
      to make it easier to synchronize the AV1 and Daala codebases in the future:
       av1/common/generic_code.c
       av1/common/generic_code.h
       av1/common/laplace_tables.c
       av1/common/partition.c
       av1/common/partition.h
       av1/common/pvq.c
       av1/common/pvq.h
       av1/common/state.c
       av1/common/state.h
       av1/common/zigzag.h
       av1/common/zigzag16.c
       av1/common/zigzag32.c
       av1/common/zigzag4.c
       av1/common/zigzag64.c
       av1/common/zigzag8.c
       av1/decoder/decint.h
       av1/decoder/generic_decoder.c
       av1/decoder/laplace_decoder.c
       av1/decoder/pvq_decoder.c
       av1/decoder/pvq_decoder.h
       av1/encoder/daala_compat_enc.c
       av1/encoder/encint.h
       av1/encoder/generic_encoder.c
       av1/encoder/laplace_encoder.c
       av1/encoder/pvq_encoder.c
       av1/encoder/pvq_encoder.h
      
      Known issues:
      - Lossless mode is not supported, '--lossless=1' will give the same result as
      '--end-usage=q --cq-level=1'.
      - High bit depth is not supported by PVQ.
      
      Change-Id: I1ae0d6517b87f4c1ccea944b2e12dc906979f25e
      77bba8d3
  9. 06 Nov, 2016 1 commit
    • Angie Chiang's avatar
      Add RD_STATS into MB_MODE_INFO · 9a44f5fb
      Angie Chiang authored
      With RD_STATS in MB_MODE_INFO, we will be able to compare the results
      from rate-distortion loop and the results from bitstream packing.
      
      Change-Id: If1dba7d87126577a6f369ac087d4517f7cebb0c5
      9a44f5fb
  10. 04 Nov, 2016 3 commits
    • Yushin Cho's avatar
      New experiment: Perceptual Vector Quantization from Daala · 09705fe7
      Yushin Cho authored
      PVQ replaces the scalar quantizer and coefficient coding with a new
      design originally developed in Daala. It currently depends on the
      Daala entropy coder although it could be adapted to work with another
      entropy coder if needed:
      ./configure --enable-experimental --enable-daala_ec --enable-pvq
      
      The version of PVQ in this commit is adapted from the following
      revision of Daala:
      https://github.com/xiph/daala/commit/fb51c1ade6a31b668a0157d89de8f0a4493162a8
      
      More information about PVQ:
      - https://people.xiph.org/~jm/daala/pvq_demo/
      - https://jmvalin.ca/papers/spie_pvq.pdf
      
      The following files are copied as-is from Daala with minimal
      adaptations, therefore we disable clang-format on those files
      to make it easier to synchronize the AV1 and Daala codebases in the future:
       av1/common/generic_code.c
       av1/common/generic_code.h
       av1/common/laplace_tables.c
       av1/common/partition.c
       av1/common/partition.h
       av1/common/pvq.c
       av1/common/pvq.h
       av1/common/state.c
       av1/common/state.h
       av1/common/zigzag.h
       av1/common/zigzag16.c
       av1/common/zigzag32.c
       av1/common/zigzag4.c
       av1/common/zigzag64.c
       av1/common/zigzag8.c
       av1/decoder/decint.h
       av1/decoder/generic_decoder.c
       av1/decoder/laplace_decoder.c
       av1/decoder/pvq_decoder.c
       av1/decoder/pvq_decoder.h
       av1/encoder/daala_compat_enc.c
       av1/encoder/encint.h
       av1/encoder/generic_encoder.c
       av1/encoder/laplace_encoder.c
       av1/encoder/pvq_encoder.c
       av1/encoder/pvq_encoder.h
      
      Known issues:
      - Lossless mode is not supported, '--lossless=1' will give the same result as
      '--end-usage=q --cq-level=1'.
      - High bit depth is not supported by PVQ.
      
      Change-Id: I1ae0d6517b87f4c1ccea944b2e12dc906979f25e
      09705fe7
    • Angie Chiang's avatar
      Separate coefficient cost of U/V planes in write_modes_b() · 75f45814
      Angie Chiang authored
      Change-Id: Ie3082db5b0fead8c322b2aeede4eff7cd723ea12
      75f45814
    • Angie Chiang's avatar
      Add token cost comparison in write_modes_b() · d402282f
      Angie Chiang authored
      This is just partial implementation
      Compare token cost of pack_mb_tokens/pack_txb_tokens with token cost
      from rate-distortion loop. If there is any difference, dump out mode
      info.
      
      Change-Id: I46b373ee2522c5047f799f36baf7cec5fbc06f06
      d402282f
  11. 31 Oct, 2016 1 commit
  12. 27 Oct, 2016 1 commit
  13. 26 Oct, 2016 1 commit
  14. 21 Oct, 2016 2 commits
  15. 20 Oct, 2016 2 commits
  16. 19 Oct, 2016 2 commits
  17. 14 Oct, 2016 1 commit
    • Urvang Joshi's avatar
      Wrap palette code inside CONFIG_PALETTE flag. · b100db7c
      Urvang Joshi authored
      This flag was already added to aomedia/master, so bringing it back to
      webm/nextgenv2, as part of an effort to get the two codebases in sync.
      
      Change-Id: I2b933a6a160e4210d1411a9e7978149eb8553205
      b100db7c
  18. 13 Oct, 2016 1 commit
    • Yue Chen's avatar
      Renamings for OBMC experiment · cb60b185
      Yue Chen authored
      To get ready for pulling AV1 to nextgenv2
      Replace the experimental flag by MOTION_VAR. Rename major variables.
      
      Change-Id: If6cf4f37b9319c46d8f90df551cc7295d66ca205
      cb60b185
  19. 02 Oct, 2016 1 commit
    • Debargha Mukherjee's avatar
      Further changes to new-quant tables · 3c42c096
      Debargha Mukherjee authored
      Refactor to streamline the number of profiles needed, in
      preparation for the next steps.
      
      NO change in performance.
      
      Change-Id: I753b89299897857f3c250c316b4cdc4fedcb90e8
      3c42c096
  20. 29 Sep, 2016 1 commit
    • Yue Chen's avatar
      Fix unit test failure for RECT_TX + VAR_TX · 49587a77
      Yue Chen authored
      Disable rect_tx because we only support 4x4 Walsh-Hadamard transform
      in lossless mode.
      
      Fixes failure in ./test_libaom --gtest_filter=*Large*ScreencastQ0/1
      Configuration: --enable-experimental --enable-var-tx --enable-rect-tx
       --enable-ref-mv --enable-ext_intra --enable-ext_tx --enable-debug
       --disable-optimizations
      
      Change-Id: Ib6b3494c7dcf7182f1cab9b138388d054851a23d
      49587a77
  21. 28 Sep, 2016 1 commit
  22. 26 Sep, 2016 3 commits
  23. 22 Sep, 2016 1 commit
  24. 15 Sep, 2016 2 commits
  25. 09 Sep, 2016 1 commit
    • James Zern's avatar
      s/INTERP_FILTER/InterpFilter/ · 7b9407a8
      James Zern authored
      this matches style guidelines and stabilizes successive runs of
      clang-format across the tree. remaining types should be address in
      successive commits.
      
      Change-Id: I6ad3f69cf0a22cb9a9b895b272195f891f71170f
      7b9407a8
  26. 05 Sep, 2016 1 commit
    • Debargha Mukherjee's avatar
      Enable rectangular transforms for UV · 2f12340f
      Debargha Mukherjee authored
      Uses an array to map block sizes, y tx sizes, and subsampling
      factors to various transform sizes for UV.
      
      Results improve by 0.1-0.2%
      
      Change-Id: Icb58fd96bc7c01a72cbf1332fe2be4d55a0feedc
      2f12340f
  27. 02 Sep, 2016 1 commit
  28. 01 Sep, 2016 1 commit