Return the output buffer from the process function instead of pushing
it ourselves. This way, the subclass can actually deal with the return
value of the push.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=693727
GstRTPBuffer rtp = { NULL };
GstVideoFrame frame;
gboolean marker;
+ GstBuffer *outbuf = NULL;
rtpvrawdepay = GST_RTP_VRAW_DEPAY (depayload);
if (marker) {
GST_LOG_OBJECT (depayload, "marker, flushing frame");
- if (rtpvrawdepay->outbuf) {
- gst_rtp_base_depayload_push (depayload, rtpvrawdepay->outbuf);
- rtpvrawdepay->outbuf = NULL;
- }
+ outbuf = rtpvrawdepay->outbuf;
+ rtpvrawdepay->outbuf = NULL;
rtpvrawdepay->timestamp = -1;
}
- return NULL;
+ return outbuf;
/* ERRORS */
unknown_sampling: