u/wuplaydev

New Release 0.8.2-beta
▲ 111 r/wuplay

New Release 0.8.2-beta

Please consider donating to the project :-)

https://ko-fi.com/wuplaydev

Discord https://discord.gg/PvZjHVGtE9

Downloader code 5781040

GitHub https://github.com/wuplayapp/wuplay-releases

v0.8.2-beta

The headline of this release is Simkl and MDBList integration. These are initial releases and will be refined over the next few updates. You can technically have all 3 providers connected at the same time but my recommendation would be to pick one and stick with it.

New Feature

  • MDBList integration
  • Simkl integration

Added

  • New setting: Show subtitles only for foreign audio (AndroidTV > Settings > Playback)

Changed

  • My Stuff screen can now be customized like any other screen (re-arrange catalogs, layout, etc)
  • Media type filter chips do a better job of hiding catalogs that don't contain any titles matching the selected filter (the way the old discover screen worked)

Fixed

  • Manifest urls with querystrings now work
  • Unwatch now works for trakt integration (and simkl/mdblist)
u/wuplaydev — 7 days ago
▲ 72 r/wuplay

Release 0.8.1-beta

Please consider donating to the project :-)

https://ko-fi.com/wuplaydev

Discord https://discord.gg/PvZjHVGtE9

Downloader code 5781040

GitHub https://github.com/wuplayapp/wuplay-releases

v0.8.1-beta

The headline for this release is Custom Hubs. When you add this to the recently released Custom Screens and the existing Native Catalog System, you can now turn Wuplay into pretty much anything you want.

NOTE: Sharing features are coming. This will allow you to show off your custom screens and hubs and share them with the Wuplay community. Start building now so you will be ready when the sharing feature launches.

New Feature

  • Custom hubs: Web Config > Hubs > Add

Added

  • New hub: Movie Collections
  • Networks filter to native TMDB catalog filters
  • New native catalog type: Movie Collection (TMDB collection)
  • Support for addons hosted on local network (local IP)

Changed

  • Dpad right on last column of grid now loops to the next row
  • Watch Next continue watching row on Android TV home (and custom launchers) now shows landscape cards instead of poster cards
  • Movies/Shows/All media type filters no longer auto fire on focus, This prevents you from accidentally changing the media type filter while navigating to the gear icon

Fixed

  • My Stuff lists were not showing poster images on grid layout
  • Media type filter would reset to All on layout change
  • Selected catalog/hub item not retained on layout change
  • DASH based streams would cause hard app crash
  • Localized poster images from addon catalogs are no longer swapped to TMDB localized posters
  • Title with missing metadata could cause app crash on play button click
  • Filmography not sorted properly when sorted by release date
  • Some live streams were showing error message of container not supported
  • Subtitles on/off flag now set at tv show level instead of episode level so if you turn off subs in one ep, they will be off in other eps for the same show
u/wuplaydev — 13 days ago
▲ 100 r/wuplay

New Release 0.8.0-beta

Please consider donating to the project :-)

https://ko-fi.com/wuplaydev

Discord https://discord.gg/PvZjHVGtE9

Downloader code 5781040

GitHub https://github.com/wuplayapp/wuplay-releases

v0.8.0-beta

There are a couple of exciting new features in this release: custom screens and layout options.

There is also another terminology change. Web config > Sidebar is now Screens. Terminology changes are part of the beta process and will settle down soon.

New Feature

  • Custom screens (Web Config > Screens)
  • Screen/hub layout choices: poster rows, grid, filter chips

Added

  • Dedicated hubs tab in web config (custom hubs are coming soon)
  • Estonia language support
  • New setting: confirm dialog on app exit (default is on)

Changed

  • Terminology change: Sidebar > Screens
  • Discover is no longer part of the default screens on new profile create
  • Subtitle tracks are now sorted by preferred subtitle languages first, app language second, and alpha for the remaining

Fixed

  • When a shared addon was deleted, it would not fully delete from managed profiles that it has been shared with
  • Subtitle offset +/- controls were reversed
  • Non-English metadata fixes
u/wuplaydev — 21 days ago
▲ 128 r/wuplay

New Release 0.7.5-beta

Please consider donating to the project :-)

https://ko-fi.com/wuplaydev

Discord https://discord.gg/PvZjHVGtE9

Downloader code 5781040

GitHub https://github.com/wuplayapp/wuplay-releases

v0.7.5-beta

This update is mainly UI refinements and performance optimizations

Added

  • Metadata now shows on grid screens

