{"adoption": {"forks": 233, "observed_at": "2026-08-28T04:04:45.462195+00:00", "stars": 1447}, "canonical_url": "https://ross.abutalabs.com/products/compressonator", "card": {"archived": false, "artifact_type": "application", "description": "Tool suite for Texture and 3D Model Compression, Optimization and Analysis using CPUs, GPUs and APUs", "domain": ["graphics", "developer-tools", "media"], "enriched": true, "function": ["image-processing", "compression", "sdk", "cli", "gui"], "health_score": 25, "homepage": null, "language": "C++", "license": null, "license_family": "other", "maturity": "active", "member_repos": ["GPUOpen-Tools/compressonator"], "name": "GPUOpen-Tools/compressonator", "platform": ["windows", "cpp"], "pushed_at": "2024-06-19T13:30:35+00:00", "repo": "GPUOpen-Tools/compressonator", "stars": 1447, "tags": ["texture-compression", "3d-model-compression", "gpu-accelerated", "bc7", "astc", "etc2", "mipmaps", "amd", "game-development", "linux"], "topics": ["texture-compression", "3d-models", "sdk", "analysis", "gui-application", "mipmaps", "decompression", "compressonator", "compression", "dxtc", "etc1", "etc2", "bc7", "bc6h", "astc", "bc1", "dxtc1"], "urls": [], "use_cases": ["compress game textures to bc7 or astc formats", "optimize 3d model meshes for game engines", "compare visual quality of compressed textures", "batch compress texture assets from the command line", "integrate texture compression into a build pipeline via sdk", "generate mipmaps for compressed textures"], "what_it_is": "Compressonator is a tool suite from AMD GPUOpen for compressing, optimizing, and analyzing texture assets and 3D model meshes using CPUs, GPUs, and APUs. It ships as a GUI application, a command-line tool, and an SDK for integration into asset pipelines.", "when_to_avoid": ["you need a cross-platform tool beyond Windows and Linux", "you need general-purpose image compression like JPEG or PNG rather than GPU texture formats", "you need a fully stable, well-documented API with long-term support guarantees"], "when_to_choose": ["you need GPU-accelerated texture compression for game assets", "you want to visually analyze compression quality before shipping assets", "you need a CLI or SDK to automate texture compression in a toolchain", "you work with formats like BC1-BC7, ETC1/2, or ASTC on Windows or Linux"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/compressonator", "repo": "GPUOpen-Tools/compressonator", "role": "main", "score": 23}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:04:45.462195+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T04:36:05.448772+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2ce749b5614c6bb0c304b1f5d5da23a0f78050dda9b2d70ccdbb80703edd35fc", "fetched_at": "2026-08-28T04:04:45.462195+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GPUOpen-Tools/compressonator"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:04:45.462195+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T04:36:05.448772+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2ce749b5614c6bb0c304b1f5d5da23a0f78050dda9b2d70ccdbb80703edd35fc", "fetched_at": "2026-08-28T04:04:45.462195+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GPUOpen-Tools/compressonator"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T04:36:05.448772+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2ce749b5614c6bb0c304b1f5d5da23a0f78050dda9b2d70ccdbb80703edd35fc", "fetched_at": "2026-08-28T04:04:45.462195+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GPUOpen-Tools/compressonator"}], "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:04:45.462195+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:04:45.462195+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:04:45.462195+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T04:36:05.448772+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2ce749b5614c6bb0c304b1f5d5da23a0f78050dda9b2d70ccdbb80703edd35fc", "fetched_at": "2026-08-28T04:04:45.462195+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GPUOpen-Tools/compressonator"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:04:45.462195+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:04:45.462195+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T04:36:05.448772+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2ce749b5614c6bb0c304b1f5d5da23a0f78050dda9b2d70ccdbb80703edd35fc", "fetched_at": "2026-08-28T04:04:45.462195+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GPUOpen-Tools/compressonator"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:04:45.462195+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:04:45.462195+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:04:45.462195+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T04:36:05.448772+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2ce749b5614c6bb0c304b1f5d5da23a0f78050dda9b2d70ccdbb80703edd35fc", "fetched_at": "2026-08-28T04:04:45.462195+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GPUOpen-Tools/compressonator"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:04:45.462195+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:04:45.462195+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T04:36:05.448772+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2ce749b5614c6bb0c304b1f5d5da23a0f78050dda9b2d70ccdbb80703edd35fc", "fetched_at": "2026-08-28T04:04:45.462195+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GPUOpen-Tools/compressonator"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T04:36:05.448772+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2ce749b5614c6bb0c304b1f5d5da23a0f78050dda9b2d70ccdbb80703edd35fc", "fetched_at": "2026-08-28T04:04:45.462195+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GPUOpen-Tools/compressonator"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T04:36:05.448772+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2ce749b5614c6bb0c304b1f5d5da23a0f78050dda9b2d70ccdbb80703edd35fc", "fetched_at": "2026-08-28T04:04:45.462195+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GPUOpen-Tools/compressonator"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T04:36:05.448772+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2ce749b5614c6bb0c304b1f5d5da23a0f78050dda9b2d70ccdbb80703edd35fc", "fetched_at": "2026-08-28T04:04:45.462195+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GPUOpen-Tools/compressonator"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3796, "days_push": 805, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 23, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}