1. 18 Sep, 2017 9 commits
  2. 16 Sep, 2017 5 commits
    • Hui Su's avatar
      intrabc: consider mode cost in RD selection · 8dc0092f
      Hui Su authored
      Should take the overhead into consideration when intrabc is not
      being used. Did not see much coding gain with this patch though.
      Change-Id: Ie997c1a7284159252d5f663171957c044d3e0a03
    • Hui Su's avatar
      intrabc: replace prob with cdf · 6c8584f6
      Hui Su authored
      Improves keyframe coding by 0.1% on the screen_content testset.
      Change-Id: I5793a67eaae21010ef200038af99ebb9029fc770
    • Jingning Han's avatar
      Properly count the rate cost in base range coding · 772dee37
      Jingning Han authored
      Properly count the base range coefficient coding in the rate
      distortion optimization and soft quantization process.
      Change-Id: I860001f51c4a9d0021d08b85b8ccdb097121b287
    • Angie Chiang's avatar
      Consider 4 neighbors in try_level_down() · e80957ff
      Angie Chiang authored
      This will let the coding performance drop by 0.1%,
      but it will speed up encoder by 40%
      The change is under the flag FAST_OPTIMIZE_TXB
      Change-Id: I07dea24e818123e27c4347189aaec59deb42903c
    • Debargha Mukherjee's avatar
      Add a q index based frame superres mode · 7166f22a
      Debargha Mukherjee authored
      Refactors and adds superres-mode 3 and associated
      paramters --superres-qthresh and --superres-kf-qthresh
      that are used to trigger superres mode when the qindex
      for any frame exceeds the thresholds provided for non-key
      and key-frames respenctively. The superres scale factor
      numerator is progressively reduced from 16 starting from
      that q threshold following a fixed slope.
      Change-Id: If1c782993667a6fbaaa01bbde77c4924008c0d28
  3. 15 Sep, 2017 5 commits
    • Nathan E. Egge's avatar
      Force C implementation of 16-point Daala TX's. · 34e1201a
      Nathan E. Egge authored
      This patch fixes a regression introduced in 1d190950 where the encoder
       was using the 16x16 VP9/AV1 transforms for RDO, but then used the Daala
       transforms for encoding.
      master-daala_dct16@2017-09-13T12:05:18.013Z ->
         PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
      -0.3654 | -0.7634 | -0.7407 |  -0.4884 | -0.4699 | -0.4945 |    -0.5104
      master-no_rect_tx-no_var_tx@2017-09-12T00:23:18.153Z ->
         PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
      -0.0133 |  0.1040 | -0.0440 |  -0.0492 | -0.0151 | -0.0120 |     0.0699
      Change-Id: Id1830d0975db4bd0320a47fdf45b4bca20881cfb
    • Yi Luo's avatar
      Fix a baseline build error · 2e6a9ab9
      Yi Luo authored
      Change-Id: I9b92caa9d65a3b062762c270c89018c8e08eba0f
    • Luc Trudeau's avatar
      Fix Dead Store in rdopt.c · 1f7c4114
      Luc Trudeau authored
      Change-Id: Iad6a16d3ab819405de037d5100060710e0636176
    • Yushin Cho's avatar
      Fix a static analyzer warning · ee810273
      Yushin Cho authored
      Also fix asan warnings.
      Change-Id: I21fe3150635540abacb5b1b8928c6470db605035
    • Zoe Liu's avatar
      Add encoder support for multi-layer GF 16 · 8dd1c980
      Zoe Liu authored
      Currently the use of the new multi-layer GF group of 16 is guarded by
      the macro USE_GF16_MULTI_LAYER, which is turned off. Hence this CL
      does not change any of the encoder behavior.
      Change-Id: I588cd34e19388337a2ecb0a0cb3f796a37647e24
  4. 13 Sep, 2017 5 commits
  5. 12 Sep, 2017 4 commits
  6. 11 Sep, 2017 5 commits
    • Sarah Parker's avatar
      Tokenize and write mrc mask · 99e7daa2
      Sarah Parker authored
      This allows a mask for mrc-tx to be sent in the bitstream for
      inter or intra 32x32 transform blocks. The option to send the mask
      vs build it from the prediction signal is currently controlled with
      a macro. In the future, it is likely the macro will be removed and it
      will be possible for a block to select either method. The mask building
      functions are still placeholders and will be filled in in a followup.
      Change-Id: Ie27643ff172cc2b1a9b389fd503fe6bf7c9e21e3
    • Jingning Han's avatar
      Use per tile model update for coeff_br coding · e29c9260
      Jingning Han authored
      Change-Id: Ie52d52bc25e3fdfdea877349215431d8edc064a3
    • Zoe Liu's avatar
      Add support of multi-layer GF group 16 to bit allocation · c3903ff2
      Zoe Liu authored
      Change-Id: I52a7ae7404f15f29a0a0b892884cf0edea619507
    • Zoe Liu's avatar
      Define coding parameters for GF group of 16 · 8679f417
      Zoe Liu authored
      Propose the coding structure for GF Group of 16 to use the following
      multi-layer design:
        1st Layer: Frame 0 and Frame 16 (ALTREF)
        2nd Layer: Frame 8 (ALTREF2)
        3rd Layer: Frame 4 and 12 (ALTREF2)
        4th Layer: Frame 2, 6, 10, and 14 (BWDREF)
        5th Layer: Frame 1, 3, 5, 7, 9, 11, 13, and 15
      This CL implements the reference frame update for a GF group of 16
      using a look-up table, which is different from the current
      implementation. The motivation behind is to try out various GF group
      coding structures simply through manipulating the look-up table,
      instead of making changes on swapping the reference indexes and
      associated flags throughout the codebase.
      Change-Id: I823edae1c26263e0e0642a580685a25e81caa0a9
    • Steinar Midtskogen's avatar
      CDEF: Do not filter chroma if subsampling_x != subsampling_y · 1c1161f1
      Steinar Midtskogen authored
      Since CDEF looks uses the luma direction for chroma, CDEF would have
      to change significantly to support formats like 4:2:2.  The limited
      use of such formats does not justify the complexity to support this,
      so the simple solution is to mandate that the chroma planes aren't
      filtered if subsampling_x != subsampling_y.  Most of the visual gain
      is in luma, anyway.
      This also means that the chroma strengths and chroma skip condition
      shall not be sent if subsampling_x != subsampling_y.
      Change-Id: I35c184a6fe0908ae0fee1e74494b6904fa9a3c82
  7. 10 Sep, 2017 4 commits
    • Jingning Han's avatar
      Rework base range entropy coding in level map system · 87b01b5a
      Jingning Han authored
      Replace the truncated geometric distribution model with the grouped
      leaves structure for more efficient probability modeling.
      Each group has its own Geometric distribution
      This give us 0.2% gain on lowres
      Change-Id: If5c73dd429bd5183a8aa81042f8f56937b1d8a6a
    • Debargha Mukherjee's avatar
      Refactoring/simplification of buffers used for sgr · 1330dfd1
      Debargha Mukherjee authored
      Inlcudes miscellaneous cleanups, test fixes, and code reorganization
      for loop-restoration components.
      Change-Id: I5b2e6419234d945e6f4344b22636119b50df4054
    • Debargha Mukherjee's avatar
      Reduce/Eliminate line buffer for loop-restoration. · e168a783
      Debargha Mukherjee authored
      This patch forces the vertical filtering for the top and bottom
      rows of a processing unit for the Wiener filter to not use border
      more than what is set in the WIENER_BORDER_VERT macro.
      This macro is currently set at 0 to eliminate line buffer completely,
      but it could be increased to 1 or 2 to use limited line buffers
      if the coding efficiency is affected too much with a 0 line-buffer.
      Also, for the sgr filter we added the option of using overlapping
      windows horizonttally and vertically to improve coding efficiency.
      The vertical border used is set by the SGRPROJ_BORDER_VERT
      macro, while the horizontal border can be set by the
      SGRPROJ_BORDER_HORZ macro set at 2, the max needed. Currently we do not
      recommend changing SGRPROJ_BORDER_HORZ below 2.
      The overall line buffer requirement for LR is twice the max of
      Currently both are set as 0, eliminating line buffers completely.
      Also this patch extends borders consistently before CDEF / LR.
      Change-Id: Ie58a98c784a0db547627b9cfcf55f018c30e8e79
    • Luc Trudeau's avatar
      Remove useless (void)s · db4ccd42
      Luc Trudeau authored
      Change-Id: I70a4dd8095276eb53050eacca2ee33ba39e7cc74
  8. 09 Sep, 2017 3 commits