本文整理汇总了C++中GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS函数的典型用法代码示例。如果您正苦于以下问题:C++ GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS函数的具体用法?C++ GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS怎么用?C++ GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: bus_msg_cb
static void
bus_msg_cb (GstBus * bus, GstMessage * msg, gpointer pipeline)
{
switch (msg->type) {
case GST_MESSAGE_ERROR:{
GST_ERROR ("%s bus error: %" GST_PTR_FORMAT, GST_ELEMENT_NAME (pipeline),
msg);
GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS (GST_BIN (pipeline),
GST_DEBUG_GRAPH_SHOW_ALL, "bus_error");
fail ("Error received on %s bus", GST_ELEMENT_NAME (pipeline));
break;
}
case GST_MESSAGE_WARNING:{
GST_WARNING ("%s bus: %" GST_PTR_FORMAT, GST_ELEMENT_NAME (pipeline),
msg);
GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS (GST_BIN (pipeline),
GST_DEBUG_GRAPH_SHOW_ALL, "warning");
break;
}
case GST_MESSAGE_STATE_CHANGED:{
GST_TRACE ("%s bus event: %" GST_PTR_FORMAT, GST_ELEMENT_NAME (pipeline),
msg);
break;
}
default:
break;
}
}
示例2: timer_cb
static gboolean
timer_cb (gpointer data)
{
/* Agnostic bin might be now ready to go to Playing state */
GST_INFO ("Connecting appsink to receive buffers");
GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS (GST_BIN (test_pipeline),
GST_DEBUG_GRAPH_SHOW_ALL, "timer_dot");
fakesink = gst_element_factory_make ("fakesink", NULL);
gst_bin_add (GST_BIN (test_pipeline), fakesink);
gst_element_set_state (fakesink, GST_STATE_PLAYING);
gst_element_set_state (httpep, GST_STATE_PLAYING);
gst_element_link_pads (httpep, "video_src_%u", fakesink, "sink");
/* Start getting data from Internet */
gst_element_set_state (src_pipeline, GST_STATE_PLAYING);
GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS (GST_BIN (src_pipeline),
GST_DEBUG_GRAPH_SHOW_ALL, "src_getting_data");
return FALSE;
}
示例3: bus_message
static void
bus_message (GstBus * bus, GstMessage * msg, gpointer pipe)
{
switch (GST_MESSAGE_TYPE (msg)) {
case GST_MESSAGE_ERROR:{
gchar *error_file = g_strdup_printf ("error-%s", GST_OBJECT_NAME (pipe));
GST_ERROR ("Error: %" GST_PTR_FORMAT, msg);
GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS (GST_BIN (pipe),
GST_DEBUG_GRAPH_SHOW_ALL, error_file);
g_free (error_file);
GST_ERROR ("Error received on bus in pipeline: %s", GST_OBJECT_NAME (pipe));
g_atomic_int_set (&error, 1);
g_main_loop_quit (loop);
break;
}
case GST_MESSAGE_WARNING:{
gchar *warn_file = g_strdup_printf ("warning-%s", GST_OBJECT_NAME (pipe));
GST_WARNING ("Warning: %" GST_PTR_FORMAT, msg);
GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS (GST_BIN (pipe),
GST_DEBUG_GRAPH_SHOW_ALL, warn_file);
g_free (warn_file);
break;
}
case GST_MESSAGE_EOS:
GST_DEBUG ("Received eos event");
g_main_loop_quit (loop);
break;
default:
break;
}
}
示例4: bus_msg
static void
bus_msg (GstBus * bus, GstMessage * msg, gpointer pipe)
{
switch (GST_MESSAGE_TYPE (msg)) {
case GST_MESSAGE_ERROR:{
GST_ERROR ("Error: %" GST_PTR_FORMAT, msg);
GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS (GST_BIN (pipe),
GST_DEBUG_GRAPH_SHOW_ALL, "error");
fail ("Error received on bus");
break;
}
case GST_MESSAGE_WARNING:{
GST_WARNING ("Warning: %" GST_PTR_FORMAT, msg);
GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS (GST_BIN (pipe),
GST_DEBUG_GRAPH_SHOW_ALL, "warning");
break;
}
case GST_MESSAGE_EOS:{
GST_INFO ("EOS received");
g_main_loop_quit (loop);
break;
}
case GST_MESSAGE_STATE_CHANGED:{
if (g_str_has_prefix (GST_OBJECT_NAME (msg->src), "agnosticbin")) {
GST_INFO ("Event: %" GST_PTR_FORMAT, msg);
}
}
default:
break;
}
}
示例5: bus_msg
GST_END_TEST static void
bus_msg (GstBus * bus, GstMessage * msg, gpointer pipe)
{
switch (GST_MESSAGE_TYPE (msg)) {
case GST_MESSAGE_ERROR:{
GST_ERROR ("Error: %" GST_PTR_FORMAT, msg);
GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS (GST_BIN (pipe),
GST_DEBUG_GRAPH_SHOW_ALL, "error");
fail ("Error received on bus");
break;
}
case GST_MESSAGE_EOS:{
g_main_loop_quit (loop);
break;
}
case GST_MESSAGE_WARNING:{
GST_ERROR ("Warning: %" GST_PTR_FORMAT, msg);
GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS (GST_BIN (pipe),
GST_DEBUG_GRAPH_SHOW_ALL, "error");
fail ("Warning received on bus");
break;
}
default:
break;
}
}
示例6: bus_msg
static void
bus_msg (GstBus * bus, GstMessage * msg, gpointer pipe)
{
switch (GST_MESSAGE_TYPE (msg)) {
case GST_MESSAGE_ERROR:{
gchar *error_file = g_strdup_printf ("error-%s", GST_OBJECT_NAME (pipe));
GST_ERROR ("Error: %" GST_PTR_FORMAT, msg);
GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS (GST_BIN (pipe),
GST_DEBUG_GRAPH_SHOW_ALL, error_file);
g_free (error_file);
fail ("Error received on bus");
break;
}
case GST_MESSAGE_WARNING:{
gchar *warn_file = g_strdup_printf ("warning-%s", GST_OBJECT_NAME (pipe));
GST_WARNING ("Warning: %" GST_PTR_FORMAT, msg);
GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS (GST_BIN (pipe),
GST_DEBUG_GRAPH_SHOW_ALL, warn_file);
g_free (warn_file);
break;
}
default:
break;
}
}
示例7: capture_bus_cb
static gboolean
capture_bus_cb (GstBus * bus, GstMessage * message, gpointer data)
{
GMainLoop *loop = (GMainLoop *) data;
const GstStructure *st;
switch (GST_MESSAGE_TYPE (message)) {
case GST_MESSAGE_ERROR:{
GError *err = NULL;
gchar *debug = NULL;
gst_message_parse_error (message, &err, &debug);
GST_WARNING ("ERROR: %s [%s]", err->message, debug);
g_error_free (err);
g_free (debug);
/* Write debug graph to file */
GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS (GST_BIN (camera),
GST_DEBUG_GRAPH_SHOW_ALL, "camerabin.error");
fail_if (TRUE, "error while capturing");
g_main_loop_quit (loop);
break;
}
case GST_MESSAGE_WARNING:{
GError *err = NULL;
gchar *debug = NULL;
gst_message_parse_warning (message, &err, &debug);
GST_WARNING ("WARNING: %s [%s]", err->message, debug);
g_error_free (err);
g_free (debug);
/* Write debug graph to file */
GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS (GST_BIN (camera),
GST_DEBUG_GRAPH_SHOW_ALL, "camerabin.warning");
break;
}
case GST_MESSAGE_EOS:
GST_DEBUG ("eos");
g_main_loop_quit (loop);
break;
default:
st = gst_message_get_structure (message);
if (st && gst_structure_has_name (st, "image-captured")) {
gboolean ready = FALSE;
GST_INFO ("image captured");
g_object_get (camera, "ready-for-capture", &ready, NULL);
fail_if (!ready, "not ready for capture");
}
break;
}
return TRUE;
}
示例8: slave_bus_msg
static gboolean
slave_bus_msg (GstBus * bus, GstMessage * msg, gpointer data)
{
GstPipeline *pipeline = data;
switch (GST_MESSAGE_TYPE (msg)) {
case GST_MESSAGE_ERROR:{
GError *err;
gchar *dbg;
gst_message_parse_error (msg, &err, &dbg);
g_printerr ("SLAVE: ERROR: %s\n", err->message);
if (dbg != NULL)
g_printerr ("SLAVE: ERROR debug information: %s\n", dbg);
g_error_free (err);
g_free (dbg);
GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS (GST_BIN (pipeline),
GST_DEBUG_GRAPH_SHOW_ALL, "ipc.slave.error");
break;
}
case GST_MESSAGE_WARNING:{
GError *err;
gchar *dbg;
gst_message_parse_warning (msg, &err, &dbg);
g_printerr ("SLAVE: WARNING: %s\n", err->message);
if (dbg != NULL)
g_printerr ("SLAVE: WARNING debug information: %s\n", dbg);
g_error_free (err);
g_free (dbg);
GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS (GST_BIN (pipeline),
GST_DEBUG_GRAPH_SHOW_ALL, "ipc.slave.warning");
break;
}
case GST_MESSAGE_ASYNC_START:
GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS (GST_BIN (pipeline),
GST_DEBUG_GRAPH_SHOW_VERBOSE, "ipc.slave.async-start");
break;
case GST_MESSAGE_ASYNC_DONE:
GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS (GST_BIN (pipeline),
GST_DEBUG_GRAPH_SHOW_ALL, "ipc.slave.async-done");
break;
default:
break;
}
return TRUE;
}
示例9: do_sprinkle
static gboolean
do_sprinkle (SprinkleState * state)
{
SourceInfo *info;
gint i;
/* first remove the oldest info */
info = state->infos[2];
if (info)
remove_source (info);
/* move sources */
for (i = 2; i > 0; i--) {
state->infos[i] = state->infos[i - 1];
}
/* add new source, stop adding sources after 10 rounds. */
if (state->count < 20) {
state->infos[0] = add_source (
(gdouble) ((state->count * 100) + 200),
((gfloat) (state->count % 5) / 2.0 - 1.0));
state->count++;
} else {
state->infos[0] = NULL;
}
GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS (GST_BIN (pipeline),
/*GST_DEBUG_GRAPH_SHOW_ALL, */
GST_DEBUG_GRAPH_SHOW_CAPS_DETAILS | GST_DEBUG_GRAPH_SHOW_STATES,
"sprinkle3");
return TRUE;
}
示例10: bus_sync_signal_handler
static GstBusSyncReply
bus_sync_signal_handler (GstBus * bus, GstMessage * msg, gpointer data)
{
KmsRecorderEndpoint *self = KMS_RECORDER_ENDPOINT (data);
if (GST_MESSAGE_TYPE (msg) == GST_MESSAGE_ERROR) {
ErrorData *data;
GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS (GST_BIN (self),
GST_DEBUG_GRAPH_SHOW_ALL, GST_ELEMENT_NAME (self));
kms_base_media_muxer_dot_file (self->priv->mux);
GST_ERROR_OBJECT (self, "Message %" GST_PTR_FORMAT, msg);
data = create_error_data (self, msg);
GST_ERROR_OBJECT (self, "Error: %" GST_PTR_FORMAT, msg);
gst_task_pool_push (self->priv->pool, kms_recorder_endpoint_post_error,
data, NULL);
} else if (GST_MESSAGE_TYPE (msg) == GST_MESSAGE_EOS) {
gst_task_pool_push (self->priv->pool, kms_recorder_endpoint_on_eos_message,
self, NULL);
}
return GST_BUS_PASS;
}
示例11: bus_msg
static void
bus_msg (GstBus * bus, GstMessage * msg, gpointer pipe)
{
switch (GST_MESSAGE_TYPE (msg)) {
case GST_MESSAGE_ERROR: {
GError *err = NULL;
gchar *dbg_info = NULL;
gchar *err_str;
GST_ERROR ("Error: %" GST_PTR_FORMAT, msg);
GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS (GST_BIN (pipe),
GST_DEBUG_GRAPH_SHOW_ALL, "bus_error");
gst_message_parse_error (msg, &err, &dbg_info);
err_str = g_strdup_printf ("Error received on bus: %s: %s", err->message,
dbg_info);
g_error_free (err);
g_free (dbg_info);
fail (err_str);
g_free (err_str);
break;
}
case GST_MESSAGE_STATE_CHANGED: {
GST_TRACE ("Event: %" GST_PTR_FORMAT, msg);
break;
}
default:
break;
}
}
示例12: debug_graph
static gboolean
debug_graph (gpointer bin)
{
GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS (GST_BIN (bin),
GST_DEBUG_GRAPH_SHOW_ALL, GST_ELEMENT_NAME (bin));
return FALSE;
}
示例13: bus_callback
static gboolean
bus_callback (GstBus * bus, GstMessage * message, gpointer data)
{
switch (GST_MESSAGE_TYPE (message)) {
case GST_MESSAGE_ERROR:{
GError *err;
gchar *debug;
gst_message_parse_error (message, &err, &debug);
g_print ("Error: %s\n", err->message);
g_error_free (err);
g_free (debug);
/* Write debug graph to file */
GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS (GST_BIN (camerabin),
GST_DEBUG_GRAPH_SHOW_ALL, "camerabin.error");
g_main_loop_quit (loop);
break;
}
case GST_MESSAGE_STATE_CHANGED:
if (GST_IS_BIN (GST_MESSAGE_SRC (message))) {
GstState oldstate, newstate;
gst_message_parse_state_changed (message, &oldstate, &newstate, NULL);
GST_DEBUG_OBJECT (GST_MESSAGE_SRC (message), "state-changed: %s -> %s",
gst_element_state_get_name (oldstate),
gst_element_state_get_name (newstate));
}
break;
case GST_MESSAGE_EOS:
/* end-of-stream */
GST_INFO ("got eos() - should not happen");
g_main_loop_quit (loop);
break;
case GST_MESSAGE_ELEMENT:
if (GST_MESSAGE_SRC (message) == (GstObject *) camerabin) {
const GstStructure *structure = gst_message_get_structure (message);
if (gst_structure_has_name (structure, "image-done")) {
#ifndef GST_DISABLE_GST_DEBUG
const gchar *fname = gst_structure_get_string (structure, "filename");
GST_DEBUG ("image done: %s", fname);
#endif
if (capture_count < capture_total) {
g_idle_add ((GSourceFunc) run_pipeline, NULL);
} else {
g_main_loop_quit (loop);
}
}
}
break;
default:
/* unhandled message */
break;
}
return TRUE;
}
示例14: on_pad_added
static void
on_pad_added (GstElement * element, GstPad * pad, GstElement * pipeline)
{
GstElement *ipcpipelinesink;
GstPad *sinkpad;
GstCaps *caps;
const GstStructure *structure;
GstIterator *it;
GValue elem = G_VALUE_INIT;
int sockets[2];
gboolean create_sockets;
caps = gst_pad_get_current_caps (pad);
structure = gst_caps_get_structure (caps, 0);
it = gst_bin_iterate_sinks (GST_BIN (pipeline));
if (gst_iterator_find_custom (it, find_ipcpipelinesink, &elem,
(gpointer) gst_structure_get_name (structure))) {
ipcpipelinesink = g_value_get_object (&elem);
create_sockets = FALSE;
g_value_reset (&elem);
} else {
ipcpipelinesink = gst_element_factory_make ("ipcpipelinesink", NULL);
gst_bin_add (GST_BIN (pipeline), ipcpipelinesink);
create_sockets = TRUE;
}
sinkpad = gst_element_get_static_pad (ipcpipelinesink, "sink");
if (gst_pad_link (pad, sinkpad) != GST_PAD_LINK_OK) {
fprintf (stderr, "Failed to link ipcpipelinesink\n");
exit (1);
}
gst_object_unref (sinkpad);
g_signal_connect (pad, "unlinked", (GCallback) on_pad_unlinked, pipeline);
if (create_sockets) {
if (socketpair (AF_UNIX, SOCK_STREAM, 0, sockets)) {
fprintf (stderr, "Error creating sockets: %s\n", strerror (errno));
exit (1);
}
if (fcntl (sockets[0], F_SETFL, O_NONBLOCK) < 0 ||
fcntl (sockets[1], F_SETFL, O_NONBLOCK) < 0) {
fprintf (stderr, "Error setting O_NONBLOCK on sockets: %s\n",
strerror (errno));
exit (1);
}
g_object_set (ipcpipelinesink, "fdin", sockets[0], "fdout", sockets[0],
NULL);
printf ("new socket %d\n", sockets[1]);
sendfd (pipes[1], sockets[1]);
}
gst_element_set_state (ipcpipelinesink, GST_STATE_PLAYING);
GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS (GST_BIN (pipeline),
GST_DEBUG_GRAPH_SHOW_ALL, "pad.added");
}
示例15: rb_gst_bin_to_dot_file_with_ts
static VALUE
rb_gst_bin_to_dot_file_with_ts(VALUE self, VALUE details, VALUE filename)
{
GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS(SELF(self),
NUM2INT(details),
RVAL2CSTR(filename));
return Qnil;
}