1. 20 Jun, 2017 13 commits
    • Tom Finegan's avatar
      Add shared library support to the CMake build. · 84f2d796
      Tom Finegan authored
      This is enabled via:
      $ cmake path/to/aom -DBUILD_SHARED_LIBS=1
      
      Currently supports only Linux and MacOS targets. Symbol visibility
      is handled by exports.cmake and its helpers exports_sources.cmake
      and generate_exports.cmake.
      
      Some sweeping changes were required to properly support shared libs
      and control symbol visibility:
      
      - Object libraries are always linked privately into static
        libraries.
      - Static libraries are always linked privately into eachother
        in the many cases where the CMake build merges multiple library
        targets.
      - aom_dsp.cmake now links all its targets into the aom_dsp static
        library target, and privately links aom_dsp into the aom target.
      - av1.cmake now links all its targets into the aom_av1 static library
        target, and privately links in aom_dsp and aom_scale as well. It
        then privately links aom_av1 into the aom target.
      - The aom_mem, aom_ports, aom_scale, and aom_util targets are now
        static libs that are privately linked into the aom target.
      - In CMakeLists.txt libyuv and libwebm are now privately linked into
        app targets.
      - The ASM and intrinsic library functions in aom_optimization.cmake
        now both require a dependent target argument. This facilitates the
        changes noted above regarding new privately linked static library
        targets for ASM and intrinsics sources.
      
      BUG=aomedia:76,aomedia:556
      
      Change-Id: I4892059880c5de0f479da2e9c21d8ba2fa7390c3
      84f2d796
    • Angie Chiang's avatar
      Pass conv_params into warp-related functions · 81b2e502
      Angie Chiang authored
      This aims at integrate convolve_round/compound_round
      with global_motion
      
      Change-Id: I1d91ff2de6b075f807eaaaa0a7a66edb2036e57b
      81b2e502
    • Yaowu Xu's avatar
      Avoid left shift of negative values · 31d19279
      Yaowu Xu authored
      changes shifts to multiplications
      
      BUG=aomedia:617
      
      Change-Id: I46a7b3b5d566f8c671e54d8cb876cc53fdc5009d
      31d19279
    • David Michael Barr's avatar
      [CFL] drop skip logic, always write alpha · 23198661
      David Michael Barr authored
      Results on Subset 1 (Compared to a0f8c145 with CfL)
      
        PSNR | PSNR Cb | PSNR Cr | PSNR HVS |   SSIM | MS SSIM | CIEDE 2000
      0.0677 | -0.3359 | -0.2115 |   0.0529 | 0.0735 |  0.0495 |    -0.0907
      
      Change-Id: Ib61ff862e8cfbdf0c693a4eba5f2712a6e9ab819
      Signed-off-by: default avatarDavid Michael Barr <b@rr-dav.id.au>
      23198661
    • Jonathan Matthews's avatar
      Fix compilation for · c6469232
      Jonathan Matthews authored
       CONFIG_DELTA_Q &&
       !CONFIG_EC_ADAPT &&
       !CONFIG_EXT_DELTA_Q
      
      Introduced in
        Ic42f60e19c56db52dd51b3784fd305c7e6b595c7
      
      BUG=aomedia:616
      
      Change-Id: Id0af560914d6b32c467dbb773d9462a089260944
      c6469232
    • Sebastien Alaiwan's avatar
      Use AOMMAX instead of ternary · 0ba49a58
      Sebastien Alaiwan authored
      Change-Id: Icfe43e3eda3dcdf5a6d5209e60b842e950655678
      0ba49a58
    • Sebastien Alaiwan's avatar
      Rename 'size' to 'frame_size' · 918c3c11
      Sebastien Alaiwan authored
      Change-Id: Ie720d1befcfe3c77db56bd3313b6e920fd69945c
      918c3c11
    • Sebastien Alaiwan's avatar
      Reduce scope of local variables · 62fc41ad
      Sebastien Alaiwan authored
      Change-Id: I702240cde0bd3befa196d722311003758b507c04
      62fc41ad
    • Yaowu Xu's avatar
      lpf_8_test: Use static arrays for test params · 1fd71059
      Yaowu Xu authored
      fixes compiler warnings in MSVC related to decorated name truncation
      
      Change-Id: I8a46898ac61d97ba3479268f16a93cc5d3169f4b
      1fd71059
    • David Michael Barr's avatar
      [CFL] Restore missing pair in cfl_alpha_codes · c854bacc
      David Michael Barr authored
      In 84a44dbe, there was a transcription error in the table.
      Point { 5, 3 } was duplicated and { 5, 0 } was missing.
      
      While we are here, updated the order and CDF from subset3.
      
      Results on subset1 (compared to cab68ae6 with CfL)
         PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
       0.0416 | -0.2732 | -0.3848 |   0.0385 | 0.0309 |  0.0230 |    -0.0178
      
      Change-Id: I3244245792c5ab99b4149ae5f8a2439d4214ed69
      Signed-off-by: default avatarDavid Michael Barr <b@rr-dav.id.au>
      c854bacc
    • Joe Young's avatar
      [intra-edge] Cosmetic changes · aa2f1c7a
      Joe Young authored
      Change-Id: Ib28bd27d0c2b2e1eb89ef3168b4293f8aa1712bc
      aa2f1c7a
    • Luc Trudeau's avatar
      [CFL] RDO Loop Rework · 14fc5045
      Luc Trudeau authored
      CfL performs an extra loop iteration during luma mode selection. Recent
      changes have broken the extra iteration. Remove previous approach.
      
      New approach adds the extra iteration right before uv parameter
      selection. Interesting fact, If the best luma intra mode already has
      worse RD performance than the best inter mode found so far (if any),
      then the entire chroma intra search is skipped, including the extra 
      iteration.
      
      Results on Subset1 (compared to 3e18e4ae with CfL)
      
         PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
      -0.3090 | -2.7271 | -2.3521 |  -0.3369 | -0.3463 | -0.3525 |    -1.1868
      
      Change-Id: If67b0badd2c8ea25c61685483d39d622c1729b18
      14fc5045
    • Luc Trudeau's avatar
      [CFL] Fix stack smash in cfl_load · 5f3d370b
      Luc Trudeau authored
      The height padding offset was computed from the beginning of the pixel buffer
      and not the current position in the pixel buffer.
      
        PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
      0.0000 | -0.0001 |  0.0002 |  -0.0000 | -0.0000 | -0.0000 |    -0.0002
      
      Change-Id: Id20ec3a6395b11d0258ec1e100890fe4701b820c
      5f3d370b
  2. 19 Jun, 2017 13 commits
    • Joe Young's avatar
      [intra-edge] Convert 4x4 VP9 to ext-intra; upsample edge samples · 830d4ce4
      Joe Young authored
      Updates to intra-edge experiment
      
      - Convert VP9-style intra pred to Ext-intra style
      - Upsample edge predictors by 2x based on angle and edge size
      
      BD-rate, 1-kf AWCY
        360p:  -0.11%
        720p:  -0.54
        1080p: -0.96
      
      Change-Id: Ib73805d31d5d286e607a7ee7470fcbdf11edbbff
      830d4ce4
    • Jingning Han's avatar
      Revert "Clamp inverse transform coefficients" · 71adf529
      Jingning Han authored
      This reverts commit 79b78b7d.
      
      The transform coefficient range needs some more tuning.
      Before we finalize on that front, directly applying clamping
      would cause multiple unit test failure issues. Hence revert
      this Cl temporarily.
      
      BUG=aomedia:612
      
      Change-Id: I1dd8680dee17289801c4a209275f05a498355c8e
      71adf529
    • Jingning Han's avatar
      Fix tile independency unit test · acca889a
      Jingning Han authored
      BUG=aomedia:614
      
      Change-Id: I8aab46954af9d6c6d31aba0bd96d6eb9f181b84c
      acca889a
    • Ryan Lei's avatar
      fix a bug in the parallel deblocking experiment for chroma plane · a9a23f7f
      Ryan Lei authored
      for chroma plane, when mapping from pixel location to the mi_row
      and mi_col, need to consider sampling ration of the chroma plane.
      
      Change-Id: I7a369fd6a5c6c4dc5495da64d83f90a532de7ad5
      a9a23f7f
    • Luc Trudeau's avatar
      [CFL] Compute Luma Average Over Partition Unit · 3e18e4ae
      Luc Trudeau authored
      Extract the compution of the luma reconstructed average out of cfl_load
      and into cfl_compute_average. The reconstructed luma average is stored
      in the CFL_CONTEXT to avoid computing it for each transform block and
      for each plane.
      
      Results on subset1 (compared to 803bea26 with CfL)
         PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
      -0.0474 | -0.1486 | -0.2931 |  -0.0358 | -0.0397 | -0.0127 |    -0.1162
      
      Change-Id: I9e34af0fe5961ce8dbe70cb80aea2a16221d0d92
      3e18e4ae
    • Jingning Han's avatar
      Fix coefficient range for identity matrix · 401680b4
      Jingning Han authored
      Account for the scaling factors in coefficient range of identity
      matrix.
      
      BUG=aomedia:612
      
      Change-Id: If3e9669b72797862e6af65a943f2054ae34430ae
      401680b4
    • Timothy B. Terriberry's avatar
      encoder: Remove 64x upsampled reference buffers · 5d24b6f0
      Timothy B. Terriberry authored
      They do not handle border extension correctly (interpolation and
      border extension do not commute unless you upsample into the
      border), nor do they handle crop dimensions that are not a multiple
      of 8 (the upsampled version is not sufficiently large), in addition
      to using massive amounts of memory and being a criminal waste of
      cache (1 byte used for every 8 bytes fetched).
      
      This commit reimplements use_upsampled_references by computing the
      subpixel samples on the fly. This implementation not only corrects
      the border handling, but is also faster, while maintaining the
      same quality.
      
      HL AWCY results are basically noise:
          PSNR | PSNR HVS |   SSIM | MS SSIM | CIEDE 2000
        0.0188 |   0.0187 | 0.0045 |  0.0063 |     0.0228
      
      Change-Id: I7527db9f83b87a7bb8b35342f7e6457cd0bef9cd
      5d24b6f0
    • Angie Chiang's avatar
      Fix compile error of lv_map · 0eac3199
      Angie Chiang authored
      Change-Id: Ic328d112a4f950396d60113cf1b0f50e96fdfebf
      0eac3199
    • Debargha Mukherjee's avatar
      Fix a bug for non 420 formats and some refactoring · 887069f3
      Debargha Mukherjee authored
      BUG=aomedia:607
      
      Change-Id: I5a5fb893f0237e7ca6e0d807e825f8d4e26949b2
      887069f3
    • Zoe Liu's avatar
      Add new coding tool of ext-comp-refs · c082bbcb
      Zoe Liu authored
      The tool of ext-comp-refs adds the uni-directional compound reference
      prediction. In details, 3 pairs of uni-direcitonal compound references
      are added for the comp ref prediction:
      (LAST_FRAME, LAST2_FRAME),
      (LAST_FRAME, GOLDEN_FRAME), and
      (BWDREF_FRAME, ALTREF_FRAME).
      
      This new tool of ext-comp-refs will eventually overwrite
      one-side-compound and have the two coding tools to merge to one.
      
      It achieves -0.35 ~ -0.55% coding gains in BDRate, compared against
      AV1 baseline with the default experiments on, but without
      one-sided-compound. It achieves -0.2% ~ -0.3% coding gains when
      one-sided-compound is on. It achieves larger gains on higher
      resolution.
      
      Change-Id: Icbdb16e97b96aaebaf2213f5f72d5331e2e358eb
      c082bbcb
    • Zoe Liu's avatar
      Unify the checking on compound mode prediction · 0c634c70
      Zoe Liu authored
      Change-Id: Id9c025febf21aeb67cbc719f585661b715bdb9ce
      0c634c70
    • Jingning Han's avatar
      Fix ext-tile unit test · db252a43
      Jingning Han authored
      Resolve enc/dec mismatch due to recent changes on low-bitdepth
      flag.
      
      BUG=aomedia:611
      
      Change-Id: I833d30517edbab7bb19949cea8d1f7553c0babb5
      db252a43
    • Sarah Parker's avatar
      Add macro to disable trellis optimization in rdopt · 345366ac
      Sarah Parker authored
      Turning off the trellis optimization gives a performance
      drop of 0.726% on the lowres set.
      
      Change-Id: I4fdd1e20fb6f671162cd32b3abe699cd2aee1919
      345366ac
  3. 17 Jun, 2017 3 commits
  4. 16 Jun, 2017 11 commits