{
if ((disksink->data_written + GST_BUFFER_SIZE(buf))/(1024*1024) > disksink->maxfilesize)
{
- GstEvent *event;
- event = gst_event_new(GST_EVENT_NEW_MEDIA);
- gst_pad_send_event(pad, event);
-
- /* if the event wasn't handled, we probably need to open a new file ourselves */
- if ((disksink->data_written + GST_BUFFER_SIZE(buf))/(1024*1024) > disksink->maxfilesize)
+ if (GST_ELEMENT_IS_EVENT_AWARE(GST_ELEMENT(disksink)))
{
- gst_disksink_close_file(disksink);
- disksink->filenum++;
- if (!gst_disksink_open_file(disksink)) return;
+ GstEvent *event;
+ event = gst_event_new(GST_EVENT_NEW_MEDIA);
+ gst_pad_send_event(pad, event);
}
}
}
{
if ((disksink->data_written + GST_BUFFER_SIZE(buf))/(1024*1024) > disksink->maxfilesize)
{
- GstEvent *event;
- event = gst_event_new(GST_EVENT_NEW_MEDIA);
- gst_pad_send_event(pad, event);
-
- /* if the event wasn't handled, we probably need to open a new file ourselves */
- if ((disksink->data_written + GST_BUFFER_SIZE(buf))/(1024*1024) > disksink->maxfilesize)
+ if (GST_ELEMENT_IS_EVENT_AWARE(GST_ELEMENT(disksink)))
{
- gst_disksink_close_file(disksink);
- disksink->filenum++;
- if (!gst_disksink_open_file(disksink)) return;
+ GstEvent *event;
+ event = gst_event_new(GST_EVENT_NEW_MEDIA);
+ gst_pad_send_event(pad, event);
}
}
}