Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Xaymar/encoding-samples
An attempt at an automated tool for finding the best possible media quality an encoder and codec can give.
https://github.com/Xaymar/encoding-samples
amf ffmpeg nvenc qsv video x264 x265
Last synced: 3 months ago
JSON representation
An attempt at an automated tool for finding the best possible media quality an encoder and codec can give.
- Host: GitHub
- URL: https://github.com/Xaymar/encoding-samples
- Owner: Xaymar
- Archived: true
- Created: 2020-10-26T08:54:49.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2020-12-07T01:41:08.000Z (almost 4 years ago)
- Last Synced: 2024-07-27T11:37:25.695Z (3 months ago)
- Topics: amf, ffmpeg, nvenc, qsv, video, x264, x265
- Language: JavaScript
- Homepage:
- Size: 33.2 KB
- Stars: 5
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Video Encoding Samples
Video Encoding Samples (VES) is a project to determine the ideal (or even best) settings for any available encoder through comparison with [VMAF](https://github.com/Netflix/vmaf), SSIM and PSNR. It was previously used to generate the data shown on [the old website](https://ves.xaymar.com/1.0/) which will eventually be replaced by new, up to date information.## Requirements
* A CPU with 4 Cores & 8 Threads, or 6 Cores & 6 Threads.
* Any of the compatible Operating Systems:
* Windows 10 64 bit
* Windows 7 64 bit
* [Node.JS v15.0 or newer](https://nodejs.org/en/download/current/)
* [FFmpeg](https://github.com/Xaymar/video-encoding-samples/releases/download/0.1.0/ffmpeg.7z)
* [VMAF Model "4K RB v0.6.2"](https://github.com/Netflix/vmaf/tree/master/model/vmaf_4k_rb_v0.6.2)
* Any number of input Videos
* A lot of time.## Usage
The tool currently has no special parameters and reads its entire configuration from the `config.json` file, so you can invoke it by calling node.js with the script argument:* Default (usually fits): `node ./ves.js`
* Or for larger configuraitons: `node --max-old-space-size=8192 ./ves.js`## Installation
1. Grab the latest release source code (or just master source code) and extract it to any directory.
2. Install the latest FFmpeg versions for your platform that supports libvmaf (or built it yourself):
* Windows: Extract [this archive](https://github.com/Xaymar/video-encoding-samples/releases/download/0.1.0/ffmpeg.7z) into `ffmpeg/`.
* Linux (apt): `apt-get install ffmpeg`
3. Grab the recommended model (see requirements) and place it into `ffmpeg/vmaf/`.
* It is possible to use different models, however this model has so far given the most accurate results.
4. Put any source video files in `videos/`.
* Videos must be properly tagged or they will be treated as bt709/bt709/bt709/tv.
* Video files must be in .mkv format.
5. Adjust the `config.json` file to your needs.
6. Run the tool.## Further Information
* [Configuration Information](https://github.com/Xaymar/video-encoding-samples/wiki/Configuration)