Versatile Video Coding (VVC/H.266) is an emerging successor to the widespread High Efficiency Video Coding (HEVC/H.265) and is shown to double the coding efficiency for the same subjective visual quality. Nevertheless, VVC still adopts the similar hybrid video coding scheme as HEVC and thereby sets the scene for reusing many HEVC coding tools and techniques as is or with minor modifications. This paper explores the feasibility of developing a practical software VVC intra encoder from our open-source Kvazaar HEVC encoder. The outcome of this work is called uvg266 VVC intra encoder that is distributed under the same permissive 3-clause BSD license as Kvazaar. uvg266 inherits the optimized coding flow of Kvazaar and all upgradable Kvazaar intra coding tools, but it also introduces basic VVC intra coding tools not available in HEVC. To the best of our knowledge, this is the first work to describe the implementation details of upgrading an HEVC encoder to a VVC encoder. The rapid development time with promising coding performance make our proposal a viable approach over the encoder development from scratch.
Read full abstract