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
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.
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.
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:
the top-level pipeline that should be analyzed
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:
the top-level pipeline that should be analyzed
type of Gst.DebugGraphDetails to use
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:
the top-level pipeline that should be analyzed
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:
the top-level pipeline that should be analyzed
type of Gst.DebugGraphDetails to use
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