1. 21 Feb, 2018 15 commits
    • Zoe Liu's avatar
      Add encoder support for frame_refs_signaling · 6b172bba
      Zoe Liu authored
      Currently set cm->frame_refs_short_signaling as 0 by default. It will
      write the one extra bit to the frame header, and leave all the encoder
      setup the same as the baseline. It is in the TODO list for the encoder
      side implementation for cm->frame_refs_short_signaling == 1.
      Change-Id: Iabcc7618c9a52b7bb975b69e2d134f49a969944b
    • Imdad Sardharwalla's avatar
      Don't read chroma delta_lflevels in mono mode · f74b4abd
      Imdad Sardharwalla authored
      There are 4 delta_lflevels (FRAME_LF_COUNT=4), corresponding to 2 for the luma
      plane and 1 for each of the U and V planes. In monochrome mode we do not need
      to use/encode/decode the last two values, and so in this case the for loops all
      terminate at FRAME_LF_COUNT - 2 rather than FRAME_LF_COUNT.
      Change-Id: Ieb60cce9e39287a385e7f74d9009aac1f0f23e54
    • Cheng Chen's avatar
      Turn on jnt_comp by default · 238bc287
      Cheng Chen authored
      Turn of CONFIG_RD_DEBUG when jnt_comp is on, to avoid stack size
      Make subpel processing for width <= 4 correct.
      Change-Id: Ic1de96ff2eff4a80543e19531fa75511b0a2f427
    • Sebastien Alaiwan's avatar
      aomenc: add an option to disable loop-restoration · 1ed20248
      Sebastien Alaiwan authored
      This mirrors the behavior of the corresponding option for CDEF.
      Change-Id: Ifbdacb1bedbde2fa740086593384567a2f44b342
    • 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
    • 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.
      This also clears ubsan warnings in unit tests.
      Change-Id: I98b72b5fd2a885661542bbc5f8da1886d77f889f
    • 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.
      Change-Id: I92369676ae1bea2d6dd5f09af612f4177560ae29
    • Cheng Chen's avatar
      Remove decoder keyframe reset of current_video_frame · b9a12729
      Cheng Chen authored
      Change-Id: I278be8e79f2eb99f711c3d8f98c801f2f1f7bd38
    • Cheng Chen's avatar
      Make subpel_avg_variance unit-test's input aligned · 04e042ad
      Cheng Chen authored
      Make test input aligned, then jnt_comp's subpel_avg_variance simd
      implementations pass unit tests.
      Change-Id: Ic85442f3252ba4e8707e35fbd6344fd662aafd74
    • Hui Su's avatar
      Change to names of some intra modes · 69ae7b86
      Hui Su authored
      To match the corresponding prediction angle.
      Change-Id: I0441a0a25f165c1fdeb4eba915c6ca83b0514c4d
    • 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
      Change-Id: I799b541a92f8bc928c8c34e918de89313c22efb9
    • 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
    • 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
    • Yaowu Xu's avatar
      Add initializations for stack arrays · 637586ec
      Yaowu Xu authored
      Change-Id: I8ca90f1b0d7dfe92078c611f66dcb19e70a6c1e0
    • Zoe Liu's avatar
      [NORMATIVE] Error resilience overrules refs signaling · 592d73ec
      Zoe Liu authored
      For FRAME_REFS_SIGNALING, when error resilience mode is on for inter
      frames, no frame refs signaling options will be provided. Hence no
      additional bit is added and the reference frame signaling stays the
      same as baseline.
      Change-Id: I8ff9688c278373acaae3ee4fb74e9a392132f54d
  2. 20 Feb, 2018 16 commits
    • Debargha Mukherjee's avatar
      Debargha Mukherjee authored
      Also includes other clean-ups.
      Change-Id: If0794cb16fdc8844859a614ed524c761fb46eddf
    • 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
      Change-Id: I8a91a4c68fa24b4cddf665ee770f397c3610ba4b
    • Yaowu Xu's avatar
      Add initialization for a stack array · 4c31519d
      Yaowu Xu authored
      Change-Id: If94c6404836fefcf3352f1a4f380066965ca68ce
    • Jingning Han's avatar
      Turn on error resilient mode in frame drop unit test · fb04a9ab
      Jingning Han authored
      Turn on the error resilient mode in the frame dropping unit test.
      The temporal mv reference will be disabled in error resilient mode
      by design.
      Change-Id: Id777061bbdc376f8d1634c1286fce8094fdcc04e
    • 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.
      Change-Id: Id9ec295de28c0831457c8fe9ce5fd2085e3b5459
    • 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
    • Frederic Barbier's avatar
      Remove NEW_QUANT experiment · e111cba8
      Frederic Barbier authored
      This experiment has been abandonned for AV1.
      Change-Id: I924d172f7ce85b2422bace44684329fcbf71cb5e
    • 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.
      Change-Id: I2d4ff0e367a4df107235c1e7066dd28cb2c60431
    • Andrey Norkin's avatar
      [NORMATIVE] Film grain bug fixes · 0c294fab
      Andrey Norkin authored
      Change-Id: Ibe94d826b06e44e4ffad5a6ddc24f962b889ae17
    • 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
    • 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
    • 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
    • Yaowu Xu's avatar
      Reset txk_type after reset_tx_size() · 9641a89b
      Yaowu Xu authored
      Change-Id: Ie52ef049a33a47915869a424f2ca73d706d8e5d0
    • Yaowu Xu's avatar
      Remove CONFIG_EXT_QM · e11b68d1
      Yaowu Xu authored
      The experiment is now fully adopted.
      Change-Id: I09960ed25defae98d1c3e5ee8bc93691f79677ec
    • Yaowu Xu's avatar
      Conditiaonlly build partial_idct_test · 31706b47
      Yaowu Xu authored
      This fixes a build warning.
      Change-Id: I1a7ca22e2a793c873df17d2335e964f4a82f7ea1
    • Zoe Liu's avatar
      Align function names with naming conventions · d902b74a
      Zoe Liu authored
      Change-Id: Ia5ab13d7219ae79e685c999692a9f8bc35f0d360
  3. 19 Feb, 2018 9 commits
    • Yaowu Xu's avatar
      Change to use 8bit for qmatrix entries · cd44a054
      Yaowu Xu authored
      This is to reduce the size of static tables.
      Change-Id: Id9a00352560af38eb381f403510ec3f3d7f1c29a
    • Hui Su's avatar
      Add cdf_update_mode experiment · 1cb1c002
      Hui Su authored
      Allow the CDF update to operate in different modes, e.g. update vs no
      The update mode is transmitted in the uncompressed frame header of
      every keyframe and intra-only frame.
      This patch only adds bitstream signaling and API support. The
      implementation of the update modes will be in later patches.
      Change-Id: Ic9fcd60e8a75f9c01f414253823d78cf9b3113dd
    • Luc Trudeau's avatar
      Fix warning in idct_intrin_sse2.c · cd93bf42
      Luc Trudeau authored
      In av1_iht8x4_32_add_sse2, iidtx8 was using uninitialized values for
      rows 4,5,6,7.
      Change-Id: I12b41cedde6cdcc4c153a375571853a10d26c2df
    • Jonathan Matthews's avatar
      mfmv should check intra_only for reference frames · 95fd170b
      Jonathan Matthews authored
      This is correct in the spec, but the code wasn't doing the check.
      Change-Id: I6e22f78d724583ad4cfdbbffc15e61b636810f76
    • Hui Su's avatar
      Reset filter-intra flag when intrabc is on · 8ea6e5bf
      Hui Su authored
      Change-Id: I19c49e5a5f0df0d767f156dcf006e5bf105bf6a0
    • Jonathan Matthews's avatar
      alloc_restoration_buffers must update stride · c9fd4732
      Jonathan Matthews authored
      Introduced in Change-Id: I773f7ec9202d17c57bba44a698350e05101fa871
      Change-Id: I147cce7c02db7144d8687855885910dbf8d9ab29
    • Hui Su's avatar
      Reset mode info before decoding intrabc · f4d8c16e
      Hui Su authored
      Fixes the mismatches reported in the issue tracker.
      Change-Id: If60ef1c6cb5c28e21a6d6e71379fe1cb46ab6f0a
    • Maxym Dmytrychenko's avatar
      SSE2 optimization for lpf 16_dual implementations · d6a7dd19
      Maxym Dmytrychenko authored
      covers horizontal and vertical variations and
      including low and high bitdepth types.
      Appropriate tests are enabled
      Performance changes, SSE2 over C:
      Horizontal methods: up to  3x
      Vertical   methods: up to  2x
      Change-Id: If430a916394c7befa743e4fbaa9913fd37c535ed
    • Deepa K G's avatar
      Some fixes and clean-ups on convolve functions · b4d4aff4
      Deepa K G authored
      Make the av1_convolve_x_sr_sse2/avx2 support various bit
      shift options.
      Addition of asserts in the convolve functions.
      Change-Id: Ib6d1ada6c00a20e6e498af2672bd0bb76040d7d0