Skip to content

Releases: Proryanator/encoder-benchmark

Various bugfixes and dev items

04 Oct 21:28
82c4927
Compare
Choose a tag to compare
Pre-release

Bugfixes:

  • #22: fixes issue with timestamp value affecting vmaf calculation on linux
  • #29: fixed issue with throttled downloads for hosted source files
  • #31: retry logic added to vmaf calculation to help reduce failures
  • #16: fixed issue where uncaught error in benchmark would cause command prompt window to close

Documentation:

  • #30: readme mentions specifics of using bin in your path for ffmpeg

Development improvements:

  • added rustfmt job and details on how to run it locally when contributing

Contributors (outside of project owner):

  • shoutout to @e-dong for his contributions to this release!

Full Changelog: v0.6.0-alpha...v0.6.1-alpha

Intel QSV Support including AV1, and new Decode Mode

31 Mar 22:29
7308334
Compare
Choose a tag to compare

What's Changed

  • Adding in support for intel h264/hevc qsv CPU iGPU support by @Proryanator in #12
  • Adding in support for decode mode; but only for Nvidia/AMD by @Proryanator in #13
  • Support for Intel Arc AV1 encode/decode by @Proryanator in #14

Full Changelog: v0.5.2-alpha...v0.6.0-alpha

Use of localhost and catching error if stat listener does not connect

13 Mar 14:45
4d6fe47
Compare
Choose a tag to compare
  • using localhost instead of hard-coded local ip address (makes it clearer we're sending stats over local network)
  • tool will detect issues with connecting to '-progress' output from ffmpeg and error out
  • fixed issue where verbose mode for ffmpeg did not show entire command (it only showed encoder settings and not full command)
  • verbose mode now logs the calculated fps (logging gets a bit noisy but still helpful for debugging when tool stops)

Non-Nvidia system bug fixed, plus verbose & ffmpeg error logging

07 Mar 15:25
6f602a5
Compare
Choose a tag to compare

Bugfixes

  • fixed bug where on systems without an Nvidia GPU, the tool still tries to lookup Nvidia GPU's and errors out early

Improvements

  • re-add in verbose mode (callable from benchmark one-click) including readme update to aid in debugging
  • added in immediate re-run of ffmpeg command, with error output logged to help with troubleshooting
  • README has more detailed information on applying findings to Sunshine & Moonlight

AMD AMF support, improved result file for permutations, and option to allow duplicate vmaf scores

06 Mar 15:39
7d5e883
Compare
Choose a tag to compare
  • Add in support for AMF encoding (on AMD GPU's)
  • README update about unsupported automatic/detection of multiple AMD GPU's
  • Added break in-between bitrate permutations in output file for permutation-cli for readability
  • Added option to allow duplicate vmaf scoring (if you still want to see performance numbers for those)
  • Pulled out codec implementations into it's own package
  • Fixed issue where duplicate vmaf scores of 0 were being ignored (when not checking for quality)

Multi-GPU support & ffmpeg error catching

23 Feb 22:31
b5b4cb7
Compare
Choose a tag to compare

New

  • benchmark will detect if you have more than 1 Nvidia GPU, and ask you to pick one (like it asks you to choose the encoder & source file)
  • permutor-cli tool also supports specifying which GPU to run on, and defaults to the first GPU as well

Bugfixes/Improvements

  • if ffmpeg fails to start, either from bad environment setup, or invalid encoder settings (should be rare), the benchmark will detect this and fail early
    (before the tool would just get stuck)

Workflows added

23 Feb 20:17
702292d
Compare
Choose a tag to compare
Workflows added Pre-release
Pre-release
  • project is built & unit tested on every pull request
  • manual release-flow setup to automate most of the release process
  • workflow scripts setup to easily run on different platforms in the future

Split of Benchmark and Permutor Tool

23 Feb 14:17
e3507a6
Compare
Choose a tag to compare
Pre-release
  • no longer have the option to allow duplicate vmaf scores (was kinda pointless)
  • benchmark tool & permutation tool are split out into their own tool for clarity
  • benchmark tool supports both one-click execution, and cli run functionality
  • readme updated to reflect the new changes
  • removal of reference files as they are probably out of date
  • heavy splitting of shared code into sub-modules for easier unit testing and separation of responsibility

First release to the public

07 Feb 22:50
2f4bada
Compare
Choose a tag to compare
Pre-release

First alpha release to the public

This release has all of the following fully-functioning features:

  • 720 - 4k Nvidia NVENC encoding benchmark that is easy to run and provides standardized encoder benchmarking across different machines
  • rudimentary encoder setting & bitrate permutation engine to assist in identifying maximum encoder performance at given resolution & fps targets, as well as identify diminishing returns for high bitrates
  • encode results piped into Netflix's vmaf tool to calculate quality of produced encode, targeting visually lossless quality

Much more is planned for this tool but, I hope you enjoy it's earliest form. Feel free to leave issues or feature requests as they come to you.

Note: uploaded executable is 64-bit, CI/CD pipelines for additional architectures & platforms to come.