1. 22 Apr, 2017 6 commits
    • James Zern's avatar
      get_tile_buffers: normalize size types · 6efba480
      James Zern authored
      quiets -Wshorten-64-to-32 warnings
      
      BUG=aomedia:445
      
      Change-Id: Ieae58e09804e8707393a3813529f3c6316eef888
      6efba480
    • James Zern's avatar
      av1_dist_block: quiet -Wshorten-64-to-32 warning · c1d54a43
      James Zern authored
      make tmp an int64 as 12-bit may exceed 32-bits
      
      BUG=aomedia:445
      
      Change-Id: I5e7bc9e90b6c3c0c30e725efaf5f5e217cfbe82a
      c1d54a43
    • James Zern's avatar
      bitstream.c: normalize some size types · 71a37de8
      James Zern authored
      size_t -> uint32_t, quiets -Wshorten-64-to-32 warnings
      
      BUG=aomedia:445
      
      Change-Id: Id714ece4ca672ac2a6beabca32a5fa30d83c8231
      71a37de8
    • James Zern's avatar
      {aq_variance,firstpass,ratectrl}.c: quiet -Wshorten warnings · be0bdd8c
      James Zern authored
      ported from libvpx:
      
      Added casts to remove warnings:
      
      In regards to the safety of these casts they are of two types:-
      
      - Normalized bits per (16x16) MB stored in a 32 bit int (This is safe as
        bits per MB even with << 9 normalization cant overflow 32 bits. Even
        raw 12 bits hdr source even would only be  29 bits :- (4+4+12+9) and
        the encoder imposes much stricter limits than this on max bit rate.
      
      - Cast as part of variance calculations.  There is an internal cast up
        to 64 bit for the Sum X Sum calculation, but after normalization
        dividing by the number of points the result will always be <= the SSE
        value.
      
      BUG=aomedia:445
      
      Change-Id: I4e700236ed83d6b2b1955e92e84c3b1978b9eaa0
      be0bdd8c
    • Urvang Joshi's avatar
      Revert "highpass_filter: Refactor the highbd and lowbd versions." · 0c459414
      Urvang Joshi authored
      This reverts commit c92c6e9d.
      
      Reason for revert:
      
      The lowbd version of the function is called even with CONFIG_HIGHBITDEPTH
      on, when bit depth == 8. And that particular case will not work as
      before with this change.
      
      BUG=aomedia:442
      
      Change-Id: I50c0a1238c93d2c729ab878cf04ca417fee3b202
      0c459414
    • Urvang Joshi's avatar
      Refactor row and col versions of fadst16 step2 msa functions. · 7ee540dc
      Urvang Joshi authored
      Only differences:
      - Initial values of 'out_ptr' were different.
      - Macros used to load g13, g15, g5 and g7 were different, but they were
      actually equivalent.
      
      BUG=aomedia:442
      
      Change-Id: I58bbb97e4d9ed3bebabaaa24442021703415aaec
      7ee540dc
  2. 21 Apr, 2017 9 commits
  3. 20 Apr, 2017 19 commits
    • Zoe Liu's avatar
      Enable ext-refs as default · 6eeea0e8
      Zoe Liu authored
      Fixed a couple of compiling warnings when the "deep" analyzer is on.
      
      Change-Id: I96842e8226f1993a1329217c0dbf4a081d0c94f9
      6eeea0e8
    • Urvang Joshi's avatar
      Common Identity 16x8 transform: forward and reverse. · bd343f43
      Urvang Joshi authored
      The code for forward and reverse transform was exactly same, so moved to
      a common header.
      
      BUG=aomedia:442
      
      Change-Id: Ic0d82b6213127c757c81e7a84045a30e28036161
      bd343f43
    • Urvang Joshi's avatar
      highpass_filter: Refactor the highbd and lowbd versions. · c92c6e9d
      Urvang Joshi authored
      Almost the whole function was common except the type of 'dgd', so use a
      common helper function.
      
      BUG=aomedia:442
      
      Change-Id: I4bf20dce5f2faeaa7e6255452282f7653090b990
      c92c6e9d
    • Urvang Joshi's avatar
      warp_affine_c: Refactor highbd and lowbd versions. · 8cd0e7ef
      Urvang Joshi authored
      Only a few lines differed between the two.
      
      BUG=aomedia:442
      
      Change-Id: I304c07d962c9a166596ec97ae4e2ec23ea90a195
      8cd0e7ef
    • Alex Converse's avatar
      global_motion: Make symbols not used in other files static · 88b4e7d7
      Alex Converse authored
      BUG=aomedia:453
      
      Change-Id: Iea0b41152bce90c53b1b0668776ae0d4c854d4ab
      88b4e7d7
    • Alex Converse's avatar
      Lowercase cpi->Source and cpi->Last_Source · f77fd0b0
      Alex Converse authored
      BUG=aomedia:449
      
      Change-Id: I8d1a0342e11877e466a1fb771f9a1941598c95d5
      f77fd0b0
    • Urvang Joshi's avatar
      quantize_b_c: Refactor highbd and lowbd versions. · e78b6f4d
      Urvang Joshi authored
      The two functions were exactly the same.
      
      BUG=aomedia:442
      
      Change-Id: I8062dc06ec054d58a97be7396fc07bafc13e5fd5
      e78b6f4d
    • Yue Chen's avatar
      Always use above predictor in under 8x8 chroma obmc · f7ba6470
      Yue Chen authored
      Change-Id: Ic23c96b78112ef9fbd7adad69f63bdbe3a56ce23
      f7ba6470
    • Sebastien Alaiwan's avatar
      Drop support for CONFIG_EMULATE_HARDWARE · c6a48a25
      Sebastien Alaiwan authored
      This experiment complexifies DSP function dispatch, without bringing
      any real value (it's non-normative arbitrary behaviour).
      Moreover, it only has an effect on obsolete transforms, the new ones
      don't implement this mechanism.
      
      Change-Id: Idaccdd0c14ed6b7008cd4f365c7f017ba8ccacf5
      c6a48a25
    • Alex Converse's avatar
      intrabc: Add initial skeleton · 28744309
      Alex Converse authored
      Missing features:
      * RDOPT (Forced on for certain blocks)
      * Any form of border extension
      * Non MI sized right and bottom edges
      * MV prediction
      
      Present features:
      * Force intrabc for some blocks
      * Carry intrabc in the bitstream
      * Validate DV is causal
      * Reconstruct intrabc block assuming border extension is unnecessary
      
      Change-Id: Ib1f6868e89bfacc2a4edfc876485bad1b347263b
      28744309
    • Thomas Davies's avatar
      NEW_TOKENSET: speed up decoder loop. · de8f8f7a
      Thomas Davies authored
      Change-Id: I1a220c9c0190ff38603f1d3a6601d04f5aaaf224
      de8f8f7a
    • Jingning Han's avatar
      Fix ext-inter decode mem access · 1b5bd000
      Jingning Han authored
      BUG=aomedia:452
      
      Change-Id: I8bd7ca9556cee87f84189a2f08d152ff7ad85f87
      1b5bd000
    • Zoe Liu's avatar
      Fix the build failure combining ext-refs and xiphrc · e04abf72
      Zoe Liu authored
      Change-Id: I815d37986119b20ff386c640fe60e41aef785be3
      e04abf72
    • Zoe Liu's avatar
      Fix the build failure combining ext-refs and tempmv-signaling · 453aef6e
      Zoe Liu authored
      Change-Id: I3673e84faccc0d4e1a7c433660f783f1eccbdb85
      453aef6e
    • Jonathan Matthews's avatar
      Bugfix: Insert missing bracket · b28b78cd
      Jonathan Matthews authored
      Introduced in Change-Id I06b8b75b667bb1bc4ddffc78f895e48a09f4c578
      
      BUG=aomedia:440
      
      Change-Id: Ic261617fced9d211a93c075bff2e2b4771de98fc
      b28b78cd
    • Yushin Cho's avatar
      Fix daala-dist in sub8x8 inter rdo without cb4x4 · 4483e3dd
      Yushin Cho authored
      Fixes several bugs in daala-dist, sub8x8 inter mode
      with --disable-cb4x4.
      
      Changes on BD-Rate are:
      (objective-1-fast, high delay mode, --disalble-cb4x4):
      
         PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
      14.0337 | 13.0132 | 14.6055 |  -3.2030 | -2.2092 | -9.3902 |    10.3399
      
      Additionally, BD-Rate change by daala-dist in enforced MSE mode
      which can show the correctness of implementation is
      
        PSNR | PSNR Cb | PSNR Cr | PSNR HVS |   SSIM | MS SSIM | CIEDE 2000
      0.0048 |  0.0789 |  0.0209 |   0.0443 | 0.0137 |  0.0411 |     0.0441
      
      Change-Id: I68ec90c6072aa3564522c2b8e87b62a998cec47c
      4483e3dd
    • 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
  4. 19 Apr, 2017 5 commits
    • Frederic Barbier's avatar
      Initialize the reference vector list · 7a84fd8c
      Frederic Barbier authored
      Change-Id: If5e82229ca9e312c167230d0f0c8c8c8a785892d
      7a84fd8c
    • 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
  5. 18 Apr, 2017 1 commit
    • 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