I think this is the key. The signal filter API expects the 'compute'
function to process 'samples' and produce 'filtered samples'. There is
a one to one correspondence between these. The samples come in as one
column per channel. The output should have the same shape.
I know that the one to one correspondence is not perfect and it
typically produces 'edge effects', this is the state of the API in the
preview version and it is not clear that it will change.
Hope this helps,
Harold