09-threadfin.md kstack: book: Centerpoint Home Lab chapter: Media & Entertainment page: Threadfin tags: [threadfin, iptv, m3u, xmltv, plex, jellyfin] Overview Threadfin is an M3U proxy and IPTV middleware that translates IPTV streams into a format consumable by Plex DVR and Jellyfin Live TV. It manages M3U playlists, XMLTV guide data, and presents a virtual tuner device to media servers via HDHR (HDHomeRun) emulation. Access Type URL / Endpoint Notes Web UI http://192.168.1.85:34400 Direct LAN access — no Traefik route HDHR http://192.168.1.85:34400 HDHomeRun device emulation endpoint No Traefik route is configured for Threadfin — Plex and Jellyfin connect to it via direct IP and port on the LAN. Configuration Image: fyb3roptik/threadfin:latest Compose project: Standalone (managed via Portainer) Ports Port Protocol Purpose 34400 TCP Threadfin web UI and HDHR endpoint (host-bound) Environment Variables Variable Value Purpose TZ America/Toronto Timezone THREADFIN_PORT 34400 Listen port THREADFIN_BRANCH main Update channel THREADFIN_BIND_IP_ADDRESS 0.0.0.0 Bind to all interfaces THREADFIN_DEBUG 0 Debug logging off Volumes / Bind Mounts Host Path Container Path Purpose /home/jeeves/docker/threadfin/config /home/threadfin/conf M3U playlists, XMLTV data, settings Networks Network Purpose traefik-net Present (container is on traefik-net but no labels) Threadfin is on traefik-net for network reachability but has no Traefik labels — it is accessed by direct IP. Plex / Jellyfin Integration Plex: In Plex Settings → Live TV & DVR → Set Up Plex Tuner Enter the Threadfin HDHR URL: http://192.168.1.85:34400/device.xml Plex discovers the virtual tuner and available channels Jellyfin: Admin Dashboard → Live TV → Add Tuner Device Select HDHomeRun and enter http://192.168.1.85:34400 Dependencies M3U source URL (IPTV provider) configured in Threadfin UI XMLTV guide source configured in Threadfin UI Plex or Jellyfin must be able to reach 192.168.1.85:34400 on the LAN Notes / Gotchas M3U playlists and XMLTV guide data are refreshed on a schedule configured in the Threadfin UI. If the IPTV provider URL changes, update it in Threadfin settings — Plex and Jellyfin do not need to be reconfigured. Threadfin does not store or proxy video streams itself; it redirects the media server directly to the IPTV stream URL. Buffering and quality are determined by the stream source. Port 34400 is non-standard. Ensure no firewall rules block LAN-to-LAN traffic on this port between Plex/Jellyfin and Centerpoint. Last Updated: 2026-06-16