Skip to content
This repository has been archived by the owner on May 17, 2023. It is now read-only.

Ignore av1 reserved units #2965

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

zhangyichix
Copy link

@zhangyichix zhangyichix commented Jul 20, 2022

Some av1 videos may contain reserved units. We should ignore it instead of returning an error.

Reference source:
https://aomediacodec.github.io/av1-spec/av1-spec.pdf
Section 6.2.2: Reserved units are for future use and shall be ignored by AV1 decoder.

@wangyan-intel
Copy link

Could you please share what issue is hit if no this fix? Thanks.

@zhangyichix
Copy link
Author

The issue I found while doing android cts. Some test videos contains reserved obu type, and the MSDK returned UMC::UMC_ERR_NOT_IMPLEMENTED. According to the av1-spec, we should ignore it and continue to process.

@wangyan-intel
Copy link

@zhangyichix I cannot find section 6.2.6 from your spec URL. Do you mean section 6.3?
@ChunjuanLiu Could you please review it?

@zhangyichix
Copy link
Author

@wangyan-intel sorry, it is 6.2.2. OBU header semantics.

@@ -88,6 +88,11 @@ namespace UMC_AV1_DECODER
info.num_ticks_per_picture_minus_1 = read_uvlc(bs);
}

inline bool av1_obu_type_is_reserved(AV1_OBU_TYPE& obu_type)
{
return 0 == obu_type || (9 <= obu_type && 14 >= obu_type);

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please use Enum element instead of hard code number.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants