1. 13 Feb, 2019 1 commit
  2. 11 Feb, 2019 1 commit
    • Timothy B. Terriberry's avatar
      Compute and store lambda in the FrameInvariants. · a6132e1b
      Timothy B. Terriberry authored
      Instead of calculating it on the fly from the quantizer wherever it
       happens to be needed.
      This will allow us to choose lambda with more precision than a
       single quantizer step size later on, for more precise rate
       targeting.
      
      This results in no change in quality.
      a6132e1b
  3. 09 Feb, 2019 1 commit
  4. 08 Feb, 2019 2 commits
  5. 04 Feb, 2019 1 commit
  6. 19 Jan, 2019 1 commit
  7. 07 Jan, 2019 1 commit
  8. 11 Dec, 2018 2 commits
  9. 06 Dec, 2018 1 commit
    • Raphaël Zumer's avatar
      Organize use statements · 5311eeea
      Raphaël Zumer authored
      * Move use statements to the heads of their modules
      * Split local and external module use statements
      * Reorder use statements alphabetically by module name
      5311eeea
  10. 28 Nov, 2018 1 commit
  11. 20 Nov, 2018 1 commit
  12. 15 Nov, 2018 2 commits
  13. 14 Nov, 2018 3 commits
  14. 09 Nov, 2018 1 commit
  15. 08 Nov, 2018 1 commit
    • 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
  16. 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
  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. 16 Oct, 2018 1 commit
  19. 10 Oct, 2018 1 commit
  20. 29 Sep, 2018 3 commits
  21. 25 Sep, 2018 1 commit
  22. 16 Sep, 2018 1 commit
  23. 13 Sep, 2018 1 commit
  24. 12 Sep, 2018 1 commit
  25. 11 Sep, 2018 1 commit
  26. 10 Sep, 2018 1 commit
  27. 07 Sep, 2018 1 commit
  28. 06 Sep, 2018 2 commits
  29. 05 Sep, 2018 1 commit
    • fbossen's avatar
      Use padded frames (#537) · 982d16c3
      fbossen authored
      * Modify plane data structure to allow for padded border
      
      * Pad reconstructed frame
      
      * Have ME consider motion vectors pointing outside frame boundary
      
      * Remove clamping inside motion compensation loop
      
      Clamping is now done outside the loop and relies on the frame
      being padded.
      
      * Reduce size of intermediate buffer in motion compensation
      
      * Update encode/decode tests
      982d16c3
  30. 28 Aug, 2018 1 commit
  31. 27 Aug, 2018 2 commits
    • fbossen's avatar
      Reuse probabilities from previous frame (#509) · f0a917ee
      fbossen authored
      Add reference frame structure to capture YUV data and probabilities
      of a previously decoded frame.
      Symbol counts are reset and not carried from one frame to the next.
      Error resilient mode is disabled to support this feature.
      f0a917ee
    • fbossen's avatar
      Add 1/8th pel motion refinement step (#503) · 074b124c
      fbossen authored
      Add 1/8th pel motion refinement step but don't enable it by default
      
      Currently this feature yields an average loss of about 1 percent
      BD rate
      074b124c