1. 18 Dec, 2017 1 commit
  2. 16 Dec, 2017 3 commits
    • Jingning Han's avatar
      Remove b_mode_info structure · b8b2a0ec
      Jingning Han authored
      This structure was designed for sub8x8 blocks. It is deprecated as
      cb4x4 lands.
      
      Change-Id: Ied1dbc3fba4c503c00c59cb749e8ddc1ed2b580e
      b8b2a0ec
    • Jingning Han's avatar
      Deprecate the use of bmi structure from av1 codec · 2fac8a41
      Jingning Han authored
      Change-Id: I7f5010ae3b9a014b3dca0425c9eada3b9e2c0ab3
      2fac8a41
    • Zoe Liu's avatar
      Support ext-skip for both low delay and high delay · 104d62e1
      Zoe Liu authored
      For both low delay and high delay scenarios, the reference pair in
      skip mode are specified as the closest fwd ref, together with the
      closest bwd ref if there is any bwd ref, otherwise with the two
      closest fwd refs.
      
      Skip mode by default uses COMPOUND_AVERAGE. When all the reference
      frames are on the same side, temporal-distance weighted compound is
      considered, and a compound index is signaled to indicate whether
      distance-weighted compound or compound-average is usd.
      
      Whether to use distance-weighted compound for skip mode is still
      under experimenting, hence a flag is temporarily added:
      SKIP_MODE_WITH_JNT_COMP.
      
      Following experimental results are obtained over 30 frames, using the
      setup of --disable-ext-partition --disable-ext-partition-types
      --disable-txmg --enable-jnt-comp --enable-mfmv --enable-ext-skip:
      
      (1) High Latency:
      For Google test sets (lowres/midres), the BDRate coding gain is ~0.2%;
      For AWCY, the coding gain is ~0.1%.
      (2) Low Latency:
      No gain has been observed over Google sets and ~0.1% gain is obtained
      only when temporal-distance weighted prediction is used.
      
      Change-Id: I8c433357adebed0126ebfdd5c4d51aa71e64be57
      104d62e1
  3. 15 Dec, 2017 3 commits
    • Debargha Mukherjee's avatar
      Remove sub-4x4 block sizes · 5d149e1d
      Debargha Mukherjee authored
      Removes unused BLOCK_2X2, BLOCK_2X4 and BLOCK_4X2 from the
      BLOCK_SIZE enum.
      
      Change-Id: I964d99718026c51a1eaf30d4a1fc83cc52f94083
      5d149e1d
    • Jingning Han's avatar
      Clean up intra mode context fetch functions · 9010e20d
      Jingning Han authored
      Following the cb4x4 design, the logic related to sub8x8 handling
      can be simplifed.
      
      Change-Id: I1ed0c0327a4498614408320a583ad37607bde4af
      9010e20d
    • Yue Chen's avatar
      Avoid trying filter_intra + >32x32 tx · 1a5ab9f2
      Yue Chen authored
      Filter intra mode is disabled if any dimention of tx_size is
      greater than 32. In this patch, the max qualified tx_size is
      found and set for testing filter_intra in intra_model_yrd().
      
      BUG=aomedia:1058
      
      Change-Id: I105aa68e722fce74b8828860a40040764cf20118
      1a5ab9f2
  4. 14 Dec, 2017 3 commits
    • Luc Trudeau's avatar
      [CFL] Reduce Prediction Buffer Size · a92bd80b
      Luc Trudeau authored
      CfL internal prediction buffer is reduced from 128x128 to 32x32
      
      Change-Id: Idd077e8d0fec44996be12c78fe222763fe6646e7
      a92bd80b
    • Luc Trudeau's avatar
      [Clean Up] Remove get_y_mode() · 2eb9b845
      Luc Trudeau authored
      The get_y_mode function, is superfluous, not used consistently, and requires a
      useless block_idx parameter than gets pass around a lot inside the
      codebase for no apparent reason.
      
      The block parameter is misleading, as it could cause people to think all these
      functions actually use this value.
      
      Change-Id: I7ae0a8d1282c009b9114c83771cce10f5c2ee397
      2eb9b845
    • Luc Trudeau's avatar
      [CFL] Add check to get_uv_mode · 5d5078e2
      Luc Trudeau authored
      Check that the uv_mode is not UV_MODE_INVALID
      
      Change-Id: Ibbe342397b47d94b0b6823d558a7ed713adef314
      5d5078e2
  5. 13 Dec, 2017 5 commits
  6. 12 Dec, 2017 2 commits
    • Angie Chiang's avatar
      Mute the warning when debug mode is on · 840c66ee
      Angie Chiang authored
      tx_type will always greater or equal to DCT_DCT
      
      Change-Id: If82a02621443b231a9bf30b47f5ad41975761f9a
      840c66ee
    • Cheng Chen's avatar
      Make lpf_sb work with loopfilter_level · 765e34e3
      Cheng Chen authored
      Make lpf_sb compatible with loopfilter_level, when USE_GUESS_LEVEL = 1.
      
      Filter levels will be selected based on q index and applied for
      filtering on Y, U, V planes separately.
      
      Current model only allows to guess one filter level.
      Now Y_vert = Y_horz = U = V. In the future, we need to retrain the
      model and get filter levels for Y_vert, Y_horz, U and V separately.
      
      When USE_GUESS_LEVEL = 0, lpf_sb can't work with loopfilter_level yet.
      
      Change-Id: Icd774a147c07a4035cf8204a8754b2a99668bbfd
      765e34e3
  7. 11 Dec, 2017 1 commit
  8. 09 Dec, 2017 3 commits
    • Luc Trudeau's avatar
      [WarpedMotion] Added Const Correctness · f3bf8b17
      Luc Trudeau authored
      Change-Id: Idac0e6f4928e18c115c1055ca43f5b817ca51518
      f3bf8b17
    • Debargha Mukherjee's avatar
      Enable 4:1 -> 2:1 -> 1:1 splits for 4:1 transforms · e4e18fcc
      Debargha Mukherjee authored
      Also, splits the sub_tx_size_map array into inter and intra
      in order to enable the new 4:1 transforms for inter and
      intra separately.
      Includes refactoring such as removing the intra_tx_size_cat_lookup
      array since it is unnecessary, and consolidating the
      max_txsize_rect_lookup array for convenience.
      
      Change-Id: I112553bab612dafb973611c87f36a43e1ac4be85
      e4e18fcc
    • Rostislav Pehlivanov's avatar
      Change q_segmentation to spatial_segmentation · 938710cb
      Rostislav Pehlivanov authored
      Adds spatial prediction to standard segmentation instead of a separate
      segmentation feature.
      When using temporal prediction skipped blocks are flagged as mispredicted.
      
      Change-Id: I0c32281286d3fbce66d339c9247bcc6516f37a63
      938710cb
  9. 08 Dec, 2017 3 commits
    • Yushin Cho's avatar
      Remove unused variables in blockd.h · b72bc718
      Yushin Cho authored
      Change-Id: I687453ab28d72412e49b4cc2676b70425b80848b
      b72bc718
    • Sarah Parker's avatar
      Remove bands from new-quant profiles · 6b56e99c
      Sarah Parker authored
      Rather than having a set of parameters for each of the 6
      COEF_BANDS, we have 1 for DC and 1 for AC coefficients.
      No change in performance since all of the bands had the
      same parameters.
      
      Change-Id: I3665e7c1b21f117be776f371d87d64b097715735
      6b56e99c
    • Debargha Mukherjee's avatar
      Misc refactors to support 4:1->2:1->1:1 tx splits · 0fa057f8
      Debargha Mukherjee authored
      Currently 4:1 transforms have max 2 split levels:
      4:1 -> 1:1 -> 0.5:0.5.
      
      This refactor enables split levels:
      4:1 -> 2:1 -> 1:1,
      
      by simply changing the tables in common_data.h.
      
      The actual switch will be made in a subsequent patch.
      
      Change-Id: I33f8d9ca5159ba3e7d02ced449ddf6f804a8f12a
      0fa057f8
  10. 06 Dec, 2017 2 commits
  11. 05 Dec, 2017 2 commits
    • Sarah Parker's avatar
      Add macro to allow different tx sets for 16x16 · cec7ba10
      Sarah Parker authored
      This allows for the following options:
       Set 0:
              Inter: All 16 txfms
              Intra: Discrete Trig transforms w/0 flip (4) + Identity (1) +
                     1D Hor/vert DCT (2)
       Set 1:
              Inter: Discrete Trig transforms w/ flip (9) + Identity (1) +
                     1D Hor/Ver DCT (2)
              Intra: Discrete Trig transforms w/0 flip (4) + Identity (1)
       Set 2:
              Inter: Discrete Trig transforms w/ flip (9) + Identity (1)
              Intra: Discrete Trig transforms w/0 flip (4) + Identity (1)
      
      Results on lowres 40 frames with
      disable-ext-partition disable-ext-partition-types
      
      Set 0: 0.03%
      Set 1: No change
      Set 2: 0.06%
      
      Change-Id: Iec57d8c8fcfa0891528de4ca88f54753dfcb5284
      cec7ba10
    • Cheng Chen's avatar
      JNT_COMP: divide compound modes into two groups · 33a13d9f
      Cheng Chen authored
      Divide compound inter prediction modes into two groups:
      Group A: jnt_comp, compound_average
      Group B: interintra, compound_segment, wedge
      
      Change-Id: I1142da2e3dfadf382d6b8183a87bde95119cf1b7
      33a13d9f
  12. 04 Dec, 2017 3 commits
  13. 02 Dec, 2017 1 commit
    • Yunqing Wang's avatar
      Modify the warped motion mode context · 3afbf3fb
      Yunqing Wang authored
      Modified the warped motion mode context based on neighbor's motion modes
      and current block's mode.
      
      Change-Id: I77ca35fab37ec640bb38661ff1799f643d5aafdc
      3afbf3fb
  14. 01 Dec, 2017 1 commit
  15. 30 Nov, 2017 1 commit
    • Luc Trudeau's avatar
      [CFL] CfL Initialization Simplification · 1e84af52
      Luc Trudeau authored
      The CfL context is now stored inside MACROBLOCKD instead of
      MACROBLOCKD only storing a pointer to the CfL context.
      The intent is to avoid race conditions as MACROBLOCKD is stored
      inside ThreadData. This change also simplifies CfL Initialization.
      
      Change-Id: I991503716b21fc9aca60caddb2008b8bff397e6d
      1e84af52
  16. 29 Nov, 2017 1 commit
  17. 28 Nov, 2017 1 commit
    • Debargha Mukherjee's avatar
      Enhance option to handle chroma tx-size for vartx · 19619886
      Debargha Mukherjee authored
      Adds an option to split chroma tx size by one level if the luma
      transform size is split at least one level. Otherwise use the
      largest transform size for chroma.
      This option is enabled with DISABLE_VARTX_FOR_CHROMA set as 2,
      but is currently turned off until we finish testing.
      
      Change-Id: Ie048c4e33193e0cc7e1bbee37e4ccc085834433c
      19619886
  18. 27 Nov, 2017 1 commit
    • Debargha Mukherjee's avatar
      Add option to disable split partitions for chroma · 891a8774
      Debargha Mukherjee authored
      When the flag DISABLE_VARTX_FOR_CHROMA is on chroma is
      constrained to always use the largest transform size
      for the prediction unit size.
      This is meant to simnplify the logic for transform size
      selection for chroma with hopefully no loss.
      
      Results:
      lowres 30 frames, speed 1: -0.038% (a slight improvement).
      lowres 30 frames, speed 0: 0.000% (noise level difference).
      
      Change-Id: I14dd5b1983d908bd98e59b7d252e11f5755c97e6
      891a8774
  19. 22 Nov, 2017 1 commit
  20. 20 Nov, 2017 2 commits
    • Cheng Chen's avatar
      JNT_COMP: refactor if statements · 8263f80c
      Cheng Chen authored
      Refactor if statement that use frame_offset == -1 to indicate
      jnt_comp is not chosen, as distance now can not be negative.
      Instead, add a variable use_jnt_comp_avg for the same functionality.
      
      Change-Id: Ie6b9c6ab36131b48bc9e066babada17046729cd8
      8263f80c
    • Yue Chen's avatar
      New filter_intra implementation + entropy coding · da2eefc6
      Yue Chen authored
      Use 4x2 processing unit.
      Reduce # of modes from 6 to 5.
      
      Change-Id: I3c12e18084636de0e279c9102a8b212342faf4c7
      da2eefc6