1. 12 Feb, 2018 1 commit
    • Peng Bin's avatar
      Add inv txfm2d sse2 for sizes with 4 · 18976fa5
      Peng Bin authored
      Implement av1_lowbd_inv_txfm2d_add_4x4_sse2
      Implement av1_lowbd_inv_txfm2d_add_4x8_sse2
      Implement av1_lowbd_inv_txfm2d_add_8x4_sse2
      Implement av1_lowbd_inv_txfm2d_add_4x16_sse2
      Implement av1_lowbd_inv_txfm2d_add_16x4_sse2
      A brief speed test shows that using the included SSE2 functions
      completed by this CL, for speed1 lowbitdepth encoder speeds up >9%
      and lowbitdepth decoder speeds up >25%, comparing to the highbitdepth
      implementation in the baseline.
      Change-Id: I0576a2a146c0b1a7b483c9d35c3d21d979e263cd
  2. 11 Feb, 2018 2 commits
    • Peng Bin's avatar
      Add inv txfm2d 64 sse2 · a7ba23f6
      Peng Bin authored
      Implement av1_lowbd_inv_txfm2d_add_32x64_sse2
      Implement av1_lowbd_inv_txfm2d_add_64x32_sse2
      Implement av1_lowbd_inv_txfm2d_add_16x64_sse2
      Implement av1_lowbd_inv_txfm2d_add_64x16_sse2
      Change-Id: I1b27618f153583cc787e7bf6ef1616e7c6932990
    • Peng Bin's avatar
      Add inv txfm2d {8x32,32x8} sse2 · 008c6430
      Peng Bin authored
      Implement av1_lowbd_inv_txfm2d_add_8x32_sse2
      Implement av1_lowbd_inv_txfm2d_add_32x8_sse2
      Change-Id: Ibd5de72e1d2c4dabba5af020a06e8cfac329dc3d
  3. 10 Feb, 2018 1 commit
  4. 09 Feb, 2018 4 commits
  5. 08 Feb, 2018 2 commits
    • Peng Bin's avatar
      Implement av1_lowbd_inv_txfm2d_add_8x8_sse2 · 58bd7ced
      Peng Bin authored
      1. Change the output type from uint16_t to uint8_t;
      2. sse2 version comparing to av1_inv_txfm2d_add_8x8_c achieves 4x~9x
      Change-Id: I08675a018d11f9904d5b0a40aa896fe8fd437352
    • Angie Chiang's avatar
      Bitstream change - avoid overflow of identity txfm · a87dc765
      Angie Chiang authored
      1) Use 12-bit precision for square-root-2 scaling in identity txfms
      2) Use generic method to compute the identity txfm
      3) Test the identity config for tx64
      Change-Id: I7350682bae9134b1f70a9ad80d5e64236f7728e2
  6. 25 Jan, 2018 1 commit
    • Angie Chiang's avatar
      Simplify txfm table · 0c7b8d84
      Angie Chiang authored
      Instead of listing all possible stage_range,
      we use set_fwd_txfm_non_scale_range() to generate 2d stage_range
      from 1d stage_range.
      This will reduce the complexity of txfm table significantly.
      This is a lossless change.
      The coding performance isn't changed.
      The txfm config is exactly the same as it was before.
      Change-Id: Ibd1d9e53772bb928faaeecc98d81cbc8f38b27ed
  7. 24 Jan, 2018 2 commits
    • Angie Chiang's avatar
      Simplify cos_bit setting in txfm · d4327bce
      Angie Chiang authored
      Move cos_bit from txfm 1d cfg to 2d cfg
      Each txfm stage only uses one cos_bit
      This is a lossless change and it speeds up encoder by 2%
      Change-Id: I45d398761e4729b8c4c37729571fe3765cb0c83f
    • Johann's avatar
      adopt some clang 5.0.0 formatting · 123e8a60
      Johann authored
      At least the changes that don't conflict with 4.0.1
      Change-Id: Iaa2fda027b8ab2b023d608cf5ec7b377a72b851e
  8. 23 Jan, 2018 3 commits
  9. 11 Jan, 2018 1 commit
    • Angie Chiang's avatar
      Move rect txfm's shift setting into config · a4c80485
      Angie Chiang authored
      For 2:1 txfm, move the sqrt2 scaling to the end of the fwd txfm
      This only affects the txfm accuracy slightly but simplifies the
      range management a lot.
      Change-Id: I2eef8c15b7e8958a1fb0f2ae632604fdbab86046
  10. 05 Jan, 2018 1 commit
  11. 04 Jan, 2018 1 commit
  12. 03 Jan, 2018 1 commit
    • Debargha Mukherjee's avatar
      Various fixes to scale managed txfms and tests · 1158bff7
      Debargha Mukherjee authored
      This patch clears all test failures with coeff range checking
      enabled for forward and inverse transforms. Also this
      patch ensures that there are no transposes for any of the
      rectangular transforms.
      Some fine-tunnig and refactoring are still pending.
      Some of the tests still need to be rewritten.
      Change-Id: Ib0e3a4ceccef665ba007d121f536fad7135f38d5
  13. 29 Dec, 2017 1 commit
  14. 27 Dec, 2017 1 commit
  15. 21 Dec, 2017 1 commit
  16. 16 Dec, 2017 1 commit
  17. 15 Dec, 2017 3 commits
    • Urvang Joshi's avatar
      txfm2d_test: Relax some error thresholds. · 46e8fda0
      Urvang Joshi authored
      Thresholds needed to be relaxed when CONFIG_TXMG is off.
      All the transform tests pass with that config now, except ones related
      to TX_16X64, which is being looked at separately.
      Change-Id: I974a742c66b5bb70c7050c4d3a317e159840d8e4
    • Yaowu Xu's avatar
      Add a missed array alignment · e3fb5689
      Yaowu Xu authored
      Change-Id: I4196cc5fa03353bcb760bfbf5d1182f0609f2475
    • Yaowu Xu's avatar
      Align arrays · b971c866
      Yaowu Xu authored
      Change-Id: I6f2a312bf34c87845688503907120dc915459e21
  18. 14 Dec, 2017 2 commits
    • Urvang Joshi's avatar
      AV1InvTxfm2d: Better test for txfms with approx. · 5dbb9b4c
      Urvang Joshi authored
      Transforms with one of the dimensions being 64 use an approximate 2D DCT
      transform, which makes round trips errors large for randomized input.
      So, for such transform sizes, we use a modified test that compares (a)
      reference forward transform + inverse transform to (b) forward transform
      + inverse transform.
      Change-Id: Ic47b0037a0883add4c9f84ac16e03d75b258d5ae
    • Urvang Joshi's avatar
      AV1InvTxfm2d.RunRoundtripCheck: Add 1:4 transforms · e035b5d9
      Urvang Joshi authored
      Also added some missing 1:2 transforms to the test.
      Change-Id: If5ee878c56ba32450931e00b70c00cd95b56359c
  19. 13 Dec, 2017 1 commit
  20. 12 Dec, 2017 1 commit
  21. 30 Nov, 2017 1 commit
    • Urvang Joshi's avatar
      Pass TXFM_2D_FLIP_CFG by pointer; don't return. · c502216a
      Urvang Joshi authored
      This avoids copying a whole struct on return. This is important, because
      this function is called frequently: once for every block that is transformed.
      Overall, aomenc speed seems to be improved slightly: by 0.15% - 0.30%.
      Change-Id: If44c351e1141c0fe0458daa2262aeb4afe44de46
  22. 28 Nov, 2017 1 commit
  23. 15 Nov, 2017 1 commit
  24. 02 Nov, 2017 1 commit
    • Sebastien Alaiwan's avatar
      Remove experimental flag of EXT_TX · 3bac9928
      Sebastien Alaiwan authored
      This experiment has been adopted, we can simplify the code
      by dropping the associated preprocessor conditionals.
      Change-Id: I02ed47186bbc32400ee9bfadda17659d859c0ef7
  25. 30 Oct, 2017 1 commit
  26. 05 Oct, 2017 1 commit
  27. 09 Aug, 2017 1 commit
    • Angie Chiang's avatar
      Add txfm config test · 9c7089a9
      Angie Chiang authored
      This test makes sure two things:
      1) txfm stage range is within desired limit
          (lbd:16 bits hbd:32 bits)
      2) txfm stage range + cos bits is within desired limit
          (lbd:32 bits hbd:32 bits)
      Change-Id: Ie2cc3c8265810e034c1461def4717fa9d4c29945
  28. 08 Aug, 2017 1 commit
  29. 15 Jul, 2017 1 commit
    • Sebastien Alaiwan's avatar
      Avoid use of 'assert' in unit tests · 8b730a5a
      Sebastien Alaiwan authored
      A failing 'assert' aborts the execution of the test suite,
      instead of simply failing the erroneous test, and continuing with other tests.
      Change-Id: I3fdaf20a22ea343ac75be7883addbe6ba1e55da1