1. 02 Jun, 2017 9 commits
    • Tom Finegan's avatar
      Add dist rule to CMake build and correct behavior of the install rule. · 7897567e
      Tom Finegan authored
      - Install only includes, libs, and aomdec/aomenc in the install rule.
      - Install docs and examples in addition to the above in the dist rule.
      
      BUG=aomedia:76,aomedia:375
      
      Change-Id: If42832ebd21184e6f9bf95c3b43c6d4e05663bf2
      7897567e
    • Tom Finegan's avatar
      Add nasm support to the CMake build. · 6d1dd623
      Tom Finegan authored
      BUG=aomedia:76,aomedia:507
      
      Change-Id: I1d7d6932dbc23ad1b0b23f2df8230c17a2e76387
      6d1dd623
    • Tom Finegan's avatar
      Add include guards to CMake files used as includes. · 17ccaec4
      Tom Finegan authored
      BUG=aomedia:76
      
      Change-Id: Ie34025f31a89f4991d03d5ecf03c6f6f5ab7b0a1
      17ccaec4
    • Tom Finegan's avatar
      Add doc generation and installation to the CMake build. · 0d066ce8
      Tom Finegan authored
      BUG=aomedia:76,aomedia:559
      
      Change-Id: I8f2f4633ca3fbc2d91bbf7e2ea8d23d52c9baa6e
      0d066ce8
    • Ryan Lei's avatar
      integrate parallel_deblocking with CB4x4 · 17905edf
      Ryan Lei authored
      this change makes parallel deblocking experiment works with
      cb4x4. the inner loop process every 4x4 block.
      
      Change-Id: I86adb3d7b6d67a91ccc12aab29da9bfb8c522cf1
      17905edf
    • Jingning Han's avatar
      Deprecate special rd loop for sub8x8 block size · b2a01db8
      Jingning Han authored
      Remove the special rate-distortion optimization loop for sub8x8
      block size from vp9.
      
      Change-Id: I62c6cf537a54769f26f2d4938ebed5fed2c84741
      b2a01db8
    • Jingning Han's avatar
      Resolve extremely large stack alloc in rdopt · d064cf03
      Jingning Han authored
      Move the large stack allocation from stack initialization to
      dedicated mem space. This resolves the extremely large stack issue
      when ext-partition, motion-var, and high bit-depth are all turned
      on.
      
      BUG=aomedia:415
      
      Change-Id: I85b77bbc6429093fcb0152176d9e237087d6bbd8
      d064cf03
    • Angie Chiang's avatar
      Add try_change_eob() · c77799be
      Angie Chiang authored
      This function will be applied to the last non-zero coeff to
      calculate the cost difference including eob change
      
      Change-Id: I471aa74600c41fd371447ec121d113c79bd767b8
      c77799be
    • Joe Young's avatar
      [intra-edge] Use 5-tap filter · 3be70f72
      Joe Young authored
      For intra edge filtering experiment, replace the 2x iteration
      (5-6-5) filter with a 5-tap filter (2-4-4-4-2).
      
      BDrate (1 key-frame) for this change:
      cif:    +0.02%
      midres: +0.04
      720p:   -0.01
      1080p:  -0.03
      4k:     -0.01
      
      BDrate (1 key-frame) for intra-edge experiment:
      (05/31, disable rect-tx, ext-tx, delta-q, ext-delta-q)
      
                1 key-frame     60 frames
               PSNR   SSIM     PSNR  SSIM
      cif:    -0.02   -0.01   -0.03  -0.01
      midres: -0.02   -0.02   -0.05  -0.10
      720p:   -0.36   -0.39   -0.05  -0.06
      1080p:  -0.75   -0.88   -0.22  -0.27
      4k:     -0.91   -1.12   -0.45  -0.54
      
      Change-Id: I834037e662b4483d4d6bdceb1c1624d56ba293a4
      3be70f72
  2. 01 Jun, 2017 13 commits
    • Yushin Cho's avatar
      Fix daala-dist for cb4x4 · 63927c43
      Yushin Cho authored
      The place where av1_daala_dist() is applied for sub8x8 partition is
      moved from sub8x8 mode decision functions to rd_pick_partition().
      
      BD-Rate change by daala-dist with '--disable-var-tx' is:
      (AWCY, objective-1-fast, high delay mode)
      
         PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
      15.1558 | 12.9585 | 14.4662 |  -3.8651 | -1.7102 | -9.2956 |    10.8686
      
      In MSE probe mode:
      
        PSNR | PSNR Cb | PSNR Cr | PSNR HVS |   SSIM | MS SSIM | CIEDE 2000
      0.0429 |  0.0435 |  0.1651 |  -0.0415 | 0.0850 |  0.0122 |     0.0546
      
      Change-Id: I3b2ea916d41c48e433eb641adf44552e4725c198
      63927c43
    • Angie Chiang's avatar
      Add try_level_down() · a530ef40
      Angie Chiang authored
      This function computes the overall (i.e. self and neighbors') cost
      difference caused by downgrading a coefficient by one level at
      a specific location
      
      Change-Id: I1b7b6acfe06ed06b9a2ff48b5bb11527646d1aa8
      a530ef40
    • Angie Chiang's avatar
      Add try_self_level_down() and get_level_prob() · 7afbba41
      Angie Chiang authored
      try_self_level_down() computes the cost difference of the coeff
      that is downgraded by one level
      
      get_level_prob() computes the probability of level_map coding
      at a specific position and level.
      
      Change-Id: Iaa9d40477aaf798993c2d5d26341551db665902b
      7afbba41
    • Angie Chiang's avatar
      Add gen_txb_cache() and it's related functions · 2affb3b0
      Angie Chiang authored
      This function pre-generate counts/magnitudes of each level map
      such that we don't have to re-calculate the counts/magnitudes
      while doing the optimization.
      
      Change-Id: Ifdfc89522cf2f2b9f3734d451324081f42b47cb0
      2affb3b0
    • Angie Chiang's avatar
      Add get_coeff_cost() and get_txb_cost() · 488f921c
      Angie Chiang authored
      Change-Id: I085f2bc706fde41afbee5ff48b56acc095f804c2
      488f921c
    • 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
    • Jingning Han's avatar
      Rework loop filter tx size selection · 6e4955d4
      Jingning Han authored
      Update and capture the effective transform block size per color
      plane.
      
      Change-Id: Ib6e0e7abb3973db6b8d511ee7c9948aaab048788
      6e4955d4
    • hui su's avatar
      Initialize chroma mode info before RD search · eaddeee1
      hui su authored
      Make sure initialization is done regardless of whether RD search
      is skipped (skip_chroma_rd).
      
      BUG=aomedia:568
      
      Change-Id: Idb620b34be6930bb35ab6c912dfd4777f7614159
      eaddeee1
    • hui su's avatar
      filter-intra: fix compiler warnings when cb4x4 is off · b4ed1493
      hui su authored
      Change-Id: I995b1ba6b1dafeceb1e75a3d71d6630215a8df68
      b4ed1493
    • Debargha Mukherjee's avatar
      Add refinement search for sgrproj filter · 749f5cd5
      Debargha Mukherjee authored
      Change-Id: I8deea1d2a76ce8c36085d19362ac2508fd3c438f
      749f5cd5
    • 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
    • David Barker's avatar
      Fix integer overflow in warp filter · 17c37ceb
      David Barker authored
      Patch https://aomedia-review.googlesource.com/c/12602/ made the
      variable 'sum' in the warp filter unsigned, to indicate that its
      value should always be >= 0. But 'sum' is used to accumulate
      signed values, and it is expected that some of those values
      will be negative.
      
      The issue is that, when running 'x += y', if x is a uint32_t
      and y is an int (and is 32 bits), the C standard says to
      convert y to a uint32_t before doing the addition. This causes
      overflow, and so undefined behaviour, if y < 0.
      
      This is fixed by making 'sum' signed, and by explicitly bounds
      checking against zero at the end of the filter.
      
      BUG=aomedia:572
      
      Change-Id: I1d484b5f5698db0ec9761807610b3b2b35647983
      17c37ceb
    • Urvang Joshi's avatar
      get_min_tx_size: assert() doesn't need an 'if'. · affbe5e1
      Urvang Joshi authored
      Change-Id: Id2be191fb48ed8d65b452499e1a1a1f470359321
      affbe5e1
  3. 31 May, 2017 6 commits
  4. 30 May, 2017 7 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
    • David Barker's avatar
      Tidy up warp filter · facac4f5
      David Barker authored
      * Simplify the C version of the warp filter to make the intent
        of the code clearer
      * Replace saturate_uint() in the C warp filter with an assertion
        that the intermediate values are in-range. This is because they
        should (provably) *never* go out-of-range.
      * Add a comment describing the intended hardware architecture
      * Miscellaneous comment updates
      
      Change-Id: I798736f923ece599f22d573d31c5dfccd18b2d0e
      facac4f5
    • 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
    • Tom Finegan's avatar
      Remove doxygen XML configuration. · befa87c6
      Tom Finegan authored
      Parts of it are causing doxygen to emit warnings, and
      AOM's doxygen configuration doesn't produce XML output.
      
      Change-Id: I34271721b64f369dfc51b9be3f508db2bfcb5633
      befa87c6
    • Arild Fuldseth (arilfuld)'s avatar
      Enable one_sided_compound by default · bf3813a1
      Arild Fuldseth (arilfuld) authored
      Change-Id: I7bceace31c118993228168ec04f12319a9011f6b
      bf3813a1
    • Arild Fuldseth (arilfuld)'s avatar
      Use 7-bit smooth and regular filters with DUAL_FILTER · f3b5e7f4
      Arild Fuldseth (arilfuld) authored
      Change-Id: If8f8e1a0032e914beb3ec3bcde221fe4a5605139
      f3b5e7f4
  5. 29 May, 2017 3 commits
  6. 28 May, 2017 2 commits