Skip to content

An small flask app to help Plex DVR connect with Tvheadend

License

Notifications You must be signed in to change notification settings

niavasha/tvhProxy

 
 

Repository files navigation

tvhProxy

A small flask app to proxy requests between Plex Media Server and Tvheadend. This repo adds a few critical improvements and fixes to the archived upstream version at jkaberg/tvhProxy:

  • SSDP Discovery. Fixes the issue of Plex randomly dropping the device.
  • XMLTV EPG EPG export, including adding dummy programme entries for channels without EPG so you can still use these channels in Plex (see below for Plex configuration URL)
  • Configuration of variables via dotenv file

tvhProxy configuration

  1. Check tvhProxy.py for configuration options and set them up them as KEY=VALUE pairs in a .env file.
  2. Create a virtual enviroment: $ python3 -m venv .venv
  3. Activate the virtual enviroment: $ . .venv/bin/activate
  4. Install the requirements: $ pip install -r requirements.txt
  5. Finally run the app with: $ python tvhProxy.py

systemd service configuration

A startup script for Ubuntu can be found in tvhProxy.service (change paths and user in tvhProxy.service to your setup), install with:

$ sudo cp tvhProxy.service /etc/systemd/system/tvhProxy.service
$ sudo systemctl daemon-reload
$ sudo systemctl enable tvhProxy.service
$ sudo systemctl start tvhProxy.service

Plex configuration

Enter the IP of the host running tvhProxy including port 5004, eg.: 192.168.1.50:5004, use http://192.168.1.50:5004/epg.xml for the EPG (see Using XMLTV for guide data for full instructions).

NickNote: This seems to cause an exception in tvhProxy. Simply using the tvheadend xml guide url also works: http://user:[email protected]:9981/xmltv/channels

About

An small flask app to help Plex DVR connect with Tvheadend

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 94.6%
  • Dockerfile 4.7%
  • Shell 0.7%