summaryrefslogtreecommitdiffstats
path: root/ext/ladspa/gstladspa.c
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2006-08-04 11:38:54 +0000
committerAndy Wingo <wingo@pobox.com>2006-08-04 11:38:54 +0000
commit7fbf85ea547a9242837f24f3156c1cd8a5ec7004 (patch)
tree37214e3b2dc97f013b0fdff4461ff6e17daa56c0 /ext/ladspa/gstladspa.c
parent8d6b0e29631e5bc3ee5b2b784061549ea6a30270 (diff)
ext/ladspa/gstsignalprocessor.h: Add infrastructure for storing whether a processor can work in place or not, and for...
Original commit message from CVS: 2006-08-04 Andy Wingo <wingo@pobox.com> * ext/ladspa/gstsignalprocessor.h: Add infrastructure for storing whether a processor can work in place or not, and for keeping track of its state. Change the FlowReturn instance variable from "state" to "flow_state", all callers changed. * ext/ladspa/gstsignalprocessor.c (gst_signal_processor_setup) (gst_signal_processor_start, gst_signal_processor_stop) (gst_signal_processor_cleanup): New functions to manage the processor's state. (gst_signal_processor_setcaps): start() as well as setup() here. (gst_signal_processor_prepare): Respect CAN_PROCESS_IN_PLACE. (gst_signal_processor_change_state): Stop and cleanup the processor as we go to NULL. * ext/ladspa/gstladspa.c (gst_ladspa_base_init): Reuse buffers if INPLACE_BROKEN is not set. * ext/ladspa/gstsignalprocessor.c (gst_signal_processor_prepare): Do the alloc_buffer in bytes, not frames.
Diffstat (limited to 'ext/ladspa/gstladspa.c')
-rw-r--r--ext/ladspa/gstladspa.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/ext/ladspa/gstladspa.c b/ext/ladspa/gstladspa.c
index c6d0e0b2..fc2a9343 100644
--- a/ext/ladspa/gstladspa.c
+++ b/ext/ladspa/gstladspa.c
@@ -132,6 +132,9 @@ gst_ladspa_base_init (gpointer g_class)
}
}
+ if (!LADSPA_IS_INPLACE_BROKEN (desc->Properties))
+ GST_SIGNAL_PROCESSOR_CLASS_SET_CAN_PROCESS_IN_PLACE (klass);
+
klass->descriptor = desc;
}