TVHeadend
TVHeadend is a self-hosted media servers tool that provides TV streaming server and digital video recorder.
Self-hosted live TV streaming, honestly reviewed. No marketing fluff, just what you get when you run it yourself.
TL;DR
- What it is: Open-source (GPLv3) TV streaming server and DVR for Linux — takes broadcasts from an antenna, cable line, satellite dish, or IPTV and turns them into network streams your whole house can watch [1][2].
- Who it’s for: Cord-cutters who still watch live TV and want a self-hosted alternative to a cable DVR box, TiVo, or a cloud DVR add-on. Requires at least basic Linux comfort [1][2].
- Cost savings: The software is free. A USB TV tuner runs $20–80. No monthly subscription fees, no per-recording charges, no vendor lock-in — unlike TiVo subscriptions ($15/mo), Plex DVR ($4.99/mo), or YouTube TV DVR add-ons [2].
- Key strength: Flexible hardware support (Raspberry Pi, NAS, old PC) and deep protocol coverage — ATSC, all DVB variants, HDHomeRun, IPTV, SAT>IP. Pairs with Kodi, Jellyfin, and Android TV clients for a full-room experience [1][2][3].
- Key weakness: This is a server component, not a standalone app. You need compatible tuner hardware, Linux knowledge to install and maintain it, and a separate frontend client. Setup is not beginner-friendly [1][2].
What is TVHeadend
TVHeadend is a TV streaming server and digital video recorder that runs on Linux. It sits in the background, ingests live television from whatever source you feed it — a rooftop antenna, a cable line, a satellite dish, or an IPTV playlist — and rebroadcasts those channels as network streams to any device in your home [README][1].
The project describes itself as “the leading TV streaming server and Digital Video Recorder for Linux,” which is a fair self-assessment given it’s been in continuous development since 2006 and has 3,358 GitHub stars as of this writing. It’s GPL-licensed, meaning the source is fully open and you’re not depending on a vendor to keep the service alive [README].
What it is not: a media center, a standalone app, or a plug-and-play box. TVHeadend is a server daemon. It exposes a web interface for configuration and an HTTP/HTSP endpoint for clients. You watch TV through Kodi, an Android TV client like TVHClient, or any IPTV-capable player — TVHeadend handles the backend, tuning, recording, and guide data [1][2].
The thing that makes this relevant in 2025 is what’s disappeared: TiVo stopped manufacturing hardware earlier this year and quietly removed its DVRs from its product list. A company whose name once became a verb is now just a software subsidiary [2]. Cable providers charge $10–20/month to rent a DVR box you don’t own. Smart TVs have tuners that are slow, locked-down, and tied to proprietary guide apps with minimal recording features [1]. TVHeadend is the answer to all three of those problems, if you’re willing to build it yourself.
Why people choose it
The case for TVHeadend breaks down into two audiences: people escaping proprietary DVRs, and people who tried their smart TV’s built-in live TV features and found them wanting.
The TiVo replacement case is the sharpest. TiVo charged a monthly subscription for the guide data and recording service, on top of buying the hardware. Now that TiVo’s DVRs are discontinued with no upgrade path, users who valued the multi-tuner recording, pause-live-TV, and whole-home streaming features have nowhere to go inside the TiVo ecosystem [2]. TVHeadend replicates all of those capabilities: multi-tuner support (add more USB or PCIe tuner cards to record more channels simultaneously), timeshifting, series recording, and streaming to every screen in the house via HTSP or HTTP [2][README].
The smart TV frustration case is broader and more relatable for anyone still watching local news, live sports, or over-the-air channels. As one XDA reviewer put it after setting up TVHeadend: “You often need separate apps or subscriptions to access sports, news, or local channels, and the built-in TV tuners are slow with minimal guides and little flexibility. Recording or pausing live broadcasts is either not supported or tied to proprietary restrictions.” [1] TVHeadend replaces that fragmented experience with a single server that all your devices talk to.
The network device advantage is why HDHomeRun tuners get recommended repeatedly in setup guides [2]. These are network-attached TV tuners — you plug them into your router, TVHeadend finds them automatically, and you avoid USB tuner driver headaches entirely. The XDA coverage specifically calls them out for “plug-and-play simplicity on Linux” compared to PCIe or USB alternatives [2].
The IPTV and livestream extension case is covered by a separate integration called TVHlink, which lets you pipe YouTube livestreams, Twitch channels, and other Streamlink-supported sources into TVHeadend as if they were regular IPTV channels [5]. This is community-built, not official, but it’s been maintained since 2021 and the author reported in December 2024 that it still works [5]. That means TVHeadend can serve as a unified live video hub for both broadcast and internet sources.
Features
Based on the README, installation guides, and third-party reviews:
Inputs supported:
- ATSC (US over-the-air digital TV)
- DVB-C and DVB-C2 (cable)
- DVB-S and DVB-S2 (satellite)
- DVB-T and DVB-T2 (terrestrial)
- HDHomeRun (network TV tuners — recommended path for Linux)
- IPTV via UDP or HTTP (m3u playlist import)
- SAT>IP (network-attached tuner protocol)
- Unix Pipe (for feeding custom sources) [README]
Outputs supported:
- HTSP (the native protocol, used by Kodi’s PVR plugin and Android clients)
- HTTP (plain streaming, works with VLC and most IPTV players)
- SAT>IP (for compatible clients) [README]
DVR and scheduling:
- Record individual programs or entire series
- Multi-tuner recording (record N channels simultaneously with N tuners)
- Timeshift / pause live TV
- Configurable storage paths and retention rules
- Storage-aware recording: can auto-delete old recordings when space runs low [1][2]
Guide and metadata:
- Electronic Program Guide (EPG) built in
- Supports XMLTV for external guide data sources
- Channel logos and metadata via HTSP clients [1][2]
Administration:
- Web-based configuration interface at port 9981
- User accounts with per-user permissions
- Stream profiles for quality control
- Hardware-accelerated transcoding on supported platforms [1][README]
Community extensions:
- TVHlink integration for YouTube/Twitch livestreams via Streamlink [5]
- Kodi TVHeadend PVR addon (one of the most actively maintained PVR integrations in Kodi) [3]
- Multiple Android TV clients including TVHClient
Pricing: self-hosted vs. the alternatives
TVHeadend itself costs nothing. The GPL license means the software is free to download, install, and run.
What you actually spend money on:
Hardware:
- USB TV tuner: $20–80 (AVerMedia, Hauppauge, Geniatech)
- HDHomeRun network tuner (recommended): $100–130 for dual-tuner models
- Host machine: Raspberry Pi 4 ($55–80), a NAS you already own, or an old PC
- Storage: external HDD or NAS — SD content runs ~1 GB/hour, 1080p can exceed 5 GB/hour, so budget accordingly [2]
Software: $0 [2][README]
Compare to alternatives:
- Cable DVR rental: $10–20/month ongoing (hardware you never own)
- TiVo subscription (before discontinuation): ~$15/month or $500 lifetime
- Plex DVR: $4.99/month or $119.99 lifetime — requires a Plex Pass
- YouTube TV DVR unlimited: $7.99/month add-on
- Channels DVR: $8/month for the DVR server software alone
For a user who buys a Raspberry Pi 4 ($70), an HDHomeRun dual-tuner ($110), and a 4TB USB drive (~$80), the upfront hardware cost is around $260. At $15/month in saved TiVo subscription fees, that breaks even in under 18 months — then runs free indefinitely. Compared to Plex DVR at $4.99/month, the math still works over a 2-3 year horizon. Over five years versus cable DVR rental at $15/month, you save roughly $640 net.
The more important point is that the hardware is yours. There’s no subscription that expires, no service that gets discontinued, no price increase at renewal.
Deployment reality check
Setup is described in both XDA articles as “not as complicated as it might sound” [1][2], which is true relative to building a NAS from scratch — but it’s not a one-click install either.
The install path on Ubuntu:
sudo add-apt-repository ppa:mamarley/tvheadend-git -y
sudo apt install tvheadend -y
sudo adduser hts video
sudo systemctl restart tvheadend
Then open http://localhost:9981 and log in with the credentials you set during install [1][2]. That part is straightforward.
What can go sideways:
- Can’t install from Ubuntu’s default repos — the packaged version is too old. You need the PPA [1][2]. First-timers who skip this step get a broken install.
- Tuner permissions — TVHeadend runs under a system user (
hts) that needs access to your tuner device. Theadduser hts videostep is mandatory and non-obvious [1]. - Guide data requires configuration — EPG doesn’t populate itself. You need to point TVHeadend at an XMLTV source or configure the built-in grabbers, which requires knowing your region and provider.
- Initial channel scan — you manually trigger a scan per mux/multiplex. If you don’t know what frequency your local DVB-T muxes are on, you’ll need to look this up.
- Frontend is separate — TVHeadend has no built-in playback UI worth using for daily viewing. You need Kodi with the TVHeadend PVR addon, TVHClient on Android, or another compatible client [3].
- The website is broken — the official tvheadend.org renders a JavaScript error (“Something went wrong while trying to load the full version of this site”) [website scrape]. Documentation lives at docs.tvheadend.org and support in the forum/IRC rather than the main site.
Realistic time estimates:
- Experienced Linux user with an HDHomeRun already on the network: 45–90 minutes to a working setup with guide data and Kodi connected
- Linux-comfortable user setting up a Raspberry Pi from scratch: 3–5 hours including OS, PPA install, tuner setup, and Kodi pairing
- Non-technical user: this is not recommended without a technical helper or a pre-configured image
The Raspberry Pi route works, but Pi 2/3/4 boards are the minimum for HD content — a Pi Zero or original Pi 1 won’t keep up [2]. For reliable multi-tuner recording, a proper x86 machine (even an old NUC) is better than a Pi.
Pros and cons
Pros
- Free software, zero subscription. GPLv3 license, no vendor, no monthly fee, no service discontinuation risk [README][2].
- Broad hardware support. ATSC, every DVB variant, HDHomeRun, IPTV, SAT>IP — if you can get a signal, TVHeadend can probably ingest it [README].
- Multi-tuner recording. Stack USB or PCIe tuner cards to record multiple channels simultaneously. Cable DVR boxes and TiVo units had fixed tuner counts; this scales with hardware [2].
- Works on cheap hardware. Runs on Raspberry Pi 3/4, old PCs, and NAS boxes — repurposes existing hardware [2].
- Whole-home streaming. HTSP and HTTP outputs mean every TV, phone, and tablet in the house gets the same channels and recordings, not just the TV the box is plugged into [1][2].
- Extensible via IPTV and Streamlink. Import m3u playlists for IPTV services; TVHlink adds YouTube and Twitch livestreams as channels [5].
- Active maintenance. Continuous commits, GitHub Actions CI, Coverity static analysis — not an abandoned project [README].
Cons
- Not beginner-friendly. Requires Linux, command line, and understanding of TV signal concepts (muxes, transponders, EPG). No GUI installer, no Windows/Mac support [1][2].
- No built-in playback UI. You need a separate client (Kodi, TVHClient, etc.) for comfortable daily use. The built-in web interface is for administration, not watching TV [1][3].
- EPG setup is manual. Guide data doesn’t configure itself. Depending on your region, finding a reliable XMLTV source can take time.
- Website is broken — tvheadend.org fails to load, which is not a great signal for a project’s operational health [website scrape]. Documentation is still reachable but the main site is dead.
- Hardware requirement. Unlike a Plex or Jellyfin server you might already run, TVHeadend is useless without a physical TV tuner. That’s a real upfront cost [2].
- Modest community relative to complexity. 3,358 GitHub stars is respectable but this is a technically demanding tool. Support is forum + IRC, not a large Discord or active subreddit [README].
- License field is unclear. The GitHub profile says GPLv3 in the badge, but metadata lists the license as “NOASSERTION.” The README badge links to LICENSE.md and shows GPLv3, so practically it’s GPL — but this kind of metadata inconsistency is worth noting [README][merged profile].
Who should use this / who shouldn’t
Use TVHeadend if:
- You watch live over-the-air, cable, or satellite TV and want to record it without a monthly subscription or rented hardware.
- You’re coming off a TiVo and want to replicate its features — multi-tuner recording, guide, timeshift, whole-home streaming — on hardware you own [2].
- You’re paying for a cable DVR add-on ($10–20/month) and you have a spare Linux machine or Raspberry Pi sitting around.
- You want to integrate live TV into an existing Kodi or Jellyfin setup.
- You’re comfortable with Linux administration and don’t mind a few hours of initial setup.
Skip it (you’re not the target user) if:
- You don’t watch any broadcast, cable, or satellite TV — you’re purely on streaming services. There’s nothing here for you.
- You have no Linux experience and no one to help. The setup requires more command-line work than most self-hosted tools, and the documentation assumes you know the basics [1][2].
- You want a single appliance with everything built in (tuner + server + client + UI). TVHeadend is the backend piece of a larger stack.
Consider alternatives if:
- You want a combined media server + DVR with a polished UI and easier setup — look at Plex with DVR or Channels DVR (both paid, but simpler).
- You only want a DVR without the streaming-server complexity — NextPVR covers that use case with a lower barrier to entry [3].
Alternatives worth considering
- Plex DVR — requires Plex Pass ($4.99/mo or $119.99 lifetime). Much easier setup, polished UI, but closed-source SaaS dependency and ongoing cost.
- Channels DVR — $8/month server software, excellent guide and UI, works with HDHomeRun and other tuners. Closed-source but well-regarded; lower barrier to entry than TVHeadend.
- NextPVR — free, supports Windows and Linux, easier initial setup than TVHeadend, but smaller feature set and less hardware coverage [3].
- Jellyfin + TVHeadend — not an alternative exactly; Jellyfin can connect to TVHeadend as a live TV backend and serve as the frontend client, combining library management with live TV in one app [3].
- Kodi + TVHeadend — the most commonly cited frontend pairing. Kodi’s TVHeadend PVR addon is mature and well-maintained [3].
- ErsatzTV — newer project focused on IPTV and virtual channels, not broadcast TV; different use case but worth knowing about for IPTV users.
Bottom line
TVHeadend is the answer to a problem that’s gotten sharper recently: broadcast, cable, and satellite TV have been orphaned by streaming-first platforms, TiVo just died, and cable DVR rentals charge indefinitely for hardware you’ll never own. TVHeadend is Linux-only, setup-heavy, and requires real tuner hardware — it’s not a SaaS replacement you can have running in ten minutes. But if you watch live TV and you’re comfortable with a terminal, the math is hard to argue with: free software, one-time hardware cost, no recurring fees, recordings that live on your own storage, and a whole-house streaming setup that outperforms any retail DVR box. The frontend ecosystem (Kodi, Android clients, Jellyfin integration) is mature enough that daily use doesn’t feel like a science project. The biggest friction points are the initial configuration — EPG setup, mux scanning, tuner permissions — and the fact that the official website is currently broken, which doesn’t inspire confidence. Get past the setup and you have a DVR stack that’ll keep running long after TiVo’s last box goes dark.
Sources
- Anurag Singh, XDA Developers — “This self-hosted, open-source tool has made me actually use my smart TV” (Sep 1, 2025). https://www.xda-developers.com/tvheadend-self-hosted-open-source-tool-actually-use-smart-tv/
- Anurag Singh, XDA Developers — “TiVo DVRs are dead, but this open-source, self-hosted app fills the void” (Oct 27, 2025). https://www.xda-developers.com/tivo-dvrs-dead-open-source-self-hosted-alternative/
- MakeTechEasier — “These 7 Open-Source Apps Made My Smart TV Worth Using”. https://www.maketecheasier.com/open-source-android-tv-apps/
- Carlos Gomes, cgomesu.com — “TVHlink: Livestreams as IPTV channels with TVHeadend and Streamlink” (updated Dec 7, 2024). https://cgomesu.com/blog/Tvhlink/
Primary sources:
- GitHub repository and README: https://github.com/tvheadend/tvheadend (3,358 stars, GPLv3)
- Official website: https://tvheadend.org (currently broken — JS error on load)
- Documentation: https://docs.tvheadend.org
Related Media & Streaming Tools
View all 334 →Immich
95KHigh-performance self-hosted photo and video management — automatic backup, ML-powered search, and a Google Photos-like experience on your own server.
Jellyfin
49KThe volunteer-built media solution that puts you in control of your media. Stream movies, shows, music, and photos to any device from your own server.
PhotoPrism
39KAI-Powered Photos App for the Decentralized Web. Tag and find pictures automatically without getting in your way.
Cobalt
39KSave what you love without ads, tracking, paywalls or other nonsense. Just paste the link and you're ready to rock.
qBittorrent
36KAn open-source software alternative to uTorrent. Feature-rich and runs on all major platforms.
SRS
29KSimple, high efficiency, realtime video server. Supports RTMP, WebRTC, HLS, HTTP-FLV, SRT, MPEG-DASH and GB28181.