1. 23 Mar, 2017 2 commits
  2. 22 Mar, 2017 1 commit
  3. 21 Mar, 2017 2 commits
  4. 20 Mar, 2017 1 commit
  5. 19 Mar, 2017 1 commit
  6. 17 Mar, 2017 3 commits
    • 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
  7. 15 Mar, 2017 1 commit
    • Thomas Davies's avatar
      EC_ADAPT: Perform backwards updates directly on CDFs. · 028b57f5
      Thomas Davies authored
      The initial CDF for each frame is stored in
      the frame context. CDFs for actual coding are
      stored in the tile structures, and these are
      what get adapted. The initial CDF is replaced
      by an average CDF derived from these tile CDFs.
      This is carried forward to future frames when
      backward adaptation is on.
      
      CDFs are no longer set from the 8 bit probabilities
      in backwards adaptation.
      
      For now, 8 bit probabilities are maintained for
      use in the encoder and for symbols which do not
      have a CDF.
      
      Change-Id: I106b30510bfad1fa57d077f7702acc1864378a09
      028b57f5
  8. 14 Mar, 2017 2 commits
  9. 10 Mar, 2017 2 commits
    • Thomas Davies's avatar
      Add a symbol decode call count to accounting. · f7f87ff2
      Thomas Davies authored
      This keeps track of how many calls have been made
      to read symbols or bits. A given syntax element
      may make multiple calls to symbol decoding functions,
      and these variables keep track of the entropy
      decoding engine throughput.
      
      Change-Id: Iab3a720cbfe68f8d5ca3e4c415f7baa683b24268
      f7f87ff2
    • Urvang Joshi's avatar
      SMOOTH_PRED: Use get_msb() to get log2 of block dimension. · ee7ee7f4
      Urvang Joshi authored
      Apart from being inefficient, the floating point operation log2()
      was resulting in an assertion failure due to an unrelated floating
      point exception that happens earlier.
      
      Related: update the MD5s in test_intra_pred_speed to fix that failure
      too.
      
      BUG=aomedia:384
      
      Change-Id: I18dc0733e880bac21b3d07ad874f8ae341f59f06
      ee7ee7f4
  10. 07 Mar, 2017 1 commit
  11. 06 Mar, 2017 1 commit
    • Urvang Joshi's avatar
      SMOOTH_PRED: Use 8-bit weights for real. · 4d5bbbd9
      Urvang Joshi authored
      Use 255 instead of 256, to restrict to 8-bits.
      
      Only noise level differences in performance.
      
      AWCY:
                         High Latency     Low Latency
        All Keyframes    -0.01            -0.01
        Video overall    -0.01            -0.07
      
      Google Set:
                        All KF            Video
      lowres            -0.005            -0.029
      midres            -0.008             0.028
      hdres             -0.010            -0.022      
      
      Note: By moving from 18-bit to 8-bit and then
      cutting off at 255 (this change, overall effect is
      noise level too (neutral or better).
      
      Change-Id: I9f2852023015e36c01203bafe486ec400b2ba46f
      4d5bbbd9
  12. 03 Mar, 2017 1 commit
  13. 01 Mar, 2017 6 commits
    • Ryan Lei's avatar
      implement combined parallel_deblocking experiment · 392d0ff7
      Ryan Lei authored
      The parallel_deblocking experiment is proposed jointly by Intel
      and Microsoft. The following changes are implemented in this
      experiment:
      
      - deblocking filter order is changed to filter all vertical edges
        of the whole frame followed by filtering all horizontal edges
        of the whole frame
      
      - filter length decision is made based on the transform block size
        on both sides of the edge. block with smaller transform size
        determines the final filter length.
      
      - transform blocks on both sides of the edge are checked, only when
        both blocks are skipped and they belong to the same prediction
        block, filtering of that edge can be skipped.
      
      - 15-tap filter and extended flat area detection are removed.
      
      - special rule for handling 4x4 transform block on the super block
        boundary in VP9 is removed.
      
      Change-Id: I1aa82c6b5335d47c2f73eec8fc8bee2c08a1cf74
      392d0ff7
    • Tom Finegan's avatar
      Fix naming inconsistency in aom_dsp cmake source list vars. · 919caadb
      Tom Finegan authored
      The AVX2 intrinsics vars were violating the pattern.
      
      Change-Id: I0bd2e270b7dbb173d753b2f5aeb48823efac4feb
      919caadb
    • Tom Finegan's avatar
      Move aom_dsp.cmake lib list updates into setup_aom_dsp_targets(). · 5abae0a7
      Tom Finegan authored
      Change-Id: I5eb53ef88fb136bf8e06aa2cdc2c1feae9bec956
      5abae0a7
    • Tom Finegan's avatar
      Remove test support from aom_dsp.cmake. · 188880b6
      Tom Finegan authored
      Removes a dupe. The CONFIG_MOTION_VAR testing support exists
      in test/test.cmake.
      
      - Remove the source file references.
      - Remove setup_aom_dsp_test_targets().
      
      Change-Id: Ifa034582223641d6d89a3274ff293c1e65cbb73d
      188880b6
    • Tom Finegan's avatar
      Fix high bit depth build in cmake. · 9af968fc
      Tom Finegan authored
      Fix the mistyped variable name that smashed a source list.
      
      Change-Id: Id654ec06d2a1c479de5f61bb8c48e9e1df51086b
      9af968fc
    • James Zern's avatar
      get_prob(): rationalize int types · 5f8361a7
      James Zern authored
      promote the unsigned int calculation to uint64_t rather than int64_t for
      type consistency
      
      cherry-picked from libvpx:
      47d6f16a0 get_prob(): rationalize int types
      
      Change-Id: Ic34dee1dc707d9faf6a3ae250bfe39b60bef3438
      5f8361a7
  14. 28 Feb, 2017 2 commits
    • Alex Converse's avatar
      Simplify rabs_read() · bff32ac0
      Alex Converse authored
      This is branchless on newer gcc and clang and is about 1% faster overall
      at cq-level=16 frame-parallel=1.
      
      Change-Id: I7f5608ab0f0abbc29aa3419a103addf945ea9f0a
      bff32ac0
    • Urvang Joshi's avatar
      SMOOTH_PRED: Use 8-bit weights. · 3e42acd4
      Urvang Joshi authored
      Using 8-bit weights gives similar results as 12-bit, with only noise
      level difference. Here's what 8-bit looks like compared to 12-bit:
      
      * AWCY Objective-1-fast:
                                high latency          low latency
      ALL keyframes             0.00                  0.01
      Video                     0.00                  0.04
      
      * Google sets:
      
      All Keyframes:
      lowres: 0
      midres: -0.001
      hdres: -0.001
      
      Video overall:
      lowres: 0
      midres: -0.063
      hdres: 0.026
      
      Change-Id: Ibed6015aa7cce12fcc6f314ffde76624df4ad2a1
      3e42acd4
  15. 27 Feb, 2017 1 commit
  16. 25 Feb, 2017 1 commit
    • Timothy B. Terriberry's avatar
      Fix signed left-shifts added in e93acb2d. · 4e6a8f30
      Timothy B. Terriberry authored
      Since we now require C99, this is undefined behavior.
      Thanks to Luc Trudeau for the report and Alex Converse for the
      suggestion on how to make the macro safe for all integer sizes.
      
      Change-Id: I99a1342dfedb3e17a6869269be317c2ed26bfe9b
      4e6a8f30
  17. 24 Feb, 2017 4 commits
  18. 23 Feb, 2017 2 commits
    • Tom Finegan's avatar
      Move aom_dsp cmake stuff into aom_dsp/aom_dsp.cmake. · 85ac13e4
      Tom Finegan authored
      - Move source list vars.
      - Split source list vars into common/decoder/encoder sources.
      - Move target definitions into function.
      - Split targets into common/decoder/encoder targets.
      - Update CMakeLists.txt to include aom_dsp.cmake and call
        setup_aom_dsp_targets() at the appropriate time.
      
      BUG=https://bugs.chromium.org/p/aomedia/issues/detail?id=76
      
      Change-Id: I434d2e76b04cbccdbdcec7ca818b36b8ee1f840e
      85ac13e4
    • Urvang Joshi's avatar
      SMOOTH_PRED: Use 12-bit multiplications instead of 18-bit. · 81760810
      Urvang Joshi authored
      Compression performance is roughly neutral:
      
      AWCY:
      -----
                       High Latency     Low Latency
        All Keyframes  0.00             0.00
        Video overall  0.01            -0.01
      
      Google sets:
      ------------
      
      - All Keyframes:
      
        lowres  -0.001
        midres   0.000
        hdres    0.001
      
      - Video overall:
        lowres   0.019
        midres   0.000
        hdres   -0.013
      
      Change-Id: I89be2739203bf3e2848e4ba7ae2988c625f54513
      81760810
  19. 18 Feb, 2017 1 commit
  20. 16 Feb, 2017 3 commits
    • Nathan E. Egge's avatar
      Rename aom_read_tree_bits() to aom_read_tree_as_bits(). · c4e9e473
      Nathan E. Egge authored
      Rename the aom_read_tree_bits() function to match aom_read_tree_as_cdf().
      
      Change-Id: I779f544615b1c19bb1f781c1f7a0f59dda7bd466
      c4e9e473
    • Thomas Davies's avatar
      EC_ADAPT: do faster adaptation initially. · 27713d93
      Thomas Davies authored
      Symbol count is maintained in the position after the
      last CDF value.
      
      Change-Id: I1882e48bfb1404ea7b83ef410298484939601796
      27713d93
    • Nathan E. Egge's avatar
      Fix DAALA_EC when EC_MULTISYMBOL disabled. · 0f11c78d
      Nathan E. Egge authored
      When DAALA_EC is enabled, calls to aom_read_tree() and aom_write_tree()
       would automatically convert the aom_tree_index and aom_prob into a CDF
       and call the aom_read_cdf() or aom_write_cdf(), which causes an
       error if DAALA_EC is enabled without EC_MULTISYMBOL.
      This patch moves the conversion functions from daalaboolreader.h and
       daalaboolwriter.h into bitreader.h and bitwriter.h respectively, and
       only calls the conversion functions if EC_MULTISYMBOL is enabled.
      This allows DAALA_EC to be enabled without EC_MULTISYMBOL and is a
       bitstream change when both ANS and EC_MULTISYMBOL are enabled as calls
       to read and write trees will automatically be converted into calls that
       read and write cdfs.
      
      Change-Id: Id2f9aa9b5113292998cadfe69e4ba547324643ac
      0f11c78d
  21. 15 Feb, 2017 1 commit
    • Nathan E. Egge's avatar
      Add flag for RAWBITS to use raw bits with DAALA_EC. · 24f1a904
      Nathan E. Egge authored
      The use of raw bits is now disabled by default and can be turned on with:
       ./configure --enable-experimental --enable-rawbits
      This commit has a negligible impact on rate.
      
      subset1:
      
      master@2017-02-14T18:57:22.282Z -> no_rawbits@2017-02-14T18:57:41.977Z
      
         PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
      -0.0000 | -0.0000 | -0.0000 |  -0.0000 | -0.0000 | -0.0000 |    -0.0000
      
      objective-1-fast:
      
      master@2017-02-14T18:52:48.425Z -> no_rawbits@2017-02-14T18:52:04.489Z
      
         PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
      -0.0001 | -0.0001 | -0.0001 |  -0.0001 | -0.0001 | -0.0001 |    -0.0001
      
      Change-Id: I01e79e9f314565a64b224ca41047f7bd7fe33f70
      24f1a904
  22. 13 Feb, 2017 1 commit