[meta]: Add long-term reference index to meta data

This meta data is used for SVC/TSVC encoding / decoding.

Cases and meaning when using KEY_LONG_REF_IDX:

1. On decoder output frame
Represents the long-term reference frame index of the output frame.

2. On encoder input frame
Represents the long-term reference frame which should be used as
reference frame for current encoding frame.

3. On encoder output packet
Represetns the long-term reference frame index of the output packet.

Change-Id: I41dd2eb754b84cc0d8873f7dfbb695e31bc866ae
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
This commit is contained in:
Herman Chen 2019-09-10 10:09:08 +08:00
parent 451ae59386
commit 2dfcb96976
2 changed files with 4 additions and 0 deletions

View file

@ -75,6 +75,7 @@ typedef enum MppMetaKey_e {
/* mpp_frame / mpp_packet meta data info key */
KEY_TEMPORAL_ID = FOURCC_META('t', 'l', 'i', 'd'),
KEY_LONG_REF_IDX = FOURCC_META('l', 't', 'i', 'd'),
} MppMetaKey;
#define mpp_meta_get(meta) mpp_meta_get_with_tag(meta, MODULE_TAG, __FUNCTION__)

View file

@ -38,7 +38,10 @@ static MppMetaDef meta_defs[] = {
{ KEY_OUTPUT_INTRA, TYPE_S32, },
{ KEY_INPUT_BLOCK, TYPE_S32, },
{ KEY_OUTPUT_BLOCK, TYPE_S32, },
/* extra information for tsvc */
{ KEY_TEMPORAL_ID, TYPE_S32, },
{ KEY_LONG_REF_IDX, TYPE_S32, },
};
class MppMetaService