[Bug 730995] Memory leak with interlaced h264 stream

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Fri May 30 08:46:09 PDT 2014


https://bugzilla.gnome.org/show_bug.cgi?id=730995
  GStreamer | gst-omx | 1.3.1

--- Comment #4 from Aurélien Zanelli <aurelien.zanelli at parrot.com> 2014-05-30 15:46:06 UTC ---
(In reply to comment #3)
> Review of attachment 277545 [details]:
> 
> I agree it's mostly a hack, but we didn't find anything better yet, hence this
> is what we do in libav to fix the same issue. Please, have a look at livav
> implementation to double check (iirc it was a bit more complex).

I look at gstlibav and you're right. there is the same behavior of cleaning
frames. The method is a little different, first it marks all incoming frames as
decode only. Then, when a frame is decoded, it is unmarked and all frames
marked DECODE_ONLY between the beginning of the list and the current frame are
discarded.

If you prefer this way, I can do it.

> ::: omx/gstomxvideodec.c
> @@ +1179,3 @@
> +    GstVideoCodecFrame *tmp = l->data;
> +
> +    if (tmp->pts < timestamp)
> 
> I'm not sure but can we cleanup <= here ?

I call drop_earlier_frame() before the current frame is finished, so cleanup
with '<=' will also release the frame we want to output.

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list