Changed

  • Genre hub cards are localized for non-english languages (reverted to previous handling)
  • Grid poster cards now honor poster size setting
  • UI polish and performance optimization
  • Boring backend optimizations

Fixed

  • Digital release only content filter is now honored on new genres/decades screens
u/wuplaydev — 29 days ago
▲ 24 r/wuplay

Catalog confusion solved (hopefully)

As everyone knows Wuplay is in beta so things change on a regular basis. One recent change caused a lot of confusion: I moved the Layout tab functionality into the new sidebar tab in the web configurator. I had no idea this would cause so much confusion but it definitely did. What I have done is, instead of putting the layout tab back, I went a step further and added a catalogs tab. Hopefully this will clear up any confusion.

https://preview.redd.it/0qzz51eh5neh1.png?width=868&format=png&auto=webp&s=2d373d70c092e6f6ceeb214257cc91c8937fed5d

reddit.com
u/wuplaydev — 30 days ago
▲ 16 r/wuplay

Layout has been renamed to Sidebar

There seems to be confusion regarding this change so I thought I would make a dedicated post. The change was listed in the changelog but I know not all users read changelogs.

The Layout tab used to be named Catalogs and now it has been renamed again to Sidebar. This is the natural evolution of an app in beta.

When you click on Home or Discover, you will have a Manage Layout option available. See screenshot.

https://preview.redd.it/pzeetnq2v0eh1.jpg?width=487&format=pjpg&auto=webp&s=d745ead20f6c2c63b40f05f55eb2de44a4d3b639

reddit.com
u/wuplaydev — 1 month ago
▲ 129 r/wuplay

New Release 0.7.4-beta

Please consider donating to the project :-)

https://ko-fi.com/wuplaydev

Discord https://discord.gg/PvZjHVGtE9

Downloader code 5781040

GitHub https://github.com/wuplayapp/wuplay-releases

v0.7.4-beta

Added

  • New Decades screen
  • New Decades hub
  • Ability to manage sidebar items in web configurator
  • Stylized genre hub cards on home screen
  • New streaming services: Binge, SBS On Demand

Changed

  • Web Config > Layout is now Web Config > Sidebar (you'll see why)
  • Removed anime from all genres except anime
  • Genres screen list and grid now honor existing "Back scrolls to row start" interface setting.

Fixed

  • Better error reporting for random incompatible stream errors
  • Minor search engine bugs and tuning
  • "Do not show again" on search and genre screens did not immediately hide the title
  • Preferred subtitle lang of pt-BR was not properly using embedded subtitles
u/wuplaydev — 1 month ago
▲ 84 r/wuplay

New Release 0.7.3-beta

Please consider donating to the project :-)

https://ko-fi.com/wuplaydev

Discord https://discord.gg/PvZjHVGtE9

Downloader code 5781040

GitHub https://github.com/wuplayapp/wuplay-releases

v0.7.3-beta

Added

  • New Genres screen
  • New genres: reality and anime
  • Lithuania to preferred subtitle and audio languages

Changed

  • Modified trakt scrobble flow to reduces api calls to trakt
  • Anime no longer shows in Animation genre

Fixed

  • No compatible streams error when resuming a stream that has a cached link that is expired or otherwise returns an error
  • FLAC audio tracks are unstable in exoplayer so they are now transcoded
  • Naving to a similar title detail page then using remote back took you all the way back to the top level screen
  • Playing next episode from continue watching was not honoring binge group
u/wuplaydev — 1 month ago
▲ 108 r/wuplay

Response to claims of plagiarism

Edit: just to be crystal clear, in no way do I think the Nuvio team was involved in this. All signs point to a solo anonymous poster. I have no ill will towards Nuvio or its team.


Someone has made serious claims against myself as a dev and Wuplay as an app. You can view the claims at https://pastebin.com/CR5tQNAt

Response to Claims of Undisclosed Code Reuse in WuPlay

A document has been circulated alleging that WuPlay (app.wuplay.androidtv) is an unattributed, GPL-violating clone of NuvioTV / OmnioTV. I am WuPlay's sole developer, and I take open-source licensing seriously, so I reviewed every specific technical claim in that document against the publicly available source of the projects it names. The claims do not hold up.

This is a point-by-point response, relying wherever possible on facts that anyone can verify for themselves in the public NuvioTV and OmnioTV repositories.


The standard that actually applies

The GPL — like copyright generally — protects specific source code: the literal expression a developer wrote. It does not protect:

  • Ideas, features, or product categories. "An Android TV app that plays content from Stremio addons" is a concept, not a copyrightable work.
  • Public protocols and APIs. The Stremio Addon Protocol (manifests, catalogs, meta, streams) is an open specification. Every compatible client necessarily implements the same models and endpoints.
  • Standard programming idioms. Common patterns taught in official documentation are not anyone's property.

