summaryrefslogtreecommitdiff
path: root/gst/gstevent.h
diff options
context:
space:
mode:
Diffstat (limited to 'gst/gstevent.h')
-rw-r--r--gst/gstevent.h32
1 files changed, 30 insertions, 2 deletions
diff --git a/gst/gstevent.h b/gst/gstevent.h
index 9568514866..34983b679b 100644
--- a/gst/gstevent.h
+++ b/gst/gstevent.h
@@ -94,8 +94,8 @@ typedef enum {
94 * send messages that should be emitted in sync with 94 * send messages that should be emitted in sync with
95 * rendering. 95 * rendering.
96 * @GST_EVENT_QOS: A quality message. Used to indicate to upstream elements 96 * @GST_EVENT_QOS: A quality message. Used to indicate to upstream elements
97 * that the downstream elements are being starved of or 97 * that the downstream elements should adjust their processing
98 * flooded with data. 98 * rate.
99 * @GST_EVENT_SEEK: A request for a new playback position and rate. 99 * @GST_EVENT_SEEK: A request for a new playback position and rate.
100 * @GST_EVENT_NAVIGATION: Navigation events are usually used for communicating 100 * @GST_EVENT_NAVIGATION: Navigation events are usually used for communicating
101 * user requests, such as mouse or keyboard movements, 101 * user requests, such as mouse or keyboard movements,
@@ -309,6 +309,29 @@ typedef enum {
309} GstSeekFlags; 309} GstSeekFlags;
310 310
311/** 311/**
312 * GstQOSType:
313 * @GST_QOS_TYPE_OVERFLOW: The QoS event type that is produced when downstream
314 * elements are producing data too quickly and the element can't keep up
315 * processing the data. Upstream should reduce their processing rate. This
316 * type is also used when buffers arrive early or in time.
317 * @GST_QOS_TYPE_UNDERFLOW: The QoS event type that is produced when downstream
318 * elements are producing data too slowly and need to speed up their processing
319 * rate.
320 * @GST_QOS_TYPE_THROTTLE: The QoS event type that is produced when the
321 * application enabled throttling to limit the datarate.
322 *
323 * The different types of QoS events that can be given to the
324 * gst_event_new_qos_full() method.
325 *
326 * Since: 0.10.33
327 */
328typedef enum {
329 GST_QOS_TYPE_OVERFLOW = 0,
330 GST_QOS_TYPE_UNDERFLOW = 1,
331 GST_QOS_TYPE_THROTTLE = 2
332} GstQOSType;
333
334/**
312 * GstEvent: 335 * GstEvent:
313 * @mini_object: the parent structure 336 * @mini_object: the parent structure
314 * @type: the #GstEventType of the event 337 * @type: the #GstEventType of the event
@@ -461,8 +484,13 @@ void gst_event_parse_buffer_size (GstEvent *event, GstFormat *for
461/* QOS events */ 484/* QOS events */
462GstEvent* gst_event_new_qos (gdouble proportion, GstClockTimeDiff diff, 485GstEvent* gst_event_new_qos (gdouble proportion, GstClockTimeDiff diff,
463 GstClockTime timestamp); 486 GstClockTime timestamp);
487GstEvent* gst_event_new_qos_full (GstQOSType type, gdouble proportion,
488 GstClockTimeDiff diff, GstClockTime timestamp);
464void gst_event_parse_qos (GstEvent *event, gdouble *proportion, GstClockTimeDiff *diff, 489void gst_event_parse_qos (GstEvent *event, gdouble *proportion, GstClockTimeDiff *diff,
465 GstClockTime *timestamp); 490 GstClockTime *timestamp);
491void gst_event_parse_qos_full (GstEvent *event, GstQOSType *type,
492 gdouble *proportion, GstClockTimeDiff *diff,
493 GstClockTime *timestamp);
466/* seek event */ 494/* seek event */
467GstEvent* gst_event_new_seek (gdouble rate, GstFormat format, GstSeekFlags flags, 495GstEvent* gst_event_new_seek (gdouble rate, GstFormat format, GstSeekFlags flags,
468 GstSeekType start_type, gint64 start, 496 GstSeekType start_type, gint64 start,