"type": "gboolean",
"writable": true
},
+ "max-errors": {
+ "blurb": "Max consecutive decoder errors before returning flow error",
+ "conditionally-available": false,
+ "construct": false,
+ "construct-only": false,
+ "controllable": false,
+ "default": "10",
+ "max": "2147483647",
+ "min": "-1",
+ "mutable": "null",
+ "readable": true,
+ "type": "gint",
+ "writable": true
+ },
"min-latency": {
"blurb": "Aggregate output data to a minimum of latency time (ns)",
"conditionally-available": false,
}
},
"properties": {
+ "max-errors": {
+ "blurb": "Max consecutive decoder errors before returning flow error",
+ "conditionally-available": false,
+ "construct": false,
+ "construct-only": false,
+ "controllable": false,
+ "default": "10",
+ "max": "2147483647",
+ "min": "-1",
+ "mutable": "null",
+ "readable": true,
+ "type": "gint",
+ "writable": true
+ },
"qos": {
"blurb": "Handle Quality-of-Service events from downstream",
"conditionally-available": false,
}
},
"properties": {
+ "max-errors": {
+ "blurb": "Max consecutive decoder errors before returning flow error",
+ "conditionally-available": false,
+ "construct": false,
+ "construct-only": false,
+ "controllable": false,
+ "default": "10",
+ "max": "2147483647",
+ "min": "-1",
+ "mutable": "null",
+ "readable": true,
+ "type": "gint",
+ "writable": true
+ },
"min-latency": {
"blurb": "Aggregate output data to a minimum of latency time (ns)",
"conditionally-available": false,
PROP_0,
PROP_LATENCY,
PROP_TOLERANCE,
- PROP_PLC
+ PROP_PLC,
+ PROP_MAX_ERRORS
};
#define DEFAULT_LATENCY 0
#define DEFAULT_PLC FALSE
#define DEFAULT_DRAINABLE TRUE
#define DEFAULT_NEEDS_FORMAT FALSE
+#define DEFAULT_MAX_ERRORS GST_AUDIO_DECODER_MAX_ERRORS
typedef struct _GstAudioDecoderContext
{
"Perform packet loss concealment (if supported)",
DEFAULT_PLC, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+ /**
+ * GstAudioDecoder:max-errors:
+ *
+ * Maximum number of tolerated consecutive decode errors. See
+ * gst_audio_decoder_set_max_errors() for more details.
+ *
+ * Since: 1.18
+ */
+ g_object_class_install_property (gobject_class, PROP_MAX_ERRORS,
+ g_param_spec_int ("max-errors", "Max errors",
+ "Max consecutive decoder errors before returning flow error",
+ -1, G_MAXINT, DEFAULT_MAX_ERRORS,
+ G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
audiodecoder_class->sink_event =
GST_DEBUG_FUNCPTR (gst_audio_decoder_sink_eventfunc);
audiodecoder_class->src_event =
case PROP_PLC:
g_value_set_boolean (value, dec->priv->plc);
break;
+ case PROP_MAX_ERRORS:
+ g_value_set_int (value, gst_audio_decoder_get_max_errors (dec));
+ break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
case PROP_PLC:
dec->priv->plc = g_value_get_boolean (value);
break;
+ case PROP_MAX_ERRORS:
+ gst_audio_decoder_set_max_errors (dec, g_value_get_int (value));
+ break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;