NVIDIA DeepStream SDK API Reference

6.1.1 Release

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Events: Custom Events API

Detailed Description

Specifies GStreamer custom event functions, used to map events to individual sources which are batched together by Gst-nvstreammux.

Macros

#define FLAG(name)   GST_EVENT_TYPE_##name
 

Enumerations

enum  GstNvEventType {
  GST_NVEVENT_PAD_ADDED = GST_EVENT_MAKE_TYPE (400, FLAG(DOWNSTREAM) | FLAG(SERIALIZED)),
  GST_NVEVENT_PAD_DELETED = GST_EVENT_MAKE_TYPE (401, FLAG(DOWNSTREAM) | FLAG(SERIALIZED)),
  GST_NVEVENT_STREAM_EOS = GST_EVENT_MAKE_TYPE (402, FLAG(DOWNSTREAM) | FLAG(SERIALIZED)),
  GST_NVEVENT_STREAM_SEGMENT = GST_EVENT_MAKE_TYPE (403, FLAG(DOWNSTREAM) | FLAG(SERIALIZED)),
  GST_NVEVENT_STREAM_RESET = GST_EVENT_MAKE_TYPE (404, FLAG(DOWNSTREAM) | FLAG(SERIALIZED)),
  GST_NVEVENT_STREAM_START = GST_EVENT_MAKE_TYPE (405, FLAG(DOWNSTREAM) | FLAG(SERIALIZED))
}
 Defines supported types of custom events. More...
 

Functions

GstEvent * gst_nvevent_new_pad_added (guint source_id)
 Creates a "custom pad added" event for the specified source. More...
 
GstEvent * gst_nvevent_new_pad_deleted (guint source_id)
 Creates a "custom pad deleted" event for the specified source. More...
 
GstEvent * gst_nvevent_new_stream_eos (guint source_id)
 Creates a "custom EOS" event for the specified source. More...
 
GstEvent * gst_nvevent_new_stream_segment (guint source_id, GstSegment *segment)
 Creates a "custom segment" event for the specified source. More...
 
GstEvent * gst_nvevent_new_stream_reset (guint source_id)
 Creates a "custom reset" event for the specified source. More...
 
void gst_nvevent_parse_pad_added (GstEvent *event, guint *source_id)
 Parses a "pad added" event received on the sinkpad. More...
 
void gst_nvevent_parse_pad_deleted (GstEvent *event, guint *source_id)
 Parses a "pad deleted" event received on the sinkpad. More...
 
void gst_nvevent_parse_stream_eos (GstEvent *event, guint *source_id)
 Parses a "stream EOS" event received on the sinkpad. More...
 
void gst_nvevent_parse_stream_segment (GstEvent *event, guint *source_id, GstSegment **segment)
 Parses a "stream segment" event received on the sinkpad. More...
 
void gst_nvevent_parse_stream_reset (GstEvent *event, guint *source_id)
 Parses a "stream reset" event received on the sinkpad. More...
 
GstEvent * gst_nvevent_new_stream_start (guint source_id, gchar *stream_id)
 Creates a new "stream start" event. More...
 
void gst_nvevent_parse_stream_start (GstEvent *event, guint *source_id, gchar **stream_id)
 Parses a "stream start" event received on the sinkpad. More...
 

Macro Definition Documentation

#define FLAG (   name)    GST_EVENT_TYPE_##name

Definition at line 40 of file gst-nvevent.h.

Enumeration Type Documentation

Defines supported types of custom events.

Enumerator
GST_NVEVENT_PAD_ADDED 

Specifies a custom event to indicate Pad Added.

GST_NVEVENT_PAD_DELETED 

Specifies a custom event to indicate Pad Deleted.

GST_NVEVENT_STREAM_EOS 

Specifies a custom event to indicate EOS of a particular stream in a batch.

GST_NVEVENT_STREAM_SEGMENT 

Specifies a custom event to indicate a stream segment.

GST_NVEVENT_STREAM_RESET 

Specifies a custom event to indicate reset of a particular stream in a batch.

GST_NVEVENT_STREAM_START 

Specifies a custom event to indicate start of a particular stream in a batch.

Definition at line 43 of file gst-nvevent.h.

Function Documentation

GstEvent* gst_nvevent_new_pad_added ( guint  source_id)

Creates a "custom pad added" event for the specified source.

