How emrodev/ipvio-stream works
IPVIO Stream is an Android TV/Google TV/Fire TV IPTV player: users add their own playlist, browse or search its live and on-demand catalog, then play a selected item. Distinct branches cover live guide and catch-up, sports, subtitle search, and personal data/backup. The README documents these product capabilities; sampled source confirms some UI-to-store and subtitle-search relationships. Many feature implementations were not sampled, so their internal links are omitted rather than inferred.
Main entry points: PlayerScreen.kt Media player · PlaylistStore.kt Playlist store · HomeScreen.kt Home · DetailScreen.kt Browse and details
Components 25
Playlist and discovery
- Playlist input
app/src/main/java/com/ipvio/stream/ListImportUi.kt - Provider APIs
app/src/main/java/com/ipvio/stream/XtreamApi.kt - Playlist store
app/src/main/java/com/ipvio/stream/PlaylistStore.kt - Home
app/src/main/java/com/ipvio/stream/HomeScreen.kt - Browse and details
app/src/main/java/com/ipvio/stream/DetailScreen.kt - Catalog search
app/src/main/java/com/ipvio/stream/SearchScreen.kt - Title metadata
app/src/main/java/com/ipvio/stream/Meta.kt
Playback and live TV
- Media player
app/src/main/java/com/ipvio/stream/PlayerScreen.kt - Playback control
app/src/main/java/com/ipvio/stream/PlaybackLogic.kt - Live TV
app/src/main/java/com/ipvio/stream/LiveTab.kt - TV guide
app/src/main/java/com/ipvio/stream/Epg.kt - Catch-up
app/src/main/java/com/ipvio/stream/Catchup.kt - Sports
app/src/main/java/com/ipvio/stream/SportLeague.kt - Subtitle search
app/src/main/java/com/ipvio/stream/SubSearch.kt
Personal features
- Profiles and controls
app/src/main/java/com/ipvio/stream/Profiles.kt - History and favourites
app/src/main/java/com/ipvio/stream/Mem.kt - Backup and transfer
app/src/main/java/com/ipvio/stream/Backup.kt
App experience
- Settings
app/src/main/java/com/ipvio/stream/SettingsHub.kt - Phone import
app/src/main/java/com/ipvio/stream/PhoneImport.kt - Themes and language
app/src/main/java/com/ipvio/stream/Look.kt - Android app entry
app/src/main/java/com/ipvio/stream/MainActivity.kt
Other components
- Viewer
- Playlist provider
- Subtitle services
- Google Drive
Connections 28
- Viewer → Android app entry: opens app
README.md - Android app entry → Home: shows home
app/src/main/java/com/ipvio/stream/MainActivity.kt - Viewer → Playlist input: adds playlist
README.md - Playlist input → Playlist store: loads playlist
- Playlist store → Provider APIs: queries provider
app/src/main/java/com/ipvio/stream/PlaylistStore.kt - Playlist provider → Playlist store: serves playlist data
README.md - Home → Playlist store: reads catalog
app/src/main/java/com/ipvio/stream/HomeScreen.kt - Catalog search → Playlist store: reads catalog
app/src/main/java/com/ipvio/stream/SearchScreen.kt - Viewer → Browse and details: browses titles
README.md - Browse and details → Title metadata: shows title details
README.md - Browse and details → Media player: starts playback
README.md - Home → Media player: starts playback
- Media player → Playback control: controls playback
- Viewer → Live TV: selects channel
README.md - Live TV → Media player: plays channel
README.md - Live TV → TV guide: shows schedule
README.md - TV guide → Catch-up: offers archive
README.md - Viewer → Sports: opens sports
README.md - Media player → Subtitle search: searches subtitles
app/src/main/java/com/ipvio/stream/PlayerScreen.kt - Subtitle search → Subtitle services: requests subtitles
app/src/main/java/com/ipvio/stream/SubSearch.kt - Viewer → Profiles and controls: chooses profile
README.md - Media player → History and favourites: records viewing
README.md - Viewer → Backup and transfer: backs up data
README.md - Backup and transfer → Google Drive: syncs optionally
README.md - Viewer → Phone import: sends input
README.md - Phone import → Playlist input: provides playlist data
- Viewer → Settings: configures app
README.md - Settings → Themes and language: sets appearance
README.md