1. 20 Dec, 2018 2 commits
  2. 19 Dec, 2018 1 commit
  3. 18 Dec, 2018 1 commit
  4. 12 Dec, 2018 2 commits
  5. 11 Dec, 2018 1 commit
    • Yushin Cho's avatar
      [WIP] Add horz/vert (2:1 only) partitions to top-down partition rdo (#707) · 993950d6
      Yushin Cho authored
      Enable rectangular partitions (2:1) on frame borders only with topdown partitioning rdo.
      
      For -s 3 :
      
      |    PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000 |
      |    ---: |    ---: |    ---: |     ---: |    ---: |    ---: |       ---: |
      | -0.8346 | -1.0556 | -1.1209 |  -0.8008 | -0.8536 | -0.9104 |    -1.0911 |
      
      For -s 1 :
      
      |    PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000 |
      |    ---: |    ---: |    ---: |     ---: |    ---: |    ---: |       ---: |
      | -1.2633 | -1.4617 | -1.3863 |  -1.2539 | -1.2575 | -1.2742 |    -1.3602 |
      
      
      
       
      993950d6
  6. 07 Dec, 2018 5 commits
  7. 06 Dec, 2018 3 commits
  8. 05 Dec, 2018 1 commit
  9. 28 Nov, 2018 1 commit
  10. 21 Nov, 2018 4 commits
  11. 14 Nov, 2018 1 commit
  12. 09 Nov, 2018 2 commits
  13. 08 Nov, 2018 2 commits
    • Frank Bossen's avatar
      Add support for coding 64x64 blocks · a541334a
      Frank Bossen authored
      Inverse 64-point transform is added.
      Forward 64-point transform computes all 4096 coefficients such
      that distortion from zeroing high-frequency coefficients can
      be easily computed
      a541334a
    • Josh Holmer's avatar
      Pass small copy types by value · 9b28d1c5
      Josh Holmer authored
      It is more performant to pass small types which implement `Copy` by
      value, because they can be passed directly through registers. Clippy is
      conservative with this lint and optimizes for 32-bit architectures. The
      setting can be overridden in `clippy.toml` if we choose to further
      optimize for 64-bit architectures.
      9b28d1c5
  14. 31 Oct, 2018 1 commit
  15. 29 Oct, 2018 1 commit
    • fbossen's avatar
      Hierarchical motion estimation (#673) · bc5a464b
      fbossen authored
      * Generate downsampled versions of input frames and store them with reference frames
      
      * Add hierarchical ME, where initial ME is done using 4x subsampled 64x64 blocks. MVs are refined using 2x subsampled 32x32 blocks. In the refinement step, search is done around MV found for colocated 64x64 block, and also around MVs found for neighboring 64x64 blocks
      bc5a464b
  16. 27 Oct, 2018 1 commit
    • Yushin Cho's avatar
      Transform domain distortion for RDO-based mode decision (#680) · 4f93ef73
      Yushin Cho authored
      Use transform domain distortion during RDO-based mode decision.
      - Turn on tx-domain distortion when speed >= 1.
      -  For CfL mode, use pixel domain distortion since reconstructed luma pixels are required for CfL mode of chroma channels.
      
      For default speed = 3, there is a regression of 0.35% PSNR bd-rate increase on AWCY.
      
        PSNR | PSNR Cb | PSNR Cr | PSNR HVS |   SSIM  | MS SSIM | CIEDE 2000
      0.3440 |  0.4580   |  0.3700   |   0.2730     | 0.2714 |  0.2616    |     0.5526
      4f93ef73
  17. 23 Oct, 2018 1 commit
    • fbossen's avatar
      Add support for compound mode (#663) · 6bfa0aa8
      fbossen authored
      * Enable coding of compound mode
      
      * Modify inter prediction function to support compound mode
      
      * Call motion estimation function early and store results for use by compound mode
      
      * Add compound as an RDO candidate
      
      * Increase frame coding structure pyramid size
      
      * Make ME search range dependent on frame distance
      6bfa0aa8
  18. 11 Oct, 2018 1 commit
  19. 09 Oct, 2018 1 commit
    • fbossen's avatar
      Frame reordering (#629) · 58e3084b
      fbossen authored
      * Add code to reorder frames during encoding
      
      * Use BTreeMap instead of VecDequeue to hold input frames
      
      * Implement sign bias in MV prediction
      
      * Disable reuse of learned prob and change ref frame semantics
      
      Use LAST2 instead of ALTREF when the second reference frame is also
      in the past
      58e3084b
  20. 26 Sep, 2018 1 commit
    • fbossen's avatar
      Add support for multiple reference frames (#567) · 76357db0
      fbossen authored
      * Last two frames are used as references and are labeled as LAST
      and ALTREF.
      
      * Add rules to include MV with different reference index in MV stack
      
      * Make 2nd reference frame more distant from current frame
      
      * Use correct reference frame in chroma motion compensation
      
      * Enable multiple reference frames only at slower speed settings
      
      * Add unequal quantizer assignment to temporally predicted frames
      76357db0
  21. 25 Sep, 2018 1 commit
  22. 24 Sep, 2018 1 commit
  23. 17 Sep, 2018 2 commits
  24. 16 Sep, 2018 3 commits