GstTracerRecord
Tracing modules will create instances of this class to announce the data they will log and create a log formatter.
GstTracerRecord
GObject ╰──GInitiallyUnowned ╰──GstObject ╰──GstTracerRecord
The opaque GstTracerRecord instance structure
Since : 1.8
Class structure
GstTracerRecordClass
Gst.TracerRecordClass
Gst.TracerRecordClass
Gst.TracerRecord
GObject.Object ╰──GObject.InitiallyUnowned ╰──Gst.Object ╰──Gst.TracerRecord
The opaque GstTracerRecord instance structure
Since : 1.8
Gst.TracerRecord
GObject.Object ╰──GObject.InitiallyUnowned ╰──Gst.Object ╰──Gst.TracerRecord
The opaque GstTracerRecord instance structure
Since : 1.8
Constructors
gst_tracer_record_new
GstTracerRecord * gst_tracer_record_new (const gchar * name, const gchar * firstfield, ... ...)
Create a new tracer record. The record instance can be used to efficiently log entries using gst_tracer_record_log. NULL terminator required after the last argument.
The name without the ".class" suffix will be used for the log records. There must be fields for each value that gets logged where the field name is the value name. The field must be a GstStructure describing the value. The sub structure must contain a field called 'type' of G_TYPE_GTYPE that contains the GType of the value. The resulting GstTracerRecord will take ownership of the field structures.
The way to deal with optional values is to log an additional boolean before the optional field, that if TRUE signals that the optional field is valid and FALSE signals that the optional field should be ignored. One must still log a placeholder value for the optional field though. Please also note, that pointer type values must not be NULL - the underlying serialisation can not handle that right now.
Please note that this is still under discussion and subject to change.
Parameters:
name
–
name of new record, must end on ".class".
firstfield
–
name of first field to set
...
–
additional arguments
a new GstTracerRecord
Since : 1.8
Methods
gst_tracer_record_log
gst_tracer_record_log (GstTracerRecord * self, ... ...)
Serialzes the trace event into the log.
Right now this is using the gstreamer debug log with the level TRACE (7) and the category "GST_TRACER".
Please note that this is still under discussion and subject to change.
Parameters:
self
–
the tracer-record
...
–
the args as described in the spec-
Since : 1.8
Function Macros
GST_TRACER_RECORD_CAST
#define GST_TRACER_RECORD_CAST(obj) ((GstTracerRecord *)(obj))
Enumerations
GstTracerValueFlags
Flag that describe the value. These flags help applications processing the logs to understand the values.
Members
GST_TRACER_VALUE_FLAGS_NONE
(0)
–
no flags
GST_TRACER_VALUE_FLAGS_OPTIONAL
(1)
–
the value is optional. When using this flag one need to have an additional boolean arg before this value in the var-args list passed to gst_tracer_record_log.
GST_TRACER_VALUE_FLAGS_AGGREGATED
(2)
–
the value is a combined figure, since the start of tracing. Examples are averages or timestamps.
Gst.TracerValueFlags
Flag that describe the value. These flags help applications processing the logs to understand the values.
Members
Gst.TracerValueFlags.NONE
(0)
–
no flags
Gst.TracerValueFlags.OPTIONAL
(1)
–
the value is optional. When using this flag one need to have an additional boolean arg before this value in the var-args list passed to gst_tracer_record_log (not introspectable).
Gst.TracerValueFlags.AGGREGATED
(2)
–
the value is a combined figure, since the start of tracing. Examples are averages or timestamps.
Gst.TracerValueFlags
Flag that describe the value. These flags help applications processing the logs to understand the values.
Members
Gst.TracerValueFlags.NONE
(0)
–
no flags
Gst.TracerValueFlags.OPTIONAL
(1)
–
the value is optional. When using this flag one need to have an additional boolean arg before this value in the var-args list passed to gst_tracer_record_log (not introspectable).
Gst.TracerValueFlags.AGGREGATED
(2)
–
the value is a combined figure, since the start of tracing. Examples are averages or timestamps.
GstTracerValueScope
Tracing record will contain fields that contain a measured value or extra meta-data. One such meta data are values that tell where a measurement was taken. This enumerating declares to which scope such a meta data field relates to. If it is e.g. GST_TRACER_VALUE_SCOPE_PAD, then each of the log events may contain values for different GstPad.
Members
GST_TRACER_VALUE_SCOPE_PROCESS
(0)
–
the value is related to the process
GST_TRACER_VALUE_SCOPE_THREAD
(1)
–
the value is related to a thread
GST_TRACER_VALUE_SCOPE_ELEMENT
(2)
–
the value is related to an GstElement
GST_TRACER_VALUE_SCOPE_PAD
(3)
–
the value is related to a GstPad
Since : 1.8
Gst.TracerValueScope
Tracing record will contain fields that contain a measured value or extra meta-data. One such meta data are values that tell where a measurement was taken. This enumerating declares to which scope such a meta data field relates to. If it is e.g. Gst.TracerValueScope.PAD, then each of the log events may contain values for different Gst.Pad.
Members
Gst.TracerValueScope.PROCESS
(0)
–
the value is related to the process
Gst.TracerValueScope.THREAD
(1)
–
the value is related to a thread
Gst.TracerValueScope.ELEMENT
(2)
–
the value is related to an Gst.Element
Gst.TracerValueScope.PAD
(3)
–
the value is related to a Gst.Pad
Since : 1.8
Gst.TracerValueScope
Tracing record will contain fields that contain a measured value or extra meta-data. One such meta data are values that tell where a measurement was taken. This enumerating declares to which scope such a meta data field relates to. If it is e.g. Gst.TracerValueScope.PAD, then each of the log events may contain values for different Gst.Pad.
Members
Gst.TracerValueScope.PROCESS
(0)
–
the value is related to the process
Gst.TracerValueScope.THREAD
(1)
–
the value is related to a thread
Gst.TracerValueScope.ELEMENT
(2)
–
the value is related to an Gst.Element
Gst.TracerValueScope.PAD
(3)
–
the value is related to a Gst.Pad
Since : 1.8
The results of the search are