1. 31 Aug, 2017 8 commits
    • Stanislav Vitvitskyy's avatar
      Using CDFs for read_partition special case · 8711cf5f
      Stanislav Vitvitskyy authored
      Test results:
      akiyo	    -0.05%
      bowing	    -0.072%
      bridge	    -0.042%
      bus	    -0.156%
      coastguard  -0.645%
      container   -0.087%
      deadline     0.007%
      flower       0.02%
      football    -0.009%
      foreman      0.03%
      hall         0.087%
      highway     -0.041%
      husky       -0.031%
      mad900       0.015%
      mobile      -0.007%
      mother       0.012%
      news         0.039%
      pamphlet     0.061%
      paris       -0.003%
      sign        -0.148%
      silent       0.003%
      students    -0.009%
      tempete     -0.061%
      waterfall    0.666
      
      Change-Id: I96c2fd3a6fbc5f8e5cf7f3b881ef89335e58d5ac
      8711cf5f
    • Luc Trudeau's avatar
      [CFL] Asserts for chroma_sub8x8 · c84c21c4
      Luc Trudeau authored
      When Chroma from Luma is combined with chroma_sub8x8, the prediction
      used for sub8x8 blocks originates from multiple luma blocks. Extra
      asserts are added to validate that the prediction buffer contains all
      the required information.
      
      Change-Id: I305c46ce9b8292697e1d5b181d123461026da11c
      c84c21c4
    • hui su's avatar
      Remove probablity model for coeffecient tokens · b53682f5
      hui su authored
      Remove the token prob tables and counters.
      
      Change-Id: Ic63d52d80bb922fc10b586c27a20f2378618168c
      b53682f5
    • Sebastien Alaiwan's avatar
      configure: remove legacy alias · 55f1ef00
      Sebastien Alaiwan authored
      Change-Id: Iabd239a311b92cb47e43666745a1e903a80aab1b
      55f1ef00
    • Jingning Han's avatar
      Enable motion field estimation in DRL · ffbb0f91
      Jingning Han authored
      Enable the use of motion field estimation in the dynamic motion
      vector referencing system. With default experiments on, it improves
      the compression performance:
      
      lowres 1.2%
      midres 1.5%
      
      Change-Id: Ifc5b15a7239b5c3212ea50f326ab99d372034658
      ffbb0f91
    • Jingning Han's avatar
      Add frame index to the decoded frames · c723b348
      Jingning Han authored
      Add frame index to the deocded frames. Store such information to
      the reference frame buffer pool. This design allows each frame
      to know its index in natural order, as well as its reference
      frames positions.
      
      Change-Id: I5bb36928dc5750a4fdcc582dca0d244d6482f400
      c723b348
    • James Zern's avatar
      README.md: simplify sharded test command line · 515c8695
      James Zern authored
      use xargs to keep the command in the foreground allowing it to be
      stopped easily.
      
      Change-Id: I6b4963b14fb6bff37542a3c5f7a23acc85f6a24d
      515c8695
    • Tom Finegan's avatar
      Forcibly disable RTCD in CMake mips toolchain files. · 29ff3f2b
      Tom Finegan authored
      - Always force CONFIG_RUNTIME_CPU_DETECT value to 0.
      - Warns when user tries to enable CONFIG_RUNTIME_CPU_DETECT.
      
      BUG=aomedia:711
      
      Change-Id: Ic3cad67fc5e5a9ef46ce69838e7eb6bb392df136
      29ff3f2b
  2. 30 Aug, 2017 9 commits
    • Yunqing Wang's avatar
      Refactor setup_ref_mv_list · d797ea9e
      Yunqing Wang authored
      This patch eliminates the is_inside() checking for each neighouring
      block in scan_row_mbmi() and scan_col_mbmi(). Instead, in
      setup_ref_mv_list(), find maximum above row_offset and left col_offset
      for current block, and use them to decide which above rows and left
      columns to search on. This patch doesn't change bitstream. No
      noticeable speedup is seen.
      
      Change-Id: Ic4ae74412605d86e9e675f86d23de3a69c04e8f3
      d797ea9e
    • Yushin Cho's avatar
      Delete daala-dist and cdef-dist experiments in configure · 6e439653
      Yushin Cho authored
      Since those two experiments have been merged into the dist-8x8 experiment and
      can be turned on by 'aomenc' ccommand line option,
      "--tune=[daala-dist|cdef-dist]".
      
      Change-Id: If21542a6868147538f5c3be6ad49368579db4b53
      6e439653
    • Yi Luo's avatar
      Highbd parallel_deblocking sse2 optimization · 6f5569f3
      Yi Luo authored
      - Decoder speed improves ~13.7% (baseline + parallel_deblocking).
      - Highbd loopfilter AVX2 version works when this experiment is
        disabled.
      
      Change-Id: I5d56b137a1d52236a4735656c370d57ef71ae043
      6f5569f3
    • Tom Finegan's avatar
      Avoid download of unnecessary test files in the CMake build. · 0af2732e
      Tom Finegan authored
      Follow the same rules as configure: obey CONFIG_DECODE_PERF_TESTS
      and CONFIG_ENCODE_PREF_TESTS when building the file lists.
      
      BUG=aomedia:699
      
      Change-Id: I915c528ce6e14e050da1f1810f6ed4c43d136231
      0af2732e
    • Tom Finegan's avatar
      Move rtcd target setup function to aom_optimization.cmake. · 515aca9f
      Tom Finegan authored
      Addresses a TODO. Also clean up some minor formatting nits.
      
      Change-Id: Iced790a214cfdd703eef21f2a9976f8a07517897
      515aca9f
    • Tom Finegan's avatar
      Keep version info up to date in the CMake build. · 872e5856
      Tom Finegan authored
      Add commands and targets for generating aom_version.h and
      aom.pc when necessary.
      
      BUG=aomedia:703
      
      Change-Id: Idc4d8203f950f73f151cbe32806d188bc96a0ee4
      872e5856
    • Luc Trudeau's avatar
      [CFL] Fixed negative rounding in scaled_luma · 9c0e9eac
      Luc Trudeau authored
      Since the scaled luma can be negative, ROUND_POWER_OF_TWO_SIGNED must be used.
      This changes the behavior from rounding toward -infinity to rounding towards 0.
      
      Results for Subset1 (compared with 35545dd5 with CfL enabled)
        PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
      0.0082 | -0.1061 | -0.0119 |  -0.0126 | -0.0011 | -0.0121 |     0.0094
      
      Change-Id: Ie7258a17a199368339d4794fba6b5916e607c95b
      9c0e9eac
    • Sarah Parker's avatar
      Add cdfs and mask buffers for mrc-tx · 5c6744b5
      Sarah Parker authored
      These are not currently being used for anything so there is
      no impact on performance.
      
      Change-Id: Ida4e0afcc10bee665f8daa379314cd18b3a4ea28
      5c6744b5
    • Tom Finegan's avatar
      Fix CMake build with CONFIG_AV1_ENCODER=0. · cbf4fa13
      Tom Finegan authored
      BUG=aomedia:708
      
      Change-Id: I1ec236ae5010938f60d9f2b72e03f2db31eaf653
      cbf4fa13
  3. 29 Aug, 2017 8 commits
  4. 28 Aug, 2017 5 commits
    • Zoe Liu's avatar
      Enable ext-comp-refs by default. · 3e36247d
      Zoe Liu authored
      Change-Id: I858893147ee3cb369001bc094d8f848476019047
      3e36247d
    • Jingning Han's avatar
      Refactor lv-map coefficient buffers · f5a4d3ba
      Jingning Han authored
      Reduce the encoder memory footprint in lv-map by ~800X.
      
      BUG=aomedia:713
      
      Change-Id: I7aad604cf3186a0d3c6d5b6d1aa9489ac7c36093
      f5a4d3ba
    • Luc Trudeau's avatar
      [CFL] Move store flag to CFL_CTX · fcca37a4
      Luc Trudeau authored
      With recent changes, it is now possible to store the storage
      flag inside the CFL_CTX. This simplifies the implementation
      and will allow reuse in the decoder.
      
      This change does not alter the bitstream.
      
      Change-Id: Ibb8aebdd3d06f8765d40248ece8a038892e87032
      fcca37a4
    • Jingning Han's avatar
      Refactor zero ref mv check · 2484fa05
      Jingning Han authored
      Unify and simplify the logic for both single and compound modes.
      
      Change-Id: If781aac66b47c1a707f4f9a647cb8a3294477a48
      2484fa05
    • Luc Trudeau's avatar
      [CFL] Reorganize Reconstructed Pixel Buffering · 32306c22
      Luc Trudeau authored
      Reworked how the storage flag is set to avoid duplication on the encoder
      side. Reconstructed Luma pixels are stored in encode_superblock in the
      loop that calls av1_encode_intra_block_plane and in the extra call to
      txfm_rd_in_plane after the luma RDO, but prior to the chroma RDO.
      
      This change does not alter the bitsteam.
      
      Change-Id: Ifd8441363ea0733fea3d06129a025940abb2abc9
      32306c22
  5. 26 Aug, 2017 2 commits
  6. 25 Aug, 2017 8 commits
    • Yushin Cho's avatar
      Fix compile error in inc_mvs() · 97dd6ca0
      Yushin Cho authored
      When CONFIG_EXT_INTER is disbaled, an instane of struct nmv_context is
      passed inc_mv_cdf() instead of its pointer type.
      
      Change-Id: I5a51c4065a1493e2e2a544d243907672614752a7
      97dd6ca0
    • Rupert Swarbrick's avatar
      Add support for 16x4 partitions · 6a93b155
      Rupert Swarbrick authored
      When updating default_partition_cdf, this sums the probabilities that
      were divided evenly across the pairs PARTITION_HORZ_A/PARTITION_HORZ_B
      and PARTITION_VERT_A/PARTITION_VERT_B. Those summed probabilities now
      get distributed evenly across the triples you get by adding
      PARTITION_HORZ_4 and PARTITION_VERT_4, respectively.
      
      Rather than implement 2X8/8X2 blocks for now, ss_size_lookup returns
      4X8/8X4 block sizes to use as chroma transform sizes for 4X16/16X4
      blocks.
      
      The changes in setup_pred_plane and set_skip_context are because this
      is presumably the first time we've had to deal with 16x4 or 4x16
      blocks. Since BLOCK_16X4 is not less than BLOCK_8X8, the existing
      logic didn't work (and the "shuffle back one" logic should probably be
      done for small widths and heights separately).
      
      Change-Id: If28d8954da42d6c726f2bcce2cb5242154b0870c
      6a93b155
    • Nathan E. Egge's avatar
      Force C implementations when using Daala DCT's. · e030936c
      Nathan E. Egge authored
      This patch fixes a regression introduced in 1d190950 where the encoder
       was using the 4x4 VP9/AV1 transforms for RDO, but then used the Daala
       transforms for encoding.
      The ~2% improvement below comes from forcing the C implementation of the
       4x4 and 8x8 transforms to be used when CONFIG_DAALA_DCT4 and
       CONFIG_DAALA_DCT8 are enabled respectively.
      
      subset-1 (--enable-experimental --enable-daala_dct4):
      
      master@2017-08-21T21:41:18.302Z ->
       master_daala_dct4_use_c@2017-08-22T02:39:14.457Z
      
         PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
      -2.1953 | -1.2044 | -1.1865 |  -1.6173 | -1.7029 | -1.6784 |    -1.7235
      
      Change-Id: I44d2b24094e89b2857ae03d743180e706cef45eb
      e030936c
    • Yue Chen's avatar
      Fix av1_get_tx_scale() for 32x8 and 8x32 tx · aa0d90f0
      Yue Chen authored
      Make it 0 to run at higher precision
      
      Change-Id: I51decbf9179efa18a1a06dcc3f0e939d9895a5cd
      aa0d90f0
    • James Zern's avatar
      cmake: sync warning flags w/configure · 4268571e
      James Zern authored
      + -Wlogical-op / -Wstack-usage
      
      Change-Id: Ia5c0b204e86e66cccdc792bcba0ad3326e72b9a3
      4268571e
    • David Barker's avatar
      Fix tile boundary calculation · 5c06a646
      David Barker authored
      Fix a rare case in which the tile boundary information was not
      set up properly in the decoder when using LOOPFILTERING_ACROSS_TILES
      
      The situation was:
      * One frame uses loop filtering across tiles. Then its tile
        boundary information is not needed, so is not calculated.
      * The next frame (in decode order) has the same size and the
        same tile layout, but doesn't use loop filtering across tiles.
      * Now the tile boundary information *is* needed, but we weren't
        recalculating it. This resulted in the loop filter being
        applied across tile boundaries even though we signalled not to.
      
      Since the conditions on when we can reuse the previous frame's
      boundary information are complex, and the overhead of calculating
      the tile boundaries is low, we avoid this issue by simply
      recalculating the boundary information each frame.
      
      Change-Id: I1f3cbb0537535bf38faaed4c21c07142e747f962
      5c06a646
    • Tom Finegan's avatar
      Silence misleading indentation warning. · eac51a94
      Tom Finegan authored
      third_party/fastfeat/fast_9.c: In function ‘fast9_score’:
      ‘for’ clause does not guard... [-Wmisleading-indentation]
           for(n=0; n < num_corners; n++)
           ^~~
      third_party/fastfeat/fast_9.c:2972:2: note: ...this statement, but the
      latter is misleadingly indented as if it is guarded by the ‘for’
        return scores;
        ^~~~~~
      
      Change-Id: Ie35cedd8a647a699c97066b930efd261d6906162
      eac51a94
    • Tom Finegan's avatar
      Silence unused function warning in subtract_test.cc. · b8dcfc5a
      Tom Finegan authored
      Change-Id: I65f2f5d797ac11a0e270ac44146bba78b2e8e569
      b8dcfc5a