The vast majority of source filters depend on Filter::Util::Call to setup the source filtering for them. It includes Call.xs which makes the calls to filter_add() and filter_read().
In the same distribution is Filter::Util::exec, which does things fairly differently than Filter::Util::Call. However, I don't see many (any?) people using it — it has 0 reverse dependencies on MetaCPAN.
A few source-filtering modules don't go through Filter::Util::Call, but instead have their own .xs file that make the calls to filter_add() and filter_read():
Filter::decrypt — a template for writing your own decrypt source filter, which several others copied from, such as: