mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-02-04 13:32:29 +00:00
ext/ladspa/gstladspa.c: clean up debugging
Original commit message from CVS: * ext/ladspa/gstladspa.c: (gst_ladspa_class_init), (gst_ladspa_init), (gst_ladspa_force_src_caps), (gst_ladspa_set_property), (gst_ladspa_get_property), (gst_ladspa_instantiate), (gst_ladspa_activate), (gst_ladspa_deactivate), (gst_ladspa_loop), (gst_ladspa_chain): clean up debugging
This commit is contained in:
parent
47c07668bf
commit
82005e9d4d
2 changed files with 62 additions and 21 deletions
16
ChangeLog
16
ChangeLog
|
@ -1,3 +1,19 @@
|
||||||
|
2004-04-05 Benjamin Otte <otte@gnome.org>
|
||||||
|
|
||||||
|
* ext/ladspa/gstladspa.c: (gst_ladspa_class_init),
|
||||||
|
(gst_ladspa_init), (gst_ladspa_force_src_caps),
|
||||||
|
(gst_ladspa_set_property), (gst_ladspa_get_property),
|
||||||
|
(gst_ladspa_instantiate), (gst_ladspa_activate),
|
||||||
|
(gst_ladspa_deactivate), (gst_ladspa_loop), (gst_ladspa_chain):
|
||||||
|
clean up debugging
|
||||||
|
|
||||||
|
2004-04-05 Stefan Kost <kost@imn.htwk-leipzig.de>
|
||||||
|
|
||||||
|
reviewed by Benjamin Otte <otte@gnome.org>
|
||||||
|
|
||||||
|
* ext/ladspa/gstladspa.c: (gst_ladspa_class_init):
|
||||||
|
check for broken LADSPA parameters (fixes #138635)
|
||||||
|
|
||||||
2004-04-05 Benjamin Otte <otte@gnome.org>
|
2004-04-05 Benjamin Otte <otte@gnome.org>
|
||||||
|
|
||||||
* gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_getcaps):
|
* gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_getcaps):
|
||||||
|
|
|
@ -75,10 +75,7 @@ enum
|
||||||
};
|
};
|
||||||
|
|
||||||
GST_DEBUG_CATEGORY_STATIC (ladspa_debug);
|
GST_DEBUG_CATEGORY_STATIC (ladspa_debug);
|
||||||
#define DEBUG(...) \
|
#define GST_CAT_DEFAULT ladspa_debug
|
||||||
GST_CAT_LEVEL_LOG (ladspa_debug, GST_LEVEL_DEBUG, NULL, __VA_ARGS__)
|
|
||||||
#define DEBUG_OBJ(obj,...) \
|
|
||||||
GST_CAT_LEVEL_LOG (ladspa_debug, GST_LEVEL_DEBUG, obj, __VA_ARGS__)
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
gst_ladspa_base_init (GstLADSPAClass * klass)
|
gst_ladspa_base_init (GstLADSPAClass * klass)
|
||||||
|
@ -189,7 +186,7 @@ gst_ladspa_class_init (GstLADSPAClass * klass)
|
||||||
klass->numcontrols++;
|
klass->numcontrols++;
|
||||||
}
|
}
|
||||||
|
|
||||||
DEBUG ("ladspa element class: init %s with %d sink, %d src, %d control\n",
|
GST_DEBUG ("ladspa element class: init %s with %d sink, %d src, %d control\n",
|
||||||
g_type_name (G_TYPE_FROM_CLASS (klass)),
|
g_type_name (G_TYPE_FROM_CLASS (klass)),
|
||||||
klass->numsinkpads, klass->numsrcpads, klass->numcontrols);
|
klass->numsinkpads, klass->numsrcpads, klass->numcontrols);
|
||||||
|
|
||||||
|
@ -347,12 +344,25 @@ gst_ladspa_class_init (GstLADSPAClass * klass)
|
||||||
|
|
||||||
klass->control_info[i].param_name = argname;
|
klass->control_info[i].param_name = argname;
|
||||||
|
|
||||||
DEBUG ("adding arg %s from %s", argname, klass->control_info[i].name);
|
GST_DEBUG ("adding arg %s from %s with access-mode=%d", argname,
|
||||||
|
klass->control_info[i].name, argperms);
|
||||||
|
|
||||||
if (argtype == G_TYPE_BOOLEAN) {
|
if (argtype == G_TYPE_BOOLEAN) {
|
||||||
paramspec =
|
paramspec =
|
||||||
g_param_spec_boolean (argname, argname, argname, FALSE, argperms);
|
g_param_spec_boolean (argname, argname, argname, FALSE, argperms);
|
||||||
} else if (argtype == G_TYPE_INT) {
|
} else if (argtype == G_TYPE_INT) {
|
||||||
|
if (klass->control_info[i].lowerbound > klass->control_info[i].upperbound) {
|
||||||
|
gfloat swap;
|
||||||
|
|
||||||
|
GST_ERROR
|
||||||
|
(" wrong order of parameter bounds %f ... %f ... %f in \"%s\" plugin",
|
||||||
|
klass->control_info[i].lowerbound, klass->control_info[i].def,
|
||||||
|
klass->control_info[i].upperbound, klass->descriptor->Name);
|
||||||
|
|
||||||
|
swap = klass->control_info[i].upperbound;
|
||||||
|
klass->control_info[i].upperbound = klass->control_info[i].lowerbound;
|
||||||
|
klass->control_info[i].lowerbound = swap;
|
||||||
|
}
|
||||||
paramspec = g_param_spec_int (argname, argname, argname,
|
paramspec = g_param_spec_int (argname, argname, argname,
|
||||||
(gint) klass->control_info[i].lowerbound,
|
(gint) klass->control_info[i].lowerbound,
|
||||||
(gint) klass->control_info[i].upperbound,
|
(gint) klass->control_info[i].upperbound,
|
||||||
|
@ -361,6 +371,18 @@ gst_ladspa_class_init (GstLADSPAClass * klass)
|
||||||
paramspec = g_param_spec_float (argname, argname, argname,
|
paramspec = g_param_spec_float (argname, argname, argname,
|
||||||
0.0, G_MAXFLOAT, 0.0, argperms);
|
0.0, G_MAXFLOAT, 0.0, argperms);
|
||||||
} else {
|
} else {
|
||||||
|
if (klass->control_info[i].lowerbound > klass->control_info[i].upperbound) {
|
||||||
|
gfloat swap;
|
||||||
|
|
||||||
|
GST_ERROR
|
||||||
|
(" wrong order of parameter bounds %f ... %f ... %f in \"%s\" plugin",
|
||||||
|
klass->control_info[i].lowerbound, klass->control_info[i].def,
|
||||||
|
klass->control_info[i].upperbound, klass->descriptor->Name);
|
||||||
|
|
||||||
|
swap = klass->control_info[i].upperbound;
|
||||||
|
klass->control_info[i].upperbound = klass->control_info[i].lowerbound;
|
||||||
|
klass->control_info[i].lowerbound = swap;
|
||||||
|
}
|
||||||
paramspec = g_param_spec_float (argname, argname, argname,
|
paramspec = g_param_spec_float (argname, argname, argname,
|
||||||
klass->control_info[i].lowerbound, klass->control_info[i].upperbound,
|
klass->control_info[i].lowerbound, klass->control_info[i].upperbound,
|
||||||
klass->control_info[i].def, argperms);
|
klass->control_info[i].def, argperms);
|
||||||
|
@ -453,18 +475,18 @@ gst_ladspa_init (GstLADSPA * ladspa)
|
||||||
|
|
||||||
if (sinkcount == 0 && srccount == 1) {
|
if (sinkcount == 0 && srccount == 1) {
|
||||||
/* get mode (no sink pads) */
|
/* get mode (no sink pads) */
|
||||||
DEBUG_OBJ (ladspa, "mono get mode with 1 src pad");
|
GST_DEBUG_OBJECT (ladspa, "mono get mode with 1 src pad");
|
||||||
|
|
||||||
gst_pad_set_get_function (ladspa->srcpads[0], gst_ladspa_get);
|
gst_pad_set_get_function (ladspa->srcpads[0], gst_ladspa_get);
|
||||||
} else if (sinkcount == 1) {
|
} else if (sinkcount == 1) {
|
||||||
/* with one sink we can use the chain function */
|
/* with one sink we can use the chain function */
|
||||||
DEBUG_OBJ (ladspa, "chain mode");
|
GST_DEBUG_OBJECT (ladspa, "chain mode");
|
||||||
|
|
||||||
gst_pad_set_chain_function (ladspa->sinkpads[0], gst_ladspa_chain);
|
gst_pad_set_chain_function (ladspa->sinkpads[0], gst_ladspa_chain);
|
||||||
} else if (sinkcount > 1) {
|
} else if (sinkcount > 1) {
|
||||||
/* more than one sink pad needs loop mode */
|
/* more than one sink pad needs loop mode */
|
||||||
DEBUG_OBJ (ladspa, "loop mode with %d sink pads and %d src pads", sinkcount,
|
GST_DEBUG_OBJECT (ladspa, "loop mode with %d sink pads and %d src pads",
|
||||||
srccount);
|
sinkcount, srccount);
|
||||||
|
|
||||||
gst_element_set_loop_function (GST_ELEMENT (ladspa), gst_ladspa_loop);
|
gst_element_set_loop_function (GST_ELEMENT (ladspa), gst_ladspa_loop);
|
||||||
} else if (sinkcount == 0 && srccount == 0) {
|
} else if (sinkcount == 0 && srccount == 0) {
|
||||||
|
@ -526,7 +548,7 @@ gst_ladspa_force_src_caps (GstLADSPA * ladspa, GstPad * pad)
|
||||||
ladspa->buffer_frames = 256; /* 5 ms at 44100 kHz (just a default...) */
|
ladspa->buffer_frames = 256; /* 5 ms at 44100 kHz (just a default...) */
|
||||||
}
|
}
|
||||||
|
|
||||||
DEBUG_OBJ (ladspa, "forcing caps with rate=%d, buffer-frames=%d",
|
GST_DEBUG_OBJECT (ladspa, "forcing caps with rate=%d, buffer-frames=%d",
|
||||||
ladspa->samplerate, ladspa->buffer_frames);
|
ladspa->samplerate, ladspa->buffer_frames);
|
||||||
|
|
||||||
gst_pad_try_set_caps (pad,
|
gst_pad_try_set_caps (pad,
|
||||||
|
@ -570,7 +592,7 @@ gst_ladspa_set_property (GObject * object, guint prop_id, const GValue * value,
|
||||||
else
|
else
|
||||||
ladspa->controls[prop_id] = g_value_get_float (value);
|
ladspa->controls[prop_id] = g_value_get_float (value);
|
||||||
|
|
||||||
DEBUG_OBJ (object, "set arg %s to %f", control_info->name,
|
GST_DEBUG_OBJECT (object, "set arg %s to %f", control_info->name,
|
||||||
ladspa->controls[prop_id]);
|
ladspa->controls[prop_id]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -599,7 +621,7 @@ gst_ladspa_get_property (GObject * object, guint prop_id, GValue * value,
|
||||||
else
|
else
|
||||||
g_value_set_float (value, ladspa->controls[prop_id]);
|
g_value_set_float (value, ladspa->controls[prop_id]);
|
||||||
|
|
||||||
DEBUG_OBJ (object, "got arg %s as %f", control_info->name,
|
GST_DEBUG_OBJECT (object, "got arg %s as %f", control_info->name,
|
||||||
ladspa->controls[prop_id]);
|
ladspa->controls[prop_id]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -621,7 +643,8 @@ gst_ladspa_instantiate (GstLADSPA * ladspa)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* instantiate the plugin */
|
/* instantiate the plugin */
|
||||||
DEBUG_OBJ (ladspa, "instantiating the plugin at %d Hz", ladspa->samplerate);
|
GST_DEBUG_OBJECT (ladspa, "instantiating the plugin at %d Hz",
|
||||||
|
ladspa->samplerate);
|
||||||
|
|
||||||
ladspa->handle = desc->instantiate (desc, ladspa->samplerate);
|
ladspa->handle = desc->instantiate (desc, ladspa->samplerate);
|
||||||
g_return_val_if_fail (ladspa->handle != NULL, FALSE);
|
g_return_val_if_fail (ladspa->handle != NULL, FALSE);
|
||||||
|
@ -673,7 +696,7 @@ gst_ladspa_activate (GstLADSPA * ladspa)
|
||||||
if (ladspa->activated)
|
if (ladspa->activated)
|
||||||
gst_ladspa_deactivate (ladspa);
|
gst_ladspa_deactivate (ladspa);
|
||||||
|
|
||||||
DEBUG_OBJ (ladspa, "activating");
|
GST_DEBUG_OBJECT (ladspa, "activating");
|
||||||
|
|
||||||
/* activate the plugin (function might be null) */
|
/* activate the plugin (function might be null) */
|
||||||
if (desc->activate != NULL)
|
if (desc->activate != NULL)
|
||||||
|
@ -689,7 +712,7 @@ gst_ladspa_deactivate (GstLADSPA * ladspa)
|
||||||
|
|
||||||
desc = ladspa->descriptor;
|
desc = ladspa->descriptor;
|
||||||
|
|
||||||
DEBUG_OBJ (ladspa, "deactivating");
|
GST_DEBUG_OBJECT (ladspa, "deactivating");
|
||||||
|
|
||||||
/* deactivate the plugin (function might be null) */
|
/* deactivate the plugin (function might be null) */
|
||||||
if (ladspa->activated && (desc->deactivate != NULL))
|
if (ladspa->activated && (desc->deactivate != NULL))
|
||||||
|
@ -800,7 +823,8 @@ gst_ladspa_loop (GstElement * element)
|
||||||
buffers_in[i] = NULL;
|
buffers_in[i] = NULL;
|
||||||
}
|
}
|
||||||
for (i = 0; i < numsrcpads; i++) {
|
for (i = 0; i < numsrcpads; i++) {
|
||||||
DEBUG_OBJ (ladspa, "pushing buffer (%p) on src pad %d", buffers_out[i], i);
|
GST_DEBUG_OBJECT (ladspa, "pushing buffer (%p) on src pad %d",
|
||||||
|
buffers_out[i], i);
|
||||||
gst_pad_push (ladspa->srcpads[i], GST_DATA (buffers_out[i]));
|
gst_pad_push (ladspa->srcpads[i], GST_DATA (buffers_out[i]));
|
||||||
|
|
||||||
data_out[i] = NULL;
|
data_out[i] = NULL;
|
||||||
|
@ -849,13 +873,13 @@ gst_ladspa_chain (GstPad * pad, GstData * _data)
|
||||||
if (!ladspa->inplace_broken && numsrcpads) {
|
if (!ladspa->inplace_broken && numsrcpads) {
|
||||||
/* reuse the first (chained) buffer */
|
/* reuse the first (chained) buffer */
|
||||||
buffers_out[i] = buffer_in;
|
buffers_out[i] = buffer_in;
|
||||||
DEBUG ("reuse: %d", GST_BUFFER_SIZE (buffer_in));
|
GST_DEBUG ("reuse: %d", GST_BUFFER_SIZE (buffer_in));
|
||||||
data_out[i] = data_in;
|
data_out[i] = data_in;
|
||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
for (; i < numsrcpads; i++) {
|
for (; i < numsrcpads; i++) {
|
||||||
buffers_out[i] = gst_buffer_new_and_alloc (GST_BUFFER_SIZE (buffer_in));
|
buffers_out[i] = gst_buffer_new_and_alloc (GST_BUFFER_SIZE (buffer_in));
|
||||||
DEBUG ("new %d", GST_BUFFER_SIZE (buffer_in));
|
GST_DEBUG ("new %d", GST_BUFFER_SIZE (buffer_in));
|
||||||
GST_BUFFER_TIMESTAMP (buffers_out[i]) = ladspa->timestamp;
|
GST_BUFFER_TIMESTAMP (buffers_out[i]) = ladspa->timestamp;
|
||||||
data_out[i] = (LADSPA_Data *) GST_BUFFER_DATA (buffers_out[i]);
|
data_out[i] = (LADSPA_Data *) GST_BUFFER_DATA (buffers_out[i]);
|
||||||
}
|
}
|
||||||
|
@ -890,8 +914,9 @@ gst_ladspa_chain (GstPad * pad, GstData * _data)
|
||||||
|
|
||||||
if (numsrcpads) {
|
if (numsrcpads) {
|
||||||
for (i = 0; i < numsrcpads; i++) {
|
for (i = 0; i < numsrcpads; i++) {
|
||||||
DEBUG_OBJ (ladspa, "pushing buffer (%p, length %u bytes) on src pad %d",
|
GST_DEBUG_OBJECT (ladspa,
|
||||||
buffers_out[i], GST_BUFFER_SIZE (buffers_out[i]), i);
|
"pushing buffer (%p, length %u bytes) on src pad %d", buffers_out[i],
|
||||||
|
GST_BUFFER_SIZE (buffers_out[i]), i);
|
||||||
gst_pad_push (ladspa->srcpads[i], GST_DATA (buffers_out[i]));
|
gst_pad_push (ladspa->srcpads[i], GST_DATA (buffers_out[i]));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue