[vlc-commits] omxil: Release picture in direct rendering mode.

Julian Scheel git at videolan.org
Wed Aug 21 11:18:28 CEST 2013


vlc | branch: master | Julian Scheel <julian at jusst.de> | Wed Aug 21 10:53:41 2013 +0200| [fe0d4afb9df270cadeea42675552029471646279] | committer: Jean-Baptiste Kempf

omxil: Release picture in direct rendering mode.

In direct rendering mode a picture reference is acquired from the video output
module. This reference has to be released when the internal omx buffer which
uses this reference is freed. This avoids a blocking condition where the video
output would wait for a picture to be freed forever.

Signed-off-by: Julian Scheel <julian at jusst.de>
Signed-off-by: Jean-Baptiste Kempf <jb at videolan.org>

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

 modules/codec/omxil/omxil.c |    2 ++
 1 file changed, 2 insertions(+)

diff --git a/modules/codec/omxil/omxil.c b/modules/codec/omxil/omxil.c
index c49b7e5..71ee9b0 100644
--- a/modules/codec/omxil/omxil.c
+++ b/modules/codec/omxil/omxil.c
@@ -1047,6 +1047,8 @@ static OMX_ERRORTYPE PortReconfigure(decoder_t *p_dec, OmxPort *p_port)
     for(i = 0; i < p_port->i_buffers; i++)
     {
         OMX_FIFO_GET(&p_port->fifo, p_buffer);
+        if (p_buffer->pAppPrivate != NULL)
+            decoder_DeletePicture( p_dec, p_buffer->pAppPrivate );
         if (p_buffer->nFlags & SENTINEL_FLAG) {
             free(p_buffer);
             i--;



More information about the vlc-commits mailing list