1. 21 Feb, 2018 7 commits
    • Sebastien Alaiwan's avatar
      Remove experimental flag of LV_MAP · cad5ebce
      Sebastien Alaiwan authored
      This experiment has been adopted, we can simplify the code
      by dropping the associated preprocessor conditionals.
      
      Change-Id: Ic3438799335c6cd05f170302f49bd47e1f705c24
      cad5ebce
    • Jingning Han's avatar
      [NORMATIVE] Limit valid frame distance for mfmv projection · 248b9563
      Jingning Han authored
      Set the maximum frame distance to be 32. If a reference motion
      vector needs to span across two frames at distance more than 32,
      drop the use of this reference motion vector.
      
      BUG=aomedia:1394
      
      This also clears ubsan warnings in unit tests.
      
      Change-Id: I98b72b5fd2a885661542bbc5f8da1886d77f889f
      248b9563
    • Jingning Han's avatar
      [NORMATIVE] Fix top right check condition in vert_a · 44cb357e
      Jingning Han authored
      Allow the right side rectangular block to access the top right
      neighbor if available in vert_a partition.
      
      BUG=aomedia:1343
      
      Change-Id: I92369676ae1bea2d6dd5f09af612f4177560ae29
      44cb357e
    • Hui Su's avatar
      Change to names of some intra modes · 69ae7b86
      Hui Su authored
      To match the corresponding prediction angle.
      
      Change-Id: I0441a0a25f165c1fdeb4eba915c6ca83b0514c4d
      69ae7b86
    • Joe Young's avatar
      [NORMATIVE][intra-edge2] Add header disable flag · db5eb4cd
      Joe Young authored
      Add a flag disable_intra_edge_filter in the uncompressed header
      of key/all-intra frames to disable corner, edge, and upsampling
      filter with ext-intra modes.
      
      This adds an experiment flag: intra_edge2
      
      BUG=aom:1398
      
      Change-Id: I799b541a92f8bc928c8c34e918de89313c22efb9
      db5eb4cd
    • Debargha Mukherjee's avatar
      Consolidate all post_rounding for compound modes · d69927da
      Debargha Mukherjee authored
      The do_post_rounding flag can now be removed since it is equivalent
      to is_compound.
      
      Change-Id: I3a18d853571b7363a87e65601c82d1f345b3dcd2
      d69927da
    • Debargha Mukherjee's avatar
      Clean up and use do_post_rounding consistently · c3a8ae46
      Debargha Mukherjee authored
      This patch simplifies the setting and use of the do_post_rounding
      flag consistently across all convolve/warp operations. It is always
      set now to 1 for compound modes, but the masked blending operation
      can subsequently turn it off.
      To accomplish this, for the warped case, the use of the conv_params->dst
      buffer is made consistent with the other non-warp convolves,
      in the sense that it is used only when is_compound is 1.
      
      Change-Id: If3a37ffa65c3ca75f1df66ca427e6b5df86ac72f
      c3a8ae46
  2. 20 Feb, 2018 11 commits
    • Debargha Mukherjee's avatar
      Rep HORSHEAR_REDUCE_PRECISION_BITS w/ ROUND0_BITS · 66b98991
      Debargha Mukherjee authored
      Replace HORSHEAR_REDUCE_PRECISION_BITS with ROUND0_BITS for
      consistency.
      Also includes other clean-ups.
      
      Change-Id: If0794cb16fdc8844859a614ed524c761fb46eddf
      66b98991
    • Yunqing Wang's avatar
      Ref_mv: no need to adjust MV precision for spatial neighbours · a458afb5
      Yunqing Wang authored
      cm->allow_high_precision_mv and cm->cur_frame_force_integer_mv are
      frame-level decisions. In reference MV search, no need to adjust
      MV precision for spatial neighbours. This patch doesn't change
      bitstreams.
      
      Change-Id: I8a91a4c68fa24b4cddf665ee770f397c3610ba4b
      a458afb5
    • Jingning Han's avatar
      [NORMATIVE mfmv] Store one mv per decoded block · 61bf3d8a
      Jingning Han authored
      When the block is coded in the bi-directional compound mode,
      store up to one mv that points towards last_frame side, instead
      of storing up to two mvs each corresponds to one side.
      
      BUG=aomedia:1412
      
      Change-Id: Id9ec295de28c0831457c8fe9ce5fd2085e3b5459
      61bf3d8a
    • Ryan's avatar
      rename the simd function name to reflect the number of taps used. · 2680275a
      Ryan authored
      change the simd function pointer name from 16 tap to 14 tap to reflect
      teh actual number of filter taps that are used in the deblocking filter.
      
      Change-Id: I6f3683878465028f12c17f7daf8330ea8fc9e640
      2680275a
    • Frederic Barbier's avatar
      Remove NEW_QUANT experiment · e111cba8
      Frederic Barbier authored
      This experiment has been abandonned for AV1.
      
      Change-Id: I924d172f7ce85b2422bace44684329fcbf71cb5e
      e111cba8
    • Zoe Liu's avatar
      [NORMATIVE] Add decoder support for frame_refs_signaling · b57fee02
      Zoe Liu authored
      One bit is added to the frame header, to signal whether the references
      for inter frames will be short-signaled.
      
      When the bit is set, only 6 bits are used at the frame header level to
      signal the choices of LAST_FRAME and GOLDEN_FRAME out of the eight
      buffered references. All the other 5 references will be specified
      using the frame offset info. Hence, compared to the baseline, the use
      of frame_refs_signaling provides 2 scenarios:
      
      (1) Reference short-signaling:
          3*7 - (1+3*2) = 14 bits are saved in the frame header;
      (2) Reference regular-signaling:
          1 bit is added to the frame header.
      
      BUG=aomedia:1392
      
      Change-Id: I2d4ff0e367a4df107235c1e7066dd28cb2c60431
      b57fee02
    • Imdad Sardharwalla's avatar
      Fix and clean up warp filter SIMD code · fa904a09
      Imdad Sardharwalla authored
      - Fixed SSE4.1 implementation of the highbd warp filter.
      - Removed the SSE2 and SSSE3 implementations of both the lowbd and highbd
        versions of the warp filter, as these will not work with CONFIG_JNT_COMP=1.
        (There are now only SSE4.1 implementations)
      - The warp filter tests have been correspondingly updated.
      
      Change-Id: I2bc1ebb69f2ed876803902908586c3848c03c11e
      fa904a09
    • David Barker's avatar
      [non-normative] Fix warnings with !CONFIG_LOWPRECISION_BLEND · aec60dd8
      David Barker authored
      The compiler was complaining about the 'bd' parameter being
      unused in two functions.
      
      Change-Id: Iac2aa86234bb9554bb2dfa6ee6628bd1d09bfb1e
      aec60dd8
    • Cheng Chen's avatar
      Fix jnt_comp simd function in warp · 8f726212
      Cheng Chen authored
      Change _mm_srl_epi32 to _mm_sra_epi32. The difference is keeping
      sign bits in shifting. Otherwise there are mismatchings between simd and c
      functions, caught by unit tests.
      
      The other change is fix a typo.
      
      Change-Id: I18a9e9e12a661d181e9e904ffc64d802d624a36d
      8f726212
    • Yaowu Xu's avatar
      Remove CONFIG_EXT_QM · e11b68d1
      Yaowu Xu authored
      The experiment is now fully adopted.
      
      Change-Id: I09960ed25defae98d1c3e5ee8bc93691f79677ec
      e11b68d1
    • Zoe Liu's avatar
      Align function names with naming conventions · d902b74a
      Zoe Liu authored
      Change-Id: Ia5ab13d7219ae79e685c999692a9f8bc35f0d360
      d902b74a
  3. 19 Feb, 2018 9 commits
  4. 18 Feb, 2018 3 commits
    • Jingning Han's avatar
      [NORMATIVE] Enable mfmv for low latency settings · a127b42d
      Jingning Han authored
      Tested in the low latency setting. Comparing the three options:
      
      (1). Cut off temporal mv altogether.
      (2). Use collocated mv referncing.
      (3). Use mfmv referencing.
      
      The current baseline is using (1).
      
      The results are:
      (2) improves the compression performance over (1) by -0.59% for
      lowres and -0.65% for midres.
      
      (3) improves over (1) by -1.05% for lowres and -1.43% for midres
      
      BUG=aomedia:1403
      
      Change-Id: Ie683110ecbe16131f8aea123bca490f8897ebdd8
      a127b42d
    • Yunqing Wang's avatar
      Allocate restoration buffers only when necessary · b2f3adf3
      Yunqing Wang authored
      The restoration buffers are freed and allocated at every frame, which
      is not necessary. This patch makes the allocation to happen only when
      it is necessary.
      
      Change-Id: I773f7ec9202d17c57bba44a698350e05101fa871
      b2f3adf3
    • Debargha Mukherjee's avatar
      Merge HIGHPRECISION_INTBUF into LOWPRECISION_BLEND · 948f2a99
      Debargha Mukherjee authored
      The HIGHPRECISION_INTBUF=1 enables round_0 to be 3.
      This is now merged into the LOWPRECISION_BLEND flags
      for ease of management.
      
      Change-Id: Ia336f24ea87d824d7034012cfed9c4c3129bf6eb
      948f2a99
  5. 17 Feb, 2018 5 commits
    • Zoe Liu's avatar
      [NORMATIVE] Unify context design for single ref · 3b353474
      Zoe Liu authored
      The CL makes the context design for single reference frame coding the
      same as that for the compound reference frame coding. There are 3
      contexts designed for each of the binary symbols for the single
      reference frame scenario, and the designed contexts simply rely on the
      counts of the references used in the neighboring two blocks.
      
      Once this CL is merged, the coding of the reference frames, regardless
      of single prediction or compound prediction, will all follow the same
      context design pattern for all the binary symbols. The design logic is
      much simpler and the lines of code for each binary symbol context
      identification are reduced by 80%.
      
      Further, this CL has obtained a small coding gain for 30 frames with
      the default coding tools:
      
      lowres: avg_psnr -0.015%; ovr_psnr -0.021%; ssim -0.002%
      midres: avg_psnr -0.108%; ovr_psnr -0.139%; ssim -0.135%
      
      BUG=aomedia:1402
      BUG=aomedia:973
      
      Change-Id: Ia72a1d18e85ac3a05308675b60b95f80f2219c46
      3b353474
    • Debargha Mukherjee's avatar
      Add a wrapper to 8-bit scaled convolve function · 3ffa0fef
      Debargha Mukherjee authored
      This addesses a crash in a situation where the scaled convolve
      function is called without a valid dst buffer in the conv_params
      structure.
      
      Change-Id: Ia4a0a1213f06447155d6c92aa9efc183d8c4a79c
      3ffa0fef
    • Jingning Han's avatar
      Silience compiler warning when ext-partition is off · 84597cca
      Jingning Han authored
      Change-Id: I24e98062fec2cf73e294d34bf02419f7917a9bf0
      84597cca
    • Jingning Han's avatar
      [NORMATIVE] Fix top right mv check condition for VERT_A partition · 56066252
      Jingning Han authored
      When a coding block runs VERT_A partition, the coding order does
      not follow raster order. This requires a special handle on the
      bottom left square block to disable its reference towards the
      top-right corner. Prior to this change the codebase would disable
      the bottom-right square, as well as the right rectangular blocks,
      from referencing the top-right mv. This commit fixes such check
      condition to allow the right rectangular block to access the top
      right mv.
      
      BUG=aomedia:1343
      
      Change-Id: I87049f0cec8ed7557a87c3fdef83e01498bbcd75
      56066252
    • Jingning Han's avatar
      Remove unused context models for drl_index · 233c7627
      Jingning Han authored
      Remove deprecated context models for drl index coding.
      
      BUG=aomedia:1208
      
      Change-Id: If255fa93d0c746738f0fc005464388e790c89b63
      233c7627
  6. 16 Feb, 2018 5 commits