1. 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:
      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:
      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
  2. 04 Nov, 2016 4 commits
  3. 03 Nov, 2016 1 commit
  4. 02 Nov, 2016 1 commit
    • Jingning Han's avatar
      Make recursive txfm encoding process support rectangular tx_size · a9336328
      Jingning Han authored
      This commit makes the encoding process of the recursive transform
      block partition support both rectangular and square transform block
      sizes as the starting point. If the coding block size is rectangular,
      it would allow the transform block size to start from the largest
      rectangular transform size, and recursive parse to the selected
      coding sizes.
      Change-Id: I576628b9166565bada6a918f0a1e67849dfef4cd
  5. 01 Nov, 2016 1 commit
  6. 31 Oct, 2016 1 commit
  7. 30 Oct, 2016 1 commit
    • Deng's avatar
      simp-mv-pred integration with ref-mv · ca8d24d4
      Deng authored
      This commit adds simp-mv-pred experiment. The experiment is to work on
      top of ref-mv experiment to save memory bandwidth and reduce the size
      of line buffer needed in ref-mv experiment.
      When compared to ref-mv, this experiment showed:
      low-delay BDR gain: 0.03%
      High-delay BDR gain: 0.01%
      memory/memory bandwidth saving: 40%
      local memory/gate count saving: 20%
      Change-Id: Ic4006e041fc58ede411da83d0d730c464ebe1749
  8. 28 Oct, 2016 1 commit
  9. 27 Oct, 2016 1 commit
  10. 26 Oct, 2016 3 commits
    • Sarah Parker's avatar
      Cosmetic fixes in global motion experiment · b3dab498
      Sarah Parker authored
      These are in response to post-commit suggestions made on
      Change-Id: Id29afa158471bd6259bd07ac00812a50bfd0a709
    • Jingning Han's avatar
      Add depth to tx_size mapper to bit-stream coding · 4e1737af
      Jingning Han authored
      It serves as a helper function to integrate various transform coding
      Change-Id: I64e7d0c88ea10137fa1ff1072d865eb0054c2a25
    • Sarah Parker's avatar
      Revise precision clamping in GM param refinement · f41a06b2
      Sarah Parker authored
      This ensures that the parameter refinement never
      results in a motion parameter value that exceeds the number
      of alloted bits in the bitstream. It accounts for all of
      the necessary precision shifts required to make global motion compatible
      with the warped motion library. It also accounts for the
      zero-centering that is applied to global motion parameters that are
      naturally centered around one.
      Change-Id: If429c93bb90b66fdff0edc07ecd9fc078077d303
  11. 25 Oct, 2016 2 commits
  12. 24 Oct, 2016 2 commits
    • Yue Chen's avatar
      Move small fixes and refactoring for obmc pred from AV1 · 894fcceb
      Yue Chen authored
      Covering commits 1c263e03 and 79d8a07d from AOM codebase
      Change-Id: I6400e5f99bbb2ef6584ef232d465e520230c06e0
    • David Barker's avatar
      Fix a bug when combining new-quant + supertx · d7d78c83
      David Barker authored
      Previously, we assumed that av1_init_plane_quantizers is always called with
      segment_id == xd->mi[0]->mbmi.segment_id (and use the latter to derive the value
      of 'qindex' to use in the quantizer). But this is no longer true when supertx
      is enabled. This patch instead remembers the value of 'qindex' derived from
      the latest call to av1_init_plane_quantizers and uses that directly.
      Change-Id: Ifa1c5bf74cad29942ff79b88ca92c231bc07f336
  13. 22 Oct, 2016 2 commits
  14. 21 Oct, 2016 4 commits
    • Jingning Han's avatar
      Allow frame level tx_mode switch · 9777afc3
      Jingning Han authored
      Check the encoding statistics. If all the coding blocks use the
      max transform size, skip transform size coding in the frame header.
      Change-Id: I31cb16314e87f945d7e95a34a90a5536b3ed82d5
    • Jingning Han's avatar
      Separate intra and inter tx_size counting · dc9ad312
      Jingning Han authored
      Skip counting the inter transform block size distribution for
      the intra transform block size coding.
      Change-Id: Ifad9d843f57d069d0619a54d66ca18101e1b69f1
    • Angie Chiang's avatar
      Pass AV1_COMMON into get_scan · ff6d8905
      Angie Chiang authored
      This CL will facilitate adapt_scan experiment.
      In adapt_scan experiment, dynamic scan order will be stored in
      Change-Id: I4763ea931b5e1af54d4f173971befeb01a4db335
    • Jingning Han's avatar
      Unify set_contexts() function for encoder and decoder · a6923f7f
      Jingning Han authored
      Remove the separate implementations of set_contexts() in encoder
      and decoder.
      Change-Id: I9f6e9b075532faae0f74f885d9443589254258a7
  15. 20 Oct, 2016 2 commits
    • Sarah Parker's avatar
      Fix logical vs bitwise & bug · ea16b689
      Sarah Parker authored
      This was causing one of the global motion parameters to not
      be centered at 0.
      Change-Id: Ide32e3d177bed5613ab768a19b4e33b37692463a
    • hui su's avatar
      Seperate FILTER_INTRA from EXT_INTRA experiment · 5db9743f
      hui su authored
      Prepare for the av1/nextgenv2 merge.
      Coding gain (%):
                     lowres     midres
      ext-intra       0.69       0.97
      filter-intra    0.67       0.83
      both            1.05       1.48
      Change-Id: Ia24d6fafb3e484c4f92192e0b7eee5e39f4f4ee6
  16. 19 Oct, 2016 6 commits
    • Thomas Davies's avatar
      Step size and arithmetic coding for delta quantization. · f693610a
      Thomas Davies authored
      Example performance: 1.8% bit rate savings using
      the AQ test mode aq-mode=4 :
      ./aomenc --codec=av1 --ivf --tile-columns=1 --tile-rows=1 \
                       --kf-max-dist=1000 --kf-min-dist=1000 --cpu-used=0 \
                       --passes=1 --threads=1 --lag-in-frames=0 \
                       --end-usage=q --limit=600 --cq-level=42 \
                       --aq-mode=4 --error-resilient=1 out.bits FourPeople_1280x720_60.y4m
      Change-Id: Iba01cf2732a57f3c27481ac2a3c8fc37bb9e5533
    • Arild Fuldseth's avatar
      Support for delta-q at superblock level · 07441165
      Arild Fuldseth authored
      Change-Id: I4128af44776d1f361bddc1fdffb75ed2224dbfa5
    • Peter de Rivaz's avatar
      Fix for var_tx context update · 74d0ad84
      Peter de Rivaz authored
      The tx_partition_set_contexts function changes tx_size even
      for blocks coded with a rectangular transform.
      This causes an internal rd inconsistency when using all of
      Change-Id: Ia45d4a8893b0961534219bb96d9652719038c7a1
    • Urvang Joshi's avatar
      Fix warnings reported by -Wshadow: Part2b: more from av1 directory · 368fbc95
      Urvang Joshi authored
      From code only part of nextgenv2 (and not aomedia)
      Change-Id: I21f7478a59d525dff23747efe5238ded16b743d2
    • Urvang Joshi's avatar
      Fix warnings reported by -Wshadow: Part2: av1 directory · 454280da
      Urvang Joshi authored
      While we are at it:
      - Rename some variables to more meaningful names
      - Reuse some common consts from a header instead of redefining them.
      Cherry-picked from aomedia/master: 863b0499
      Change-Id: Ida5de713156dc0126a27f90fdd36d29a398a3c88
    • Urvang Joshi's avatar
      Code cleanup: mainly rd_pick_partition and methods called from there. · 52648448
      Urvang Joshi authored
      - Const correctness
      - Refactoring
      - Make variables local when possible etc
      - Remove -Wcast-qual to allow explicitly casting away const.
      Cherry-picked from aomedia/master: c27fcccc
      And then a number of more const correctness changes to make sure other
      experiments build OK.
      Change-Id: I77c18d99d21218fbdc9b186d7ed3792dc401a0a0
  17. 18 Oct, 2016 3 commits
  18. 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
  19. 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
  20. 12 Oct, 2016 1 commit
  21. 11 Oct, 2016 1 commit
    • Debargha Mukherjee's avatar
      Refactor expand dry_run types to return coef rate · ceebb701
      Debargha Mukherjee authored
      Adds the functionality to return the rate cost due to
      coefficients without doing full search of all modes.
      This will be subsequently used in various experiments,
      including in new_quant experiment to search quantization
      profiles at the superblock level without repeating the
      full mode/partition search.
      Change-Id: I4aad3f3f0c8b8dfdea38f8f4f094a98283f47f08