Two apps in the same category, written in the same language (Kotlin/Compose is the standard for Android TV), talking to the same open protocol, will inevitably resemble one another in features and high-level architecture. That resemblance is not infringement. Infringement requires copied expression — a specific file, class, or function reproduced from the original. The circulated document does not identify any. Instead, as shown below, its concrete "evidence" points at shared idioms, the public protocol, classes that do not exist in the upstream at all, and — in its most specific claim — the upstream project's own configuration.


Point by point

1. "Identical, highly-specific API keys: TV_LOGIN_WEB_BASE_URL and IMDB_TAPFRAME_API_BASE_URL"

This is the document's most concrete claim, and it collapses on inspection.

Both of those variables are NuvioTV's own build-configuration keys. They are visible to anyone in NuvioTV's public app/build.gradle.ktsTV_LOGIN_WEB_BASE_URL even carries the default value https://nuvio.tv/tv-login, and IMDB_TAPFRAME_API_BASE_URL is named after the upstream author's own IMDB service.

Neither key — nor any variant of either — exists anywhere in WuPlay. Not in the current build configuration, and not at any point in the project's history. WuPlay's configuration variables are entirely WuPlay-namespaced (WUPLAY_*).

In other words, the "matching, non-standard API keys" presented as a smoking gun are NuvioTV's settings, not WuPlay's. The claim describes the upstream and attributes it to me.

2. "Copied cache components: MetaCacheStore, CatalogContentCacheStore, HubDiscoveryCacheStore"

None of these class names exist anywhere in NuvioTV or OmnioTV. You cannot copy a class out of a project that does not contain it. The upstream's caching types carry entirely different names and cache entirely different entities.

Caching catalog and metadata responses is the obvious design for any client that talks to remote Stremio addons — doing so is a shared responsibility, dictated by the protocol, not shared code. A generically-named cache store is convergent engineering.

3. "It relies on Supabase"

Supabase was raised as a specific point, and it is a clean one to settle: WuPlay does not use Supabase. The word appears in zero files of its source, and in its entire commit history — no client library, no SUPABASE_URL, no anon key, nothing.

By contrast, Supabase is a core, pervasive dependency of both NuvioTV and OmnioTV. It is referenced across dozens of files in each, wired in through their public build configuration (SUPABASE_URL, SUPABASE_ANON_KEY, SUPABASE_FALLBACK_URL, prefixed NUVIO_SUPABASE_*) and pulled in as a first-class library dependency. A project cloned or decompiled from those codebases would carry that integration throughout. WuPlay carries none of it — which is, again, the opposite of what a derived work looks like.

4. "NetworkResult repackaged as ApiResult; a SafeApiCall wrapper appearing 15+ times"

A sealed result type (Success / error variants) paired with a safeApiCall wrapper that runs a network call inside try/catch is the single most common networking idiom in Android development. It appears in Google's official app-architecture guidance and in an enormous number of entirely unrelated apps. NuvioTV uses it; so do thousands of projects with no connection to Nuvio whatsoever.

The document itself concedes the type was renamed — i.e. the names differ. What it is actually pointing to is that two Kotlin apps both use idiomatic Kotlin error handling. That is not evidence of copying; it is evidence of writing normal Kotlin. (The two implementations also differ in substance — different HTTP client, different error taxonomy, different function signatures — but the more fundamental point is that the pattern is universal.)

5. "251 data-layer files and 77 model files were duplicated"

These figures correspond to neither project's actual source tree. They are characteristic of decompiler output: decompiling a compiled APK explodes each source class into many synthetic artifacts (one per lambda, anonymous class, synthetic accessor, and generated helper) and mangles their names. Counting decompiled fragments tells you nothing about source-level copying — a single hand-written file routinely becomes dozens of decompiled ones. The real source layers in question are a small fraction of the cited numbers.

6. "Systematic removal of nuvio / omnio / tapframe identifiers"

This claim is unfalsifiable by construction: you cannot demonstrate that something was "removed" by pointing at its absence. Every original codebase also lacks those strings.

There is a meaningful test here, though, and it points the other way. A genuine derived work — a fork or a decompile-and-rebrand — leaves fingerprints: it retains the upstream's distinctive internal identifiers, the ones no independent developer would coincidentally choose (project-specific constants, sentinel values, internal helper names, private config keys). I checked WuPlay against a set of NuvioTV's distinctive identifiers. WuPlay contains none of them. A project that had been "stripped and rebranded" from Nuvio would be saturated with exactly those fingerprints; WuPlay has zero.

