Tomo TV v1.3.3
Jellyfin Media Client

Tomo TV connects your Apple TV to your Jellyfin media server. It detects video codecs automatically and transcodes incompatible formats through your Jellyfin server with no manual configuration needed.
How It Works
When you select a video, Tomo TV checks if Apple TV can play it natively. H.264 and HEVC videos play directly at full quality. Other formats (VP9, AV1, MPEG-2, VC-1, DivX) are transcoded on-the-fly by your Jellyfin server and streamed to your Apple TV.

Features
- Folder navigation: Browse your library structure with breadcrumb trail
- Subtitles: Automatic detection and embedding of subtitle tracks with language selection
- Multi-audio tracks: Switch between audio tracks during playback without restarting
- Up Next queue: Continuous playback with an overlay showing what's coming next
- Playlist support: Browse and play directly from your Jellyfin playlists
- Continue Watching: Resume videos from where you left off
- Audio playback: Play music and audio files from your library
- Quick Connect: Sign in with a code from any Jellyfin device
- Secure credential storage: Server credentials stored securely in device Keychain
- Demo mode: Try the app instantly with Jellyfin's public demo server



Setup Guide
Connect Tomo TV to your Jellyfin server in two steps:
Server URL
Enter your Jellyfin server address including port, e.g. http://192.168.1.100:8096
Sign in
Quick Connect: Enter a code shown on your TV into any logged-in Jellyfin device to authorize instantly
Username & Password: Sign in directly with your Jellyfin credentials


Want to try it first? Enable Demo Mode in Settings to connect instantly to Jellyfin's public demo server, no account or server needed.
Codecs and Playback
Tomo TV handles codec compatibility automatically. H.264 and HEVC play directly at full quality. Other formats (VP9, AV1, MPEG-2, VC-1, DivX) are transcoded on-the-fly by your Jellyfin server. FFmpeg must be installed and transcoding enabled in your Jellyfin dashboard.
Multi-audio track switching lets you change audio tracks during playback without restarting the video.
Streaming Quality
Tomo TV offers four quality presets that control transcoding bitrate. Direct play videos always stream at original quality regardless of this setting.
Slow Wi-Fi, remote streaming over VPNDefault
Standard home Wi-Fi
Fast Wi-Fi
Wired Ethernet, Gigabit LAN
Gigabit LAN, high-end server
| Preset | Bitrate | Best For |
|---|---|---|
| 480p | 1-2 Mbps | Slow Wi-Fi, remote streaming over VPNDefault |
| 540p | 2-4 Mbps | Standard home Wi-Fi |
| 720p | 4-6 Mbps | Fast Wi-Fi |
| 1080p | 8-12 Mbps | Wired Ethernet, Gigabit LAN |
| 4K | 40-80 Mbps | Gigabit LAN, high-end server |
Search
Find anything in your library using the native Apple TV keyboard with SwiftUI's native .searchable modifier. Results appear as you type in a customizable grid layout, making it easy to jump straight to what you want to watch.
Search functionality powered by expo-tvos-search, an open-source Expo module that brings native tvOS search integration to React Native apps. Published on npm with TypeScript support, customizable layouts, and extensive configuration options.
- npm: expo-tvos-search (install with
npx expo install expo-tvos-search) - GitHub: keiver/expo-tvos-search for source code, issues, and documentation
- Library docs: expo-tvos-search tool page for API reference, layout presets, and examples
Key features: Native SwiftUI integration, 7 customizable layout presets, smart image handling with placeholders, search overlay control, error boundaries, and full TypeScript support. Compatible with tvOS 15.0+, Expo SDK 51+, and React Native tvOS 0.71+.



Troubleshooting
- Black screen or video won't play
- Enable transcoding in Jellyfin: Dashboard → Playback → Transcoding. Ensure FFmpeg is installed on your server.
- Cannot connect to server
- Verify the server URL includes the port (e.g.
http://192.168.1.100:8096). HTTP is supported for all connections. For remote access outside your home network, HTTPS with a valid certificate is recommended for security. - Buffering or slow playback
- Lower the quality preset in Settings. Enable hardware transcoding in Jellyfin if your server supports it (Intel QuickSync, NVIDIA NVENC, or VAAPI).
Requirements
- Apple TV with tvOS 15.1+
- Jellyfin server 10.8+ with Transcoding enabled
- FFmpeg to power Jellyfin transcoding
Privacy
Tomo TV includes no third-party analytics or tracking SDKs. Your server credentials are stored securely in your device's Keychain and never accessed by us. Video streams directly between your Apple TV and your Jellyfin server with no intermediate servers.
Support
Questions or feedback: contact@keiver.dev
Open Source
keiver/tomotv
Apple TV Jellyfin client, React Native tvOS
keiver/expo-tvos-search
Native tvOS TopShelf search Expo module
