Up to 10% Improvement in Compression Efficiency of the libvpx VP9 Encoder
by Ranjit Kumar Tulabandu (Principal Engineer, Media Server Technologies)
In a recent blog, we outlined an approach to improve the compression efficiency of the libvpx VP9 encoder, and identified four key areas of improvement:
Temporal complexity based enhanced quantization decisions | Improved spatial adaptive quantization
Scene based modelling | Support for cinematic effects
We’ve been working on most of the above areas and the initial results show up to 10% improvement in compression efficiency.
Let us take a quick look at the results.
The content test cases include the following types and span between 10 and 580 seconds in duration:
The content test cases include the following types and span between 10 and 580 seconds in duration:
We started our algorithmic improvements on the following libvpx build:
Commit id: ‘6fed5692d2bf4b5ea54ac9e02261d7a097d88dbc’ in libvpx github (dated 30th March 2017)
We measured results across both two pass and single pass encoding modes. Here are the corresponding high level configurations:
Our analysis was based on BD rate improvements. The BD rate was derived using average MSE based PSNR metric, based on four operating points.
The content test cases include the following types and span between 10 and 580 seconds in duration:
We are continuing to characterize the results better and will carry out a more comprehensive exercise after completing all the algorithmic improvements. The preliminary results validate our approach and put us on track to bring libvpx on par with popular implementations of competing video standards.
Reach out to us at [email protected] for more insights into the improvements or evaluation of the improved version.
Check out our solution page – Ittiam VP9 Encoder
Read our blog on Accelerating the Speed of VP9 Video Encoder