What's New in TIVRA 2.0
TIVRA 2.0 is the biggest update since launch. The headlines: pause live TV, schedule recordings from the EPG, save them to your NAS or USB drive, and a completely rebuilt movie player that's faster and smoother than any previous version. Plus Trakt integration, cinematic detail pages, real channel error messages, and a stack of polish. Long-form walkthrough below.
⏸ Pause Live TV
The killer feature. TIVRA now keeps a rolling buffer of every live channel you tune in to — 60 minutes by default, configurable up to 4 hours. Hit Pause on the remote and live TV stops. Press Play and it picks up exactly where you left off.
D-pad LEFT/RIGHT rewinds and fast-forwards in 10-second steps. Hold either to scrub faster. When you're behind live, a Live button appears next to Play/Pause to snap back to the live edge.
No setup per channel — the buffer is always running on whatever you're tuned to.
📅 Schedule Recordings from the Guide
Long-press any future program in the EPG → schedule it. TIVRA starts the recording at the program's air time (even if the app is closed) via Android's WorkManager, stops it at the end, and files it in your recordings library. Recurring schedules supported: record every airing.
Reboots are survived — pending schedules are re-queued at boot.
Full scheduled-recordings guide ›
💾 Record to Your NAS or USB Drive
Stop filling your TV's internal storage. New in Settings → Storage:
- SMB network share — point TIVRA at your NAS, Synology, or any SMB server. Test connection, set permissions, done. Recordings write straight to the network. (SMB setup ›)
- USB drive (SAF) — plug in a USB stick or external SSD. Use Android's file picker to grant TIVRA access to a folder on the drive. No need to format as adoptable storage (which would slow your whole TV down — see the USB guide for the gory details). (USB setup ›)
The live TV buffer can use a different storage target than recordings. Keep the buffer on internal for speed, and recordings on your NAS for archive — or vice versa.
🎬 Completely Rebuilt Movie Player
This was the big engineering lift. Movies and series episodes now play through a native ExoPlayer + SurfaceView path instead of the Flutter texture pipeline that previous versions used. The user-visible difference:
- No more frame drops during normal playback. The hardware decoder feeds the SurfaceView directly; nothing in between to introduce stutter.
- Smooth scrubbing. Hold the D-pad and the seek accelerates: 10s → 20s → 40s → 80s → 2min/tick. Release commits one player seek. So a 4-second hold gets you ~10 minutes of seek with one rebuffer event, not eight.
- Faster startup. Resume from Continue Watching lands on the first frame in 2-3 seconds (down from 5-8s in 1.x).
- Real audio + subtitle pickers. Pick between dubbed languages, enable/disable subtitles per movie. Matches what TiViMate, Plex, Jellyfin do.
- Aspect ratio cycle. Fit / Fill / Stretch — works correctly on every Android TV because we use the AspectRatioFrameLayout from Media3 instead of relying on the codec's scaling-mode hint (which some devices ignore).
🔗 Trakt Integration
Optional. Connect a Trakt.tv account in Settings → Trakt → Connect (device-code flow; takes about a minute).
Once connected:
- Movie + series episode plays are scrobbled to your Trakt history.
- Continue Watching syncs across devices — start a movie on your TV, pick it up on your phone in your Trakt app (or vice versa).
- New home page rows: Trending Now, Recommended for You, Upcoming This Week — all from your Trakt activity intersected with your IPTV provider's catalog.
Live TV is not scrobbled (Trakt doesn't have a model for live-channel viewing).
🖼 Cinematic Detail Pages
Movie + series detail pages got redesigned. Full-bleed backdrop image (high-res when TheTVDB has it for the title), opaque floating content card with the title / actions / plot / cast row. Transparent-PNG clearLogo overlay for the title — the look Plex and Jellyfin use for the "this is a real movie" feel.
✨ Stream-Info Chip
Every player overlay now shows what's actually playing: resolution (4K / 1080p / 720p / 480p), video codec (H264, HEVC, AV1), audio codec + channels (AAC 5.1, EAC3 5.1, etc.). Top-right of the VOD overlay; inline with the "Next:" row on live TV.
Useful for confirming you're getting the source you paid for — some providers advertise 4K but stream 720p; the chip tells the truth.
🧹 The Polish Stack
- Continue Watching de-duplicates series — one entry per show, not one per episode you've started.
- Continue Watching percentages actually update right after exit (previously a bug kept them stale until app restart).
- Series episode → season tab D-pad navigation fixed (couldn't D-pad UP from the first episode before).
- Channel error toasts — when a channel can't play, the snackbar tells you why ("Channel unavailable", "Access denied", etc.) instead of a silent black screen.
- Flutter engine cached so the app doesn't restart when you exit the VOD player.
- MKV crash on Media3 1.5.1 fixed (now on 1.9.2).
What's Not Yet
- Playback of in-progress recordings — you can play recordings after they finish, but watching while still recording is queued for a future release.
- Trakt watchlist + ratings — Trakt is wired for history + recommendations; watchlist and ratings haven't been surfaced in the UI yet.
How to Update
Sideload the new APK from tivratv.com/#download. The easiest path on Android TV is the Downloader app — open Downloader, enter the URL code shown on the download page, and install. Installing over an existing TIVRA preserves all your providers, favorites, settings, and recordings.
Questions? Drop into our Discord or reply to the release email.
Don't have TIVRA yet?
Download the Android TV APK — free 7-day trial, no card required.
Download TIVRA