{"adoption": {"forks": 410, "observed_at": "2026-08-28T04:06:10.309987+00:00", "stars": 2069}, "canonical_url": "https://ross.abutalabs.com/products/dspfilters", "card": {"archived": false, "artifact_type": "library", "description": "A Collection of Useful C++ Classes for Digital Signal Processing", "domain": ["developer-tools"], "enriched": true, "function": ["audio-processing", "math", "sdk"], "health_score": 20, "homepage": null, "language": "C++", "license": null, "license_family": "other", "maturity": "maintenance", "member_repos": ["vinniefalco/DSPFilters"], "name": "vinniefalco/DSPFilters", "platform": ["cpp", "cross-platform", "embedded"], "pushed_at": "2023-08-05T21:06:26+00:00", "repo": "vinniefalco/DSPFilters", "stars": 2069, "tags": ["iir-filters", "digital-signal-processing", "biquad", "butterworth", "chebyshev", "audio-filters", "header-only", "audio", "algorithms"], "topics": [], "urls": [], "use_cases": ["design low pass, high pass, band pass, and band stop IIR filters in C++", "implement RBJ biquad cookbook filters for audio processing", "smoothly interpolate filter parameters without clicks in real-time audio", "process multichannel audio buffers with biquad cascades", "embed digital filters in resource-constrained systems without malloc"], "what_it_is": "A C++ template library for designing and running multichannel IIR digital filters such as Butterworth, Chebyshev, Elliptic, Bessel, and Legendre responses. It provides reusable filter design classes with smooth parameter interpolation and no dynamic allocation, making it suitable for audio and embedded applications.", "when_to_avoid": ["you need FIR filtering or general-purpose DSP beyond IIR filters", "you want an actively developed library with ongoing maintenance and support", "you need a modern CMake-based build or formal license file included in the repo"], "when_to_choose": ["you need IIR filter designs like Butterworth or Chebyshev in a C++ audio project", "you want a dependency-free, allocation-free DSP library for embedded or plugin use", "you need runtime introspection and smooth parameter changes for filter controls"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/dspfilters", "repo": "vinniefalco/DSPFilters", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:10.309987+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:56:46.590245+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "341cb7ed445766cd72b5b0ae4d1c3c22f7d0cd609c183c2d3c11bf832ce68fc6", "fetched_at": "2026-08-28T04:06:10.309987+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vinniefalco/DSPFilters"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:10.309987+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:56:46.590245+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "341cb7ed445766cd72b5b0ae4d1c3c22f7d0cd609c183c2d3c11bf832ce68fc6", "fetched_at": "2026-08-28T04:06:10.309987+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vinniefalco/DSPFilters"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:56:46.590245+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "341cb7ed445766cd72b5b0ae4d1c3c22f7d0cd609c183c2d3c11bf832ce68fc6", "fetched_at": "2026-08-28T04:06:10.309987+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vinniefalco/DSPFilters"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:06:10.309987+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:10.309987+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:10.309987+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:56:46.590245+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "341cb7ed445766cd72b5b0ae4d1c3c22f7d0cd609c183c2d3c11bf832ce68fc6", "fetched_at": "2026-08-28T04:06:10.309987+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vinniefalco/DSPFilters"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:10.309987+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:10.309987+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:56:46.590245+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "341cb7ed445766cd72b5b0ae4d1c3c22f7d0cd609c183c2d3c11bf832ce68fc6", "fetched_at": "2026-08-28T04:06:10.309987+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vinniefalco/DSPFilters"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:10.309987+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:10.309987+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:10.309987+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:56:46.590245+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "341cb7ed445766cd72b5b0ae4d1c3c22f7d0cd609c183c2d3c11bf832ce68fc6", "fetched_at": "2026-08-28T04:06:10.309987+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vinniefalco/DSPFilters"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:10.309987+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:10.309987+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:56:46.590245+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "341cb7ed445766cd72b5b0ae4d1c3c22f7d0cd609c183c2d3c11bf832ce68fc6", "fetched_at": "2026-08-28T04:06:10.309987+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vinniefalco/DSPFilters"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:56:46.590245+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "341cb7ed445766cd72b5b0ae4d1c3c22f7d0cd609c183c2d3c11bf832ce68fc6", "fetched_at": "2026-08-28T04:06:10.309987+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vinniefalco/DSPFilters"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:56:46.590245+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "341cb7ed445766cd72b5b0ae4d1c3c22f7d0cd609c183c2d3c11bf832ce68fc6", "fetched_at": "2026-08-28T04:06:10.309987+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vinniefalco/DSPFilters"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:56:46.590245+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "341cb7ed445766cd72b5b0ae4d1c3c22f7d0cd609c183c2d3c11bf832ce68fc6", "fetched_at": "2026-08-28T04:06:10.309987+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vinniefalco/DSPFilters"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_releases", "no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 5294, "days_push": 1124, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 32, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}