Page MenuHomeSolus

libvpx: enable high bit depth support and cleanup package

Authored by aleksvor on Jul 26 2020, 10:08 AM.



This enables support for encoding VP9 video with 10 and 12 bit color depth, by default it was built only wih 8 bit depth support. Although these pixel formats are rarely used in consumer-grade media, they are fairly popular among videophiles.
Also this enables VP9-specific postprocessing and temporal denoising algorithms for better quality of decoded frames.

Test Plan

Transcoded video from H264 with YUV420P (8 bit depth) pixel format to VP9 with YUV420P10LE (10 bit depth) pixel format with FFmpeg. Checked that mpv and VLC can decode and render the resulting video.

Diff Detail

R1897 libvpx
Automatic diff as part of commit; lint not applicable.
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

aleksvor created this revision.Jul 26 2020, 10:08 AM
aleksvor requested review of this revision.Jul 26 2020, 10:08 AM

Was there not any ABI changes as a result of adding this additional functionality?

@JoshStrobl, no, ABI hasn't changed (I've rebuilt it right now to make sure). I didn't even have to rebuild FFmpeg to use pixel formats with high bit depth in VP9 encoder.

JoshStrobl accepted this revision.Jul 28 2020, 3:20 PM

Sweet. Well thanks for the patch and improvements!

This revision is now accepted and ready to land.Jul 28 2020, 3:20 PM
This revision was automatically updated to reflect the committed changes.