Skip to content

Latest commit

Β 

History

459 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

OCE Logo

🌊 OCE β€” Open Cloudstream Extension

Modular, Stable, Multi-Provider Extension for CloudStream 3

Build Status Platform: CloudStream License: GPL v3 Version Release


πŸ“¦ Providers

Provider Domain Type Status
Anichin anichin.cafe Donghua Anime βœ… Stable
Animasu v2.animasu.work Anime βœ… Stable
Donghuastream donghuastream.org Donghua Streaming βœ… Stable
Dutamovie21 vikingsgab.com Movie, Series, Anime βœ… Stable
IndoDrama21 indodr21.putar.in Movie, Asian Drama βœ… Stable
LayarKaca21 tv12.lk21official.cc Movie, Series βœ… Stable
Samehadaku v2.samehadaku.how Anime Sub Indo βœ… Stable

Domain/mirror bisa berubah β€” source of truth: mainUrl di BaseProvider/.../config/<name>.json.


πŸ”§ Extractor Support

Extractor Host Method
AbyssPlayer abyssplayer.com Decrypt API (hydrax)
AnichinStream anichin.stream Direct /hls/{id}.m3u8
Anonmp4 anonmp4.art API extraction
AWSStream awstream.net POST hash β†’ videoSource
BloggerVideo blogger.com Video element extraction
ByseSX byse.sx AES decrypt API
Cloudhownetwork cloud.hownetwork.xyz POST API β†’ m3u8
Dailymotion dailymotion.com Regex video URL
Dhcplay dhcplay.com WebViewResolver + packed JS
EmTurbovid emturbovid.com API extraction
Filedon filedon.co Direct extraction
Gdplayer gdplayer.to API kaken token
Hownetwork stream.hownetwork.xyz POST API β†’ m3u8
Krakenfiles krakenfiles.com API extraction
Lk21Player playeriframe.sbs AJAX + iframe fallback
LuluStream luluvdo.com POST form β†’ vplayer
MegaPlay megaplay.buzz API data-id β†’ getSources
Minochinos minochinos.com Packed JS + JW Player
Morencius morencius.com API extraction
Movearnpre movearnpre.com Packed JS + JW Player
Odnoklassniki ok.ru Regex embed JSON
PlayCdn playcdn.de API extraction
PlayPutarIn play.putar.in URL parameter forward
PlayStreamplay play.streamplay.co.in Iframe extraction
Rumble rumble.com Script data extraction
ShortIcu short.icu Redirect follow
StreamHG hgcloud.to WebViewResolver + packed JS
StreamRuby rubyvidhub.com Direct pattern
Svanila streamruby.net extends StreamRuby
Svilla streamruby.com extends StreamRuby
VideoNodePage videonode.de Iframe extraction
VideoplayerVip videoplayer.vip API extraction
Vidguardto listeamed.net Rhino JS + sigDecode
Voe voe.sx Regex m3u8 extraction
Wishfast wishfast.to Packed JS + file: pattern
Xtwap xtwap.top JW Player β†’ play.php β†’ m3u8
YouTube youtube.com Trailer extraction

Daftar lengkap & status config-driven: extractor/ExtractorRegistry.kt.


πŸ—οΈ Architecture

BaseProvider/src/main/kotlin/com/baseprovider/
β”‚
β”œβ”€β”€ core/           ← ProviderCloudstream (MainAPI), ProviderScrapper, DetailPageScrapper
β”œβ”€β”€ config/         ← ProviderConfig + per-provider JSON (selector & options)
β”œβ”€β”€ collector/      ← LinkCollector, FallbackPipeline
β”œβ”€β”€ cache/          ← ExpiringCache, AdaptiveDecryptCache
β”œβ”€β”€ network/        ← HttpClient wrapper, CircuitBreaker, SmartThrottle
β”œβ”€β”€ extractor/      ← Video host extractors + ExtractorRegistry, MasterLinkGenerator,
β”‚                     M3u8MasterVerifier, AdaptiveHeaderProbe
β”œβ”€β”€ log/            ← Supabase observability, FailureType
β”œβ”€β”€ model/          ← ProviderModels, SelectorResolver (selector fallback/fingerprint)
└── settings/       ← OceSettings, SettingsDialog

Each provider is config-driven β€” a thin module (ProviderAnichin/) with only 2 files + a JSON config:

  • ProviderName.kt β€” extends ProviderCloudstream()
  • ProviderNamePlugin.kt β€” registers main API + extractors
  • BaseProvider/.../config/<name>.json β€” selectors & options (bundled via ConfigRegistry)

See docs/LEARNING_GUIDE.md for the full architecture guide.


πŸ§ͺ Build & CI

Build berjalan otomatis via GitHub Actions β€” jangan build gradle lokal (./gradlew) di mesin pengembangan. Commit + push ke master β†’ CI (ci-cd.yml) menjalankan:

./gradlew make                    # Build all .cs3 plugins
./gradlew makePluginsJson         # Generate plugins.json

Two distribution channels:

  • Stable β€” GitHub Releases (tag v*, workflow release.yml)
  • Beta β€” Builds branch (auto-built on every push)

πŸ“‹ Requirements

  • Android 5.0+ (API 21)
  • CloudStream 3 (latest)

🀝 Contributing

See CONTRIBUTING.md.


βš–οΈ License

GNU General Public License v3.0 β€” see LICENSE.


Managed by imam2nd
For the community, by the community.

About

OCE : is aπŸš€ High-performance, resilient, and centralized extension suite for CloudStream. Engineered for speed, stability, and Indonesian content discovery.

Topics

Resources

Contributing

Stars

13 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages