1. 21 Feb, 2018 7 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.
      
      BUG=aomedia:1392
      
      Change-Id: Iabcc7618c9a52b7bb975b69e2d134f49a969944b
      6b172bba
    • 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.
      
      BUG=aomedia:1410
      
      Change-Id: Ieb60cce9e39287a385e7f74d9009aac1f0f23e54
      f74b4abd
    • 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
      1ed20248
    • 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
    • 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
    • Yaowu Xu's avatar
      Add initializations for stack arrays · 637586ec
      Yaowu Xu authored
      BUG=aomedia:1363
      
      Change-Id: I8ca90f1b0d7dfe92078c611f66dcb19e70a6c1e0
      637586ec
  2. 20 Feb, 2018 6 commits
  3. 19 Feb, 2018 3 commits
    • 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
      update.
      
      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
      1cb1c002
    • Hui Su's avatar
      Reset filter-intra flag when intrabc is on · 8ea6e5bf
      Hui Su authored
      Change-Id: I19c49e5a5f0df0d767f156dcf006e5bf105bf6a0
      8ea6e5bf
    • Andrey Norkin's avatar
      [NORMATIVE] Film grain scale parameter · a840cde6
      Andrey Norkin authored
      BUG=aomedia:1400
      
      Change-Id: I9cf4f0de4fb15295e4acbd8b511d93abd7897165
      a840cde6
  4. 17 Feb, 2018 2 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
    • Jingning Han's avatar
      Fix rate estimate when optimize_b is off · 70e0fdea
      Jingning Han authored
      Fix the rate cost count when the optimize_b route is set off in
      the rate-distortion optimization process. Thanks to pohhsu@microsoft
      for finding this issue and pointing the fix.
      
      Change-Id: I54d9ec8102792a1575fc66bc6be2003e94eeb488
      70e0fdea
  5. 16 Feb, 2018 7 commits
  6. 15 Feb, 2018 3 commits
    • Jingning Han's avatar
      Reduce blk_skip array size · ca3f0395
      Jingning Han authored
      Reduce the blk_skip array size to the maximum txb numbers in a
      coding block. This makes the speed 1 about 5% faster for smaller
      resolution clips.
      
      Change-Id: I1812dc4d403e08f0566ead8a14c6046e505bb849
      ca3f0395
    • Yaowu Xu's avatar
      Remove CONFIG_TX64X64 · d3d4159f
      Yaowu Xu authored
      The experiment is fully adopted.
      
      Change-Id: I6cc80a2acf0c93c13b0e36e6f4a2378fe5ce33c3
      d3d4159f
    • David Barker's avatar
      [NORMATIVE-SYNTAX, intrabc] Disallow intrabc+superres · 218556e2
      David Barker authored
      Superres should not be used together with intrabc, for the same
      reasons why the other loop filters are disabled when intrabc is
      used. However, we actually read superres information first,
      so the simplest change is to only read allow_intrabc if superres is off.
      
      BUG=aomedia:1384
      
      Change-Id: I55c4c8ace72ab3fac9417da5cf803883be7efb84
      218556e2
  7. 14 Feb, 2018 9 commits
    • Linfeng Zhang's avatar
      Implement fdct4x8_new_sse2 and fadst4x8_new_sse2 · 043f4964
      Linfeng Zhang authored
      Change-Id: I9ab260c5ca31fe7e06bfc0f806893463c5255c45
      043f4964
    • Linfeng Zhang's avatar
      Implement fdct4x4_new_sse2 · 1fffc1f4
      Linfeng Zhang authored
      Change-Id: I5b905d54f7e551b15dac5f9cfd4e6d96e19d52c3
      1fffc1f4
    • Linfeng Zhang's avatar
      Enable av1_lowbd_fwd_txfm2d_4x8_sse2 · 686c5979
      Linfeng Zhang authored
      Forgot to put it in the function table.
      
      Change-Id: I86192158f74df84fca6c4a3dbda8b01659f6c9bd
      686c5979
    • Linfeng Zhang's avatar
      Implement av1_lowbd_fwd_txfm2d_8x4_sse2 · 7bd00743
      Linfeng Zhang authored
      So far the implemented av1_lowbd_fwd_#x#_sse2 provides 10% encoder
      speed up on speed 1.
      
      Change-Id: I3dab438c4498059262b065300743ba1519db64b4
      7bd00743
    • Michelle Findlay-Olynyk's avatar
      hash_based_trellis speed feature update · dea531da
      Michelle Findlay-Olynyk authored
      Add speed feature that uses hash tables to
      reuse deltas from previously found optimized
      coefficients in av1_optimize_txb. This skips some
      expensive optimize_txb calls.
      
      Work stopped (no current benefit):
      Current setup has worse speed (~1%), and is
      turned off by default in speed_features.c.
      Overall PSNR was ~0.1% worse. See
      go/hashBasedTrellis for feature details.
      
      Requires hash_me.
      
      Change-Id: Id12ada82984ea6682e2b6f27534fa57f3a3abb4a
      dea531da
    • Imdad Sardharwalla's avatar
      Prevent undefined behaviour for AMVR experiment · bf2cc016
      Imdad Sardharwalla authored
      Sequences starting with intra-only frames previously resulted in undefined
      behaviour with CONFIG_AMVR == 1, as seq_force_integer_mv was only read for
      keyframes.
      
      This patch makes changes as follows:
      
      - The syntax element force_screen_content_tools has been added to the
        SequenceHeader struct, and is read and written correspondingly
      
      - seq_force_integer_mv has been renamed to force_integer_mv and moved to the
        SequenceHeader struct, and is read and written correspondingly (provided that
        force_screen_content_tools != 0)
      
      - The conditional reading/writing of allow_screen_content_tools now happens for
        every frame after reading/writing error_resilient_mode (CONFIG_OBU == 1) or
        the sequence header (CONFIG_OBU == 0)
      
      - The conditional reading/writing of cur_frame_force_integer_mv now happens for
        every frame after reading/writing allow_screen_content_tools
      
      BUG=aomedia:1048
      
      Change-Id: I689476fc2fa781dc8ec6fc8da91926cc8cfd3dc2
      bf2cc016
    • Yunqing Wang's avatar
      [NORMATIVE] Consolidate reference mv clamping · 3e225434
      Yunqing Wang authored
      Clamp_mv_ref happens in multiple places in ref_mv search, which can be
      convoluted as reported in issue 1124. This change is to consolidate
      the clamping into one place.
      
      Borg test result on lowres set:
      avg_psnr:    ovr_psnr:   ssim:
        0.000       0.000      0.001
      
      BUG=aomedia:1377
      BUG=aomedia:1124
      BUG=aomedia:857
      
      Change-Id: I1649d5b5f37683c9c30e493c6eed13a808ab543a
      3e225434
    • Zoe Liu's avatar
      Use the correct macro for the context number · 95dfd0bf
      Zoe Liu authored
      Change-Id: I94f739840b90688506ebf5a4e7cf355cd6fb75ed
      95dfd0bf
    • Hui Su's avatar
      Remove if() that is always true in select_tx_block() · 85e75f15
      Hui Su authored
      And some cosmetic changes.
      
      Change-Id: Ibbc62bbb023d80ceee83120b4f6eb2a95b1d1a64
      85e75f15
  8. 13 Feb, 2018 3 commits