[vlc-commits] mediacodec: release picture from InvalidateAllPictures

Thomas Guillem git at videolan.org
Thu Sep 3 14:30:24 CEST 2015


vlc | branch: master | Thomas Guillem <thomas at gllm.fr> | Wed Aug 26 10:24:09 2015 +0200| [7a78ddd02db76af8fb27432ea3f85a7275378f4d] | committer: Thomas Guillem

mediacodec: release picture from InvalidateAllPictures

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=7a78ddd02db76af8fb27432ea3f85a7275378f4d
---

 modules/codec/omxil/mediacodec.c |    6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/modules/codec/omxil/mediacodec.c b/modules/codec/omxil/mediacodec.c
index 6c99b68..cea93d2 100644
--- a/modules/codec/omxil/mediacodec.c
+++ b/modules/codec/omxil/mediacodec.c
@@ -730,7 +730,11 @@ static void InvalidateAllPictures(decoder_t *p_dec)
     for (unsigned int i = 0; i < p_sys->u.video.i_inflight_pictures; ++i) {
         picture_t *p_pic = p_sys->u.video.pp_inflight_pictures[i];
         if (p_pic) {
-            p_pic->p_sys->priv.hw.b_valid = false;
+            if (p_pic->p_sys->priv.hw.b_valid)
+            {
+                p_sys->api->release_out(p_sys->api, p_pic->p_sys->priv.hw.i_index, false);
+                p_pic->p_sys->priv.hw.b_valid = false;
+            }
             p_sys->u.video.pp_inflight_pictures[i] = NULL;
         }
     }



More information about the vlc-commits mailing list