1. 13 Dec, 2017 2 commits
    • Jingning Han's avatar
      Properly update the lv-map context in the RD loop · d7e99113
      Jingning Han authored
      Account for the txb_optimize effect on level map context modeling
      in the transform block rate distortion optimization search.
      Properly update such information in the txb hash rd cost.
      
      BUG=aomedia:1118
      
      Change-Id: I16cf80c57fa37929f94291a7500d84f9e0778400
      d7e99113
    • Hui Su's avatar
      tx block rd hash: fix tx block order · a4812acf
      Hui Su authored
      Previously the tx block order, i.e. the child index, was wrong for
      rectangular partition blocks.
      
      Re-eanbles tx rd hash for rectangular blocks, encoder speed up by 7%; no
      compression quality loss.
      
      BUG=aomedia:1106
      
      Change-Id: I615b8c56744075088943d372e607c18795cedac4
      a4812acf
  2. 12 Dec, 2017 8 commits
    • Hui Su's avatar
      intrabc: modify default ref dv · 2d46afcd
      Hui Su authored
      Make sure the ref dv is a valid dv.
      
      Improves compression by about 0.3% on screen_content keyframes.
      
      Change-Id: I3a20c1a04b0ebcad610276f21b410dcfc8ba4c4d
      2d46afcd
    • Hui Su's avatar
      Fix floating point number error in palette RDO · 8265d70c
      Hui Su authored
      BUG=aomedia:1112
      
      Change-Id: I130bc2087c32bd2d9087bf0dfe5919226f5fafa1
      8265d70c
    • Rupert Swarbrick's avatar
      Fix calculation of tx_type cost for rectangular transforms · ffbff57d
      Rupert Swarbrick authored
      This patch fixes up av1_tx_type_cost to match the code in
      av1_write_tx_type. Beforehand, we wrongly assumed a 32x16 block needed
      to signal its transform size (with rect-tx-ext & rect-tx-ext-intra)
      because we were passing 16x16 to get_ext_tx_types.
      
      I've also changed av1_write_tx_type to use get_min_tx_size rather than
      inlining its body. No functional change, but it's probably better to
      use the same helper function both times.
      
      Change-Id: Iff6ee0bff2d332d5270fe0219db88c95e0b051d0
      ffbff57d
    • Jingning Han's avatar
      Simplify logics in select_tx_type_yrd · 13c42779
      Jingning Han authored
      Remove unnecessary inter / intra condition check.
      
      Change-Id: I51b776a3df6ce45b31fe3d2f43fbf6ca7b1d14fb
      13c42779
    • Rupert Swarbrick's avatar
      Fix apparent typo in av1_rd_pick_inter_mode_sb · 6f14969a
      Rupert Swarbrick authored
      We should be selecting a transform size when tx_mode is TX_MODE_SELECT
      and we're not lossless. (In lossless mode, the transform size is
      forced to be TX_4X4).
      
      Change-Id: I65b346fb2116689598e2251e97897be91f481ceb
      6f14969a
    • Rupert Swarbrick's avatar
      Use block_signals_txsize() in two more places · 8e5b39a1
      Rupert Swarbrick authored
      The change in encodeframe.c has no effect (it's the same test), but
      the change in rdopt.c fixes a miscalculated rate for (say) 8x4 blocks
      which must signal whether to use TX_8X4 or TX_4X4.
      
      Change-Id: I1dd2556bb90e86e690dd1fabaad278813ba73ea6
      8e5b39a1
    • Hui Su's avatar
      tx rd hash: store parent indices in mi resolution · cdb8983f
      Hui Su authored
      Change-Id: Ia069373be864cae7a283bce3d12ee10270e6beb3
      cdb8983f
    • Hui Su's avatar
      enable skip prediction for large blocks · 00966436
      Hui Su authored
      This patch enables the skip prediction feature for blocks larger than
      16x16; but the tx size used in this module is still limited to 16x16.
      
      Also makes it exit early upon large quantized coeff.
      
      Test results:
      -encoding speed up by 0~17%, on average 8.6%, based on several lowres
      test sequences;
      -no quality loss observed, encoding 30 frames on lowres and midres.
      
      BUG=aomedia:1106
      
      Change-Id: Ic2051a978eda5c8ce6a795a9d97d8d114c6edfe2
      00966436
  3. 11 Dec, 2017 2 commits
  4. 10 Dec, 2017 2 commits
    • 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
    • Hui Su's avatar
      TX block hash: record the eob value · 8c2b913b
      Hui Su authored
      BUG=aomedia:1093
      
      Change-Id: I0871c67d9a2ddc6aa9d3084f645305f6b74a999f
      8c2b913b
  5. 09 Dec, 2017 3 commits
  6. 08 Dec, 2017 2 commits
    • 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
    • Jingning Han's avatar
      Constrain hash table access within tile boundary · 3de5353c
      Jingning Han authored
      Limit the prediction residual hash table access within the same
      tile. This resolves a data race issue across tiles in multi-threading
      encoding that triggers instable encoding results.
      
      BUG=aomedia:1088
      
      Change-Id: Ia4a415a0750bd60ee8ac4e56aa1cd39ec99e19c7
      3de5353c
  7. 07 Dec, 2017 6 commits
  8. 05 Dec, 2017 5 commits
  9. 04 Dec, 2017 2 commits
    • 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
    • Angie Chiang's avatar
      Use macro to set txk_type · bce07f1c
      Angie Chiang authored
      This will make txk_sel support maximum bsize to 128x128
      
      Change-Id: I33941966cb1ae4406ac68a2124c859c833a084d8
      bce07f1c
  10. 02 Dec, 2017 5 commits
    • Hui Su's avatar
      intrabc: fix SB index calculation in RDO · 8de99a6e
      Hui Su authored
      It was wrong when ext-partition is on and sb_size=64, potentially causing
      big compression loss.
      
      Change-Id: I39cba439811bc0ab7c5532842887cf82bb3b5657
      8de99a6e
    • Yunqing Wang's avatar
      Modify the warped motion mode context · 3afbf3fb
      Yunqing Wang authored
      Modified the warped motion mode context based on neighbor's motion modes
      and current block's mode.
      
      Change-Id: I77ca35fab37ec640bb38661ff1799f643d5aafdc
      3afbf3fb
    • Debargha Mukherjee's avatar
      Rd fix for returning skip correctly · 9c8decb5
      Debargha Mukherjee authored
      Change-Id: I7f108fce272b5bf416836d99430f07af801daada
      9c8decb5
    • Zoe Liu's avatar
      Overwrite frame level skip mode flag if no usage · 8a5d3437
      Zoe Liu authored
      Add a block level usage flag for skip mode. If no block has chosen the
      skip mode, the frame level flag for skip mode will be set off.
      
      This patch also includes a small code cleanup, including the check on
      whether the best RD mode is aligned with skip mode, if yes, the best
      RD mode will be replaced by skip mode.
      
      This patch slightly improves the coding performance of ext-skip.
      
      Change-Id: If06092d5e32f15e63dcb5f35d32e68bc0f827c2b
      8a5d3437
    • Angie Chiang's avatar
      Correct the skip rate in set_skip_flag for lv_map · 4639e080
      Angie Chiang authored
      Change-Id: I584694374a2468e0dcfe6e4fdb2582e5cae051ef
      4639e080
  11. 01 Dec, 2017 3 commits