1. 20 Apr, 2017 3 commits
    • David Barker's avatar
      Harmonize ext-inter and ref-mv · 3dfba994
      David Barker authored
      This changes the behavior of the ext-inter compound modes
      as follows:
      * NEAREST_NEARESTMV, NEAR_NEARMV, NEW_NEWMV, ZERO_ZEROMV
        work the same as the corresponding compound modes without
        ext-inter
      * NEAREST_NEWMV and NEW_NEARESTMV keep their current behavior,
        which is to use the first ref-mv candidate pair for their
        particular reference frames
      * NEAR_NEWMV and NEW_NEARMV select between the second, third,
        and fourth candidate pairs.
      * NEAREST_NEARMV and NEAR_NEARESTMV use the first candidate
        pair for the NEAREST component and the second, third, or
        fourth candidate pair for the NEAR component.
      
      Also do some minor refactoring and fix compile errors
      with --enable-ext-inter --disable-ref-mv
      
      Change-Id: If0d2a60559083b7c1189909d426b705af42d2d0e
      3dfba994
    • hui su's avatar
      palette-delta-encoding experiment · d13c24a5
      hui su authored
      Transmit palette colors with delta encoding.
      Coding gain on scrren_content testset:
      overall 0.67%  keyframe 1.37%
      
      Change-Id: I72ce9061dfddf933e9f7530f069955afcb07edf8
      d13c24a5
    • Yunqing Wang's avatar
      ext_tile: add 2 tile encoding modes · d8cd55f4
      Yunqing Wang authored
      Added 2 tile encoding modes:
      TILE_NORMAL mode supports the large-scale tile coding up to 1024 x 1024
      tiles;
      TILE_VR mode supports the large-scale tile coding and also the decoding
      of a single tile.
      
      TILE_NORMAL mode allows the non-vr content to be encoded in multiple tiles
      without using the coding tool that are designed for vr applications.
      
      Change-Id: Id804806a1bbcb916b7f5dc7e2c5509d88f3defcb
      d8cd55f4
  2. 19 Apr, 2017 11 commits
    • Frederic Barbier's avatar
      Initialize the reference vector list · 7a84fd8c
      Frederic Barbier authored
      Change-Id: If5e82229ca9e312c167230d0f0c8c8c8a785892d
      7a84fd8c
    • James Zern's avatar
      use storage.googleapis for testdata download · f9687c5b
      James Zern authored
      replace downloads.webmproject.org with the canonical
      storage.googleapis.com/... form. this appears less likely to fail when
      dealing with multiple concurrent connections.
      
      original change in libvpx:
      22f7aca09 use storage.googleapis for testdata download
      
      Change-Id: Ie1bc329fecb336f089a662451b8ebf0c0d9dc2d6
      f9687c5b
    • James Zern's avatar
      Revert "Enable ext-refs as default" · 829dbf29
      James Zern authored
      This reverts commit acbb5dfe.
      
      This causes build warnings / failures with a combination of experiments.
      
      Change-Id: If8364845b7c1455957956c464da46805275c90c0
      829dbf29
    • Fergus Simpson's avatar
      bitstream-debug: Merge queue_pop and queue_push · 2f905d26
      Fergus Simpson authored
      The bitstream_queue_pop and bitstream_queue_push functions were
      implemented twice each, one implementation for CONFIG_DAALA_EC being set
      and for it not being set. This could cause issues with debugging since
      there's two potential paths, meaning breakpoints and edits need to be
      inserted twice.
      
      The functions were already minimally different, so this patch merges the
      implementation pairs to simplify the code.
      
      Change-Id: I37cdd96470f0ae41b25dc28da50e2c7a1b9af01e
      2f905d26
    • James Zern's avatar
      test-data: restrict large yuv to perf tests · 86251126
      James Zern authored
      niklas_1280_720_30.yuv (~619M) is only required with
      --enable-decoder-perf-tests
      
      Change-Id: I143f7e83215b4b7214cf45b752c94a9ee05093d4
      86251126
    • Zoe Liu's avatar
      Enable ext-refs as default · acbb5dfe
      Zoe Liu authored
      Change-Id: I53c844724794e13116152d0492bbcdd3ece12d17
      acbb5dfe
    • David Barker's avatar
      Fix some rdopt bugs in ext-inter · cb03dc34
      David Barker authored
      * Refactor write_inter_mode and cost_mv_ref slightly
      
      * In handle_inter_mode: When discount_newmv_test returns 1,
        ext-inter is enabled, and we're costing up a compound mode,
        we would previously call cost_mv_ref with mode=NEARESTMV and
        comp_pred=1. But this is inconsistent when ext-inter is enabled!
      
        Fix this by changing the behaviour of cost_mv_ref to (effectively)
        derive comp_pred from the mode passed in, and switch to
        mode=NEAREST_NEARESTMV in the above case.
      
      * Fix incorrect motion vector costing for some compound modes
      
      * Fix a case where compound blocks were mis-costed. This primarily
        affects ext-inter *without* wedge or compound-segment enabled,
        but should still have some small impact when those experiments
        are enabled.
      
        The cause of this is that we only spend bits to send the
        interinter compound type if is_any_masked_compound_used(bsize)
        returns true. But the rdopt loop forgot to check this condition
        in one case.
      
      Change-Id: I8b54cb3552f9ec384fd5ea260e12685168fbccc1
      cb03dc34
    • Steinar Midtskogen's avatar
      Retune CDEF dering threshold adjustment · fade4637
      Steinar Midtskogen authored
      Change the adjustment range from [50% ... 300%] to [25% ... 100%].
      Adjustments above 100% were very rare, and capping the adjustment at
      100% adds SIMD optimisation opportunities.  And lowering the other end
      to 25% seems to help compresson slightly.
      
      Low latency, used-cpu=0:
         PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
      -0.0453 | -0.1118 | -0.1127 |  -0.0689 | -0.0429 | -0.0814 |    -0.0762
      
      High latency, used-cpu=0:
         PSNR | PSNR Cb | PSNR Cr | PSNR HVS |   SSIM | MS SSIM | CIEDE 2000
      -0.0303 |  0.0583 |  0.1740 |  -0.0440 | 0.0033 | -0.0042 |     0.0040
      
      Change-Id: Id999158330a53e8c3383cd0e53a91c7f59fe062a
      fade4637
    • Steinar Midtskogen's avatar
      Signal CDEF damping in the frame header · 0c966a50
      Steinar Midtskogen authored
      Change-Id: I57f232623e647f029b007de8ddb203c47ca3c11c
      0c966a50
    • Michael Bebenita's avatar
      Fix CDEF SIMD code for cb4x4 · efacce93
      Michael Bebenita authored
      Change-Id: Iec83111328d5343250b9a35dc2896541393f3efa
      efacce93
    • Sean Purser-Haskell's avatar
      Fix array bounds overflow in warped test. · a57f77f2
      Sean Purser-Haskell authored
      Change-Id: Ie92cd0a4a97312f40fe8604ac671dc43188b5647
      a57f77f2
  3. 18 Apr, 2017 10 commits
    • Alex Converse's avatar
      intrabc: Add experiment · 576f0652
      Alex Converse authored
      Change-Id: If73aee341df8e9fe2d2a4e46f0bf4a0180cd4b5f
      576f0652
    • Ralph Giles's avatar
      Don't export kMinCompressedSize. · 19944291
      Ralph Giles authored
      kMinCompressedSize was defined as a global constant, so it
      was exported by default and possibly causing duplicate
      symbol issues for applications. In particular, libvpx also
      exports this symbol.
      
      Instead, move the definition into the only function which
      references is. As a local variable it is hidden from the
      linker and not part of the global symbol table.
      
      Change-Id: If8b3bc4c487197237adb04749cd3dd4792e39893
      19944291
    • Fangwen Fu's avatar
      Set palette_throughput experiment default on. · 2d422fb1
      Fangwen Fu authored
      Change-Id: I6c0897f9d432121c425ae1cea34bd7f72d207c72
      2d422fb1
    • Ryan Lei's avatar
      unify the intra prediction angle options for different block sizes · c81ea6e0
      Ryan Lei authored
      this change unifies the intra prediction angles so that 8x8 block has
      the same number of angles and angle steps as 16x16 and 32x32 blocks.
      the benefit is that HW implementation can have the same logic to
      handle all block sizes. otherwise, prediction angles for 8x8 is
      different from other block sizes, which requies special logic.
      
      Change-Id: I99f8d82b4b96fa1442a657b56a93e326f1eec321
      c81ea6e0
    • Angie Chiang's avatar
      Redo txfm/quant in av1_txk_search · 2ed03a37
      Angie Chiang authored
      Change-Id: I622d499187f3881b274ca6cf3745f51fa0103b18
      2ed03a37
    • 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
      separately
      
      Note that txk_sel is build on top of lv_map
      
      Change-Id: I5bd1ea99be30000efcdc2bcd42de002b78b1c3c8
      cd9b03fb
    • 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
      QP=20.
      
      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
      f6c807c5
    • Yi Luo's avatar
      Deliver the eob threshold to inverse transform · f8e87b46
      Yi Luo authored
      Change-Id: Iaa8ab77eb4a982759939fb5fc475f699cb21a4e1
      f8e87b46
    • 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
      a4d87992
    • zhipin deng's avatar
      enable mv_compress by default · 1c25c758
      zhipin deng authored
      Change-Id: Idcf587227a7e508344d00a4d456c747b4f8d109b
      1c25c758
  4. 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
      8082614e
    • 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
      directly.
      
      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
      350a9b76
    • 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.
      
      BUG=aomedia:422
      
      Change-Id: I5bc40b2dcd7bf53b20c1bea454aae49f2d5dfe67
      36661926
    • 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
      27acc478
    • Michael Bebenita's avatar
      Fix inspection mi grid size. · b5bf51ec
      Michael Bebenita authored
      Change-Id: I152837d872ce5b234c62c7190a2350cea710d579
      b5bf51ec
    • 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
      f1207b60
    • Yaowu Xu's avatar
      Fix build for motion-var and ext-inter · a631722c
      Yaowu Xu authored
      Change-Id: If7a3dc0006543c30f55f4ed2b33f28b69395bd60
      a631722c
    • 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
      f0dfc03d
    • Angie Chiang's avatar
      Turn on tx_type search when sb_type < BLOCK_8X8 · c2ebfbfc
      Angie Chiang authored
      Change-Id: I8d9686c36ebf7057c4432bb5a29ade78dc21d0a7
      c2ebfbfc
    • 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.
      
      BUG=aomedia:424
      
      Change-Id: Ifad02fab4412588527ec7e8b24ab9b8c6327e5ba
      3ca0e672
    • 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.
      
      BUG=aomedia:437
      
      Change-Id: I3c67525691a3003f9f470e8a0d5b4ee187cba963
      041c67b9
    • 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
      8c41024b
  5. 16 Apr, 2017 2 commits
  6. 15 Apr, 2017 2 commits