1. 19 Apr, 2017 1 commit
    • David Barker's avatar
      Fix some rdopt bugs in ext-inter · cb03dc34
      David Barker authored
      * Refactor write_inter_mode and cost_mv_ref slightly
      * In handle_inter_mode: When discount_newmv_test returns 1,
        ext-inter is enabled, and we're costing up a compound mode,
        we would previously call cost_mv_ref with mode=NEARESTMV and
        comp_pred=1. But this is inconsistent when ext-inter is enabled!
        Fix this by changing the behaviour of cost_mv_ref to (effectively)
        derive comp_pred from the mode passed in, and switch to
        mode=NEAREST_NEARESTMV in the above case.
      * Fix incorrect motion vector costing for some compound modes
      * Fix a case where compound blocks were mis-costed. This primarily
        affects ext-inter *without* wedge or compound-segment enabled,
        but should still have some small impact when those experiments
        are enabled.
        The cause of this is that we only spend bits to send the
        interinter compound type if is_any_masked_compound_used(bsize)
        returns true. But the rdopt loop forgot to check this condition
        in one case.
      Change-Id: I8b54cb3552f9ec384fd5ea260e12685168fbccc1
  2. 18 Apr, 2017 1 commit
    • Angie Chiang's avatar
      Add txk_sel exp · cd9b03fb
      Angie Chiang authored
      This will separate the transform kernel selection from lv_map
      experiment such that we can evaluate each feature's performance
      Note that txk_sel is build on top of lv_map
      Change-Id: I5bd1ea99be30000efcdc2bcd42de002b78b1c3c8
  3. 17 Apr, 2017 2 commits
  4. 16 Apr, 2017 1 commit
  5. 14 Apr, 2017 1 commit
    • Sarah Parker's avatar
      Refactor gm/wm/obmc for cleaner warping interactions · 4c10a3c2
      Sarah Parker authored
      This creates a central function which defines when a
      block should be warped. It also refactors the
      WARPED_MOTION code so that all calls to av1_warp_plane
      happen in the same location.
      No change in performance.
      Change-Id: Icaf9ec7700d34523809258594bb9843bb2975f46
  6. 12 Apr, 2017 6 commits
  7. 11 Apr, 2017 9 commits
    • Angie Chiang's avatar
      Fix invalid tx_type returned by get_tx_type · 18ad894a
      Angie Chiang authored
      1) Check if tx_type is valid in get_tx_type
      2) Remove scan_order from rdcost_block_args
      When lv_map is on, scan_order depends on tx_type but tx_type is
      not decided before entering block_rd_txfm yet. Therefore
      assigning a scan_order into rdcost_block_args and then passing it
      into block_rd_txfm will cause error.
      3) Pass correct index into intra_mode_to_tx_type_context in
      This CL doesn't affect baseline/supertx's stats.
      Change-Id: I59eb12aaf1edd9110ce7a92ce61f81bf89cd5920
    • Angie Chiang's avatar
      Modify choose_tx_size_type_from_rd for lv_map exp · f1cb075d
      Angie Chiang authored
      The tx_type becomes dummy when lv_map is on. The tx_type search
      will be performed in av1_search_txk_type() and the results will be
      stored in txk_type[]
      In choose_tx_size_type_from_rd, we use best_txk_type[] to record
      the best search result within different tx_size.
      Change-Id: I67c489d261aecaa0092e0cc562670588c6c55941
    • Angie Chiang's avatar
      Call av1_search_txk_type in block_rd_txfm · e50f3eca
      Angie Chiang authored
      This is part of tx kernel selection feature.
      Change-Id: I822e5a46d39c1fd525c911fc2a06e1be041d8ec8
    • Jingning Han's avatar
      Reset x->skip flag in the ref-mv search loop · 52617b26
      Jingning Han authored
      Resolve the unit test failure on
      Change-Id: Ica884da0d0e5bd808c9f02f5de0a29cab950e7be
    • Jingning Han's avatar
      Fix YUV444 lossless mode unit test · 2d2dac2b
      Jingning Han authored
      Properly scale the chroma component size per color plane.
      Change-Id: Ibf192d0e99f2fc3611beb82a3a9951ad09b292d3
    • Angie Chiang's avatar
      Add tx_type_cost() · 65201569
      Angie Chiang authored
      Change-Id: Icd19ec381e8188c1c34e7a8b664d552d146cb7fc
    • Angie Chiang's avatar
      Add search_txk_type · 808d859f
      Angie Chiang authored
      Change-Id: I50493fa9daf2de8859608d57f8d2010842c9eb07
    • Angie Chiang's avatar
      Add av1_inverse_transform_block_facade · bc2288cc
      Angie Chiang authored
      This function will apply av1_inverse_transform_block to
      pd->dst.buf directly.
      Change-Id: I703762c2d3cee2af626c190fe3b3995e3cce2082
    • Zoe Liu's avatar
      Remove the single ref inter mode NEWFROMNEARMV · 7f24e1b0
      Zoe Liu authored
      Change-Id: I246da885154303d139f5d97c53ebfc55d6dc82ca
  8. 10 Apr, 2017 2 commits
    • Angie Chiang's avatar
      Use block_idx rather than block_raster_idx · 752ccce7
      Angie Chiang authored
      1) block_raster_idx is actually raster order only when tx_size
      is TX_4x8.
      It's very specific, so we should put it near to the place it's
      actually used.
      2) Sync the meaning of block_idx on encoder/decoder sides
      Change-Id: I7d37a992cb773503e29f9c0d9d2586e580aa6173
    • Jingning Han's avatar
      Fix high bit-depth distortion computation · 6a9dbefc
      Jingning Han authored
      Resolve the segmentation fault issue in nightly run unit test
      Change-Id: Ib27ac0d41767f39114905b7edb6c220bf62214a1
  9. 09 Apr, 2017 1 commit
  10. 07 Apr, 2017 4 commits
    • Angie Chiang's avatar
      Expand av1_encode_block_intra in block_rd_txfm · 62e54cd3
      Angie Chiang authored
      This will make the code a bit complicated, but it will facilitate
      lv_map experiment
      Change-Id: Ic2d4d2caac4d138aacc8a9e86e2f1b029395f1fc
    • Angie Chiang's avatar
      Add dst_has_residue to dist_block() · 5106e283
      Angie Chiang authored
      Instead of using inter/intra to determine the dst buffer has
      residue or not, we use dst_has_residue.
      This will provide us more flexibility to do experiment.
      Change-Id: Ib1de1076cf1ea327df9003a9a149957ecb4c0a3c
    • Angie Chiang's avatar
      Expand choose_tx_size_fix_type · a4fa1909
      Angie Chiang authored
      This CL actually makes the code more complicated but it will allow
      us to break the framework of searching tx_size with fixed tx_type
      I will find a way to simplify the code later.
      Change-Id: Iae933a40d0c7eb9ec65b34ebfd9d543423f304aa
    • Angie Chiang's avatar
      Add skip_txfm_search() for transform prunning code · 2d147c16
      Angie Chiang authored
      This will make choose_tx_size_fix_type() more straightforward
      Change-Id: Iaf2344f5742666104b08c3e3673223e197bf482e
  11. 06 Apr, 2017 2 commits
  12. 05 Apr, 2017 2 commits
  13. 04 Apr, 2017 4 commits
  14. 03 Apr, 2017 2 commits
  15. 31 Mar, 2017 2 commits
    • David Barker's avatar
      Allow NEAR_NEARMV and NEW_NEWMV modes to use ref_mv_idx · 404b2e87
      David Barker authored
      When ext-inter and ref-mv are both enabled, this patch
      allows the NEAR_NEARMV and NEW_NEWMV modes to pick from
      the extended reference mv list, just like the NEARMV and
      NEWMV modes can.
      Change-Id: Ibcc9e19dba7779422c1c9589d5498159e83bf61e
    • Alex Converse's avatar
      Crop distortion to visible MIs · 61f37b87
      Alex Converse authored
      Ported from VP9 with some heavy modifications
      bsize_dist@2017-03-29T23:18:27.564Z -> bcropped_dist@2017-03-29T23:21:00.200Z
         PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
      -0.0966 | -0.0922 |  0.0032 |  -0.0618 | -0.0579 | -0.0441 |  -0.0959
      Change-Id: Icdfcf47a9017fd3180e7fbc963196a43c5376c4e