Насчет "на мази" я погорячился. Требования к точности зависят от
ширины среза в герцах, а от фильтров-то требуется постоянная ширина
среза в % от частоты. При Fs=32000 фильтр на 8000 без
каскадирования работает, но для 4000 уже со скрипом, а для 2000 уже
точности не хватает. А нужно и 1000, и 500, и 250. А каскадировать
pyFDA не умеет. FS - умеет, но изначально считает неточно. А вот
QED (QE-Design, а не QEdit!), считает то, что надо, несмотря на
древность. Считает как минимум,
в long double, IIR по умолчанию делает каскадный, порядок - любой. Но хорошо она только считает. Всё остальное - ужас.
1. Очень неудобный интерфейс. Окна с графиками масштабируются только "при помощи веревочной петли и палки"(с). Если в других программах рамкой выделяется нужный участок, который потом и показывается, то тут нужно навести курсор в некий центр, нажать правую кнопку, и оно растянется, как само считает нужным...
2. Много опциональных параметров, которые я не понимаю, но "ручки-то тянутся". С трудом вернул как было...
3. Какая-то жирная, непонятная и чудовищно медленная реализация. Там кроме самого фильтра одновременно куча каких-то улучшайзеров, эквалайзеров, выравнивателей фаз и т.д. "Не надо делать мне как лучше, верните мне как хорошо!"(с)
4. Файл программы у них фиксированный, с поддержкой всей этой херни, и при отключении лишнего не программа упрощается, а ненужные коэффициенты заменяются на 0 и 1. В результате это никак не оптимизируется и не ложится нормально на FPU.
Завтра попробую наделать фильтров на разные частоты и проверю. Если работают, буду думать, как переделать их программу, или наоборот, вытащить из их мешанины коэффициентов нужные для стандартной программы.