| From 8f5d4d353334fe4fbc897cf75b88c04699ceb4eb Mon Sep 17 00:00:00 2001 |
| From: Abhishek Kumar <abhishek4.kumar@intel.com> |
| Date: Wed, 29 Apr 2020 17:35:34 +0530 |
| Subject: [PATCH] [VP] fix crash in vp8 playback. |
| |
| Inserting an already registered surface creates new index |
| without removing old, as the surface is already registered |
| in table no need to register , remove RegisterRTSurfaces. |
| |
| fixes vp8 decoding crash in chromeos,ffmpeg 4.2 vp8 decoding |
| works fine in kbl/cml/jsl. |
| --- |
| media_driver/linux/common/codec/ddi/media_ddi_decode_vp8.cpp | 3 --- |
| 1 file changed, 3 deletions(-) |
| |
| diff --git a/media_driver/linux/common/codec/ddi/media_ddi_decode_vp8.cpp b/media_driver/linux/common/codec/ddi/media_ddi_decode_vp8.cpp |
| index c16f564e91ce..cdb68b7097f0 100644 |
| --- a/media_driver/linux/common/codec/ddi/media_ddi_decode_vp8.cpp |
| +++ b/media_driver/linux/common/codec/ddi/media_ddi_decode_vp8.cpp |
| @@ -167,21 +167,18 @@ VAStatus DdiDecodeVP8::ParsePicParams( |
| { |
| DdiMedia_MediaSurfaceToMosResource(lastRefSurface, &m_resNoneRegLastRefFrame); |
| m_ddiDecodeCtx->DecodeParams.m_presNoneRegLastRefFrame = &m_resNoneRegLastRefFrame; |
| - RegisterRTSurfaces(&m_ddiDecodeCtx->RTtbl, lastRefSurface); |
| } |
| goldenRefSurface = DdiMedia_GetSurfaceFromVASurfaceID(mediaCtx, picParam->golden_ref_frame); |
| if(goldenRefSurface) |
| { |
| DdiMedia_MediaSurfaceToMosResource(lastRefSurface, &m_resNoneRegGoldenRefFrame); |
| m_ddiDecodeCtx->DecodeParams.m_presNoneRegGoldenRefFrame = &m_resNoneRegGoldenRefFrame; |
| - RegisterRTSurfaces(&m_ddiDecodeCtx->RTtbl, lastRefSurface); |
| } |
| altRefSurface = DdiMedia_GetSurfaceFromVASurfaceID(mediaCtx, picParam->alt_ref_frame); |
| if(altRefSurface) |
| { |
| DdiMedia_MediaSurfaceToMosResource(lastRefSurface, &m_resNoneRegAltRefFrame); |
| m_ddiDecodeCtx->DecodeParams.m_presNoneRegAltRefFrame = &m_resNoneRegAltRefFrame; |
| - RegisterRTSurfaces(&m_ddiDecodeCtx->RTtbl, lastRefSurface); |
| } |
| } |
| |
| -- |
| 2.7.4 |
| |