diff options
author | Robin Gareus <robin@gareus.org> | 2020-02-26 17:50:08 +0100 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2020-02-26 17:50:08 +0100 |
commit | d27cdb3855eb679dcf66fa37312dcab5aae100dd (patch) | |
tree | aafda3bf4fb8a5440e13f6cff974f16d0743f259 /libs/ardour/ardour/dsp_filter.h | |
parent | a5c956883d4a0efa3425179cec87717b32206619 (diff) |
Fix DSP::process_map() plugin-pin I/O map handing
The previous approach failed in case where PluginInsert
uses no-inplace buffers with a linear map.
Since buffers are replicated up to a total of number of
all (inputs + outputs), the number of output buffers
could not be determined. There was insufficient information
using the I/O map alone.
With a known number of outputs processing and applying
the i/o map is also a lot easier and faster.
This break the API of process_map().
Diffstat (limited to 'libs/ardour/ardour/dsp_filter.h')
-rw-r--r-- | libs/ardour/ardour/dsp_filter.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/libs/ardour/ardour/dsp_filter.h b/libs/ardour/ardour/dsp_filter.h index cb03392913..ed31bb6012 100644 --- a/libs/ardour/ardour/dsp_filter.h +++ b/libs/ardour/ardour/dsp_filter.h @@ -166,10 +166,10 @@ namespace ARDOUR { namespace DSP { float log_meter_coeff (float coeff); void process_map (BufferSet* bufs, - const ChanMapping& in, - const ChanMapping& out, - pframes_t nframes, samplecnt_t offset, - const DataType&); + const ChanCount& n_out, + const ChanMapping& in_map, + const ChanMapping& out_map, + pframes_t nframes, samplecnt_t offset); /** 1st order Low Pass filter */ class LIBARDOUR_API LowPass { |