1. 24 Dec, 2017 1 commit
  2. 22 Dec, 2017 2 commits
    • Hui Su's avatar
      Palette: enable all partitions no larger than 64x64 · 8b618f62
      Hui Su authored
      Enable palette mode for
      4x4, 4x8, 8x4, 4x16, 16x4, 8x32, 32x8, 16x64, 64x16
      
      0.8% gain on screen_content keyframe coding.
      
      Change-Id: Ic3c089b74171ace9082a0d3ad9e27c8a27553789
      8b618f62
    • Jingning Han's avatar
      Take out drl index control from opt-ref-mv · b4fc74da
      Jingning Han authored
      Removing the drl dependency on the candidate list length appears
      to incur more than 0.3% compression performance loss. Hence remove
      this option from opt-ref-mv to allow better latency vs compression
      performance trade off.
      
      Change-Id: I6edaeb2d437996082b7bdd6cda7351426c5584b9
      b4fc74da
  3. 21 Dec, 2017 3 commits
    • Hui Su's avatar
      intrabc: enable 16x4 and 4x16 blocks · eb2fd5c5
      Hui Su authored
      0.15% gain on the screen_content testset.
      
      BUG=aomedia:998
      
      Change-Id: Ia6484a90b92a00bb0073ecf988b5c164fe8ba84c
      eb2fd5c5
    • Hui Su's avatar
      Palette: modify the context slightly · c1f411bc
      Hui Su authored
      Use the number of pixels in a block as context, rather than the bsize
      itself. The rectangular blocks therefore share the same context, e.g.
      BLOCK_8X16 and BLOCK_16X8.
      
      The number of contexts is reduced from 10 to 7.
      Almost no coding performance changes.
      
      Change-Id: Ib3241194580c2b93ad0e953957cdc9188393d055
      c1f411bc
    • Angie Chiang's avatar
      Remove all_zero check in read/write_inter_mode · ec9bebc1
      Angie Chiang authored
      This is a bitstream simplification.
      It will reduce motion vector context model generating latency.
      
      Change-Id: I98a496f5d72402ff51a478d5387a0653fa306dc1
      ec9bebc1
  4. 20 Dec, 2017 4 commits
    • Zoe Liu's avatar
      Remove unused prediction modes for ext-skip · feb1ebe9
      Zoe Liu authored
      For ext-skip, if a partition block uses the new skip mode,
      NEAREST_NEARESTMV is the prediction mode. Other predictions were once
      tried out but did not show noticeable coding gains.
      
      Change-Id: I76c0aa0c68fe71f95cc4a09ef0de533e4ceb2f60
      feb1ebe9
    • Yue Chen's avatar
      Clean ups and bug-fixes for filter_intra · 994dba25
      Yue Chen authored
      Clean up: clean up unused entropy related arrays
      Bug-fixes: resolve compiling errors when it is enabled with
      entropy_stats and ext_skip
      
      Change-Id: I2893e1b5c09e847fb4677f6e62709464208b76f8
      994dba25
    • Debargha Mukherjee's avatar
      Correct/Cleanup min_tx_size computation · 3ebb0d00
      Debargha Mukherjee authored
      Change-Id: I17fd041e9e1cead6b2b6339f0efa55c1ee9938af
      3ebb0d00
    • Imdad Sardharwalla's avatar
      Fix inconsistent use of ref_mv_idx. · c23ad632
      Imdad Sardharwalla authored
      "+ 1" has been added in a few locations to match the indices for the
      context for the CDFs and the motion vectors.
      
      Suggested fix (of removing +1s entirely) can then be implemented
      without further affecting the overall behaviour of the encoder and
      decoder.
      
      BUG=aomedia:858
      
      Change-Id: I650a618d3fda1d27bd3550d25ad1ac52e4365061
      c23ad632
  5. 19 Dec, 2017 2 commits
  6. 18 Dec, 2017 2 commits
    • Luc Trudeau's avatar
      [CleanUp] Remove block from av1_mode_context_analyzer · 15a18e3d
      Luc Trudeau authored
      av1_mode_context_analyzer is always called with block == -1.
      
      Change-Id: Ibc9e7e87ea95f3651f7505b82674a6fd795ae985
      15a18e3d
    • Zoe Liu's avatar
      Expand skip mode support for all comp frames · 4b847e19
      Zoe Liu authored
      All compound predicted frames now have the choice to either turn on
      or off the use of the skip mode. The current encoder design only
      turns on the use of skip mode when the temporal distances of the two
      reference frames to the current frame are only different by 1.
      
      This patch also includes a fix on the calculating of the temporal
      distance between the two reference frames to the current frame for
      skip mode.
      
      Performance wise, this patch does not have noticeable impact as the
      encoder stays with the same choice with the frame-level skip mode
      flag.
      
      Change-Id: I34f370940b3b25d2ab429b8721344133ae6288ad
      4b847e19
  7. 17 Dec, 2017 1 commit
  8. 16 Dec, 2017 1 commit
    • Zoe Liu's avatar
      Support ext-skip for both low delay and high delay · 104d62e1
      Zoe Liu authored
      For both low delay and high delay scenarios, the reference pair in
      skip mode are specified as the closest fwd ref, together with the
      closest bwd ref if there is any bwd ref, otherwise with the two
      closest fwd refs.
      
      Skip mode by default uses COMPOUND_AVERAGE. When all the reference
      frames are on the same side, temporal-distance weighted compound is
      considered, and a compound index is signaled to indicate whether
      distance-weighted compound or compound-average is usd.
      
      Whether to use distance-weighted compound for skip mode is still
      under experimenting, hence a flag is temporarily added:
      SKIP_MODE_WITH_JNT_COMP.
      
      Following experimental results are obtained over 30 frames, using the
      setup of --disable-ext-partition --disable-ext-partition-types
      --disable-txmg --enable-jnt-comp --enable-mfmv --enable-ext-skip:
      
      (1) High Latency:
      For Google test sets (lowres/midres), the BDRate coding gain is ~0.2%;
      For AWCY, the coding gain is ~0.1%.
      (2) Low Latency:
      No gain has been observed over Google sets and ~0.1% gain is obtained
      only when temporal-distance weighted prediction is used.
      
      Change-Id: I8c433357adebed0126ebfdd5c4d51aa71e64be57
      104d62e1
  9. 15 Dec, 2017 1 commit
  10. 14 Dec, 2017 1 commit
    • Luc Trudeau's avatar
      [Clean Up] Remove get_y_mode() · 2eb9b845
      Luc Trudeau authored
      The get_y_mode function, is superfluous, not used consistently, and requires a
      useless block_idx parameter than gets pass around a lot inside the
      codebase for no apparent reason.
      
      The block parameter is misleading, as it could cause people to think all these
      functions actually use this value.
      
      Change-Id: I7ae0a8d1282c009b9114c83771cce10f5c2ee397
      2eb9b845
  11. 13 Dec, 2017 5 commits
  12. 12 Dec, 2017 2 commits
  13. 10 Dec, 2017 1 commit
    • Zoe Liu's avatar
      Enable skip mode work with JNT_COMP · 50c810d5
      Zoe Liu authored
      This patch updates also the default cdfs for skip mode. It also remove
      the unneeded checking on whether the best obtained RD mode aligned
      with the skip mode.
      
      For 30 frames, on both AWCY and Google lowres/midres test sets, with
      the following config, the coding gain ranges from ~-0.15% to -0.23%:
      
      --disable-ext-partition --disable-ext-partition-types --disable-txmg
      --enable-jnt-comp --enable-mfmv
      
      Change-Id: I39aeeb9e7b27ca679c1b3f9c0eea67b5e1f694e2
      50c810d5
  14. 09 Dec, 2017 2 commits
    • Debargha Mukherjee's avatar
      Enable 4:1 -> 2:1 -> 1:1 splits for 4:1 transforms · e4e18fcc
      Debargha Mukherjee authored
      Also, splits the sub_tx_size_map array into inter and intra
      in order to enable the new 4:1 transforms for inter and
      intra separately.
      Includes refactoring such as removing the intra_tx_size_cat_lookup
      array since it is unnecessary, and consolidating the
      max_txsize_rect_lookup array for convenience.
      
      Change-Id: I112553bab612dafb973611c87f36a43e1ac4be85
      e4e18fcc
    • Rostislav Pehlivanov's avatar
      Change q_segmentation to spatial_segmentation · 938710cb
      Rostislav Pehlivanov authored
      Adds spatial prediction to standard segmentation instead of a separate
      segmentation feature.
      When using temporal prediction skipped blocks are flagged as mispredicted.
      
      Change-Id: I0c32281286d3fbce66d339c9247bcc6516f37a63
      938710cb
  15. 08 Dec, 2017 2 commits
    • Sebastien Alaiwan's avatar
      Avoid memset when possible · 8a3d80eb
      Sebastien Alaiwan authored
      Also, reduce scope of one local.
      
      Change-Id: I41cb53528d4b7bc88eb343d8c943ed241230af82
      8a3d80eb
    • Debargha Mukherjee's avatar
      Misc refactors to support 4:1->2:1->1:1 tx splits · 0fa057f8
      Debargha Mukherjee authored
      Currently 4:1 transforms have max 2 split levels:
      4:1 -> 1:1 -> 0.5:0.5.
      
      This refactor enables split levels:
      4:1 -> 2:1 -> 1:1,
      
      by simply changing the tables in common_data.h.
      
      The actual switch will be made in a subsequent patch.
      
      Change-Id: I33f8d9ca5159ba3e7d02ced449ddf6f804a8f12a
      0fa057f8
  16. 07 Dec, 2017 1 commit
    • Zoe Liu's avatar
      Update the experiment of ref-adapt · d4d8b868
      Zoe Liu authored
      This experiment allows two choices for the frame-level reference
      mode flag: SINGLE_REFERENCE and REFERENCE_MODE_SELECT. It removes
      the choice of COMPOUND_REFERENCE, as it has been barely used.
      
      Change-Id: I8af18acd2fe3c0d4928f2b05f35aad0ebcb1556a
      d4d8b868
  17. 06 Dec, 2017 2 commits
    • Zoe Liu's avatar
      JNT_COMP: Simplify logic on inter-inter comp modes · 5f11e915
      Zoe Liu authored
      This patch simplies the checking criteria for the two groups of
      compound modes. It also makes the encoder side cdf update inside the
      RD loop consistent with that in the bitstream.
      
      Experimental results on Google test sets (30 frames of lowres and
      midres) confirm this patch obtains identical coding performance.
      
      Change-Id: I170eea91f7d2be2170df544cfc2c692b09aa82d6
      5f11e915
    • Zoe Liu's avatar
      Simply the code path when jnt-comp is off · 6fa05dcf
      Zoe Liu authored
      Change-Id: I17a82393f1b7230119f499e2f9ed8d0b8fe5ba25
      6fa05dcf
  18. 05 Dec, 2017 6 commits
  19. 04 Dec, 2017 1 commit
    • Debargha Mukherjee's avatar
      Fixes to make 4:1 rectangular intra work correctly · d2cfbefb
      Debargha Mukherjee authored
      This patch fixes and enables rectangular intra transform
      sizes for 4:1 partitions (that were turned off before).
      4:1 partitions can now use rectangular intra predictions with
      2:1 rectangular transform sizes.
      BDRATE lowres (single keyframe): -0.612%
      
      Change-Id: I6f062f7c08aae8eeb0a55d31e792c8f7e3f302a2
      d2cfbefb