1. 17 Jan, 2018 4 commits
    • David Barker's avatar
      Fix inter block detection in get_tx_size_context() · 84dc6e97
      David Barker authored
      In the decoder, the function get_tx_size_context() is called
      by read_selected_tx_size(), *before* mbmi->ref_frame is set up.
      This means that mbmi->ref_frame still holds the ref frames from
      the previous block, and does not indicate if the current block is
      inter or not.
      
      Fortunately, all of the other functions called by read_selected_tx_size()
      have an explicit "is_inter" parameter, which is set correctly.
      So we can just plumb this through into get_tx_size_context().
      
      Change-Id: I00f0f3704937f592ccc5d304ed20ee25196dd520
      84dc6e97
    • Hui Su's avatar
      Update inter_tx_size in reset_tx_size() · cf600296
      Hui Su authored
      BUG=aomedia:1231
      
      Change-Id: Ibddf60bfbdd6ac037ca4d2fa9bbc2eb30841991b
      cf600296
    • Debargha Mukherjee's avatar
      Adjust dq_type 1/2 parameters · dc024c46
      Debargha Mukherjee authored
      Change-Id: I5e205150c62f07049187ddd61b670ad5197c1645
      dc024c46
    • Hui Su's avatar
      intrabc: do not transmit delta_lf_present_flag · 22a51d9e
      Hui Su authored
      BUG=aomedia:1230
      
      Change-Id: I8a66b6303752b77a09cca1fe6890137146c50d1e
      22a51d9e
  2. 16 Jan, 2018 1 commit
    • David Michael Barr's avatar
      [CFL] separate uv_mode CDFs, split on is_cfl_allowed · cb3a8ef5
      David Michael Barr authored
      This is to exclude coding CFL for block sizes where it is normatively
      not allowed.
      
      Reuse the alternate CDFs from the --disable-cfl path.
      
      This yields some improvement on subset1:
         PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
      -0.0113 | -0.2630 | -0.2138 |   0.0021 | -0.0110 | -0.0157 |    -0.0511
      
      BUG=aomedia:1182
      
      Change-Id: I1e5f23ef7f2debcf8edce788bfa63ec95db4a679
      cb3a8ef5
  3. 15 Jan, 2018 1 commit
  4. 14 Jan, 2018 1 commit
  5. 11 Jan, 2018 2 commits
    • Ryan's avatar
      fix bug to use b_quantizer when trellis quantization is disabled. · 5b8c5fdc
      Ryan authored
      when trellis quantizaiton is disabled, the b_quantizer should be used.
      existing code has a lot of hard coded flag not hooked up correctly with
      high level trellis quantization enable/disable flag, which causes
      fp_quantizer is used. this patch is intended to remove the hard coded
      flags and correctly get them from the high level control.
      
      Change-Id: I0142aace03586d07aedea138fce08d3e72d99c32
      5b8c5fdc
    • Debargha Mukherjee's avatar
      Change dq_type in frame header in new_quant expt · 6e42741f
      Debargha Mukherjee authored
      dq_type now takes 4 possible values, one of which is
      the original multiply-only dequantizer.
      
      Change-Id: I2180f632f0d7f91dc391a6e802a93a77de789228
      6e42741f
  6. 10 Jan, 2018 3 commits
    • Hui Su's avatar
      intrabc: update intrabc_cdf per superblock · 28b53c30
      Hui Su authored
      Update intrabc_cdf per superblock during encoding.
      Also added support for entropy_stats.
      
      Change-Id: Ie106309a8932b86bb069990db0b0ea13a4c5e8ae
      28b53c30
    • Michelle Findlay-Olynyk's avatar
      hash_based_trellis speed feature · fbab0621
      Michelle Findlay-Olynyk authored
      Add speed feature that uses hash tables to
      reuse previously found optimized coefficients
      in av1_optimize_txb. This skips some expensive
      optimize_txb calls.
      
      Currently shows no significant quality
      degredation or speed improvement, and set to off
      by default. Requires hash_me, lv_map and
      lv_map_multi. Adding to speed features required
      changing AV1_COMMON *cm to AV1_COMP *cpi in a
      chain of functions.
      
      Variations that have been tried:
      -varying the maximum eob on which the feature
      activates: 16, 32, 64. 16 currently used. 64
      has best hit rate but longer execution time.
      -varying the data hashed and the length of hashes
      (first hash is 16 bit and based on context data,
      while second hash is 16 bit and based only on
      pre-optimized qcoeff values.)
      -softening the data used for the hashes: ideally
      this would raise the number of hits, without
      compromising quality too much.
      
      Change-Id: I94f22be82f3a46637c0489d512f2e334a307575f
      fbab0621
    • Hui Su's avatar
      Move sum_intra_stats into update_stats() · ea7320e1
      Hui Su authored
      Change-Id: Ied3252c3075e84252d8268a13d3f50066b3418e1
      ea7320e1
  7. 08 Jan, 2018 2 commits
  8. 06 Jan, 2018 4 commits
  9. 05 Jan, 2018 3 commits
    • Yushin Cho's avatar
      [dist-8x8] Remove asserts for sub8x8 distortions · 796d4e29
      Yushin Cho authored
      Remove the asserts in rd_pick_partition(), which check
      whether the sum of distortions of sub8x8 partitions matches to
      the 8x8 distortion measured in final reconstructed 8x8 pixels,
      because the sum of the sub8x8 distortions returned from rd_pick_sb_modes()
      is sometimes different from what is measured with final reconstructed 8x8 pixels.
      
      The asserts have been provided for the purpose of sanity check with PSNR
      and triggered with "--enable-dist-8x8=1" encoder option.
      
      Change-Id: I08e331900b19077cbb325ef5117688f05095dcc7
      796d4e29
    • Jingning Han's avatar
      Replace full txfm rd search with luma writing · 159f72c3
      Jingning Han authored
      The cfl route needs the reconstructed luma pixels in the chroma
      RD search. Replace an extra route of txfm_rd_in_plane with the
      use of av1_encode_intra_block_plane to directly write out the
      needed luma pixels in the key frame rate-distortion optimization
      process.
      
      The compression stats remain identical. The key frame encoding
      speed is on average 3% faster for a few tested 1080p clips.
      
      Change-Id: I65760b657a6d4b45bed9c4f1eca0cff1a2c274a1
      159f72c3
    • Zoe Liu's avatar
      Reduce the unnecessary array size · 316a6235
      Zoe Liu authored
      For partition types pruning in ext-partition-types, horz_rd and
      vert_rd are used to store the RD costs for the two blocks in
      horizontal partition and vertical partition. Hence array size of
      2 is sufficient for either array.
      
      Change-Id: I3471ac573665410af4c5b4af3c54bc60fe8c0195
      316a6235
  10. 04 Jan, 2018 2 commits
  11. 03 Jan, 2018 1 commit
  12. 02 Jan, 2018 1 commit
  13. 01 Jan, 2018 1 commit
    • Zoe Liu's avatar
      Remove unused variables for ext-skip · 404d92e7
      Zoe Liu authored
      The removed variable was once defined for evaluating the use of
      distance-weighted compound prediction for the new skip mode, under
      the scenario when all reference frames are forward predicted.
      
      Change-Id: I114daa66d911ec8bb8ef220f7c519566037429b1
      404d92e7
  14. 27 Dec, 2017 1 commit
  15. 26 Dec, 2017 2 commits
    • Zoe Liu's avatar
      Remove unused code for comp ref setup · ba33d4ce
      Zoe Liu authored
      Change-Id: I40232b965ba28b4dcef7ebfe8697679f6b0ffc96
      ba33d4ce
    • Zoe Liu's avatar
      Not signal reference_mode if one ref avaialble · c67d98c6
      Zoe Liu authored
      Use the frame ID that indicates the frame display order to identify
      whether two different reference frames exist for inter-coded frames.
      If there is only one unique reference valid in the reference buffer,
      there is no need to signal reference_mode. Instead, the decoder may
      identify such scenario and set reference_mode to SINGLE_REFERENCE.
      
      Change-Id: If7d374f5355f153c50b408be5a9956a833c976c3
      c67d98c6
  16. 24 Dec, 2017 1 commit
  17. 23 Dec, 2017 1 commit
    • Sarah Parker's avatar
      Merge FINAL_PASS_TRELLIS_OPT with DISABLE_TRELLISQ_SEARCH · 792c2ec4
      Sarah Parker authored
      The speed feature FINAL_PASS_TRELLIS_OPT is meant to disable
      optimize_b during the transform search but allow it for the
      final encode of blocks. There was a previously existing macro
      called DISABLE_TRELLISQ_SEARCH, which does the same thing. This
      patch merges the functionality so the macro serves only to enable
      the speed feature.
      
      Change-Id: Ieee70f97f817998b7ca275f6e4647cc89a330ad6
      792c2ec4
  18. 22 Dec, 2017 3 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
    • Luc Trudeau's avatar
      [CFL] Code cleaning and Fix for TXK_SEL · 439ba638
      Luc Trudeau authored
      Small code cleaning and partially resolves issue 1171. I can't confirm
      that it's a complete fix because the code asserts further a long
      
      aomenc: ../av1/common/blockd.h:1064: av1_get_tx_type:
        Assertion `tx_type < TX_TYPES' failed.
      
      BUG=aomedia:1171
      
      Change-Id: I3f1c91d751e937dd8e07f7e2f786a75eba4b6891
      439ba638
    • Cheng Chen's avatar
      Remove lpf_sb · 07365c9a
      Cheng Chen authored
      As loopfilter is not needed for intrabc, clean up related code.
      
      Change-Id: If89d4969a7795cd8993e6add8fd03ef1296699ef
      07365c9a
  19. 21 Dec, 2017 2 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
  20. 20 Dec, 2017 3 commits
  21. 19 Dec, 2017 1 commit
    • Zoe Liu's avatar
      Exclude distance-weighted prediction for ext-skip · 5664419e
      Zoe Liu authored
      For ext-skip, the use of distance-weighted prediction has only shown
      a coding gain in the AMCY low delay scenario. It is hence not being
      considered and compound-average is used exlusively.
      
      Change-Id: I57439eda1246e179d6404bbec366c6c610af3a36
      5664419e