1. 18 Apr, 2017 5 commits
    • Angie Chiang's avatar
      Add txk_sel exp · cd9b03fb
      Angie Chiang authored
      This will separate the transform kernel selection from lv_map
      experiment such that we can evaluate each feature's performance
      Note that txk_sel is build on top of lv_map
      Change-Id: I5bd1ea99be30000efcdc2bcd42de002b78b1c3c8
    • Timothy B. Terriberry's avatar
      ec_smallmul: Convert CDFs to iCDFs. · f6c807c5
      Timothy B. Terriberry authored
      Hoists the iCDF conversion outside of the daala code.
      We directly store 32768 - cdf[i] in each cdf, to avoid having to
      convert the whole array every time a symbol is coded.
      This works with ec_multisymbol, new_tokenset, and ec_adapt.
      Compared to Change-Id Idbbd3743e9189146cb519d5b984bdabd69e3f4c0,
      this improves decoder runtimes by 1.15% at QP=55 and 2.64% at
      The overall slowdown of ec_smallmul is now 0.12% at QP=55 and
      0.44% at QP=20.
      Encoder output should not change, and all streams should remain
      decodable without decoder changes.
      Change-Id: I06b8b75b667bb1bc4ddffc78f895e48a09f4c578
    • Yi Luo's avatar
      Deliver the eob threshold to inverse transform · f8e87b46
      Yi Luo authored
      Change-Id: Iaa8ab77eb4a982759939fb5fc475f699cb21a4e1
    • Yi Luo's avatar
      Move width branch out of height loop · a4d87992
      Yi Luo authored
      - AVX2 Copy and average functions are faster,
        Copy function: ~4%-57%
        Avg function:  ~17%-54%
      Change-Id: Ib1732cd90eb353379ef50ecbb1e207860969f1c3
    • zhipin deng's avatar
      enable mv_compress by default · 1c25c758
      zhipin deng authored
      Change-Id: Idcf587227a7e508344d00a4d456c747b4f8d109b
  2. 17 Apr, 2017 12 commits
    • Thomas Daede's avatar
      Remove rt deadline. · 8082614e
      Thomas Daede authored
      The "good" speed levels are universally better than the "rt" ones,
      running faster to achieve the same quality.
      rt mode also turned off alt refs and lag-in-frames, but these
      are still accessible separately (and the low latency test case
      explicitly sets them).
      Some features were used by the rt scale and not the good scale.
      Two additional "good" levels, 7 and 8, were added to accomidate
      these features and not reduce test coverage.
      Change-Id: I3a6a78ddb664511762c197bc41f3a9909665b565
    • Fergus Simpson's avatar
      bitstream-dbg: Add missing include to decodeframe · 350a9b76
      Fergus Simpson authored
      If daala_ec is disabled while bistream_debug is enabled, decodeframe.c
      fails to compile due to aom_util/debug_util.h not being included
      This patch just adds the missing include so that decodeframe.c will
      still build with bitstream_debug enabled and daala_ec disabled.
      Change-Id: I2e7eebdd17431a804be5b00239a9ae581e73f731
    • Sarah Parker's avatar
      Avoid exiting tx size search when tx-size is square · 36661926
      Sarah Parker authored
      This fixes a mismatch in ext-tx + rect-tx introduced
      by a refactor in 2d147c16.
      Change-Id: I5bc40b2dcd7bf53b20c1bea454aae49f2d5dfe67
    • Yushin Cho's avatar
      Skip adding zero siginal to prediction with DC only idct · 27acc478
      Yushin Cho authored
      If DC only idct gives zero, then we can skip the steps which
      add zero signal to predicted signal.
      DC only idct cases will occur more frequently at lower bit rates.
      Similar changes can be done for C version of high bit depth idct functions.
      Change-Id: I53af22904568f7043091710da70ca8299bf361c5
    • Michael Bebenita's avatar
      Fix inspection mi grid size. · b5bf51ec
      Michael Bebenita authored
      Change-Id: I152837d872ce5b234c62c7190a2350cea710d579
    • Michael Bebenita's avatar
      Compress analyzer data using RLE. · f1207b60
      Michael Bebenita authored
      This significantly reduces the size of the exported
      data and improves analyzer decoding time.
      Change-Id: I0553c76630009754038a86b634b545db24fb3dd6
    • Yaowu Xu's avatar
      Fix build for motion-var and ext-inter · a631722c
      Yaowu Xu authored
      Change-Id: If7a3dc0006543c30f55f4ed2b33f28b69395bd60
    • Yue Chen's avatar
      Changes for chroma u8x8 obmc · f0dfc03d
      Yue Chen authored
      (1) Add a macro DISABLE_CHROMA_U8X8_OBMC to enable(one-sided)/turn
      off obmc in under 8x8 chroma blocks.
      (2) When it is enabled, use the above neighbor in chroma 4x4 obmc
      Change-Id: I2373e6698fd56da7f99653d77be2b7284b3e74f2
    • Angie Chiang's avatar
      Turn on tx_type search when sb_type < BLOCK_8X8 · c2ebfbfc
      Angie Chiang authored
      Change-Id: I8d9686c36ebf7057c4432bb5a29ade78dc21d0a7
    • Jingning Han's avatar
      Fix enc/dec mismatch in global motion · 3ca0e672
      Jingning Han authored
      Resolve an enc/dec mismatch issue when global motion is turned on.
      Change-Id: Ifad02fab4412588527ec7e8b24ab9b8c6327e5ba
    • Jingning Han's avatar
      Singularity handling in Gaussian elimination · 041c67b9
      Jingning Han authored
      When the fwd Gaussian elimination process encounters diagonal
      element as zero value, the linear equation does not have unique
      solution. Return the linear solver state as unsolvable in such
      case. This resolves a floating point exception issue due to divided
      by zero in the loop restoration filter.
      Change-Id: I3c67525691a3003f9f470e8a0d5b4ee187cba963
    • Debargha Mukherjee's avatar
      Reduce prec of matrices/vectors for warp estimate · 8c41024b
      Debargha Mukherjee authored
      Reduces precision of matrices by 2 bits.
      No material change in performance.
      Change-Id: I549a27da1dcb381fb329c345ee280dbd86b45bac
  3. 16 Apr, 2017 2 commits
  4. 15 Apr, 2017 3 commits
  5. 14 Apr, 2017 18 commits
    • Yi Luo's avatar
      Fix EOB threshold array size · d4e3c21a
      Yi Luo authored
      - TX_SIZES_ALL is the correct macro to cover all txfm sizes.
      Change-Id: I035a8395a78982e5b19857a3ba5f9d9f657b7902
    • hui su's avatar
      Enable ext_intra by default · 3dfe608f
      hui su authored
      Change-Id: Id7a257fb56f2e435fadb9202f775c5d12fc1bea6
    • Debargha Mukherjee's avatar
      Reduce array sizes for Wiener update steps · 6ae588f6
      Debargha Mukherjee authored
      Change-Id: Iff0cb1d492c7a8c2035b9bd752b1d00260135672
    • Timothy B. Terriberry's avatar
      pvq: Remove non-dyadic CDF initialization. · 5b4a7264
      Timothy B. Terriberry authored
      This was still being used for CDFs whose size might not match the
      declared array size. We replace it with an intialization macro
      intended explicitly for this purpose.
      Change-Id: I65d9a3c871e1d1bdd906f20ff3a264f58d8e5620
    • Timothy B. Terriberry's avatar
      ec_smallmul: Simplify binary read/write. · d5b89d0d
      Timothy B. Terriberry authored
      This should be the same number of operations as the non-ec_smallmul
      version (though ideally we'd use the real 15-bit probability
      Encoder output should not change, and all streams should remain
      decodable without decoder changes.
      Change-Id: I2998a77a02f566cd0c82c415395637acf49b5a97
    • Timothy B. Terriberry's avatar
      daala_ec: Convert the decoder to use iCDFs · ead52876
      Timothy B. Terriberry authored
      This only changes the internal coding engine. We convert CDFs into
      iCDFs at the "bool" reader <-> daala_ec boundary.
      Decoder output should not change.
      Change-Id: I483dfe3e5588d2038c3c7ec4cd5ba62d6699b920
    • Timothy B. Terriberry's avatar
      daala_ec: Invert the internal state of the decoder · 881f109b
      Timothy B. Terriberry authored
      This removes one subtraction from the CDF search loop (reducing the
      dependency chain for reading from the CDF) at the cost of one
      increment and decrement during renormalization (easily absorbed by
      the reorder buffer).
      There should be no change in decoded output.
      Change-Id: Ia7905bb8ca7c5d4ab73f23ccc61bcd3432349aa2
    • Timothy B. Terriberry's avatar
      daala_ec: Convert the encoder to use iCDFs · 41b4f75b
      Timothy B. Terriberry authored
      This only changes the internal coding engine. We convert CDFs into
      iCDFs at the "bool" writer <-> daala_ec boundary.
      Encoder output should not change, and all streams should remain
      decodable without decoder changes.
      Change-Id: Id3ac7352926497bf6f7bc371ab9bc76e9a3569d5
    • Timothy B. Terriberry's avatar
      daala_ec: Remove non-dyadic functions. · 033e5368
      Timothy B. Terriberry authored
      Encoder output should not change, and all streams should remain
      decodable without decoder changes.
      Change-Id: Id1f1b0f2f02c3b46f150a93c451bf48abd0782ca
    • Ryan Lei's avatar
      update parallel_deblocking experiment with more filter tap options · dd6fa06a
      Ryan Lei authored
      this change adds the following filter tap options:
      1. add options to replace 15 tap filter with 9 or 11 tap filter
      2. force chroma plane to only use maximum 7 tap filter
      above options are disabled by default
      Change-Id: Iab90a613210c1adaf4475976e9ed7e78ac30803b
    • Zoe Liu's avatar
      Adjust encoder rate allocations for ext-refs · c3571bc8
      Zoe Liu authored
      This CL is targeted to improve the objective/subjective quality of the
      "ext-refs" coding tool.
      Tuned the frame rate factors as follows:
      (1) BRF_UPDATE:
          Decreased from INTER_HIGH (1.5) to GF_ARF_LOW (1.25);
          Increased from INTER_LOW (0.80) to INTER_NORMAL (1.00)
      , which is to reduce the bits allocated to the BWEDREF frame whereas
      to increase the bits allocated to the bi-directionally predicted
      Obtained a coding gain in overall PSNR as follows, compared against
      the original ext-refs:
      lowres: BDRate -0.181%
      midres: BDRate -0.090%
      hdres:  BDRate -0.701%
      Change-Id: Id001f3b124d833da9f80eba4cdec2ca3f6ba9d82
    • Sarah Parker's avatar
      Refactor gm/wm/obmc for cleaner warping interactions · 4c10a3c2
      Sarah Parker authored
      This creates a central function which defines when a
      block should be warped. It also refactors the
      WARPED_MOTION code so that all calls to av1_warp_plane
      happen in the same location.
      No change in performance.
      Change-Id: Icaf9ec7700d34523809258594bb9843bb2975f46
    • Dake He's avatar
      [optimize-b] Use a greedy search method · 97f56645
      Dake He authored
      The greedy search method improves the BD-rate over the baseline by
      more than 0.2% for lowres test set. Larger gain 0.55% is observed for hdres test set.
      [2017.04.06] Cleanup to remove redundant computation. On a local linux
      machine, the greedy method is now faster than the trellis method in
      encoding the first 100 frames of foreman_cif. However, the BD-rate seems
      to become smaller due to the recent changes to the codebase.
      [2017.04.06-2] Style changes to meet the requirements.
      remove "greedy-optimize-b" in configure
      [2017.04.10] Move the changes under the macro USE_GREEDY_OPTIMIZE_B
      [2017.04.11] Adjust rdmult to accommodate CpuSpeedTest
      [2017.04.12] Set USE_GREEDY_OPTIMIZE_B to 0 at the request of debargha@.
      [2017.04.13] Move greedy implementation of optimize_b into a separate
      function with the same name (selected by USE_GREEDY_OPTIMIZE_B, default
      is 0)
      Change-Id: Ic15534f8d696d5f02e8f2e3e9f08b52e41e9efd2
    • Sebastien Alaiwan's avatar
      Simplify coefficient range checking · e5728a95
      Sebastien Alaiwan authored
      Deduplicate implementations of check_range, and deduplicate the call
      to aom_read_bit.
      Change-Id: I63b023758248717125e4df6d1c382d4c517bae84
    • Angie Chiang's avatar
      Modify av1_read_tx_type for lv_map exp · a9f9a31c
      Angie Chiang authored
      Change-Id: I422dfd9d7afe9f7baa04a962e19c8a92d5c12eeb
    • Angie Chiang's avatar
      Write/update tx_type per txb in lv_map exp · 1628fccb
      Angie Chiang authored
      Change-Id: I052721017cddd57ff9995e8dd442e4b3436a0b48
    • Angie Chiang's avatar
      Add av1_update_tx_type_count() · b14b73f9
      Angie Chiang authored
      This will make the code cleaner and lv_map experiment will be able
      to reuse this function.
      Change-Id: I885336117daa0090e16f1bb7a0c3e7bb54105410
    • Angie Chiang's avatar
      Modify av1_write_tx_type for lv_map experiment · c31ea682
      Angie Chiang authored
      Change-Id: If129748d918995efcc58169d153a0950eeec5efb