1. 08 Jun, 2017 3 commits
    • Nathan E. Egge's avatar
      Remove unused av1_inter_mode_tree ind/inv arrays. · 50484232
      Nathan E. Egge authored
      Change-Id: If00a0bdf239b2c9e355cffd2e472708acb189f16
      50484232
    • Sarah Parker's avatar
      Remove deprecated high-bitdepth functions · 31c66502
      Sarah Parker authored
      This unifies the codepath for high-bitdepth transforms and deletes
      all calls to the old deprecated versions. This required reworking
      the way 1d configurations are combined in order to support rectangular
      transforms.
      
      There is one remaining codepath that calls the deprecated 4x4 hbd
      transform from encoder/encodemb.c. I need to take a closer look
      at what is happening there and will leave that for a followup
      since this change has already gotten so large.
      
      lowres 10 bit: -0.035%
      lowres 12 bit: 0.021%
      
      BUG=aomedia:524
      
      Change-Id: I34cdeaed2461ed7942364147cef10d7d21e3779c
      31c66502
    • Angie Chiang's avatar
      Fix conflict between lv_map and cb4x4 · ee4a34c2
      Angie Chiang authored
      Change-Id: I0512000554ef74d397332e5ed135fe20e2c4a37e
      ee4a34c2
  2. 07 Jun, 2017 7 commits
  3. 06 Jun, 2017 10 commits
    • Yi Luo's avatar
      Misc quantize unit test fix to conform coding style · 7e2dce03
      Yi Luo authored
      Change-Id: I4e9e6dc6c86de24c6a33d7078c29a853e142c062
      7e2dce03
    • Alex Converse's avatar
      intrabc: Fix mode and MV cost · d5d9b6ca
      Alex Converse authored
      objective-1-fast 1st KF: -0.07 BDRATE-PSNR
      twitch-1 1st KF: -0.04 BDRATE-PSNR
      
      Change-Id: I089900514c40f3b8b77708dac2c8bfbce2f540ff
      d5d9b6ca
    • Alex Converse's avatar
      intrabc: Elide subpel bits · 6b2584c6
      Alex Converse authored
      objective-1-fast 1st KF: -0.04 BDRATE-PSNR
      twitch-1 1st KF: -0.04 BDRATE-PSNR
      
      Change-Id: I74e8e43278a3d228f9b0a9af014e69f80aa90a0f
      6b2584c6
    • Tom Finegan's avatar
      Add doxygen template to CMake docs target. · 746a7853
      Tom Finegan authored
      - Adds the template file to the target enabling easy
        edit via IDE editor.
      - Drop a generated file comment at the beginning of
        the generated doxyfile in hopes of informing users it
        should not be modified.
      
      BUG=aomedia:76,aomedia:559
      
      Change-Id: Id4e2762a5dae145927e7b7f1f6689744150ba090
      746a7853
    • David Barker's avatar
      Fix some UBSan warnings · 185575a7
      David Barker authored
      * Make intermediate arrays in av1(_highbd)_warp_affine_c signed,
        to avoid integer overflow when multiplying an 'unsigned int'
        by a negative 'int' value.
      
      * Pad out arrays in masked_variance_test.cc so that the array
        stride is a multiple of 16 bytes.
        This fixes some UBSan errors in masked_variance_intrin_ssse3.c
        related to unaligned loads of 32-bit values.
      
      BUG=aomedia:572
      
      Change-Id: I0cf786c94870ff128c883bed8e900b0686afc3f7
      185575a7
    • David Barker's avatar
      Fix warp filter test with --disable-ssse3 · c2d500aa
      David Barker authored
      Put the test cases for av1_warp_affine_ssse3 behind a
      "#if HAVE_SSSE3" condition
      
      BUG=aomedia:582
      
      Change-Id: Ide55dc1cf6a1d1b0c37db6d17488ac3f8e113888
      c2d500aa
    • Urvang Joshi's avatar
      Add a new experiment "rect-intra-pred". · 766a389b
      Urvang Joshi authored
      Earlier, intra prediction for rectangular blocks was performed by
      running two steps of prediction on square sub-blocks.
      
      With this experiment, we do proper intra prediction for rectangular
      blocks. This ensures that we make use of all available neighboring
      pixels especially for directional modes. For this, all the intra
      predictors were updated to work with rectangular transform block sizes.
      
      Performance improvements are small but free of cost:
      
      All Intra frames:
      lowres: -0.126
      midres: -0.154
      
      Video Overall:
      lowres: -0.043
      midres: -0.100
      
      [Could not get AWCY results due to a backlog.]
      
      BUG=aomedia:551
      
      Change-Id: I7936e91b171d5c246cb0a4ea470a981a013892e6
      766a389b
    • Luc Trudeau's avatar
      [CFL] Get subsampling from AV1 common · dac5e391
      Luc Trudeau authored
      This change does not impact the bitstream
        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
      
      Change-Id: I6e131e91bad5efa345ed2542ae970eb6122eff51
      dac5e391
    • Luc Trudeau's avatar
      Move FrameContext out of plane loop · e2ac9855
      Luc Trudeau authored
      Change-Id: Ideaeb52dbaf87e5a68da90cb94b0517760cb9d5c
      e2ac9855
    • Debargha Mukherjee's avatar
      Make loop-restoration compatible w/ frame_superres · 2dd982e4
      Debargha Mukherjee authored
      When frame_superres is on, loop-restoration should work
      on the size of the upscaled frame and not on the internal
      width and height in the common structure. This patch
      makes the necessary changes on the encoder and decoder
      side to enable that.
      
      Change-Id: I1d1c024ac6f95944169d90647b4c5a61354a5cc6
      2dd982e4
  4. 05 Jun, 2017 6 commits
    • Luc Trudeau's avatar
      fix for zeromv[1] might be uninitialized · d28e91de
      Luc Trudeau authored
      This resolves issue #581.
      
      Also moves the mode if statement out of frame loop
      
      Change-Id: I673bc9196ee56f7612b3aa943bb1ceb31c659b28
      d28e91de
    • Tom Finegan's avatar
      CMake test target tweaks. · 375ee849
      Tom Finegan authored
      Exclude the test targets from Visual Studio and Xcode generation
      runs unless explicitly requested. The test run takes hours, and
      default behavior in the IDEs is to build all targets.
      
      BUG=aomedia:76
      
      Change-Id: I37e9904bd8d373a399d7d5fa49fe02771011f9d2
      375ee849
    • Urvang Joshi's avatar
      is_directional_mode: Check for directional modes directly. · 875a6675
      Urvang Joshi authored
      Earlier, the condition was negating all non-directional modes to check
      if a mode is directional. This was error-prone, e.g. when a new
      non-directional mode is added.
      
      By checking for directional modes directly, we avoid such errors.
      
      Change-Id: Ia4a62e278cd73078c53ed5096db646eff77f054e
      875a6675
    • Yue Chen's avatar
      Fix the rd loop for interinter compound types · e251825e
      Yue Chen authored
      Will enable COMPOUND_SEGMENT for blocks > 32x32, which does not
      support COMPOUND_WEDGE
      
      Change-Id: I7373ed3875393a4eac31e1292e26677d159f5d95
      e251825e
    • Angie Chiang's avatar
      Revert "Copy ctx in get_entropy_contexts_plane for lv_map" · 9fb7aad9
      Angie Chiang authored
      This reverts commit 90dad2e4.
      
      Reason for revert: Checked this in by accident
      
      Change-Id: Icbf8e6a76e5f0da8cee6365d03c41dea5b94775d
      9fb7aad9
    • Sarah Parker's avatar
      Early termination for warp error computation · 81f6ecd1
      Sarah Parker authored
      This terminates the computation for the warp error once
      the frame error exceeds the best frame error found
      so far to avoid unneccessary computation.
      
      Change-Id: I094a0b3e13f8b91610e051cb91d20a815879dd80
      81f6ecd1
  5. 03 Jun, 2017 1 commit
  6. 02 Jun, 2017 13 commits
    • Angie Chiang's avatar
      Mark SMOOTH2 filter under USE_EXTRA_FILTER flag · aadbb025
      Angie Chiang authored
      Change-Id: Ia9a5d818e8c2ff9b4cc41c6d7950cfe005c20bfc
      aadbb025
    • Angie Chiang's avatar
      Copy ctx in get_entropy_contexts_plane for lv_map · 90dad2e4
      Angie Chiang authored
      Change-Id: I112255996d85f94197387b8c481a5353d82a6b0a
      90dad2e4
    • Angie Chiang's avatar
      Use av1_optimize_txb for lv_map experiment · 1c96e82c
      Angie Chiang authored
      Comparing to lv_map experiment using the old av1_optimize_b
      function, This change gives 0.8% gain on lowres and midres
      datasets
      
      Comparing to the baseline with greedy optimize_b, the lv_map
      experiment will have 1.2% on lowres and 1.49% on midres.
      The gains are similar to the one that under the condition of
      turning off av1_optimize_b for baseline and lv_map.
      
      Change-Id: Ie17c4ecbd9ed8418ef657a526d8363e0746b5af5
      1c96e82c
    • Angie Chiang's avatar
      Pass above/left ctx plane_bsize to av1_optimize_b · 3511c37d
      Angie Chiang authored
      This is to facilitate lv_map experiment
      
      Change-Id: Ife779b172c4b81a9b2b4640464163300996e3969
      3511c37d
    • Angie Chiang's avatar
      Add test code for optimize_txb() · 5e012fe6
      Angie Chiang authored
      Change-Id: Ieae4c1a1c932d375b4577c7e42a9764e5f9cd16a
      5e012fe6
    • Angie Chiang's avatar
      Add av1_optimize_txb()/optimize_txb() · 07c57f3b
      Angie Chiang authored
      This function will check if downgrading each coeff by one level
      will reduce overall rd cost. If so, it will down grade the
      coeff and update the effect and then move on to the next coeff.
      
      In general, we found out that updating according to the
      coding order will provide better coding performance.
      The optimization order is as follows.
      1) forward optimize coeffs == 1 or -1 only
      2) backward optimize all coeffs
      
      Change-Id: Ic0fd4d44d11878258e09d4fa87a8b48b397a10a8
      07c57f3b
    • Angie Chiang's avatar
      Add update_level_down() · d19969e4
      Angie Chiang authored
      This function will update txb_cache and txb_info affected by
      downgrading the coeff by one level
      
      Change-Id: I57f9377eb7fb94b4244e677704b33c5eece83133
      d19969e4
    • Alex Converse's avatar
      intrabc: adapt use_intrabc prob · 7c412ea4
      Alex Converse authored
      First keyframe BD-RATE objective-1-fast:
         PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
      -0.3705 | -0.3232 | -0.3812 |  -0.3782 |     N/A | -0.3412 |        N/A
      
      First keyframe BD-RATE twitch-1:
         PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
      -0.2479 | -0.2477 | -0.2467 |  -0.2567 | -0.2486 | -0.2508 |    -0.2487
      
      
      
      Change-Id: Iea6c895c6fe9e9764887a8968f6e5330903969d3
      7c412ea4
    • Angie Chiang's avatar
      Add try_level_down_facade() · 47e07077
      Angie Chiang authored
      Change-Id: I82e12e312e6685c3801b243196af2570d3793aac
      47e07077
    • Yunqing Wang's avatar
      Add MV refining search in warped motion experiment · 68f3ccd1
      Yunqing Wang authored
      Implemented a MV refining search after the warped motion parameters were
      found. Only 4 or 8 positions were checked so there was almost no impact
      on encoder speed.
      
      Borg test result:
                  avg_psnr     ovr_psnr    ssim
      cam_lowres: -0.543%      -0.574%     -0.670%
      lowres    : -0.222%      -0.230%     -0.285%
      
      Change-Id: Ic2f6c1fe548b089d50e9c33bb365e6b128aabc93
      68f3ccd1
    • Fergus Simpson's avatar
      Revert "frame_superres: Send scale every frame" · 7b2d1448
      Fergus Simpson authored
      This reverts commit 846d67dd.
      
      Writing the scale every frame was not the right decision. The correct
      thing to do will be also writing the superres scale when the size is
      set using a previous frame.
      
      Change-Id: I0402e7f6d2b89ac7c386f81e8628198d22db5066
      7b2d1448
    • Tom Finegan's avatar
      Sync CMake build defaults with the configure build. · 6f9dfa51
      Tom Finegan authored
      - Added: CONFIG_ONE_SIDED_COMPOUND CONFIG_VAR_REFS
      - Removed: CONFIG_SUB8X8_MC CONFIG_EC_MULTISYMBOL
                 CONFIG_DAALA_EC CONFIG_LOWDELAY_COMPOUND
      - Changed, 0 => 1: CONFIG_VAR_TX CONFIG_EC_SMALLMUL
                         CONFIG_CHROMA_SUB8X8
                         CONFIG_LOOPFILTERING_ACROSS_TILES
                         CONFIG_TEMPMV_SIGNALING
      
      BUG=aomedia:76
      
      Change-Id: Ia010abeaf079d8c6318a5a540e9354d5455ce826
      6f9dfa51
    • 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