Meanwhile I had a look the sources of AMS. Out coding styles seem to
be similar -- clear code that does not need any comments ;-).
hopefully there will be both in ams-2.0.0: clear code _and_ comments :-)
For some time I was puzzled by the buffer copies at the start of each
process function, until I realised they are there to support loops.
Maybe it's not significant at all, but you could avoid all the
memcpy() calls by just manipiulating buffer pointers. This does not
increase required buffer sizes, as you need two buffers anyway.
This (==just swapping pointers) is one of two possible ways i am
thinking about in ams-2.0.0