Debugging utilities

These utility functions help with generating dot graphs which can be rendered with graphviz to multiple formats.

Functions

gst_debug_bin_to_dot_data

gchar *
gst_debug_bin_to_dot_data (GstBin * bin,
                           GstDebugGraphDetails details)

To aid debugging applications one can use this method to obtain the whole network of gstreamer elements that form the pipeline into a dot file.

See gst_debug_bin_to_dot_file for more details.

Parameters:

bin

the top-level pipeline that should be analyzed

details

type of GstDebugGraphDetails to use

Returns ( [transfer: full])

a string containing the pipeline in graphviz dot format.


Gst.prototype.debug_bin_to_dot_data

function Gst.prototype.debug_bin_to_dot_data(bin: Gst.Bin, details: Gst.DebugGraphDetails): {
    // javascript wrapper for 'gst_debug_bin_to_dot_data'
}

To aid debugging applications one can use this method to obtain the whole network of gstreamer elements that form the pipeline into a dot file.

See Gst.prototype.debug_bin_to_dot_file for more details.

Parameters:

bin (Gst.Bin)

the top-level pipeline that should be analyzed

details (Gst.DebugGraphDetails)

type of Gst.DebugGraphDetails to use

Returns (String)

a string containing the pipeline in graphviz dot format.


Gst.debug_bin_to_dot_data

def Gst.debug_bin_to_dot_data (bin, details):
    #python wrapper for 'gst_debug_bin_to_dot_data'

To aid debugging applications one can use this method to obtain the whole network of gstreamer elements that form the pipeline into a dot file.

See Gst.debug_bin_to_dot_file for more details.

Parameters:

bin (Gst.Bin)

the top-level pipeline that should be analyzed

details (Gst.DebugGraphDetails)

type of Gst.DebugGraphDetails to use

Returns (str)

a string containing the pipeline in graphviz dot format.


gst_debug_bin_to_dot_file

gst_debug_bin_to_dot_file (GstBin * bin,
                           GstDebugGraphDetails details,
                           const gchar * file_name)

To aid debugging applications one can use this method to write out the whole network of gstreamer elements that form the pipeline into a dot file. This file can be processed with graphviz to get an image, like this:

dot -Tpng -oimage.png graph_lowlevel.dot

There is also the interactive gst-dots-viewer tool, and xdot which allows you to view the dot file directly without converting it first.

If file_name is NULL, the output filename will be based on the application name as returned by g_get_application_name, or "unnamed" if the application name cannot be determined.

The file will be written to the directory specified by the GST_DEBUG_DUMP_DOT_DIR environment variable, and the .dot extension will be added. If GST_DEBUG_DUMP_DOT_DIR was not defined at the time gst_init was called, the file will not be generated. Note that the directory must already exist, it will not be created by this function.

gst_debug_bin_to_dot_data can be used if it is desired to generate the file even when GST_DEBUG_DUMP_DOT_DIR is not set.

Parameters:

bin

the top-level pipeline that should be analyzed

details

type of GstDebugGraphDetails to use

file_name ( [type filename][nullable])

output base filename (e.g. "myplayer")


Gst.prototype.debug_bin_to_dot_file

function Gst.prototype.debug_bin_to_dot_file(bin: Gst.Bin, details: Gst.DebugGraphDetails, file_name: filename): {
    // javascript wrapper for 'gst_debug_bin_to_dot_file'
}

To aid debugging applications one can use this method to write out the whole network of gstreamer elements that form the pipeline into a dot file. This file can be processed with graphviz to get an image, like this:

dot -Tpng -oimage.png graph_lowlevel.dot

There is also the interactive gst-dots-viewer tool, and xdot which allows you to view the dot file directly without converting it first.

If file_name is NULL, the output filename will be based on the application name as returned by GLib.prototype.get_application_name, or "unnamed" if the application name cannot be determined.

The file will be written to the directory specified by the GST_DEBUG_DUMP_DOT_DIR environment variable, and the .dot extension will be added. If GST_DEBUG_DUMP_DOT_DIR was not defined at the time Gst.prototype.init was called, the file will not be generated. Note that the directory must already exist, it will not be created by this function.