Parameters
[in]source_idSource ID of the stream to be added to the pipeline; also the pad ID of the sinkpad of the Gst-nvstreammux plugin for which the source is configured.
Returns
A pointer to the event corresponding to the request if successful, or NULL otherwise.
GstEvent* gst_nvevent_new_pad_deleted ( guint  source_id)

Creates a "custom pad deleted" event for the specified source.

Parameters
[in]source_idSource ID of the stream to be removed from the pipeline; also the pad ID of the sinkpad of the Gst-nvstreammux plugin for which the source is configured.
Returns
A pointer to the event corresponding to the request if successful, or NULL otherwise.
GstEvent* gst_nvevent_new_stream_eos ( guint  source_id)

Creates a "custom EOS" event for the specified source.

Parameters
[in]source_idSource ID of the stream for which EOS is to be sent; also the pad ID of the sinkpad of the Gst-nvstreammux plugin for which the source is configured.
Returns
A pointer to the event corresponding to request if sucxessful, or NULL otherwise.
GstEvent* gst_nvevent_new_stream_reset ( guint  source_id)

Creates a "custom reset" event for the specified source.

Parameters
[in]source_idSource ID of the stream for which reset is to be sent; also the pad ID of the sinkpad of the Gst-nvstreammux plugin for which the source is configured.
Returns
A pointer to the event corresponding to request if sucxessful, or NULL otherwise.
GstEvent* gst_nvevent_new_stream_segment ( guint  source_id,
GstSegment *  segment 
)

Creates a "custom segment" event for the specified source.

Parameters
[in]source_idSource ID of the stream for which a segment event is to be sent; also the pad ID of the sinkpad of the Gst-nvstreammux plugin for which the source is configured.
[in]segmentA pointer to a copy of the segment to be sent with the event; corresponds to the original segment for the specified source.
Returns
A pointer to the event corresponding to the request if successful, or NULL otherwise.
GstEvent* gst_nvevent_new_stream_start ( guint  source_id,
gchar *  stream_id 
)

Creates a new "stream start" event.

Parameters
[out]source_idSource ID of the stream for which stream-start is to be sent
[out]stream_idThe stream-id string obtained from sink pad with gst_pad_get_stream_id(pad) corresponding to source ID for the event.
void gst_nvevent_parse_pad_added ( GstEvent *  event,
guint *  source_id 
)

Parses a "pad added" event received on the sinkpad.

Parameters
[in]eventA pointer to the event received on the sinkpad when the pad is added to Gst-nvstreammux.
[out]source_idA pointer to the parsed source ID for the event.
void gst_nvevent_parse_pad_deleted ( GstEvent *  event,
guint *  source_id 
)

Parses a "pad deleted" event received on the sinkpad.

Parameters
[in]eventA pointer to the event received on the sinkpad when the pad is deleted from Gst-nvstreammux.
[out]source_idA pointer to the parsed source ID for the event.
void gst_nvevent_parse_stream_eos ( GstEvent *  event,
guint *  source_id 
)

Parses a "stream EOS" event received on the sinkpad.

Parameters
[in]eventA pointer to the event received on the sinkpad when the source ID sends the EOS event.
[out]source_idA pointer to the parsed source ID for the event.
void gst_nvevent_parse_stream_reset ( GstEvent *  event,
guint *  source_id 
)

Parses a "stream reset" event received on the sinkpad.

Parameters
[in]eventA pointer to the event received on the sinkpad when the source ID sends the reset event.
[out]source_idA pointer to the parsed source ID for the event.
void gst_nvevent_parse_stream_segment ( GstEvent *  event,
guint *  source_id,
GstSegment **  segment 
)

Parses a "stream segment" event received on the sinkpad.

Parameters
[in]eventThe event received on the sinkpad when the source ID sends a segment event.
[out]source_idA pointer to the parsed source ID for which the event is sent.
[out]segmentA double pointer to the parsed segment corresponding to source ID for the event.
void gst_nvevent_parse_stream_start ( GstEvent *  event,
guint *  source_id,
gchar **  stream_id 
)

Parses a "stream start" event received on the sinkpad.

Parameters
[in]eventThe event received on the sinkpad when the source ID sends a stream-start event.
[out]source_idA pointer to the parsed source ID for which the event is sent.
[out]segmentA double pointer to the parsed stream-id corresponding to source ID for the event.