C2SoftDav1dDec: Fix performance issues in frame parallel multi-threading
- dav1d_get_picture() was called more than necessary and that
was leading to some performance issues. This is now cleaned up
and this exposed few issues in how hdr metadata was being signalled
in the current implementation.
- The HDR metadata was not getting associated to the picture being
returned and was instead associated to the picture that was decoded.
In case of frame parallel design, these two aren't necessarily the
same. This is now fixed by associating metadata to the appropriate
picture.
- Set max_frame_delay to 4 instead of letting the decoder pick a
value. This is done to ensure max_frame_delay remains same across
different device configurations, irrespective of number of cores.
Bug: 315828433
Test: atest CtsMediaDecoderTestCases:VideoDecoderPerfTest#testPerf \
-- --module-arg CtsMediaDecoderTestCases:instrumentation-arg:\
codec-prefix:=c2.android.av1
Test: atest CtsMediaV2TestCases -- --module-arg CtsMediaV2TestCases:\
instrumentation-arg:codec-prefix:=c2.android.av1
Change-Id: Ic2b0e15fb9aab31d293edcdd641f446d59480ab6
2 files changed