1. 14 Sep, 2016 4 commits
    • Nathan E. Egge's avatar
      Update class_cdf table once per frame. · 98712c08
      Nathan E. Egge authored
      Move computing the class_cdf table per coded mv class symbol to
       computing it only when the probabilities are updated.
      
      Change-Id: I6c4a9075817e8ba2e251f0e82436995f08f2ec5c
      98712c08
    • Nathan E. Egge's avatar
      Update joint_cdf table once per frame. · 924f7eea
      Nathan E. Egge authored
      Move computing the joint_cdf table per coded mv joint symbol to
       computing it only when the probabilities are updated.
      
      Change-Id: If5d195f70e6fad7b60f69606c8386ad5e69657d2
      924f7eea
    • Nathan E. Egge's avatar
      Update inter_mode_cdf tables once per frame. · c5579ea9
      Nathan E. Egge authored
      Move computing the inter_mode_cdf tables per coded inter mode symbol to
       computing them only when the probabilities are updated.
      
      Change-Id: I7a7b059ee75723cb6f278ed82a20cf34c27915d8
      c5579ea9
    • Nathan E. Egge's avatar
      Update uv_mode_cdf tables once per frame. · 879d341b
      Nathan E. Egge authored
      Move computing the uv_mode_cdf tables per coded intra mode symbol to
       computing them only when the probabilities are updated.
      
      Change-Id: I627b59d30726c913f5d7ba7753cb0446a12655bb
      879d341b
  2. 13 Sep, 2016 4 commits
    • Nathan E. Egge's avatar
      Update y_mode_cdf tables once per frame. · 7b8ac4f5
      Nathan E. Egge authored
      Move computing the y_mode_cdf tables per coded intra mode symbol to
       computing them only when the probabilities are updated.
      
      Change-Id: I8c43d09b8ef5febe2a3ec64bd51d28bd78ea73ed
      7b8ac4f5
    • Nathan E. Egge's avatar
      Update kf_y_mode_cdf tables once per frame. · ef56088c
      Nathan E. Egge authored
      Move computing the kf_y_mode_cdf tables per coded intra mode symbol to
       computing them only when the probabilities are updated.
      
      Change-Id: I5999447050c2f7d5dbccde80bee05ecd1c5440ab
      ef56088c
    • Nathan E. Egge's avatar
      Use intra_ext_tx_cdf when coding tx_type. · a734340b
      Nathan E. Egge authored
      When building with --enable-daala_ec, the tx_type for intra blocks can be
       coded using the CDFs that are updated once per frame.
      This patch converts a tx_type symbol to be coded with aom_write_symbol()
       and aom_read_symbol() that was missed in f3e8e267.
      
      Change-Id: I34f8fef7525f88e156bbcb78dfc48994367610ce
      a734340b
    • Jingning Han's avatar
      Fix compiler failure in ref-mv · c65fb3a8
      Jingning Han authored
      Fix the compiler failure in ref-mv due to conflict with aom_read
      changes.
      
      Change-Id: Id61e70e2afe1142d0a71e2e0d251b678850d0b88
      c65fb3a8
  3. 10 Sep, 2016 1 commit
    • Nathan E. Egge's avatar
      Code class0 using aom_read() / aom_write(). · be8a8ab6
      Nathan E. Egge authored
      The av1_mv_class0_tree is a balanced tree with two leafs and can
       simply be coded as a boolean with probability class0[0].
      If CLASS0_SIZE is ever changed from 1, this change will need to be
       reverted.
      
      Change-Id: If294dac825a5f945371092c74aa8e3f84cd962b6
      be8a8ab6
  4. 07 Sep, 2016 2 commits
    • Urvang Joshi's avatar
      Fix build with --enable-palette. · 59228957
      Urvang Joshi authored
      Signature of aom_read_xxx function changed recently:
      https://aomedia-review.googlesource.com/#/c/3520/
      So, updated the palette code to call those functions with the additional
      parameter.
      
      Change-Id: I364faee2e002f2bb7ac889ee15c5f14b0d857128
      59228957
    • Michael Bebenita's avatar
      Bit accounting. · e6b12944
      Michael Bebenita authored
      This patch adds bit account infrastructure to the bit reader API.
      When configured with --enable-accounting, every bit reader API
      function records the number of bits necessary to decoding a symbol.
      Accounting symbol entries are collected in global accounting data
      structure, that can be used to understand exactly where bits are
      spent (http://aomanalyzer.org). The data structure is cleared and
      reused each frame to reduce memory usage. When configured without
      --enable-accounting, bit accounting does not incur any runtime
      overhead.
      
      All aom_read_xxx functions now have an additional string parameter
      that specifies the symbol name. By default, the ACCT_STR macro is
      used (which expands to __func__). For more precise accounting,
      these should be replaced with more descriptive names.
      
      Change-Id: Ia2e1343cb842c9391b12b77272587dfbe307a56d
      e6b12944
  5. 05 Sep, 2016 1 commit
  6. 03 Sep, 2016 1 commit
    • Nathan E. Egge's avatar
      Update segment tree_cdf per frame. · e1f9e33d
      Nathan E. Egge authored
      Move computing the segmentation_probs.tree_cdf table per symbol to
       computing it only when the probabilities are updated.
      
      Change-Id: I3826418094bbaca4ded87de5ff04d4b27c85e35a
      e1f9e33d
  7. 26 Aug, 2016 1 commit
    • Urvang Joshi's avatar
      Move palette code from libvpx/nextgenv2 to aomedia. · 764d1266
      Urvang Joshi authored
      Palette code originally by huisu@. Gives 11.68% BDRate improvement on
      screen content set.
      
      Last 7 small speedup patches from me, giving 10% speedup overall for
      screen content set.
      
      From aomedia/master:
      Revert 57fa6267 : Remove color_index_map
      
      From libvpx/nextgenv2:
      c93e5cc3 : Bring palette back to nextgenv2
      827e1b3f : Add test for screen content coding tools in end to end test
      78b0bd0a : Complete (mostly) migration of palette mode
      8a128c2a : Fixes for Palette mode
      4ab00912 : Palette mode: record selected transform type
      cbb8be76 : Set block size upper bound for Palette mode
      bb0e6921 : Convert palette from double to float.
      a0a23b7f : faster code: replace nested for loops by memcpy().
      016a5daa : Palette code: simpler and faster duplicate removal
      d0000208 : Palette code cleanup
      6dde8018 : Use built-in qsort(); create remove_dup() method.
      f746c103 : Handle centroid rounding inside palette.c itself.
      d68c7b6d : Palette: count Y colors only for screen content.
      f1906e96 : Palette code: remove the use of same if condition twice.
      
      Locally made sure all combinations of "--enable-ext-intra" and/or
      "--enable-palette" and/or "--enable-aom-highbitdepth" build OK.
      
      P.S. Note for future reference:
      EXT_INTRA experiment has only been moved *partially* to aomedia at this
      point. If and when the rest is moved to aomedia, EXT_INTRA + PALETTE
      combo needs to be moved to aomedia as well.
      
      Change-Id: I8826780014ec8a88281e56c8258b7c966121b46f
      764d1266
  8. 18 Aug, 2016 1 commit
  9. 16 Aug, 2016 1 commit
  10. 28 Jul, 2016 2 commits
    • Nathan E. Egge's avatar
      Update inter_ext_tx_cdf per frame. · 73845731
      Nathan E. Egge authored
      Move computing the inter_ext_tx_cdf tables per symbol to
       computing them only when the probabilities are updated.
      
      Change-Id: I5e1e62f8eae8f6b2edbbd378beeb786649502c10
      73845731
    • Nathan E. Egge's avatar
      Update intra_ext_tx_cdf per frame. · 785e975a
      Nathan E. Egge authored
      Move computing the intra_ext_tx_cdf tables per symbol to
       computing them only when the probabilities are updated.
      
      Change-Id: I26d5e419e103093e98a7d896c196176305b50fc9
      785e975a
  11. 25 Jul, 2016 1 commit
  12. 20 Jul, 2016 1 commit
  13. 14 Jul, 2016 1 commit
    • Zoe Liu's avatar
      Add the use of new reference frames at encoder in EXT_REFS · 9c1e2f92
      Zoe Liu authored
      In the experiment of EXT_REFS, add the use of the 3 extra reference
      frames, including the 2 forward reference frames LAST2 and LAST3, and
      the one backward reference frame BWDREF, for the encoding.
      
      For lowres, EXT_REFS achieves following bitrate saving on overall PSNR
      compared against baseline:
      Avg: -4.581  BDRate: -4.358
      
      Change-Id: Ib15b65681c39892ddfce5e4107598c0a22317ccd
      9c1e2f92
  14. 28 Jun, 2016 2 commits
    • Angie Chiang's avatar
      Avoid transfer interp_filter type when there is no sub-pixel · 80347995
      Angie Chiang authored
      PSNR improvement:
      lowres: 0.112% on top of ext_interp experiment
      
      Change-Id: I86e5a942c22bb0cdca6e86523f95b196ee85ca46
      80347995
    • Jingning Han's avatar
      Construct ref mv candidate list selectively · cf3eb03e
      Jingning Han authored
      This commit makes the decoder to construct the reference motion
      vector candidate list only for the selected reference frames. This
      improves the decoder speed. For the test clip pedestrian_area at
      1080p, coded at 3000 kbps, the decoding speed goes up from 58.4 fps
      to 72 fps.
      
      Change-Id: I257c521f46221936028ae01f205520d94ba7f16e
      cf3eb03e
  15. 22 Jun, 2016 1 commit
    • Zoe Liu's avatar
      Add pred prob handling for new references in EXT_REFS · f91498c0
      Zoe Liu authored
      For the experiment of EXT_REFS, add the handling of the context
      probabilities for both forward reference frames (namely
      LAST/LAST2/LAST3/GOLDEN) and backward reference frames
      (namely BWDREF/ALTREF).
      
      Change-Id: Ibd991673acf6ff2fc9a56b8805eca9173cbf5fdc
      f91498c0
  16. 15 Jun, 2016 2 commits
  17. 04 Jun, 2016 1 commit
  18. 03 Jun, 2016 1 commit
    • Jingning Han's avatar
      Account DRL in the motion vector coding · 4ceb066d
      Jingning Han authored
      This commit makes the motion vector coding context account for the
      dynamic motion vector predictor index.
      
      Change-Id: I86fc98668130140118458c773b3dd6d3ed4bc448
      4ceb066d
  19. 19 May, 2016 1 commit
    • James Zern's avatar
      s/INTERP_FILTER/InterpFilter/ · d54236a9
      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
      d54236a9
  20. 10 May, 2016 1 commit
    • clang-format's avatar
      apply clang-format · a2dc61c7
      clang-format authored
      .c files were missed in the previous change
      
      Change-Id: I9d22cd83e1f87472bfb09e6a38284396b2fcd860
      a2dc61c7
  21. 13 Apr, 2016 3 commits
  22. 12 Apr, 2016 1 commit
  23. 05 Apr, 2016 1 commit
    • Jingning Han's avatar
      Vectorize motion vector probability models · a8c1d85e
      Jingning Han authored
      This commit converts the scalar motion vector probability model
      into vector format for entropy coding contexted on the predicted
      motion vector.
      
      Change-Id: I09a17ed4d01efa49640c2882efbf78913b32556e
      a8c1d85e
  24. 04 Apr, 2016 4 commits
  25. 02 Apr, 2016 1 commit
    • Jingning Han's avatar
      Support multiple reference motion vector candidates · 9fdd1124
      Jingning Han authored
      This commit generalizes dynamic reference motion vector coding mode
      to support multiple candidate modes in the rate-distortion
      optimization scheme and to support the selection in the bit-stream
      syntax. The maximum number of modes allowed is currently limited to
      4. The syntax elements for the dynamic reference motion vector
      modes are using binary codes.
      
      Change-Id: I63ada01c18d4aaa2e3770811130fa8a42a88ab62
      9fdd1124