1. 08 Jun, 2017 7 commits
    • Yushin Cho's avatar
      Refactor sub8x8 tx size RD for daala-dist · 30a2c5f2
      Yushin Cho authored
      For a tx size RD search with partition size >= 8x8 and tx size < 8x8,
      daala-dist function is applied to the whole partition after all tx blocks are encoded
      instead of each 8x8 sub block of the partition.
      Change-Id: I27d9e2960aa641f550096e32ebcdf8dfb4de79a6
    • Sebastien Alaiwan's avatar
      In verbose mode, display the coding path in use · 2751192a
      Sebastien Alaiwan authored
      Change-Id: Id926529b11f859aebed43fdcfcdedba9ce26b1a7
    • Frederic Barbier's avatar
      Cleanup dead fwd transform functions · d405f8a6
      Frederic Barbier authored
      Cleanup related wrappers and unit-tests.
      Change-Id: I2d37a8c80de63dbeaef584e3d5fa842c0b2ee6db
    • Sebastien Alaiwan's avatar
      Revert "Enable one_sided_compound by default" · 8e3da097
      Sebastien Alaiwan authored
      This reverts commit bf3813a1.
      Reason for revert: feature not ready.
      Incompatible with lossless under some circumstances,
      causes the following assertion failure:
      Assertion `(!is_compound) == (cm->reference_mode == SINGLE_REFERENCE)' failed
      Change-Id: I63a2b38ce3b7cb50108ac559cca0768b4579c9ae
    • Nathan E. Egge's avatar
      Remove unused av1_inter_mode_tree ind/inv arrays. · 50484232
      Nathan E. Egge authored
      Change-Id: If00a0bdf239b2c9e355cffd2e472708acb189f16
    • 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
      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%
      Change-Id: I34cdeaed2461ed7942364147cef10d7d21e3779c
    • Angie Chiang's avatar
      Fix conflict between lv_map and cb4x4 · ee4a34c2
      Angie Chiang authored
      Change-Id: I0512000554ef74d397332e5ed135fe20e2c4a37e
  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
    • 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
    • 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
    • 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.
      Change-Id: Id4e2762a5dae145927e7b7f1f6689744150ba090
    • 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.
      Change-Id: I0cf786c94870ff128c883bed8e900b0686afc3f7
    • 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
      Change-Id: Ide55dc1cf6a1d1b0c37db6d17488ac3f8e113888
    • 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.]
      Change-Id: I7936e91b171d5c246cb0a4ea470a981a013892e6
    • 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
    • Luc Trudeau's avatar
      Move FrameContext out of plane loop · e2ac9855
      Luc Trudeau authored
      Change-Id: Ideaeb52dbaf87e5a68da90cb94b0517760cb9d5c
    • 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
  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
    • 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.
      Change-Id: I37e9904bd8d373a399d7d5fa49fe02771011f9d2
    • 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
    • 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
    • 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
    • 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
  5. 03 Jun, 2017 1 commit
  6. 02 Jun, 2017 9 commits
    • Angie Chiang's avatar
      Mark SMOOTH2 filter under USE_EXTRA_FILTER flag · aadbb025
      Angie Chiang authored
      Change-Id: Ia9a5d818e8c2ff9b4cc41c6d7950cfe005c20bfc
    • Angie Chiang's avatar
      Copy ctx in get_entropy_contexts_plane for lv_map · 90dad2e4
      Angie Chiang authored
      Change-Id: I112255996d85f94197387b8c481a5353d82a6b0a
    • 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
      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
    • 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
    • Angie Chiang's avatar
      Add test code for optimize_txb() · 5e012fe6
      Angie Chiang authored
      Change-Id: Ieae4c1a1c932d375b4577c7e42a9764e5f9cd16a
    • 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
    • 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
    • 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
    • Angie Chiang's avatar
      Add try_level_down_facade() · 47e07077
      Angie Chiang authored
      Change-Id: I82e12e312e6685c3801b243196af2570d3793aac