diff options
author | Wim Taymans <wim.taymans@collabora.co.uk> | 2010-12-20 18:49:49 +0100 |
---|---|---|
committer | Wim Taymans <wim.taymans@collabora.co.uk> | 2010-12-20 18:50:25 +0100 |
commit | 6a5e6eac55aab4a71265e09f1af59b959055cf36 (patch) | |
tree | 256e29417e770a5c3b890cd14a2cc49796875c0c | |
parent | 2b142bb279a08d4ad8c9559860edc9b8ed86ad78 (diff) |
mpapay: flush last packets on EOS
-rw-r--r-- | gst/rtp/gstrtpmpapay.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gst/rtp/gstrtpmpapay.c b/gst/rtp/gstrtpmpapay.c index 23efb670f..88d71bce8 100644 --- a/gst/rtp/gstrtpmpapay.c +++ b/gst/rtp/gstrtpmpapay.c @@ -56,6 +56,7 @@ static GstStateChangeReturn gst_rtp_mpa_pay_change_state (GstElement * element, static gboolean gst_rtp_mpa_pay_setcaps (GstBaseRTPPayload * payload, GstCaps * caps); static gboolean gst_rtp_mpa_pay_handle_event (GstPad * pad, GstEvent * event); +static GstFlowReturn gst_rtp_mpa_pay_flush (GstRtpMPAPay * rtpmpapay); static GstFlowReturn gst_rtp_mpa_pay_handle_buffer (GstBaseRTPPayload * payload, GstBuffer * buffer); @@ -144,6 +145,10 @@ gst_rtp_mpa_pay_handle_event (GstPad * pad, GstEvent * event) rtpmpapay = GST_RTP_MPA_PAY (gst_pad_get_parent (pad)); switch (GST_EVENT_TYPE (event)) { + case GST_EVENT_EOS: + /* make sure we push the last packets in the adapter on EOS */ + gst_rtp_mpa_pay_flush (rtpmpapay); + break; case GST_EVENT_FLUSH_STOP: gst_rtp_mpa_pay_reset (rtpmpapay); break; |