Gst.prototype.debug_bin_to_dot_data can be used if it is desired to generate the file even when GST_DEBUG_DUMP_DOT_DIR is not set.

Parameters:

bin (Gst.Bin)

the top-level pipeline that should be analyzed

details (Gst.DebugGraphDetails)

type of Gst.DebugGraphDetails to use

file_name (filename)

output base filename (e.g. "myplayer")


Gst.debug_bin_to_dot_file

def Gst.debug_bin_to_dot_file (bin, details, file_name):
    #python wrapper for 'gst_debug_bin_to_dot_file'

To aid debugging applications one can use this method to write out the whole network of gstreamer elements that form the pipeline into a dot file. This file can be processed with graphviz to get an image, like this:

dot -Tpng -oimage.png graph_lowlevel.dot

There is also the interactive gst-dots-viewer tool, and xdot which allows you to view the dot file directly without converting it first.

If file_name is NULL, the output filename will be based on the application name as returned by GLib.get_application_name, or "unnamed" if the application name cannot be determined.

The file will be written to the directory specified by the GST_DEBUG_DUMP_DOT_DIR environment variable, and the .dot extension will be added. If GST_DEBUG_DUMP_DOT_DIR was not defined at the time Gst.init was called, the file will not be generated. Note that the directory must already exist, it will not be created by this function.

Gst.debug_bin_to_dot_data can be used if it is desired to generate the file even when GST_DEBUG_DUMP_DOT_DIR is not set.

Parameters:

bin (Gst.Bin)

the top-level pipeline that should be analyzed

details (Gst.DebugGraphDetails)

type of Gst.DebugGraphDetails to use

file_name (str)

output base filename (e.g. "myplayer")


gst_debug_bin_to_dot_file_with_ts

gst_debug_bin_to_dot_file_with_ts (GstBin * bin,
                                   GstDebugGraphDetails details,
                                   const gchar * file_name)

This works like gst_debug_bin_to_dot_file, but adds the current timestamp to the filename, so that it can be used to take multiple snapshots.

Parameters:

bin

the top-level pipeline that should be analyzed

details

type of GstDebugGraphDetails to use

file_name ( [type filename][nullable])

output base filename (e.g. "myplayer")


Gst.prototype.debug_bin_to_dot_file_with_ts

function Gst.prototype.debug_bin_to_dot_file_with_ts(bin: Gst.Bin, details: Gst.DebugGraphDetails, file_name: filename): {
    // javascript wrapper for 'gst_debug_bin_to_dot_file_with_ts'
}

This works like Gst.prototype.debug_bin_to_dot_file, but adds the current timestamp to the filename, so that it can be used to take multiple snapshots.

Parameters:

bin (Gst.Bin)

the top-level pipeline that should be analyzed

details (Gst.DebugGraphDetails)

type of Gst.DebugGraphDetails to use

file_name (filename)

output base filename (e.g. "myplayer")


Gst.debug_bin_to_dot_file_with_ts

def Gst.debug_bin_to_dot_file_with_ts (bin, details, file_name):
    #python wrapper for 'gst_debug_bin_to_dot_file_with_ts'

This works like Gst.debug_bin_to_dot_file, but adds the current timestamp to the filename, so that it can be used to take multiple snapshots.

Parameters:

bin (Gst.Bin)

the top-level pipeline that should be analyzed

details (Gst.DebugGraphDetails)

type of Gst.DebugGraphDetails to use

file_name (str)

output base filename (e.g. "myplayer")


Function Macros

GST_DEBUG_BIN_TO_DOT_FILE

#define GST_DEBUG_BIN_TO_DOT_FILE(bin, details, file_name) gst_debug_bin_to_dot_file (bin, details, file_name)

To aid debugging applications one can use this method to write out the whole network of gstreamer elements that form the pipeline into a dot file.

The macro is only active if the GStreamer debugging subsystem is enabled (i.e., no use of meson setup -Dgst_debug=false)

See gst_debug_bin_to_dot_file for more details.

Parameters:

