1. 31 Jan, 2017 9 commits
    • Urvang Joshi's avatar
      Bugfix: Fix an assert being triggered because of palette. · 451e0f22
      Urvang Joshi authored
      rd_pick_palette_intra_sby() was being passed a dummy 'best_mbmi' in
      one case, and later that dummy value could be assigned to 'mbmi'
      causing invalid values in 'mbmi'.
      
      This bug was introduced by:
      de0c70a2: Refactor rd_pick_intra_sby_mode()
      
      See the referenced bug for a repro case.
      
      BUG=aomedia:337
      
      Change-Id: If6b0aa329f4e4902cd4de8a5e09bc5d9196492a1
      451e0f22
    • Yue Chen's avatar
      Offset probabilities of compound types for cb4x4 · 4415b6cc
      Yue Chen authored
      BUG=aomedia:313
      
      Change-Id: Ic1a9e20e5fd3f645d3be851d7be759cf4caf7c02
      4415b6cc
    • David Barker's avatar
      Fix ext-inter + compound-segment + supertx · 426a997e
      David Barker authored
      Allow the above combination of experiments to work together
      correctly, fixing an encode/decode mismatch bug when they
      were all enabled.
      
      This change causes build_masked_compound(_highbd) to only
      ever be called if CONFIG_SUPERTX is off, so wrap these functions
      in an '#if !CONFIG_SUPERTX' block.
      
      BUG=aomedia:313
      
      Change-Id: Ic3886bc69ba9624b8fcb0a4c2d71fc64d2c0f22c
      426a997e
    • Urvang Joshi's avatar
      Fix segmentation fault when encoding all keyframes (kf-max-dist=0). · d803cb96
      Urvang Joshi authored
      The issue was that:
      - We call av1_setup_pre_planes() when this is not an intra-only frame,
      but,
      - But, we do motion vector search for any frame other than first frame
      Doing both of these only when this is not an intra-only frames makes
      logical sense and fixes the crash too.
      
      This also avoids doing motion search for intra-only frames in the first
      pass.
      
      Verified that there is no change in compression performance for video,
      as well as when forcing all keyframes.
      
      BUG=aomedia:133
      
      Change-Id: I7b18c0568eaa29c6c97f31f226243e5a9dbaecf1
      d803cb96
    • Sarah Parker's avatar
      Make global_motion work with ext_inter · c2d38715
      Sarah Parker authored
      Change-Id: I2a490e144099d7692296992528192c1f11d2c06f
      c2d38715
    • Thomas Davies's avatar
      EC_MULTISYMBOL: Separate out tokenization loop. · c6733fb7
      Thomas Davies authored
      This will make merging EOB_TOKEN easier.
      
      Change-Id: I1789344e9c3bbb329c30287a00aeee3c8a9d60c4
      c6733fb7
    • Thomas Davies's avatar
      EC_MULTISYMBOL: split off token packing. · f6390321
      Thomas Davies authored
      This will make refactoring to support EOB_TOKEN easier.
      
      Change-Id: I8c7e37d090fd142f6b95d997116b84e6e10f3db5
      f6390321
    • Thomas Davies's avatar
      EC_MULTISYMBOL: reconfigure coefficient decoding loop. · 0583c984
      Thomas Davies authored
      Preparation for merging EOB into multi-symbol encoding.
      The more_data flag for the first position is moved
      out of the loop, and for remaining positions is
      moved in with the previous coefficient. This way it
      can always be associated with the previous non-zero
      coefficient.
      
      Change-Id: Idfb38058f4c415127b4d9a9beeb8ea2d3a2ec1a2
      0583c984
    • Thomas Davies's avatar
      EC_MULTISYMBOL: merge ZERO_TOKEN into coding scheme. · 0ccefe21
      Thomas Davies authored
      Zero, one, and two or more coded as one symbol (head).
      Remaining tokens coded as a tail symbol.
      
      The pareto CDF distribution is adjusted to cover tokens from
      two onwards.
      
      Change-Id: I98b33fab6b9f52690f6ad618ac55e725a97be056
      0ccefe21
  2. 30 Jan, 2017 6 commits
  3. 27 Jan, 2017 7 commits
  4. 26 Jan, 2017 5 commits
    • Yaowu Xu's avatar
      Change to initialize correct thread_data · 006ff4be
      Yaowu Xu authored
      BUG=aomedia:307
      
      Change-Id: Ia1d39916b3e856acd33f4e199321395455151fb6
      006ff4be
    • Debargha Mukherjee's avatar
      Fix mismtach with ref-mv and ext-partition-types · ff59b6ac
      Debargha Mukherjee authored
      Change the list of search offsets searched when ext-partition-types
      is on for square block_sizes. This is because the VERTICAL_A and
      HORIZONTAL_A partitions are incompatible with the default list.
      
      BUG=AOMEDIA:141
      
      Change-Id: I884c45c3d11039b7dcb72336a928362f926473ed
      ff59b6ac
    • Urvang Joshi's avatar
      Palette: Don't store tokens for pixels outside image boundary. · 56ba91bb
      Urvang Joshi authored
      If part of a block falls outside right and/or bottom image boundary,
      then only store tokens for the part of it within the boundary.
      
      Also, consider only the part of the block within the boundary when
      calculating the number of colors in the image, deciding the base
      colors for palette, RD calculation etc.
      
      The part of color map corresponding to pixels outside the image
      boundary is padded with color indices copied from same row/column.
      This behavior is similar to how pixels outside the boundary are padded.
      
      For screen_content set, this is improves compression performance by
      0.038 overall. One clip, in particular, has a significant gain of 0.8.
      
      Change-Id: I745ca032f313c5041aacc98c03ae4bfc33d840de
      56ba91bb
    • ltrudeau's avatar
      Convert PVQ skip variable to enum · e1c0929f
      ltrudeau authored
      Creates the PVQ_SKIP_TYPE enum to encapsulate the different types of
      skipping that can be signaled by PVQ (i.e. skip: AC, DC or both).
      
      There is no impact on the bitstream. However, the decoder will now emit
      an internal error if the decoded skip flag is out of range. The
      block_skip variable is also renamed to ac_dc_coded as it stores the same
      information.
      
      Change-Id: Ib2aadaf99dc1736ea392ae5ed8948c3cdc12da9b
      e1c0929f
    • Debargha Mukherjee's avatar
      Fix mismatch w/ ext-inter/warped-motion/motion-var · 8b613216
      Debargha Mukherjee authored
      Fixes a mismatch issue with ext-inter+motion-var+warped-motion
      due to unset num_proj_ref values.
      
      BUG=aomedia:311
      
      Change-Id: I042551f6c53e8cc005f2133704a03b243c98c12a
      8b613216
  5. 25 Jan, 2017 7 commits
  6. 24 Jan, 2017 4 commits
    • David Barker's avatar
      Make ext-inter use new rectangular intra predictor · 839467f4
      David Barker authored
      Now that https://aomedia-review.googlesource.com/#/c/6729/
      has been merged, build_intra_predictors_for_interintra() is
      now redundant, so replace it by a direct call to
      av1_predict_intra_block() and remove the old function.
      
      Reset rect_interintra back to 1.
      
      To do this, we need to make the intra predictor take a
      BLOCK_SIZE instead of a TX_SIZE. This is because we need to
      be able to predict 32x64 and 64x32 blocks, but there is no
      TX_32X64 or TX_64X32.
      
      No effect on output or performance.
      
      Change-Id: I8c185a211c97a85012cc54ec293c785a693608ed
      839467f4
    • Yaowu Xu's avatar
      Fix a couple of typos · a93e65e5
      Yaowu Xu authored
      Change-Id: Ibec40c3cd8e14343b096e406ba233cf4f131e7b9
      a93e65e5
    • Angie Chiang's avatar
      Fix bitstream error when entropy and adapt_scan on · c71d6130
      Angie Chiang authored
      BUG=aomedia:310
      
      Change-Id: I8e1a1c6d59e3d14ba132d2bbf4e203da26538bde
      c71d6130
    • Jingning Han's avatar
      Fix conflicts between ext-inter and cb4x4 modes · 61418bbd
      Jingning Han authored
      Resolve the broken coding pipeline in ext-inter experiment when
      cb4x4 mode is enabled. Turn off rectangular inter-intra mode.
      This needs some more work to hook up. Given that it gives fairly
      limited coding performance gains, disable it for the moment.
      
      BUG=aomedia:309
      
      Change-Id: I9b406df6183f75697bfd4eed5125a6e9436d84b0
      61418bbd
  7. 23 Jan, 2017 2 commits