appsrc: Only notify drop property and not in/out
This mirrors the behaviour of audiorate / videorate better and observing in/out buffers can be achieved more cheaply via other means. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8866>
This commit is contained in:
parent
9920897c4a
commit
fe7cb2e5b1
@ -857,7 +857,7 @@
|
|||||||
"writable": false
|
"writable": false
|
||||||
},
|
},
|
||||||
"silent": {
|
"silent": {
|
||||||
"blurb": "Don't emit notify for input, output and dropped buffers",
|
"blurb": "Don't emit notify for dropped buffers",
|
||||||
"conditionally-available": false,
|
"conditionally-available": false,
|
||||||
"construct": false,
|
"construct": false,
|
||||||
"construct-only": false,
|
"construct-only": false,
|
||||||
|
@ -624,7 +624,7 @@ gst_app_src_class_init (GstAppSrcClass * klass)
|
|||||||
*/
|
*/
|
||||||
g_object_class_install_property (gobject_class, PROP_SILENT,
|
g_object_class_install_property (gobject_class, PROP_SILENT,
|
||||||
g_param_spec_boolean ("silent", "silent",
|
g_param_spec_boolean ("silent", "silent",
|
||||||
"Don't emit notify for input, output and dropped buffers",
|
"Don't emit notify for dropped buffers",
|
||||||
DEFAULT_SILENT, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
|
DEFAULT_SILENT, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -1104,8 +1104,6 @@ gst_app_src_send_event (GstElement * element, GstEvent * event)
|
|||||||
g_mutex_unlock (&priv->mutex);
|
g_mutex_unlock (&priv->mutex);
|
||||||
|
|
||||||
if (!priv->silent) {
|
if (!priv->silent) {
|
||||||
g_object_notify (G_OBJECT (appsrc), "in");
|
|
||||||
g_object_notify (G_OBJECT (appsrc), "out");
|
|
||||||
g_object_notify (G_OBJECT (appsrc), "dropped");
|
g_object_notify (G_OBJECT (appsrc), "dropped");
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -1201,8 +1199,6 @@ gst_app_src_stop (GstBaseSrc * bsrc)
|
|||||||
g_mutex_unlock (&priv->mutex);
|
g_mutex_unlock (&priv->mutex);
|
||||||
|
|
||||||
if (!priv->silent) {
|
if (!priv->silent) {
|
||||||
g_object_notify (G_OBJECT (appsrc), "in");
|
|
||||||
g_object_notify (G_OBJECT (appsrc), "out");
|
|
||||||
g_object_notify (G_OBJECT (appsrc), "dropped");
|
g_object_notify (G_OBJECT (appsrc), "dropped");
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1355,8 +1351,6 @@ gst_app_src_do_seek (GstBaseSrc * src, GstSegment * segment)
|
|||||||
g_mutex_unlock (&priv->mutex);
|
g_mutex_unlock (&priv->mutex);
|
||||||
|
|
||||||
if (!priv->silent) {
|
if (!priv->silent) {
|
||||||
g_object_notify (G_OBJECT (appsrc), "in");
|
|
||||||
g_object_notify (G_OBJECT (appsrc), "out");
|
|
||||||
g_object_notify (G_OBJECT (appsrc), "dropped");
|
g_object_notify (G_OBJECT (appsrc), "dropped");
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@ -1809,10 +1803,6 @@ gst_app_src_create (GstBaseSrc * bsrc, guint64 offset, guint size,
|
|||||||
}
|
}
|
||||||
g_mutex_unlock (&priv->mutex);
|
g_mutex_unlock (&priv->mutex);
|
||||||
|
|
||||||
if (ret == GST_FLOW_OK && !priv->silent) {
|
|
||||||
g_object_notify (G_OBJECT (appsrc), "out");
|
|
||||||
}
|
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
/* ERRORS */
|
/* ERRORS */
|
||||||
@ -2692,10 +2682,6 @@ gst_app_src_push_internal (GstAppSrc * appsrc, GstBuffer * buffer,
|
|||||||
|
|
||||||
g_mutex_unlock (&priv->mutex);
|
g_mutex_unlock (&priv->mutex);
|
||||||
|
|
||||||
if (!appsrc->priv->silent) {
|
|
||||||
g_object_notify (G_OBJECT (appsrc), "in");
|
|
||||||
}
|
|
||||||
|
|
||||||
return GST_FLOW_OK;
|
return GST_FLOW_OK;
|
||||||
|
|
||||||
/* ERRORS */
|
/* ERRORS */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user