1. 23 Nov, 2016 1 commit
    • David Barker's avatar
      Improve rectangular transform accuracy · 838a53d6
      David Barker authored
      By adjusting the internal scaling and rounding in the transforms,
      we can adjust the maximum round-trip errors to:
      * 8x16 and 16x8: 0 pixel values (ie, transforms are exact)
      * 16x32: 1 pixel value
      * 32x16: 2 pixel values
      
      Change-Id: I0ba691a8d27042dcf1dd5ae81568d07a92d68781
      838a53d6
  2. 21 Nov, 2016 1 commit
    • Yi Luo's avatar
      Fix rectangle transform computation overflow · 63bd6dc9
      Yi Luo authored
      - Add 16-bit saturation in fdct_round_shift().
      - Add extreme value tests and round trip error tests.
      - Fix inv 4x8 txfm calculation accuracy.
      - Fix 4x8, 8x4, 8x16, 16x8, 16x32, 32x16 extreme value tests.
      - BDRate: lowres: -0.034
                midres: -0.036
                hdres:  -0.013
      BUG=webm:1340
      
      Change-Id: I48365c1e50a03a7b1aa69b8856b732b483299fb5
      63bd6dc9
  3. 09 Nov, 2016 2 commits
  4. 02 Nov, 2016 2 commits
  5. 20 Oct, 2016 1 commit
    • Yi Luo's avatar
      Fix the overflow of av1_fht32x32() in 2D DCT_DCT · 157e45a4
      Yi Luo authored
      - Use range check function to avoid DCT_DCT overflow.
        We need to re-develop the column txfm side scaling/rounding. Now,
        we prefer to maintain the current BDRate level.
      - Encoder user level time reduction <1% owing to av1_fht32x32_avx2.
      - Add MemCheck unit test and fdct32() unit test.
      
      Change-Id: I1e67030f67bc637859798ebe2f6698afffb8531c
      157e45a4
  6. 19 Oct, 2016 1 commit
  7. 06 Oct, 2016 1 commit
    • Yi Luo's avatar
      Hybrid forward transforms 16x16 AVX2 optimization · e8e8cd8f
      Yi Luo authored
      - Unit tests are added for AVX2 SIMD.
      - Encoder speed improvement:
        AV1 baseline and EXT_TX, three 1080p sequences at bitrate:
        800 Kbps, 2 Mbps, 6 Mbps, on i7-6700 CPU, average
        user level time reduction: 3.86%.
      
      Change-Id: Ibbd7837ee3a831c6b1e4e471bf6c8d3fa3a19ff4
      e8e8cd8f
  8. 03 Oct, 2016 1 commit
  9. 23 Sep, 2016 1 commit
  10. 09 Sep, 2016 1 commit
  11. 02 Sep, 2016 2 commits
    • Yaowu Xu's avatar
      Change to use AOM copyright notice · 2ab7ff05
      Yaowu Xu authored
      Change-Id: I2b2b70e756b7eb9611b7b33b7d5f19b3b30e0a50
      2ab7ff05
    • Geza Lore's avatar
      Minor transform code cleanup · a1ddae59
      Geza Lore authored
      - Localize static lookup tables in the sole functions that use them.
      - Remove dead high bit-depth IDST functions.
      - Apply clang-format
      
      Change-Id: Ibbd7db4259f9ea64d695b2f13f5c118aac8f1cf9
      a1ddae59
  12. 01 Sep, 2016 2 commits
  13. 26 Aug, 2016 1 commit
    • Geza Lore's avatar
      Use rectangular transforms for >= 8x8 blocks · d21982c8
      Geza Lore authored
      For rectangular blocks between 8x8 and 32x32, we can now code the
      transform size as one bigger than the largest square that fits in
      the block (eg, for 16x8, we can code a transform size of 16x16
      rather than the previous maximum of 8x8), when this oversized
      transform is coded in the bitstream, the codec will use the full
      size rectangular transform for that block (eg 16x8 transform in
      the above example).
      
      Also fixes a scaling bug in 16x8/8x16 transforms.
      
      Change-Id: I62ce75f1b01c46fe2fbc727ce4abef695f4fcd43
      d21982c8
  14. 23 Aug, 2016 1 commit
  15. 18 Aug, 2016 1 commit
  16. 16 Aug, 2016 1 commit
    • Yaowu Xu's avatar
      Port commits related to clpf and qm experiments · 0818a7c8
      Yaowu Xu authored
      Manually cherry-picked following commits from AOMedia git repository:
      bb2727c2 Sort includess for "clpf.h"
      c297fd00 Add quantisation matrix range parameters.
      0527894f Add encoder option and signaling for quant matrix control.
      4106232b Turn off trellis coding for quantization matrices.
      4017fca3 Modify tests to allow quantization matrices.
      1c122c24 Add quant and dequant functions for new quant matrices.
      95a89994 Enable CLPF
      f72782bb Fix a build issue
      73bae509 Add quantisation matrices and selection functions
      33208d20 Added support for constrained low pass filter (CLPF)
      
      Change-Id: I60fc1ee1ac40e6b9d1d00affd97547ee5d5dd6be
      0818a7c8
  17. 15 Aug, 2016 1 commit
  18. 12 Aug, 2016 1 commit
  19. 21 Jul, 2016 1 commit
    • Debargha Mukherjee's avatar
      Rectangular transforms 4x8 & 8x4 · e5848dea
      Debargha Mukherjee authored
      Added a new expt rect-tx to be used in conjunction with ext-tx.
      [rect-tx is a temporary config flag and will eventually be
      merged into ext-tx once it works correctly with all other
      experiments].
      
      Added 4x8 and 8x4 tranforms for use initially with rectangular
      sub8x8 y blocks as part of this experiment.
      
      There is about a -0.2% BDRATE improvement on lowres, others pending.
      
      When var-tx is on rectangular transforms are currently not used.
      That will be enabled in a subsequent patch.
      
      Change-Id: Iaf3f88ede2740ffe6a0ffb1ef5fc01a16cd0283a
      e5848dea
  20. 22 Mar, 2016 2 commits
    • Yaowu Xu's avatar
      vp10/ -> av1/ · cfea7dd7
      Yaowu Xu authored
      Change-Id: Ia055d03656ad1580447eced8687949583fdf4089
      cfea7dd7
    • Yaowu Xu's avatar
      Rename vpx to aom · bf4202ed
      Yaowu Xu authored
      Change-Id: Ibc7933fba85feeb30ef9b14b302d932aff19f54e
      bf4202ed
  21. 21 Mar, 2016 1 commit
    • Debargha Mukherjee's avatar
      Adds 1D transforms for ADST/FlipADST to make 16 · 1b175593
      Debargha Mukherjee authored
      Makes a set of 16 transforms total, adding all 1D
      combinations of ADST and FlipADST, and removng all DST
      transforms.
      
      lowres, midres both improve by about 0.1% and hdres by
      -0.378% in BDRATE but with fewer transforms that are also
      simpler.
      
      Further experiments to continue later.
      
      Change-Id: I7348a4c0e12078fdea5ae3a2d36a89a319ffcc6e
      1b175593
  22. 15 Mar, 2016 1 commit
    • Debargha Mukherjee's avatar
      Refactor 1D transforms · 9b88762b
      Debargha Mukherjee authored
      In preparation for adding more 1D variants with ADST/FlipADST/etc.
      
      BDRATE actually improves by 0.21% on lowres.
      
      Change-Id: I2fa4720c69fe001fa666119a284dfc6b17fffab2
      9b88762b
  23. 07 Mar, 2016 1 commit
    • Jingning Han's avatar
      Hybrid 1-D/2-D transform coding · a8dc9694
      Jingning Han authored
      This commit enables a hybrid 1-D/2-D transform coding scheme and
      the accompany entropy coding system. It currently uses hybrid
      1-D/2-D DCT transform coding. It provides coding performance gains:
      
      lowres_all  0.55%
      hdres_all   0.43%
      
      Change-Id: I2b30dcafd21eb2bb3371f6e854cbab440a4dfa78
      a8dc9694
  24. 25 Feb, 2016 1 commit
  25. 17 Feb, 2016 1 commit
  26. 16 Feb, 2016 1 commit
  27. 28 Jan, 2016 1 commit
  28. 26 Jan, 2016 1 commit
  29. 21 Jan, 2016 1 commit
  30. 15 Dec, 2015 1 commit
    • Debargha Mukherjee's avatar
      Replace DST1 in ext_tx experiment with DST2 · 49d9730f
      Debargha Mukherjee authored
      The DST2 is implemented by input alternate sign-flip, followed
      by DCT, followed by output reversal.
      Results are roughly the same, but it should be easier to optimize
      the DST2.
      [Interestingly a mtrix multuiply implementation is about 0.1%
      better].
      
      Change-Id: If9ae5fdba87767fb0e6c163a62b77ee66a8d3afc
      49d9730f
  31. 04 Dec, 2015 1 commit
    • Angie Chiang's avatar
      comment out range_check of fdct in dct.c · 08b157da
      Angie Chiang authored
      The range_check is not used because the bit range
      in fdct# is not correct. Since we are going to merge in a new version
      of fdct# from nextgenv2, we won't fix the incorrect bit range now.
      
      Change-Id: I54f27a6507f27bf475af302b4dbedc71c5385118
      08b157da
  32. 09 Nov, 2015 1 commit
    • Johann's avatar
      Release v1.5.0 · cbecf57f
      Johann authored
      Javan Whistling Duck release.
      
      Change-Id: If44c9ca16a8188b68759325fbacc771365cb4af8
      cbecf57f
  33. 03 Nov, 2015 2 commits
    • Geza Lore's avatar
      Eliminate copying for FLIPADST in fwd transforms. · 01bb4a31
      Geza Lore authored
      This patch eliminates the copying of data when using FLIPADST forward
      transforms, by incorporating the necessary data flipping into the
      load_buffer_* functions of the SSE2 optimized forward transforms. The
      load_buffer_* functions are normally inlined, so the overhead of copying
      the data is removed and the overhead of flipping is minimized. Left to
      right flipping is still not free, as the columns need to be shuffled in
      registers.
      
      To preserve identity between the C and SSE2 implementations, the
      appropriate C implementations now also do the data flipping as part of
      the transform, rather than relying on the caller for flipping the input.
      
      Overall speedup is about 1.5-2% in encode on my tests. Note that these
      are only the forward transforms. Inverse transforms to come in a later
      patch.
      
      There are also a few code hygiene changes:
      - Fixed some indents of switch statements.
      - DCT_DCT transform now always use vp10_fht* functions, which dispatch
        to vpx_fdct* for DCT_DCT (some of them used to call vpx_fdct*
        directly, some of them used to call vp10_fht*).
      
      Change-Id: I93439257dc5cd104ac6129cfed45af142fb64574
      01bb4a31
    • Geza Lore's avatar
      Fix transform tables in C implementations. · 2b39bcec
      Geza Lore authored
      These tables were out of sync with the indexing enum since the
      refactoring in commit 4f16f119 (change 303389), due to the removal
      of the ext_tx_to_txtype lookup table. This patch just puts them
      back in order.
      
      Change-Id: Ieb7d57654f61b99b511d54c9ba09abbd5e8d0d14
      2b39bcec
  34. 15 Oct, 2015 1 commit