1. 30 Oct, 2017 4 commits
    • Debargha Mukherjee's avatar
      Remove compound-segment/wedge config flags · 371968cd
      Debargha Mukherjee authored
      Change-Id: I39cfbb135add0553cadf64481b13786831fbdddd
      371968cd
    • Sebastien Alaiwan's avatar
      Remove experimental flag of GLOBAL_MOTION · 48795807
      Sebastien Alaiwan authored
      This experiment has been adopted, we can simplify the code
      by dropping the associated preprocessor conditionals.
      
      Change-Id: I9c9d6ef5317798cbf237307a9754fe7e03bdda47
      48795807
    • Rupert Swarbrick's avatar
      Stop backward adaptation if EXT_TILE + cm->large_scale_tile · 84b05ac1
      Rupert Swarbrick authored
      Backwards adaptation doesn't really make sense in this context,
      because ext-tile means the decoder might not decode every tile in the
      frame, in which case it can't work out how to adapt probabilities.
      
      It turns out that the tests in the tree were passing when
      SIMPLE_BWD_ADAPT was disabled because (presumably) all of them
      happened to decode every tile, so backward adaptation worked as you'd
      expect. With SIMPLE_BWD_ADAPT, there's some code in get_tile_buffers
      to figure out which is the largest tile. This wasn't mirrored in
      get_ls_tile_buffers, which caused the encoder and decoder to get out
      of sync because they ended up with different CDFs. You also can't
      easily fix things in get_ls_tile_buffers because that code is careful
      not to calculate the size of tiles it doesn't need.
      
      BUG=aomedia:917
      
      Change-Id: Ia926692f86ca1466252108e09da3de590d45f048
      84b05ac1
    • Debargha Mukherjee's avatar
      Remove experimental flag for rect-tx · 11812967
      Debargha Mukherjee authored
      Change-Id: I0cc53a03f07a11a6f7ea0570ff4ee8cf7c18c5aa
      11812967
  2. 28 Oct, 2017 1 commit
    • Cheng Chen's avatar
      JNT_COMP: 6. support wedge · bdd6ca81
      Cheng Chen authored
      Support compound_segment and wedge.
      JNT_COMP is a competitor to compound_segment and wedge. They are
      mutually exclusive.
      
      Change-Id: Id93c36de44a69008182424f40325e42e699bedcd
      bdd6ca81
  3. 27 Oct, 2017 8 commits
    • Joe Young's avatar
      Ext-intra modification/tuning · 3ca43bf0
      Joe Young authored
      For ext-intra direcation intra modes:
      
      1. Use neighbor block modes to modify edge filtering strength
         Coding gain (lowres/midres/hdres):
           (8 keyframes)
           PSNR: -0.19 -0.22 -0.10
           SSIM: -0.29 -0.27 -0.13
      
      2. Use context-based cdf to code angle_delta syntax
           (8 keyframes)
           PSNR: -0.20 -0.24 -0.27
           SSIM: -0.29 -0.33 -0.37
      
      3. Filter corner sample:
           (8 keyframes)
           PSNR: -0.01 -0.02 -0.05
           SSIM: -0.03 -0.04 -0.05
      
      Combined Bd-rate improvement for 8 keyframes
           PSNR: -0.40 -0.47 -0.40
           SSIM: -0.57 -0.60 -0.51
      
      Change-Id: Id47ac17b6bf91cd810b70cacfc5b457341f417f3
      3ca43bf0
    • Urvang Joshi's avatar
      Superres: Fix writing/reading of denominator. · 8301018d
      Urvang Joshi authored
      Range is 9 to 16, and not 8 to 15.
      
      BUG=aomedia:972
      
      Change-Id: I7de6cea16a6377d9cd3b2af73efc841b42dad1fa
      8301018d
    • Rupert Swarbrick's avatar
      Fix ext-tile encoding when not using compressed header · 53685900
      Rupert Swarbrick authored
      The compressed header size is now sometimes not signalled and the
      encoder code hadn't been updated to match.
      
      Note: This mistake caused the failing test tracked in bug 917 to fail,
            but fixing it doesn't fix the test: the decoder now staggers on
            a little further before getting out of sync.
      
      BUG=aomedia:917
      
      Change-Id: Ic0de99ede778844c4dbdd34dba3fba9c1fa2d95f
      53685900
    • Rupert Swarbrick's avatar
      Reset restoration info at start of large_scale_tiles too · 7546b304
      Rupert Swarbrick authored
      Since commit 6c545216, loop restoration coefficients are written inside
      tiles data. Since the Wiener and Sgrproj coefficients are
      delta-encoded (and tiles must be decoded independently) this means we
      must call set_default_wiener and set_default_sgrproj at the start of
      encoding and decoding each tile. That patch missed doing so when
      encoding large scale tiles (part of the EXT_TILE experiment). This
      adds the missing lines.
      
      Note: This caused AV1/AVxEncoderThreadLSTest.EncoderResultTest/3 to
            fail with --enable-ext-tile, which is tracked in bug
            917. Unfortunately, there's something else going wrong that
            means the test is still failing: I'll address that in a separate
            patch.
      
      BUG=aomedia:917
      
      Change-Id: I5bd8e9d7f7a2abd60779abf170185a1c5b090474
      7546b304
    • Cheng Chen's avatar
      JNT_COMP: 5. Support compound_segment · 3392c436
      Cheng Chen authored
      Let jnt_comp work with compound_segment. When frame distance weights
      are used, compound_segment blending is turned off. When normal compound
      mode is used, compound_segment blending is searched. The rdcost should
      select between {frame distance weights, normal compound,
      compound_segment blending}.
      
      Change-Id: I162d1d204ba6a5976538357d9dbc71fc5b1aa8d5
      3392c436
    • Cheng Chen's avatar
      JNT_COMP: 4. add context and entropy read/write · 0a7f2f51
      Cheng Chen authored
      Change-Id: I0e6f7ab981e31f7120105515f6204568b6dc82d3
      0a7f2f51
    • Rupert Swarbrick's avatar
      Fix build with --enable-obu · 70f0eb33
      Rupert Swarbrick authored
      It seems that the change in commit 28444be6 missed this line (which
      only fails to compile with --enable-debug because it's in an assert)
      
      BUG=aomedia:952
      
      Change-Id: Ibe6200b2928d198c73f3e9c9f0badcbdaffcac49
      70f0eb33
    • RogerZhou's avatar
      Fixed build conflict (amvr,intrabc). · 10a0380a
      RogerZhou authored
      Change-Id: Ibfeb424bf0ebab7bbeb69f6f6df24a4f4924ec97
      10a0380a
  4. 26 Oct, 2017 3 commits
  5. 25 Oct, 2017 1 commit
    • Yue Chen's avatar
      Optimizations for filter_intra · 57b8ff68
      Yue Chen authored
      Reduce number of modes from 10 to 6, and disable fi modes in UV.
      To reduce complexity, apply filter directly without subtracting
      the estimated means.
      
      Change-Id: Iaf78d92d31e4a7cc30ea7863b57a9611c5f503e6
      57b8ff68
  6. 24 Oct, 2017 3 commits
    • Hui Su's avatar
      Remove experimental flag of chroma_sub8x8 · 9fa96234
      Hui Su authored
      Change-Id: I32c5015bedef07f58413c679b4aaf30651a357b9
      9fa96234
    • Sebastien Alaiwan's avatar
      Remove compile guards for VAR_TX experiment · fb838778
      Sebastien Alaiwan authored
      This experiment has been adopted.
      
      Change-Id: Ife4c18a59791268b7ac0de5a8a08e762a042cae2
      fb838778
    • Rupert Swarbrick's avatar
      Expose av1_loop_restoration_filter_unit in restoration.h · dd6f09ab
      Rupert Swarbrick authored
      This patch also does a certain amount of rejigging for loop
      restoration coefficients, grouping the information for a given
      restoration unit into a structure called RestorationUnitInfo. The end
      result is to completely dispense with the RestorationInternal
      structure.
      
      The copy_tile functions in restoration.c, together with those
      functions that operate on a single stripe, have been changed so that
      they take pointers to the top-left corner of the area on which they
      should work, together with a width and height.
      
      The same isn't true of av1_loop_restoration_filter_unit, which still
      takes pointers to the top-left of the tile. This is because you
      actually need the absolute position in the tile in order to do striped
      loop restoration properly.
      
      Change-Id: I768c182cd15c9b2d6cfabb5ffca697cd2a3ff9e1
      dd6f09ab
  7. 23 Oct, 2017 3 commits
  8. 21 Oct, 2017 2 commits
  9. 20 Oct, 2017 3 commits
  10. 18 Oct, 2017 3 commits
  11. 17 Oct, 2017 3 commits
    • Frederic Barbier's avatar
      Ensure that diff_len is lower than frame_id_length · 4d5d90ed
      Frederic Barbier authored
      A frame should be referenced with a unique delta,
      which is not guaranteed when diff_len is greater than frame_id_length.
      
      Otherwise, it's possible to get into a situation where a frame
      can be referenced with many different delta_frame_id values,
      although the decoder only accepts one of them.
      
      Avoid ambiguities when delta-referencing a frame, and
      avoid wasting bits by using a coding enforcing the restriction.
      
      Change-Id: If7c611c9b6ec69662c5af540ade59f08bacda2ba
      4d5d90ed
    • Frederic Barbier's avatar
      Hide coding details of fid_length/delta_fid_length · e83fcfeb
      Frederic Barbier authored
      Let the writing/parsing logic do the +7/+2 offseting,
      and let the rest of the code directly manipulate the actual values.
      
      Change-Id: I460d5bf18446c028f326cb747b3c26c8d451637c
      e83fcfeb
    • Hui Su's avatar
      intrabc: support var-tx · 12546aa2
      Hui Su authored
      Support recursive tx block partition.
      
      On the screen content testset, 0.2% gain for keyframe encoding.
      
      Change-Id: I623e6fbb910fef9c91617e02edf420019f67d189
      12546aa2
  12. 16 Oct, 2017 5 commits
  13. 13 Oct, 2017 1 commit