1. 17 Jan, 2018 13 commits
  2. 16 Jan, 2018 17 commits
    • Debargha Mukherjee's avatar
      Add option to use fp quant when new-quant is used · 6cf2b467
      Debargha Mukherjee authored
      Change-Id: I861ccc09454606ce4172db02a52550f9b7a7800c
      6cf2b467
    • Cheng Chen's avatar
      Minor refactor · f9cf5b65
      Cheng Chen authored
      Static local functions.
      Remove av1_ prefix for local functions.
      
      Change-Id: I91cda7b6a1e09683ed70cd74e724db88ddf124dc
      f9cf5b65
    • 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
    • Debargha Mukherjee's avatar
      A small fix for the new-quant b_quantizer · a855cefc
      Debargha Mukherjee authored
      Change-Id: I3698acb824afc5d0f66c2d4a099403f07a373c86
      a855cefc
    • Debargha Mukherjee's avatar
      Rearrange the colorspace/mono deocde logic a bit · e5267697
      Debargha Mukherjee authored
      Change-Id: I0d76adba7c5ea387a9c58076369d1eba89b0fbfe
      e5267697
    • Linfeng Zhang's avatar
      Add av1_convolve_2d_copy_sr_sse2() · 5f0485b4
      Linfeng Zhang authored
      Change-Id: I7776ccaecb6933af47253a15fa8ed8a53346fac1
      5f0485b4
    • Johann's avatar
      remove configure and Makefiles · e07a675f
      Johann authored
      Change-Id: I32b2ce4839c359891841385467cf532b1ebe4a59
      e07a675f
    • Yunqing Wang's avatar
      Store and use single_newmv correctly · 5f4f738e
      Yunqing Wang authored
      The motion vector search result at single reference frame mode is stored
      for later use. There are some issues in current implementation.
      1. single_newmv is only stored for 1st ref_mv, but not for other ref_mv
      values tested.
      2. If single reference mode is skipped and not tested, single_newmv is
      not available.
      3. Interintra mode always use single_newmv as its MV, which may not be
      available as mentioned above.
      To fix it, we store single_newmv for every ref_mv tested. In interintra
      mode, if single_newmv is not available, do motion search to find a MV.
      
      This was revealed by a motion vector unit test failure.
      
      BUG=aomedia:1190
      
      Change-Id: I3e690587644d4c8c31337f37380b796a3d71a3f6
      5f4f738e
    • Linfeng Zhang's avatar
      Update convolve 2d unit testing code · a3e9c506
      Linfeng Zhang authored
      Test all possible sizes.
      
      Change-Id: I042c7eef6d7af149885606c1085fac76f913671e
      a3e9c506
    • Yushin Cho's avatar
      Don't disable segment with delta_q=0 for aq_mode=1 · 625dfac7
      Yushin Cho authored
      Because spatial_segmewntation uses segfeature_active() for all the
      segments regardless of its delta_q value.
      
      BUG=aomedia:1196
      
      Change-Id: Ibcb7b6e42f703fa02d7cb95143c56f8078a9d475
      625dfac7
    • Rostislav Pehlivanov's avatar
      Avoid crosstile dependency on coding spat. segid · 3874cb50
      Rostislav Pehlivanov authored
      BUG=aomedia:1215
      
      Change-Id: Idc2d732e2574b61b5970d3fe9aa3723790a2be36
      3874cb50
    • Frederic Barbier's avatar
      Cleanup dead table · a77c871e
      Frederic Barbier authored
      Change-Id: I545f126f6ba724ff4e41294353c4f11a47c6e853
      a77c871e
    • David Barker's avatar
      loop-restoration: Only use upscaled height · 21f43073
      David Barker authored
      The superres upscale process only generates cm->height many rows
      of pixels, but we were previously using cm->mi_rows*MI_SIZE many.
      The latter number are easily available before upscaling, but we
      ideally don't want to have to upscale extra rows. So we switch
      to only using cm->height many rows inside loop-restoration.
      
      While making this change, I found and fixed an issue with
      av1_get_tile_rect() when using horizontal subsampling + horizontal
      superres.
      
      Finally, note that this change does introduce an edge case which
      isn't obvious from the source code. This has been annotated as a
      comment in save_deblock_boundary_lines().
      
      Change-Id: Ide2bd433d45baa0fb1198353d05eb21b9a903157
      21f43073
    • David Barker's avatar
      Harmonize superres + loop-restoration + lf-across-tiles · 1fee28bd
      David Barker authored
      Properly support loopfiltering-across-tiles in combination with
      superres and/or loop-restoration:
      
      Upscale one tile column at a time, rather than doing the whole
      frame at once. This allows us to correctly support the loop filter
      across tiles flag, by temporarily extending the left/right boundaries
      of each tile column to avoid sampling from adjacent tiles.
      
      This code is also reused by striped-loop-restoration, when upscaling the
      deblocked context above/below each stripe. That way, we i) ensure
      that the upscaling is done consistently, and ii) fix the last remaining
      case where loop-restoration didn't respect the loop filter across tiles
      flag.
      
      This also makes it easy to perform extension of the left/right edges
      of the frame "as needed", so we don't need to extend the frame borders
      immediately after deblocking. This should give marginally better CDEF
      filtering for frames using superres.
      
      Change-Id: I28712a177853a20c9eb2993e740da8ba7c95a8cc
      1fee28bd
    • David Michael Barr's avatar
      [CFL] SSSE3/AVX2 versions of cfl_build_prediction_hbd · c363ab76
      David Michael Barr authored
      Includes unit tests for conformance and speed.
      
      SSSE3/CFLPredictHBDTest:
      4x4: C time = 1436 us, SIMD time = 358 us (~4x)
      8x8: C time = 4821 us, SIMD time = 598 us (~8.1x)
      16x16: C time = 18528 us, SIMD time = 1793 us (~10x)
      32x32: C time = 72998 us, SIMD time = 6400 us (~11x)
      
      AVX2/CFLPredictHBDTest:
      4x4: C time = 1436 us, SIMD time = 398 us (~3.6x)
      8x8: C time = 4924 us, SIMD time = 644 us (~7.6x)
      16x16: C time = 18624 us, SIMD time = 1617 us (~12x)
      32x32: C time = 73509 us, SIMD time = 3635 us (~20x)
      
      Change-Id: Icbcfefbf165facdbd77c9b3861af2bbf464254a0
      c363ab76
    • Sebastien Alaiwan's avatar
      decodetxb.c: homogenize types for local 't' · 8cbf9134
      Sebastien Alaiwan authored
      Change-Id: I4b271259a2c29619ac7a066bedb958400187ac20
      8cbf9134
    • Sebastien Alaiwan's avatar
      Clamp dequantized coefficients · c84e32f1
      Sebastien Alaiwan authored
      Change-Id: I30531cc37243c778210e776f93a82e0d078821f1
      c84e32f1
  3. 15 Jan, 2018 9 commits
    • Yaowu Xu's avatar
      Define two intrinsics for early MSVC versions · 7ba35f6c
      Yaowu Xu authored
      BUG=aomedia:1228
      
      Change-Id: Iaa88810426bd7fe059ededf30956ffc57b897d62
      7ba35f6c
    • Yaowu Xu's avatar
      Change to use an unaligned store · 533ac34d
      Yaowu Xu authored
      This fixes a segmentation fault in unit test:
      AVX2/CFLPredictTest.PredictTest/7
      
      Change-Id: I173340965f465a82019167e0964b9901683b60a8
      533ac34d
    • Jingning Han's avatar
      Make inter block coded in 64x64 unit · cdbc47f0
      Jingning Han authored
      When the coding block size is above 64x64, process the YUV planes
      in each 64x64 block unit.
      
      BUG=aomedia:1055
      
      Change-Id: If66f67514cc5de4a6cff94c9f74e335c241c8c9b
      cdbc47f0
    • Sebastien Alaiwan's avatar
      Remove experimental flag of REF_ADAPT · 3558a8c0
      Sebastien Alaiwan authored
      This experiment has been adopted, we can simplify the code
      by dropping the associated preprocessor conditionals.
      
      Change-Id: Ia2100f102de6d9d5a67ba7178a20a50202839636
      3558a8c0
    • Rostislav Pehlivanov's avatar
      Skip writing spatial seg ids on non-keyframes · 2d4322ba
      Rostislav Pehlivanov authored
      Was forgotten when commited.
      Happened only when temporal prediction was on.
      
      Change-Id: I08c3f03f3442d0b0c6c9aa0bb2a3943dcdb303ab
      2d4322ba
    • Sebastien Alaiwan's avatar
      Remove XIPHRC experiment · 41cae6a6
      Sebastien Alaiwan authored
      This experiment has been abandonned for AV1.
      
      Change-Id: Ib83ebbe13e8f50e4151f9de3d0158a5463436177
      41cae6a6
    • Ralph Giles's avatar
      Mark AOM_QM matricies const. · 90243cf9
      Ralph Giles authored
      These large (200 KB) static stables are functionally read-only. Marking
      them const moves them to the read-only section of shared libraries,
      reducing memory footprint when multiple application processes are
      running simultaneously.
      
      Change-Id: I6b66ea8f512147f9762728ae01cea02a0fa71300
      90243cf9
    • Yaowu Xu's avatar
      Remove 4:4:0 source videos · 7d56ad44
      Yaowu Xu authored
      4:4:0 has been removed from AV1 profiles, therefore there is no need
      to have these files for testing.
      
      Change-Id: Iaea1a7bba5f3211f34dfbc5f7975841cde277cf9
      7d56ad44
    • Zoe Liu's avatar
      Turn on ref-adapt by default · 7736239d
      Zoe Liu authored
      This experiment of ref-adapt removes the option of COMPOUND_REFERENCE
      from the frame level reference_mode setup, and hence removes 1 bit
      in the frame header syntax. It now allows only SINGLE_REFERENCE or
      REFERENCE_MODE_SELECT to specify in the frame header.
      
      No noticeable coding performance impact has been observed.
      
      Change-Id: I1bed64f927f31d396e8174a4f0c9119242bf0b5c
      7736239d
  4. 14 Jan, 2018 1 commit