[Mesa-dev] [PATCH] radeon/uvd: fix MPEG2/4 ref frame index limit
Christian König
deathsimple at vodafone.de
Wed Aug 28 09:57:21 PDT 2013
From: Christian König <christian.koenig at amd.com>
Otherwise the first few frames have an incorrect reference index.
Signed-off-by: Christian König <christian.koenig at amd.com>
---
src/gallium/drivers/radeon/radeon_uvd.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/gallium/drivers/radeon/radeon_uvd.c b/src/gallium/drivers/radeon/radeon_uvd.c
index f3652a6..3e00977 100644
--- a/src/gallium/drivers/radeon/radeon_uvd.c
+++ b/src/gallium/drivers/radeon/radeon_uvd.c
@@ -493,8 +493,8 @@ uint8_t pquant
/* extract the frame number from a referenced video buffer */
static uint32_t get_ref_pic_idx(struct ruvd_decoder *dec, struct pipe_video_buffer *ref)
{
- uint32_t min = dec->frame_number - NUM_MPEG2_REFS;
- uint32_t max = dec->frame_number - 1;
+ uint32_t min = MAX2(dec->frame_number, NUM_MPEG2_REFS) - NUM_MPEG2_REFS;
+ uint32_t max = MAX2(dec->frame_number, 1) - 1;
uintptr_t frame;
/* seems to be the most sane fallback */
--
1.7.9.5
More information about the mesa-dev
mailing list