-
Notifications
You must be signed in to change notification settings - Fork 173
Home
Build | Usage | Performance |
---|---|---|
Compiling, installing and developing for VVenC |
Using VVenC | Encoder Performance and comparisons |
VVenC is a fast and efficient VVC encoder implementation. After the release of the initial version in September 2020, performance and runtime are improved in each next version.
The graph below shows the presets' development over time in multi-threaded operation (0.1-0.2: 6 threads, 8 threads for later versions).
In July 2020, the Joint Video Experts Team (JVET), a collaborative project of the ITU-T Video Coding Experts Group (VCEG) and ISO/IEC Moving Picture Experts Group (MPEG), has finalized a new video coding standard called Versatile Video Coding (VVC) 1 2. VVC is the successor of the High Efficiency Video Coding (HEVC) standard 3 4 and has been released by ITU-T as H.266 and by ISO/IEC as MPEG-I Part 3 (ISO/IEC 23090-3). The new standard targets a 50% bit-rate reduction over HEVC at the same visual quality. In addition, VVC proves to be truly versatile by including tools for efficient coding of video content in emerging applications, e.g. high dynamic range (HDR), adaptive streaming, computer generated content as well as immersive applications like 360 degree video and augmented reality (AR).
The Fraunhofer Versatile Video Encoder (VVenC) 5 development was initiated to provide a publicly available, fast and efficient VVC encoder implementation. The VVenC software is based on VTM 6, with optimizations including software redesign to mitigate performance bottlenecks, extensive SIMD optimizations, improved encoder search algorithms and multi-threading support to exploit parallelization. Additionally, VVenC supports real-world encoder features, including frame-level rate control and perceptually optimized encoding in order to provide a flexible, fast and easy to use video encoding solution for the VVC standard.
Bit-streams encoded with VVenC can be decoded by any VVC standard compliant decoder, e.g.the fast Fraunhofer Versatile Video Decoder (VVdeC) 7. Alternatively, the VTM reference software decoder solution can be used. Resulting encoded raw VVC bitstreams can be encapsulated into multimedia files and used in multimedia pipelines as described in 8.
- Easy to use encoder implementation with five predefined quality/speed presets.
- Optimized VVC encoder providing speedups between 17x and 1300x over VTM-14.2 for HD and UHD test sequences depending on the chosen quality/speed preset.
- Perceptual optimization to improve subjective video quality.
- Frame-level rate control supporting VBR encoding.
- Expert mode encoder interface available, allowing fine-grained control of the encoding process.
For general referencing of VVenC feel free to cite:
- A. Wieckowski et al., "VVenC: An Open And Optimized VVC Encoder Implementation," 2021 IEEE International Conference on Multimedia & Expo Workshops (ICMEW), 2021, pp. 1-2, doi: 10.1109/ICMEW53276.2021.9455944.
Other publications can be found in the Publications section
For up-to date information please see our white paper: VVenC v1.3.1. White papers of previous versions can be found in the Changelog section.
Feel free to contribute. To do so:
- Fork the current-most state of the master branch
- Apply the desired changes
- Add your name to AUTHORS.md
- Create a pull-request to the upstream repository
- [1] B. Bross, Y.-K. Wang, Y. Ye, S. Liu, J. Chen, G. J. Sullivan, and J.-R. Ohm, “Overview of the Versatile Video Coding (VVC) Standard and its Applications,” IEEE Transactions on Circuits and Systems for Video Technology, doi: 10.1109/TCSVT.2021.3101953, 2021.
- [2] ITU-T and ISO/IEC JTC 1, Versatile Video Coding, Rec. ITU-T H.266 and ISO/IEC 23090-3 (VVC), Aug. 2020.
- [3] G. J. Sullivan, J.-R. Ohm, W.-J. Han, and T. Wiegand, “Overview of the High Efficiency Video Coding (HEVC) Standard,” IEEE Transactions on Circuits and Systems for Video Technology, vol. 22, no. 12, pp. 1649–1668, 2012.
- [4] ITU-T and ISO/IEC JTC 1, High Efficiency Video Coding, Rec. ITU-T H.265 and ISO/IEC 23008-2 (HEVC), Apr. 2013 (and subsequent editions).
- [5] A. Wieckowski et al., "VVenC: An Open And Optimized VVC Encoder Implementation," 2021 IEEE International Conference on Multimedia & Expo Workshops (ICMEW), 2021, pp. 1-2, doi: 10.1109/ICMEW53276.2021.9455944.
- [6] VTM software repository, version VTM-14.2. Available online: https://vcgit.hhi.fraunhofer.de/jvet/VVCSoftware_VTM
- [7] VVdeC software repository. Available online: https://github.com/fraunhoferhhi/vvdec
- [8] A. Wieckowski, C. Lehmann, B. Bross, D. Marpe, T. Biatek, M. Raulet, and J. Le Feuvre, “A Complete End-To-End Open Source Toolchain for the Versatile Video Coding (VVC) Standard,“ 29th ACM International Conference on Multimedia (MM’21), 2021. doi: 10.1145/3474085.3478320