7. "QR configurators, profile PINs, and self-updaters are uncredited ports"

Features and ideas are not protected by copyright or the GPL — only specific code is. QR-based device pairing, PIN-locked user profiles, and in-app update prompts are common across the streaming-app landscape and long predate all of the projects named here. Sharing a feature is not sharing a codebase. It is also worth noting that profiles with pin protection have been available since the first release of Wuplay (0.1.0-beta) and only came to Nuvio later.


What would actually substantiate the allegation

A credible claim of GPL infringement identifies specific source placed side by side — "this function in WuPlay is a literal or near-literal copy of that function in NuvioTV," shown in original (non-decompiled) source. The circulated document does none of this. It lists:

  • a universal Android idiom (the sealed result type + safe-call wrapper),
  • an open public protocol (the Stremio addon models),
  • class names that do not exist in the upstream,
  • inflated file counts from decompiled artifacts, and
  • the upstream's own configuration keys, misattributed to me.

None of that is copied code.

My position

I respect the GPL and the work of the Stremio and Nuvio communities. If anyone can point to a specific passage of WuPlay source that is a literal copy of GPL-licensed code, I want to know, and I will address it directly and promptly — that is a concrete, answerable question. The document in circulation does not raise one. On inspection, its technical claims are either descriptions of standard practice and public protocol, or simply incorrect about what my code and the upstream code actually contain.

reddit.com
u/wuplaydev — 1 month ago
▲ 112 r/wuplay

New Release 0.7.0-beta - Native Search

Please consider donating to the project :slight_smile:

https://ko-fi.com/wuplaydev

Discord https://discord.gg/PvZjHVGtE9

Downloader code 5781040

GitHub https://github.com/wuplayapp/wuplay-releases

v0.7.0-beta

The headline for this release is the new native search feature. This is the initial release of a major feature so you can expect minor changes over the coming of weeks.

New Feature

  • Native search, no addons required

Added

  • New adult titles catalog filter (Web Config > Settings > Catalog Filters > General)

Changed

  • Web config: Privacy & Data tab moved to Settings
  • UI: Narrower sidebar and less padding. The result is a wider content area.

Fixed

  • Croatian (and other Serbo-Croatian, Indonesian, and Norwegian) subtitles and audio tracks not being detected or auto-selected when tagged with combined language codes
  • Subtitles button sometimes not displayed in player
u/wuplaydev — 2 months ago
▲ 41 r/wuplay

Hotfix Release

v0.6.7-beta

Hotfix release — bug fixes only.

Fixed

  • Wrong episode playing when advancing to next episode or manually choosing an episode
  • Error message when trying to advance to the next episode
reddit.com
u/wuplaydev — 2 months ago
▲ 66 r/wuplay+1 crossposts

New Release 0.6.6-beta

Please consider donating to the project :-)

https://ko-fi.com/wuplaydev

Discord https://discord.gg/PvZjHVGtE9

Downloader code 5781040

GitHub https://github.com/wuplayapp/wuplay-releases

v0.6.6-beta

Added

  • Español (México) and "Português (Portugal) languages
  • AMC+ to Streaming Services

Changed

  • Reduced time-to-first-frame when resuming a stream
  • Episode card will show series background when episode background is unavailable
  • Episodes auto load on season chip change instead of having to press enter (detail screen)

Fixed

  • Some series weren't correctly showing in watch history
  • Poster row scrolling could be laggy on some devices
  • Hub logos sometimes showed as white rectangles
u/Stock-Resource4629 — 2 months ago
▲ 80 r/wuplay

New Release 0.6.5-beta

Please consider donating to the project :-)

https://ko-fi.com/wuplaydev

Discord https://discord.gg/PvZjHVGtE9

Downloader code 5781040

GitHub https://github.com/wuplayapp/wuplay-releases

v0.6.5-beta

New Feature

  • Don't Show Again: the ability to hide titles in catalogs app-wide (new long press menu item)
  • Are You Still Watching? (new setting, default 3 episodes)

Added

  • Search history
  • Bulk-add addon catalogs to home/discover screens (web config > layout)
  • Bulk-remove catalogs from home/discover screens (web config > layout)

Changed

  • Audio track picker now includes technical details
  • Subtitle min. size reduced from 50% to 25%
  • Subtitle max. offset increased from 30% to 95%

Fixed

  • Skipping forward/backward in player could trigger some addons to hit rate limits
  • Some addons with valid streams were throwing 403 errors
u/wuplaydev — 2 months ago