{"adoption": {"forks": 741, "observed_at": "2026-08-28T04:07:46.050827+00:00", "stars": 3147}, "canonical_url": "https://ross.abutalabs.com/products/videoplayermanager", "card": {"archived": false, "artifact_type": "library", "description": "This is a project designed to help controlling Android MediaPlayer class. It makes it easier to use MediaPlayer ListView and RecyclerView. Also it tracks the most visible item in scrolling list. When new item in the list become the most visible, this library gives an API to track it.", "domain": ["mobile-development", "media", "android-tools"], "enriched": true, "function": ["video-processing", "concurrency", "ui-components"], "health_score": 20, "homepage": null, "language": "Java", "license": null, "license_family": "other", "maturity": "maintenance", "member_repos": ["danylovolokh/VideoPlayerManager"], "name": "danylovolokh/VideoPlayerManager", "platform": ["jvm"], "pushed_at": "2020-05-02T12:54:48+00:00", "repo": "danylovolokh/VideoPlayerManager", "stars": 3147, "tags": ["mediaplayer", "recyclerview", "listview", "video-playback", "textureview", "scrolling-list", "android", "mobile"], "topics": [], "urls": [], "use_cases": ["play videos in a recyclerview while scrolling", "manage single video playback across multiple list items", "track the most visible item in a scrolling list", "call mediaplayer methods off the main thread", "build a video feed like social media apps"], "what_it_is": "An Android library that simplifies controlling the MediaPlayer class in scrolling lists like ListView and RecyclerView. It invokes MediaPlayer methods on a background thread, ensures only one playback at a time, and tracks the most visible item in the list.", "when_to_avoid": ["you need ExoPlayer or modern playback features like DRM or streaming protocols", "you target platforms other than Android", "you need an actively maintained library with recent updates"], "when_to_choose": ["you need video playback inside Android ListView or RecyclerView", "you want only one active video playback with automatic resource release", "you need visibility tracking of list items during scroll"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/videoplayermanager", "repo": "danylovolokh/VideoPlayerManager", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:07:46.050827+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T07:25:56.419149+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1693e245c2306a0759c2b186c31bdbc3009421627dc73515441403bb9e9ce04e", "fetched_at": "2026-08-28T04:07:46.050827+00:00", "kind": "readme", "missing": false, "url": "https://github.com/danylovolokh/VideoPlayerManager"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:07:46.050827+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T07:25:56.419149+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1693e245c2306a0759c2b186c31bdbc3009421627dc73515441403bb9e9ce04e", "fetched_at": "2026-08-28T04:07:46.050827+00:00", "kind": "readme", "missing": false, "url": "https://github.com/danylovolokh/VideoPlayerManager"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T07:25:56.419149+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1693e245c2306a0759c2b186c31bdbc3009421627dc73515441403bb9e9ce04e", "fetched_at": "2026-08-28T04:07:46.050827+00:00", "kind": "readme", "missing": false, "url": "https://github.com/danylovolokh/VideoPlayerManager"}], "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:07:46.050827+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:07:46.050827+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:07:46.050827+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T07:25:56.419149+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1693e245c2306a0759c2b186c31bdbc3009421627dc73515441403bb9e9ce04e", "fetched_at": "2026-08-28T04:07:46.050827+00:00", "kind": "readme", "missing": false, "url": "https://github.com/danylovolokh/VideoPlayerManager"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:07:46.050827+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:07:46.050827+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T07:25:56.419149+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1693e245c2306a0759c2b186c31bdbc3009421627dc73515441403bb9e9ce04e", "fetched_at": "2026-08-28T04:07:46.050827+00:00", "kind": "readme", "missing": false, "url": "https://github.com/danylovolokh/VideoPlayerManager"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:07:46.050827+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:07:46.050827+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:07:46.050827+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T07:25:56.419149+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1693e245c2306a0759c2b186c31bdbc3009421627dc73515441403bb9e9ce04e", "fetched_at": "2026-08-28T04:07:46.050827+00:00", "kind": "readme", "missing": false, "url": "https://github.com/danylovolokh/VideoPlayerManager"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:07:46.050827+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:07:46.050827+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T07:25:56.419149+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1693e245c2306a0759c2b186c31bdbc3009421627dc73515441403bb9e9ce04e", "fetched_at": "2026-08-28T04:07:46.050827+00:00", "kind": "readme", "missing": false, "url": "https://github.com/danylovolokh/VideoPlayerManager"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T07:25:56.419149+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1693e245c2306a0759c2b186c31bdbc3009421627dc73515441403bb9e9ce04e", "fetched_at": "2026-08-28T04:07:46.050827+00:00", "kind": "readme", "missing": false, "url": "https://github.com/danylovolokh/VideoPlayerManager"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T07:25:56.419149+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1693e245c2306a0759c2b186c31bdbc3009421627dc73515441403bb9e9ce04e", "fetched_at": "2026-08-28T04:07:46.050827+00:00", "kind": "readme", "missing": false, "url": "https://github.com/danylovolokh/VideoPlayerManager"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T07:25:56.419149+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1693e245c2306a0759c2b186c31bdbc3009421627dc73515441403bb9e9ce04e", "fetched_at": "2026-08-28T04:07:46.050827+00:00", "kind": "readme", "missing": false, "url": "https://github.com/danylovolokh/VideoPlayerManager"}], "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": 4073, "days_push": 2314, "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}}