1. 07 Jun, 2017 1 commit
  2. 06 Jun, 2017 3 commits
    • Yi Luo's avatar
      Misc quantize unit test fix to conform coding style · 7e2dce03
      Yi Luo authored
      Change-Id: I4e9e6dc6c86de24c6a33d7078c29a853e142c062
      7e2dce03
    • David Barker's avatar
      Fix some UBSan warnings · 185575a7
      David Barker authored
      * Make intermediate arrays in av1(_highbd)_warp_affine_c signed,
        to avoid integer overflow when multiplying an 'unsigned int'
        by a negative 'int' value.
      
      * Pad out arrays in masked_variance_test.cc so that the array
        stride is a multiple of 16 bytes.
        This fixes some UBSan errors in masked_variance_intrin_ssse3.c
        related to unaligned loads of 32-bit values.
      
      BUG=aomedia:572
      
      Change-Id: I0cf786c94870ff128c883bed8e900b0686afc3f7
      185575a7
    • David Barker's avatar
      Fix warp filter test with --disable-ssse3 · c2d500aa
      David Barker authored
      Put the test cases for av1_warp_affine_ssse3 behind a
      "#if HAVE_SSSE3" condition
      
      BUG=aomedia:582
      
      Change-Id: Ide55dc1cf6a1d1b0c37db6d17488ac3f8e113888
      c2d500aa
  3. 05 Jun, 2017 1 commit
    • Tom Finegan's avatar
      CMake test target tweaks. · 375ee849
      Tom Finegan authored
      Exclude the test targets from Visual Studio and Xcode generation
      runs unless explicitly requested. The test run takes hours, and
      default behavior in the IDEs is to build all targets.
      
      BUG=aomedia:76
      
      Change-Id: I37e9904bd8d373a399d7d5fa49fe02771011f9d2
      375ee849
  4. 03 Jun, 2017 1 commit
  5. 02 Jun, 2017 2 commits
  6. 01 Jun, 2017 2 commits
    • Timothy B. Terriberry's avatar
      cb4x4: Move sub-4X4 TX sizes behind CONFIG_CHROMA_2X2. · fe67ed6a
      Timothy B. Terriberry authored
      cb4x4 itself should not require these sizes.
      
      This simplifies compatibility with other experiments, since we can
      first make them work with cb4x4 (which is now on by default), and
      then worry about chroma_2x2 (which is not) in separate steps.
      
      Encoder and decoder output should remain unchanged.
      
      Change-Id: I4e9fcdae49f238b5099a3c74a398fe993c2545f8
      fe67ed6a
    • Yue Chen's avatar
      Make ext_inter/wedge/compound_segment/interintra on by default · f03907a2
      Yue Chen authored
      (1) Make unit tests for masked sad/variance encoder-only
      (2) Fix compile error with intrabc
      (3) Fix warnings reported by static analysis
      
      Change-Id: I0cd2176fcda0b81e1fc30283767678376ced4c42
      f03907a2
  7. 31 May, 2017 1 commit
  8. 30 May, 2017 3 commits
    • David Barker's avatar
      Fix ASan bug in masked variance unit test · 723923ca
      David Barker authored
      The masked variance functions can read slightly off the
      (nominal) end of their input array. This is not a problem,
      since the extra data is never used, and when the functions
      are used in the encoder proper, they will just read data
      from the frame border.
      
      However, the arrays in the test case had not been properly
      padded, causing ASan to complain about reading off the end
      of an array.
      
      Also remove an accidental comment in the code.
      
      BUG=aomedia:569
      
      Change-Id: Icb5cf4d39ee50fc6e1b807f483940d7a7b12ce63
      723923ca
    • Thomas Daede's avatar
      Remove VAR_BASED_PARTITION. · 8ea3319e
      Thomas Daede authored
      BUG=aomedia:526
      
      Change-Id: I5d9b86a36f412ded2d6f20e198d2f4de4f97aaeb
      8ea3319e
    • Yi Luo's avatar
      Add a unit test for AV1 quantizer optimization · ef39c843
      Yi Luo authored
      BUG=aomedia:542
      
      Change-Id: Ifceffa29d87d12c37ae1563350101415631eaa00
      ef39c843
  9. 26 May, 2017 1 commit
    • David Barker's avatar
      ext-inter: Vectorize new masked SAD/SSE functions · 0aa39ff0
      David Barker authored
      We would expect that these new functions would be slower than
      the old masked SAD/SSE functions, as they do additional work
      (blending two inputs and comparing to a third, rather than
      just comparing two inputs).
      
      This is true for the SAD functions, which are about 50% slower
      (depending on block size and bit depth). However, the sub-pixel
      SSE functions are comparable to the old speed for the accelerated
      special cases (xoffset or yoffset = 0 or 4), and are
      between 40-90% faster for the generic case.
      
      Change-Id: I1a296ed8fc9e3edc313a6add516ff76b17cd3e9f
      0aa39ff0
  10. 25 May, 2017 2 commits
  11. 24 May, 2017 3 commits
    • Sean Purser-Haskell's avatar
      Normalize parameter rounding with get_shear_params(). · 7d7b2c29
      Sean Purser-Haskell authored
      Change-Id: I529a7c0868039a82f46993577471cb6c452b025b
      7d7b2c29
    • Tom Finegan's avatar
      Remove CONFIG_{DE,EN}CODERS from the build system. · 378d652f
      Tom Finegan authored
      Use CONFIG_AV1_DECODER and CONFIG_AV1_ENCODER instead.
      
      Change-Id: I33d83aa6d31067d0db7a972d36927dc49c420f81
      378d652f
    • David Barker's avatar
      ext-inter: Further cleanup · f19f35f7
      David Barker authored
      * Rename the 'masked_compound_*' functions to just 'masked_*'.
        The previous names were intended to be temporary, to distinguish
        the old and new masked motion search pipelines. But now that the
        old pipeline has been removed, we can reuse the old names.
      
      * Simplify the new ext-inter compound motion search pipeline
        a bit.
      
      * Harmonize names: Rename
        aom_highbd_masked_compound_sub_pixel_variance* to
        aom_highbd_8_masked_sub_pixel_variance*, to match the naming of
        the corresponding non-masked functions
      
      Change-Id: I988768ffe2f42a942405b7d8e93a2757a012dca3
      f19f35f7
  12. 23 May, 2017 2 commits
    • David Barker's avatar
      Vectorize high-precision convolve filter · 5d34e6a7
      David Barker authored
      Add SSE2 lowbd and SSSE3 highbd versions of the filters
      introduced in https://aomedia-review.googlesource.com/c/11962/ .
      
      These filters are equivalent in speed to the SSE2 implementations
      of the regular convolve filter. The average time to filter a
      64x64 block is:
      
      lowbd C: 52us
      lowbd SSE2: 5.6us
      highbd C: 53us
      highbd SSSE3: 5.8us
      
      Also add a correctness test based on the warp filter tests.
      
      Change-Id: Ia0d81100e8a414bbfc2b5f664d751cf24765299e
      5d34e6a7
    • David Barker's avatar
      ext-inter: Delete dead code · 0f3c94e1
      David Barker authored
      Patches https://aomedia-review.googlesource.com/c/11987/
      and https://aomedia-review.googlesource.com/c/11988/
      replaced the old masked motion search pipeline with
      a new one which uses different SAD/SSE functions.
      This resulted in a lot of dead code.
      
      This patch removes the now-dead code. Note that this
      includes vectorized SAD/SSE functions, which will need
      to be rewritten at some point for the new pipeline. It
      also includes the masked_compound_variance_* functions
      since these turned out not to be used by the new pipeline.
      
      To help with the later addition of vectorized functions, the
      masked_sad/variance_test.cc files are kept but are modified
      to work with the new functions. The tests are then disabled
      until we actually have the vectorized functions.
      
      Change-Id: I61b686abd14bba5280bed94e1be62eb74ea23d89
      0f3c94e1
  13. 22 May, 2017 3 commits
  14. 19 May, 2017 1 commit
  15. 18 May, 2017 1 commit
    • Sarah Parker's avatar
      Refactor hbd txfm configurations to be 1D · eec47e65
      Sarah Parker authored
      The hbd transform configurations were originally written for all possible
      2d transforms. Now that there are many more possible 2d transforms
      due to EXT_TX and RECT_TX, it is simpler to write the cfg for the
      4 1D transform types and compose them to make all new possible transform
      types. This will allow for an easier integration of the identity transform
      for EXT_TX and rectangular transforms for RECT_TX into the current
      hbd transform codepath and facilitate the removal of obsolete transforms.
      This has no impact on performance.
      
      BUG=aomedia:524
      
      Change-Id: I1e217bcd217fd637b1df94fae62d9c59a0523c1a
      eec47e65
  16. 17 May, 2017 2 commits
    • Urvang Joshi's avatar
      Rename 32x32 transform test file. · 37f6220e
      Urvang Joshi authored
      This one was named differently than all others, making it harder to
      find.
      
      Also, building this even when EXT_TX is off now, as it's a square
      transform size.
      
      Change-Id: I4a47abcb41ec936c1f68e1e0eeb33fa53ee56424
      37f6220e
    • Tom Finegan's avatar
      Only build/run test targets in MSVC when requested. · 9884be0b
      Tom Finegan authored
      Exclude the test and testdata targets when build solution
      is executed through the MSVC UI.
      
      BUG=aomedia:76
      
      Change-Id: I0f5c24084c99452d9fcab4ada4d7f981ffb9ac64
      9884be0b
  17. 15 May, 2017 4 commits
    • Yi Luo's avatar
      Fix build on --disable-avx2 · 3e629b96
      Yi Luo authored
      BUG=aomedia:536
      
      Change-Id: I92c5e43ba225968504ff1c878ca80b86449aeefe
      3e629b96
    • Ralph Giles's avatar
      Remove armv6 media-extension assembly. · be111b38
      Ralph Giles authored
      Libvpx dropped armv6 support sometime after the aom fork.
      
      We don't intend to support this platform, which is likely
      too slow in any case. Remove the assembly and intrinsics
      optimized routines, their tests, cpu feature detection,
      and rtcd specialization for this instruction set extension.
      
      Change-Id: If44ec28e5ddafc6af179c5d1982ac7e81fe54d5e
      be111b38
    • Tom Finegan's avatar
      Add a test target with sharding support to the CMake build. · e9d70c9b
      Tom Finegan authored
      Two major things going on here:
      - One target is created for each file in test-data.sha1 (testdata_N),
        and the testdata target now depends on all testdata_N targets. The
        testdata build rule can now run with as many jobs as there are
        input files to speed up test data download.
      - GTest sharding support has been added to the tests via a runtests
        custom build target. First, the number of processors is detected,
        and then a custom target is created for each processor (test_N).
        Once each test_N target is created, the runtests custom target
        is created, and then made to depend on each test_N target. When
        CMake is unable to detect the number of processors 10 test targets
        are created. Each custom target then sets the GTEST_SHARD_INDEX and
        GTEST_TOTAL_SHARDS environment variables, allowing GTest to handle
        sharding internally.
      
      BUG=aomedia:76,aomedia:469
      
      Change-Id: Ib6b7974932396fbf44b735d37155fa57561027ab
      e9d70c9b
    • Tom Finegan's avatar
      Add some missing sources to fix the CMake build. · a9c4e511
      Tom Finegan authored
      CMake build out of sync/broken since
      ee674323 landed.
      
      Change-Id: Ica3186db2e8b80750069f224f5b5858491e5be0b
      a9c4e511
  18. 12 May, 2017 1 commit
  19. 11 May, 2017 3 commits
    • Yaowu Xu's avatar
      Add missing initializations of HBD buffers · 5ab58722
      Yaowu Xu authored
      BUG=aomedia:530
      
      Change-Id: I6889a9b7ba05785ea6d4c684e0e12dcc85fdca7c
      5ab58722
    • Yi Luo's avatar
      Partial IDCT 32x32 avx2 · 40f22ef8
      Yi Luo authored
      - Function level improvement (ms):
      Functions       ssse3  avx2   Percentage
      idct32x32_1024  794    374    52.9%
      idct32x32_135   354    169    52.2%
      idct32x32_34    197    142    27.9%
      idct32x32_1     n/a     26    n/a
      
      - Integrating in default scan order.
      
      Change-Id: I84815112b26b8a8cb800281a1cfb1706342af57d
      40f22ef8
    • David Barker's avatar
      Vectorize corner matching function · ee674323
      David Barker authored
      Add an SSE4 version of compute_cross_correlation() from
      corner_match.c. This function is about 3.4x the speed of
      the scalar code; determine_correspondence as a whole is about
      2.5-3x the speed it was previously.
      
      BUG=aomedia:487
      
      Change-Id: I707b7cfd5c513c025d3ee7fb6a5f1fa335ecd495
      ee674323
  20. 10 May, 2017 3 commits