Skip to content

Orivio TV

Choose a tag to compare

@prehakanson-art prehakanson-art released this 17 Jul 04:46
· 147 commits to main since this release

Orivio TV — a native Apple TV media player. This is a huge update over the first release: the app is rebranded to Orivio, and it adds Live TV, a plugin/scraper system, offline downloads, Cloud Library, native Dolby Vision, deep account sync, and a long list of playback and UI improvements.

❤️ Help put Orivio TV on TestFlight

Orivio TV is free and open-source. I'm raising funds to get it onto TestFlight so it can be installed without sideloading. If you'd like to help:

https://ko-fi.com/oriviotv

📥 Which file do I download?

  • OrivioTV-V2 (Sideloadly).ipa — use with Sideloadly (or similar sideloaders).
  • OrivioTV-0.7.15-tvos.ipa — use with Xcode (Devices & Simulators) or Apple Configurator.

Both are the same unsigned arm64 build for Apple TV HD / 4K (tvOS 17+); your sideload tool re-signs it with your Apple ID on install. The bundle id is now com.orivio.tv.appletv, so this installs as a new app — sign into your account and everything syncs back down.


Everything new since v0.7.15

🎨 Rebrand

  • Renamed to Orivio TV — new name, app icon, top-shelf art, in-app logo, and backdrops.

🆕 Major new features

  • Live TV — IPTV tab with M3U playlists, per-row "Show All", location/language config, curated country fallback, in-app embed, and a toggle to hide the tab when unused.
  • Discover — in-app browser for the live Stremio community add-on catalog with one-tap install, plus community pages.
  • Plugins / scrapers — a JS scraper runtime (Nuvio plugin system) so community scraper repos work on tvOS.
  • Offline downloads — download titles for offline play, shown as poster cards in Library with an Apple TV storage bar.
  • Cloud Library — browse and play your debrid cloud files directly.
  • Collections — streaming-service presets, a single tidy Home row, editable tile shapes, HQ artwork, and reordering.
  • P2P streaming — TorrServer client for magnet/torrent playback without debrid (currently hidden behind a settings toggle).
  • Parental guide — IMDb content advisories on the detail page.
  • AnimeSkip — automatic anime intro/outro skipping.
  • Deep linkingnuvio:// (open a title) and stremio:// (install an add-on).

▶️ Playback

  • Native Dolby Vision output for DV profile 5/8 (true dynamic DV instead of HDR10 tone-map).
  • Dolby Vision Profile 7 → 8.1 on-device conversion (dual-layer DV7 files get native DV), with a device-aware default (off on 3 GB gen-1/2) and a conversion-speed control so it can run on older boxes.
  • External player engine — hand any stream to Infuse, VLC, VidHub, nPlayer, etc., with a player picker and optional subtitle forwarding.
  • Full styled ASS/SSA subtitles via VLC routing (toggle).
  • Buffer controls — buffer profile (Auto / Conservative / Large) and size-target read-ahead cache (500 MB / 1 GB / 2 GB / Max).
  • Display matching — opt-in HDR/refresh-rate switching with a 23.976 AFR bias for Android parity, plus fixes so exiting no longer wedges the TV on a grey/green screen or turns it off.
  • Instant manual play, pause when the app switcher appears, and full-HD trailers.

🔎 Sources & streaming

  • Smart source ranking — quality scoring (resolution, codec, HDR, audio, cached-first) per add-on.
  • Badger badge packs — visual badges on source rows and in the in-player Sources panel.
  • Auto Link Selector — per-profile auto-play of the best link, with hold-to-play-manually.
  • DMM Cast / external links supported; add-ons that return no links now show why.
  • Tolerant handling of any add-on manifest/stream shape, browser User-Agent to get past bot protection, and specific failure reasons instead of "didn't respond".
  • Debrid — RealDebrid, Premiumize, and TorBox, with QR device login, TorBox instant-cache checks, and cross-provider fallback.
  • Confirm before removing an add-on; "cached only" now truly filters to cached links.

⏭️ Continue Watching & resume

  • Up Next card that appears at the end-credits chapter (with an N-seconds-before-end fallback), auto-advancing on a countdown you control.
  • Smarter resume — re-scrapes a fresh link and auto-plays the one that best matches what you last watched (Dolby Vision / HDR / Atmos / resolution) at your saved position, so expired debrid/Comet links no longer drop you to the start; the full list stays as failover.
  • Spoiler-blur options, focus recovery, and much smoother scrolling (no per-card offscreen passes or re-renders on focus).

🔄 Account sync

  • Multi-profile sync fixed — non-primary profiles now do a full two-way sync (previously only profile 1 fully synced).
  • Watched history removals now sync across devices.
  • Library no longer resurrects items removed on another device.
  • Plugins, debrid keys, and Trakt logins now sync with the phone app, not just tvOS↔tvOS.
  • Home layout (catalog order, collection placement, custom titles, hidden rows) now syncs correctly with the phone.
  • Continue Watching removals are durable (persisted retry queue) and the Home row polls every 30s to stay live across devices.
  • Player / TMDB / theme / badge / collection settings and installed add-ons all sync; first sign-in is additive so it never wipes local-only data. "Refresh Add-ons" pulls from the account without deleting your list.

🏠 Home & interface

  • Home layout modes (Modern / Grid / Classic) with a distinct look each, full-bleed hero under the collapsed rail, and a hero backdrop/trailer that follows focus.
  • Extensive sidebar polish — smoother expand/dim motion, swipe-right exit, in-sync labels, overscan-friendly icon spacing.
  • Focus-marquee scrolling for long titles, and "See All" only catches vertical focus when you're directly above/below it.
  • Top Shelf Continue Watching on the tvOS home screen (requires a paid Apple Developer account to enable).
  • Detail page: clickable synopsis opens a scrollable full-description overlay.

⚙️ Settings

  • A full visual redesign (grouped lists + icon tiles) and 15 batches of new controls: subtitle styling/timing/forwarding, skip-intro, stream filters, poster size/labels, app-wide font, granular TMDB enrichment toggles, auto-play source, reuse-last-link, video scaling, player OSD/overlay toggles, Experience Mode (Essential / Advanced), and Settings Style (Classic / Zen / Horizon).
  • A dedicated Performance tab — master toggle, per-effect animation controls, Reduce Motion, FPS overlay, and a reset button.

🐞 Stability & performance

  • Fixed a stack-overflow crash on player exit, an Auto Link Selector crash, add-on catalogs with duplicate IDs crashing the focus engine, and orphaned player audio on early exit.
  • Vendored/patched KSPlayer to fix an FFmpeg audio-decode crash.
  • Cut playback memory on RAM-limited Apple TVs to stop mid-playback out-of-memory kills; right-sized image decode/cache on Apple TV HD.
  • Faster loading (higher concurrency, no artificial delays) and fixed observer leaks / sync-merge data loss.

⚠️ Notes

  • Unsigned build — sideload with your own Apple ID; free Apple IDs need a re-sign every 7 days.
  • Sync connects to the existing Nuvio account backend, so it interoperates with the Nuvio phone app.

Built on Nuvio (GPLv3). 🤖 Release notes assembled with Claude Code