1. 21 Feb, 2018 13 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
    • 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
    • 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 14 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
      [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
    • Zoe Liu's avatar
      Align function names with naming conventions · d902b74a
      Zoe Liu authored
      Change-Id: Ia5ab13d7219ae79e685c999692a9f8bc35f0d360
  3. 19 Feb, 2018 12 commits
  4. 18 Feb, 2018 1 commit
    • 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
      Change-Id: Ie683110ecbe16131f8aea123bca490f8897ebdd8