Skip to content

Conversation

@nowrep
Copy link

@nowrep nowrep commented Apr 29, 2025

Corresponds to the variables of same name as defined in section 8.3.2 of the HEVC spec.

The RefPicSetStCurrBefore and RefPicSetStCurrAfter can be derived by sorting them, however there is no defined order for the RefPicSetLtCurr and thus it must be provided explicitly.

This is needed for AMD driver and also to match the DXVA and Vulkan Video interfaces.

Copy link
Contributor

@Jexu Jexu left a comment

Choose a reason for hiding this comment

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

RefPicSetStCurrBefore, RefPicSetStCurrAfter and RefPicSetLtCurr could be all derived by sorting ReferenceFrames. And you can refer to it in media driver.

https://github.com/intel/media-driver/blob/master/media_softlet/linux/common/codec/ddi/dec/ddi_decode_hevc_specific.cpp#L402

@nowrep
Copy link
Author

nowrep commented May 6, 2025

That's not enough, because this way the lists will be in the order as they appear in DPB. But the order here does matter, so this is wrong.

The correct order of RefPicSetStCurrBefore and RefPicSetStCurrAfter can be derived by sorting them by POC (desc/asc).

But this is not possible for RefPicSetLtCurr as the order is as it appear in the slice header (and the spec doesn't require them to be sorted as is the case with short term refs). Since there is no way to derive this, the RefPicSetLtCurr must be provided by application.

Corresponds to the variables of same name as defined in section 8.3.2
of the HEVC spec.

The RefPicSetStCurrBefore and RefPicSetStCurrAfter can be derived
by sorting them, however there is no defined order for the
RefPicSetLtCurr and thus it must be provided explicitly.

This is needed for AMD driver and also to match the DXVA and Vulkan
Video interfaces.

Signed-off-by: David Rosca <david.rosca@amd.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants