1. 20 Mar, 2017 10 commits
  2. 19 Mar, 2017 6 commits
  3. 18 Mar, 2017 1 commit
  4. 17 Mar, 2017 12 commits
    • Sarah Parker's avatar
      Macro to disable warped/obmc_causal with global motion · 19234cc2
      Sarah Parker authored
      Enabling SEPARATE_GLOBAL_MOTION will remove the ability for
      a block that uses zeromv with global motion to pick warped_causal
      or obmc_causal as the motion mode. When this is enabled there is:
      
      0.05% drop on lowres for global + warped enabled
      0.15% drop on midres for global + warped enabled
      
      0.12% drop on lowres with global + motion var enabled
      0.07% drop on midres with global + motion var enabled
      No performance change for global, warped, or motion var individually.
      
      Change-Id: Idbfb8dd7a93da14902438504b06a08e5212e48cb
      19234cc2
    • Debargha Mukherjee's avatar
      Fix config flags among var-tx/ext-tx/rect-tx · 428bbb2b
      Debargha Mukherjee authored
      BUG=aomedia:396
      
      Change-Id: I1b7f6dddb06eac9e341518a95a0d71465e613e9e
      428bbb2b
    • Steinar Midtskogen's avatar
      Disable intrinsics unit tests if optimisations are disabled · c16e044c
      Steinar Midtskogen authored
      This fix was motivated by a code generation bug in g++ on arm, but it
      seems a good idea generally to disable these unit tests if we're not
      compiling with optimisations, since the code tested is only intended
      to be used as inlined functions, and while it's possible to compile
      without optimisations, the tests become somewhat half-hearted since
      there are workarounds when there's no inlining (such as for
      instrinsics requiring immediate values), so the tests would partly
      test code that wont be used anyway.
      
      BUG=aomedia:377
      
      Change-Id: I9a0515c96a7ed2f4636820dfc03fbb92323ca8ee
      c16e044c
    • Steinar Midtskogen's avatar
      Fix -fsanitize=integer warnings in v64_intrinsics_c.h · 95f1c2ab
      Steinar Midtskogen authored
      Change-Id: I8134c0ac4bd18478b266a0058e00bc6b1e6f8e9e
      95f1c2ab
    • Steinar Midtskogen's avatar
      Fix ubsan warnings · 6c795765
      Steinar Midtskogen authored
      BUG=aomedia:376
      
      Change-Id: Ief69f220ec5b6cf15443f872ad2f9a63336c185d
      6c795765
    • Steinar Midtskogen's avatar
      Merge dering/clpf rdo and filtering · a9d41e88
      Steinar Midtskogen authored
      * Dering and clpf were merged into a single pass.
      * 32x32 and 128x128 filter block sizes for clpf were removed.
      * RDO for dering and clpf merged and improved:
        - "0" no longer required to be in the strength selection
        - Dering strength can now be 0, 1 or 2 bits per block
      
                    LL    HL
      PSNR:       -0.04 -0.01
      PSNR HVS:   -0.27 -0.18
      SSIM:       -0.15 +0.01
      CIEDE 2000: -0.11 -0.03
      APSNR:      -0.03 -0.00
      MS SSIM:    -0.18 -0.11
      
      Change-Id: I9f002a16ad218eab6007f90f1f176232443495f0
      a9d41e88
    • Alex Converse's avatar
      Fix off by one in an assert. · f5931e5e
      Alex Converse authored
      'bits' can be (less than or) equal to sizeof(av1_cat6_prob).
      
      BUG=aomedia:399
      
      Change-Id: I20ceb6fa3b61dfcc59e28605fe4f90d8bfaacc51
      f5931e5e
    • Joe Young's avatar
      Fix compile error with ref_mv disabled · 947fa979
      Joe Young authored
      Change-Id: I6c5a843df7de0e711db27ccc5cfbe9fde8d6bae4
      947fa979
    • Angie Chiang's avatar
      Add av1_write_coeffs_mb · c8af6112
      Angie Chiang authored
      This function go through each transform block in the
      prediction block and call av1_write_coeffs_txb to
      pack coefficients into the bitstream
      
      Change-Id: I6dedebef6cf8957f9173241a7de60e9936bc0be8
      c8af6112
    • Debargha Mukherjee's avatar
      Replace division in warped motion least squares · 082d4df7
      Debargha Mukherjee authored
      Replaces the int64 and int32 divisions in least-squares and
      gamma or delta computation with a mechanism that decomposes
      the divisor D such that 1/D = y * 2^-k where y is obtained
      from a lookup table indexed by 8 highest bits of the difference
      D - 2^floor(log2(D)). The main complexity is now only from
      computing this decomposition, which is essentially equivalent
      to finding floor(log2(D)) (position of highest
      bit in a 64-bit integer).
      
      Also includes an out of memory bug fix and some cleanups.
      
      Change-Id: I9247fdff5f6b4191175d4b4656357bfff626f02c
      082d4df7
    • Tom Finegan's avatar
      Add armv7s-ios cmake toolchain. · c45213ce
      Tom Finegan authored
      This is used at cmake generation time via a command line like this:
      $ cmake path/to/aom -DCMAKE_TOOLCHAIN_FILE=path/to/aom/build/cmake/toolchain/armv7-ios.cmake
      
      BUG=https://bugs.chromium.org/p/aomedia/issues/detail?id=76
      
      Change-Id: Iadacc32c43bc23e0f670b88e3c1563c44319945c
      c45213ce
    • Tom Finegan's avatar
      Expand cmake assembler support. · 285dedba
      Tom Finegan authored
      - Stop acting as if Yasm is the only assembler.
      - Kill generation and report error when yasm is not found for x86
        and x86_64 (remove the generic fallback).
      - Use $AOM_AS_FLAGS to pass assembler specific flags.
      - Add include guard in aom_optimization.cmake.
      
      BUG=https://bugs.chromium.org/p/aomedia/issues/detail?id=76
      
      Change-Id: Ic68d6c81071c24a8ceb6806d04ab8959be97d876
      285dedba
  5. 16 Mar, 2017 5 commits
    • Angie Chiang's avatar
      Draft of av1_update_txb_context · 0397eda0
      Angie Chiang authored
      This draft version only pass compiling check, it's not working yet.
      
      The following goal is to use new coding system when doing bitstream
      packing but keep old coding system in RD loop.
      
      Change-Id: I224a1581d1cc5c67d73e71558fb77d9faf9c2470
      0397eda0
    • Rostislav Pehlivanov's avatar
      Implement twopass support for the xiphrc system · 74021a5a
      Rostislav Pehlivanov authored
      This commit implements support for twopass encoding using the xiphrc
      experimental rate control system. Most of the code and logic comes
      from the theora project encoder.
      
      Currently support is limited to the bitrate targeting mode of the
      rate control system and while it does visibly improve quality and does
      bring rate closer to the target than the one pass mode there's still
      tuning and bug fixing to be done.
      
      Change-Id: Iae0d65bbce5ddfbb95b436e2238a43d6100a23b3
      74021a5a
    • Angie Chiang's avatar
      Add frame level buffer to store txfm coeffs · f0fbf9d9
      Angie Chiang authored
      Doing tokenize in the last step of RD loop and then doing packing
      tokens in bitstream packing phase is hard for debugging.
      
      Therefore, we create a frame-level buffer to store the txfm coeffs
      from the reconstruction in RD loop and then in bitstream packing
      phase, we can code the txfm coeffs directly.
      
      Change-Id: I999470eef6e038317a91585df2bdfc20aca3573e
      f0fbf9d9
    • Alex Converse's avatar
      Account for elided extrabits during rate cost calculation. · da3d94fe
      Alex Converse authored
      Fixes some rd-debug mismatches coding cat6 tokens with tx size < 32x32.
      For these tokens the high extrabits are elided during tokenization and
      detokenization, but the rd cost was computed with the old tables from
      VP9 where these high extrabits are always coded.
      
      Change-Id: I4a9a6ea822ff821e1932c351d43a57bdb4d6d466
      da3d94fe
    • Alex Converse's avatar
      highbitdepth: deduplicate extrabits · e063e2dd
      Alex Converse authored
      Change-Id: Ib1777433c10e3b64f939c533c12a89dfc839bc6a
      e063e2dd
  6. 15 Mar, 2017 6 commits