bin

the top-level pipeline that should be analyzed

details

details to show in the graph, e.g. GST_DEBUG_GRAPH_SHOW_ALL or one or more other GstDebugGraphDetails flags.

file_name

output base filename (e.g. "myplayer")


GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS

#define GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS(bin, details, file_name) gst_debug_bin_to_dot_file_with_ts (bin, details, file_name)

This works like GST_DEBUG_BIN_TO_DOT_FILE, but adds the current timestamp to the filename, so that it can be used to take multiple snapshots.

Parameters:

bin

the top-level pipeline that should be analyzed

details

details to show in the graph, e.g. GST_DEBUG_GRAPH_SHOW_ALL or one or more other GstDebugGraphDetails flags.

file_name

output base filename (e.g. "myplayer")


Enumerations

GstDebugGraphDetails

Available details for pipeline graphs produced by GST_DEBUG_BIN_TO_DOT_FILE and GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS.

Members
GST_DEBUG_GRAPH_SHOW_MEDIA_TYPE (1) –

show caps-name on edges

GST_DEBUG_GRAPH_SHOW_CAPS_DETAILS (2) –

show caps-details on edges

GST_DEBUG_GRAPH_SHOW_NON_DEFAULT_PARAMS (4) –

show modified parameters on elements. When this flag is set without GST_DEBUG_GRAPH_SHOW_FULL_PARAMS, a tooltip with full parameter values is added to each element.

GST_DEBUG_GRAPH_SHOW_STATES (8) –

show element states

GST_DEBUG_GRAPH_SHOW_FULL_PARAMS (16) –

show full element parameter values even if they are very long. When this flag is set, no tooltip is added since the full values are already visible in the label.

GST_DEBUG_GRAPH_SHOW_ALL (15) –

show all the typical details that one might want

GST_DEBUG_GRAPH_SHOW_VERBOSE (4294967295) –

show all details regardless of how large or verbose they make the resulting output


Gst.DebugGraphDetails

Available details for pipeline graphs produced by GST_DEBUG_BIN_TO_DOT_FILE (not introspectable) and GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS (not introspectable).

Members
Gst.DebugGraphDetails.MEDIA_TYPE (1) –

show caps-name on edges

Gst.DebugGraphDetails.CAPS_DETAILS (2) –

show caps-details on edges

Gst.DebugGraphDetails.NON_DEFAULT_PARAMS (4) –

show modified parameters on elements. When this flag is set without GST_DEBUG_GRAPH_SHOW_FULL_PARAMS, a tooltip with full parameter values is added to each element.

Gst.DebugGraphDetails.STATES (8) –

show element states

Gst.DebugGraphDetails.FULL_PARAMS (16) –

show full element parameter values even if they are very long. When this flag is set, no tooltip is added since the full values are already visible in the label.

Gst.DebugGraphDetails.ALL (15) –

show all the typical details that one might want

Gst.DebugGraphDetails.VERBOSE (4294967295) –

show all details regardless of how large or verbose they make the resulting output


Gst.DebugGraphDetails

Available details for pipeline graphs produced by GST_DEBUG_BIN_TO_DOT_FILE (not introspectable) and GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS (not introspectable).

Members
Gst.DebugGraphDetails.MEDIA_TYPE (1) –

show caps-name on edges

Gst.DebugGraphDetails.CAPS_DETAILS (2) –

show caps-details on edges

Gst.DebugGraphDetails.NON_DEFAULT_PARAMS (4) –

show modified parameters on elements. When this flag is set without GST_DEBUG_GRAPH_SHOW_FULL_PARAMS, a tooltip with full parameter values is added to each element.

Gst.DebugGraphDetails.STATES (8) –

show element states

Gst.DebugGraphDetails.FULL_PARAMS (16) –

show full element parameter values even if they are very long. When this flag is set, no tooltip is added since the full values are already visible in the label.

Gst.DebugGraphDetails.ALL (15) –

show all the typical details that one might want

Gst.DebugGraphDetails.VERBOSE (4294967295) –

show all details regardless of how large or verbose they make the resulting output


The results of the search are