diff options
-rw-r--r-- | gst/closedcaption/gstclosedcaption.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/gst/closedcaption/gstclosedcaption.c b/gst/closedcaption/gstclosedcaption.c index 3f3772c20..15e54fa90 100644 --- a/gst/closedcaption/gstclosedcaption.c +++ b/gst/closedcaption/gstclosedcaption.c @@ -195,6 +195,17 @@ gst_cc_extractor_sink_event (GstPad * pad, GstObject * parent, GstEvent * event) GST_LOG_OBJECT (pad, "received %s event: %" GST_PTR_FORMAT, GST_EVENT_TYPE_NAME (event), event); + switch (GST_EVENT_TYPE (event)) { + case GST_EVENT_EOS: + case GST_EVENT_FLUSH_START: + case GST_EVENT_FLUSH_STOP: + /* Also forward to the caption pad if present */ + if (filter->captionpad) + gst_pad_push_event (filter->captionpad, gst_event_ref (event)); + break; + default: + break; + } return gst_pad_event_default (pad, parent, event); } @@ -236,7 +247,7 @@ gst_cc_extractor_handle_meta (GstCCExtractor * filter, GstBuffer * buf, break; case GST_VIDEO_CAPTION_TYPE_CEA708_CDP: caption_caps = - gst_caps_from_string ("closedcaption/x-cea-608,format=(string)cdp"); + gst_caps_from_string ("closedcaption/x-cea-708,format=(string)cdp"); break; default: break; |