Да, конечно, и TurboFM тоже имеется, но писать свой рендерер ты вряд ли осилишь, а взять уже имеющийся - можно. Только вот генерировать FM с выходом на 3.5Мгц - нафиг оно кому нужно? FM в таком "дигитальном" режиме никогда не используется, и тратить на это ресурсы нет надобности. Как и с AY. Рендерить AY с частотой в 3.5Мгц, а потом прогонять через фильтры необходимость бывает только если это дигитал какой-нибудь. В том же AY_Emul есть два вида рендеринга звука, аккуратный и нет. Аккуратный - как раз с последующей КИХ-фильтрацией, и жрет больше CPU чем "быстрый". В большинстве случаев разница не особо слышна (потому что частота переключения данных регистров AY - 50Гц).
Вот "правильная" таблица фильтров https://github.com/darvin/unreal-spe...sound.cpp#L178
Нужно что-то подобное. А не простое математическое усреднение как у тебя https://github.com/samstyle/Xpeccy/b.../sound.cpp#L47.
Можно было бы заюзать https://github.com/avaneev/r8brain-free-src





Ответить с цитированием