Skip to content

Commit b6e9fc9

Browse files
frontends/va: Support VA_PICTURE_H264_NON_EXISTING.
intel/libva#836 https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31368
1 parent 4eb5609 commit b6e9fc9

File tree

2 files changed

+7
-0
lines changed

2 files changed

+7
-0
lines changed

src/gallium/frontends/va/picture_h264.c

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,10 @@
3030
#include "util/u_handle_table.h"
3131
#include "va_private.h"
3232

33+
#ifndef VA_PICTURE_H264_NON_EXISTING
34+
#define VA_PICTURE_H264_NON_EXISTING 0x00000020
35+
#endif
36+
3337
static void resetReferencePictureDesc(struct pipe_h264_picture_desc *h264,
3438
unsigned int i)
3539
{
@@ -142,6 +146,8 @@ void vlVaHandlePictureParameterBufferH264(vlVaDriver *drv, vlVaContext *context,
142146
!!(h264->ReferenceFrames[i].flags & VA_PICTURE_H264_TOP_FIELD);
143147
context->desc.h264.bottom_is_reference[i] = !top_or_bottom_field ||
144148
!!(h264->ReferenceFrames[i].flags & VA_PICTURE_H264_BOTTOM_FIELD);
149+
context->desc.h264.is_non_existing[i] =
150+
!!(h264->ReferenceFrames[i].flags & VA_PICTURE_H264_NON_EXISTING);
145151
context->desc.h264.field_order_cnt_list[i][0] =
146152
top_or_bottom_field != VA_PICTURE_H264_BOTTOM_FIELD ?
147153
h264->ReferenceFrames[i].TopFieldOrderCnt: INT_MAX;

src/gallium/include/pipe/p_video_state.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -454,6 +454,7 @@ struct pipe_h264_picture_desc
454454
bool is_long_term[16];
455455
bool top_is_reference[16];
456456
bool bottom_is_reference[16];
457+
bool is_non_existing[16];
457458
uint32_t field_order_cnt_list[16][2];
458459
uint32_t frame_num_list[16];
459460

0 commit comments

Comments
 (0)