1. 12 Dec, 2017 2 commits
    • 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
    • Cheng Chen's avatar
      LPF_SB: set row delay to work with intrabc · f18ba021
      Cheng Chen authored
      Intrabc search area can't use pixels of the last 8 rows in the current
      superblock row. Add a delay so that lpf_sb can work with intrabc.
      
      Let lpf_sb on with intrabc while other loop filtering off (cdef, loop
      restoration).
      
      Change-Id: I98ab093a17096387b6233182da2656f90dfa09eb
      f18ba021
  2. 11 Dec, 2017 5 commits
  3. 10 Dec, 2017 2 commits
    • Imdad Sardharwalla's avatar
      Monochrome control now in colorspace header · 317002fb
      Imdad Sardharwalla authored
      The monochrome bit has been removed from the end
      of the sequence header.
      Monochrome is now coded as a type of colorspace.
      
      Encode in monochrome by using
        aomenc --color-space=monochrome ...
      
      Change-Id: I9550de58eb3d67dae0eb651697cb63dc8b137931
      317002fb
    • Steinar Midtskogen's avatar
      CDEF: Add an early exit test at the decoder · 0687d3e9
      Steinar Midtskogen authored
      This should give a slight speed-up for streams with CDEF disabled,
      since it avoids having to test the same for every filter block.
      
      BUG=aomedia:1108
      
      Change-Id: I7f3f2ddfe5414ed1b4b6aafb5e28ae61df2cb79e
      0687d3e9
  4. 09 Dec, 2017 2 commits
    • 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
  5. 08 Dec, 2017 3 commits
  6. 07 Dec, 2017 3 commits
  7. 05 Dec, 2017 3 commits
    • Linfeng Zhang's avatar
      Delete 1 parameter in a couple of txb functions · 0ff69c63
      Linfeng Zhang authored
      Change-Id: Ibad1dc5bf0e9ad13b5823cebfb599b10baad635c
      0ff69c63
    • Dominic Symes's avatar
      max-tile: Fix issues discovered when testing max-tile · 917d6c06
      Dominic Symes authored
      max-tile remains off by default until more testing is performed but I would
      like to check in the fixes that are known so far to prevent this patch getting too big
      
      max_tile was provisionally adopted at the working group meeting 2017-Oct-10
      
      This patch fixes the following issues:
      - max_tile is fixed to suport superblock size 64x64 as well as 128x128 (ext_partition support)
      - max_tile is fixed in combination with loop_restoration
      - max_tile is fixed in combination with ext_tile (Bug: 1013)
      - max_tile is fixed in combination with lv_map and 64x64 subperblock (lv_map memory allocation
        fixed for 64x64 superblock)
      - max_tile reports the size of the first tile for inspection.c used by the analyzer
      
      Change-Id: Ib83ff613e5d66563c81452a085c7984d3b4813e4
      917d6c06
    • Sebastien Alaiwan's avatar
      Remove ANS experiment · b0460fa9
      Sebastien Alaiwan authored
      This experiment has been abandonned for AV1.
      
      Change-Id: I8110720cef1b56dbce4008a998d8f4281dd2fe44
      b0460fa9
  8. 04 Dec, 2017 1 commit
    • Imdad Sardharwalla's avatar
      Added monochrome option to the decoder. · 730c8054
      Imdad Sardharwalla authored
      When this is set (use --monochrome), all decoded frames
      will be given constant chroma planes.
      
      If the rawvideo option is used in conjunction with the
      monochrome option (i.e. --monochrome --rawvideo), the
      written output will only consist of the Y (luma) plane.
      
      Change-Id: I967817f1c3ebb1162fa9771b51cf6431120b835c
      730c8054
  9. 02 Dec, 2017 3 commits
    • Sebastien Alaiwan's avatar
      decodeframe.c: reduce scope of iterators · 3e4068e7
      Sebastien Alaiwan authored
      Change-Id: I6a384bf0b5adcdbc22d67a08a9d99a0bed1fdd6d
      3e4068e7
    • Tom Finegan's avatar
      OBU type/metadata disambiguation. · 3e632744
      Tom Finegan authored
      - OBU_TD => OBU_TEMPORAL_DELIMITER
      - METADATA_TYPE => OBU_METADATA_TYPE
      - Prefix OBU_METADATA_TYPE enum vals with "OBU_".
      
      BUG=aomedia:1046
      
      Change-Id: I0c63d36b77905520e427e6b77fbf4cbedabc7e51
      3e632744
    • Cheng Chen's avatar
      Extend frame marker bits from 4 to 5 · d300f0e4
      Cheng Chen authored
      Although four bits are enough to represent current distances since
      Golden Frame Group is 16, for flexibility, we use 5 bits and allow
      frame distance up to 32.
      
      BUG=aomedia:1072
      
      Change-Id: I9f413baffd656eb8bd54333ba31a4e33faefd57a
      d300f0e4
  10. 01 Dec, 2017 3 commits
    • Sebastien Alaiwan's avatar
      decodeframe.c: reduce scope of locals · f518f147
      Sebastien Alaiwan authored
      Change-Id: Id6127524a02d308072408b3c3af0e4c604e5f527
      f518f147
    • Imdad Sardharwalla's avatar
      Added cleanup to decoding of monochrome frames. · d8397d67
      Imdad Sardharwalla authored
      If the frame's monochrome flag is set, the decoded frame
      will be given constant chroma planes, regardless of any
      chroma data in the original frame.
      
      Change-Id: I9ea078f02c279ae9ec1d23cc33f69c6abcb18b9f
      d8397d67
    • Steinar Midtskogen's avatar
      Change CDEF block skip condition and move signalling · 6c24b029
      Steinar Midtskogen authored
      Previously CDEF was implicitly disabled for a filter block if all its
      sub-blocks were skip, and no bits for that block was signalled.  That
      required the CDEF signal to be transmitted at the end of the block,
      and it was not possible to begin the filtering of the block before
      that.
      
      This patch moves the signalling to just after the first zero skip bit
      within a 64x64, 128x64, 64x128 or 128x128 block.  If sub-blocks are
      skip, then no CDEF bits will be signalled, as before.  Also, the skip
      condition flag has been removed so it's always known at the skip flag
      whether a coding block is to be filtered or not.
      
      Change-Id: I3adfa3d2d01e288b7db876198aa9985ee9f53917
      6c24b029
  11. 30 Nov, 2017 3 commits
    • 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
    • Jingning Han's avatar
      Make adaptive scan order support multi-threading · 0bd3bf69
      Jingning Han authored
      Count the non-zero appearance per tile and update per frame. This
      resolves an enc/dec mismatch in multi-threading coding.
      
      BUG=aomedia:1073
      
      Change-Id: I474f05913e6c3f75ca3fa1057bd4809ef51af164
      0bd3bf69
    • Hui Su's avatar
      Make the signaling of allow_screen_content_tools consistent · df89ee3a
      Hui Su authored
      in keyframe and all-intra frame.
      
      Change-Id: I09d6f83efd3c4fe3f9a464d6a0e22e2e68220a8d
      df89ee3a
  12. 29 Nov, 2017 2 commits
  13. 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
  14. 27 Nov, 2017 2 commits
    • 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
    • Debargha Mukherjee's avatar
      Add chroma bsize modifications correctly · 3aa28111
      Debargha Mukherjee authored
      Change-Id: I807dc86489bc9219a24801841e66b555a2d7a51f
      3aa28111
  15. 24 Nov, 2017 1 commit
    • Rupert Swarbrick's avatar
      Disallow 4:1/1:4 partitions for BLOCK_128x128 · eb123933
      Rupert Swarbrick authored
      The change can be temporarily reverted by setting ALLOW_128X32_BLOCKS
      to 1 (for easy "is this better?" testing: we'll get rid of the option
      once it's clear what we're doing).
      
      Since this means we have to modify the "num_partition_types"
      calculation in functions like read_partition, we move it into a helper
      function called partition_cdf_length(). Doing this makes the bodies of
      read_partition and write_partition somewhat simpler than they were.
      
      Change-Id: I3573f62f71dc3344aed2dcb3e423e034eb56a7c5
      eb123933
  16. 22 Nov, 2017 2 commits
  17. 21 Nov, 2017 2 commits
    • Urvang Joshi's avatar
      Enable TX64X64 by default. · fe8323c9
      Urvang Joshi authored
      Provisionally adopted on 11/17.
      
      Also, some related tweaks to fix build errors.
      
      Change-Id: I7d5592450e9284d489b46adc274cd0cfccd04b3c
      fe8323c9
    • Soo-Chul Han's avatar
      add segment_pred_last(adopted) · 934af35b
      Soo-Chul Han authored
      temporal segment map prediction from LAST frame instead of previous
      
      Change-Id: I2f803581c2a6ff72ae428783e596aa3281492073
      934af35b