- Notifications
You must be signed in to change notification settings - Fork8
M3U Proxy and EPG aggregator for Plex DVR and Emby Live TV
License
SCP002/xTeVe
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
This is a fork ofhttps://github.com/xteve-project/xTeVe, all credit goes to the original author
Documentation for setup and configuration ishere.
- Merge external M3U files
- Merge external XMLTV files (EPG aggregation)
- Automatic M3U and XMLTV update
- M3U and XMLTV export
- Filtering streams
- Teleguide timeshift
- Channel mapping
- Channel order
- Channel logos
- Channel categories
- Buffer with HLS / M3U8 support
- Re-streaming
- Number of tuners adjustable
- Compatible with Plex / Emby EPG
This mode can be enabled by ticking the checkbox inSettings -> General
.
Unless the server's certificate and it's private key already exists in xTeVe config directory, xTeVe will generate a self-signed automatically.
Self-signed certificate will only allow TLS mode to start up but not to actually establish a secure connections.For truly working HTTPS, you shouldgenerate a certificate by yourself andalso add the CA certificate to the client-side certificate storage (where the web browser, Plex etc. is).
Certificate and it's private key should be placed in xTeVe config directory like so:
/home/username/.xteve/certificates/xteve.crt/home/username/.xteve/certificates/xteve.key
If the certificate is signed by a certificate authority (CA), it should be the concatenation of the server's certificate, any intermediates, and the CA's certificate.
Pull from dockerhub:
docker pull scp002/xteve:latest
OR build your own image based on Dockerfile from this repository:
git clone https://github.com/SCP002/xTeVe.gitcd xTeVedocker build --tag scp002/xteve.
docker create \ --tty \ --publish 34400:34400 \ --name xteve \ scp002/xteve
With the specific timezone, ip and port:
docker create \ --tty \ --env TZ=Europe/Amsterdam \ --env XTEVE_PORT=12345 \ --publish 192.168.88.218:12345:12345 \ --name xteve \ scp002/xteve
docker start xteve
docker attach xteve
To detach from a container, pressCtrl + C
.
Openhttp(s)://<ip>:<port>/web/
in browser, for example:http://192.168.88.218:34400/web/
docker stop xteve
New features and bug fixes are only available in beta branch. Only after successful testing are they are merged into the master branch.
It is not recommended to use the beta version in a production system.
With the command line argumentbranch
the Git Branch can be changed. xTeVe must be started via the terminal.
xteve -branch beta...[xTeVe] GitHub: https://github.com/SCP002[xTeVe] Git Branch: beta [SCP002]...
xteve -branch master...[xTeVe] GitHub: https://github.com/SCP002[xTeVe] Git Branch: master [SCP002]...
When the branch is changed, an update is only performed if there is a new version and the update function is activated in the settings.
- Go (go1.18 or newer)
git clone https://github.com/SCP002/xTeVe.git
go mod tidy
Or
go get github.com/avfs/avfs@latest go get github.com/gorilla/websocketgo get github.com/kardianos/osextgo get github.com/koron/go-ssdpgo get github.com/samber/logo get github.com/stretchr/testify
go get -u ./...
If TypeScript files were changed, run:
tsc -p ./ts/tsconfig.json
Then, to embed updated JavaScript files into the source code (src/webUI.go), run it in development mode at least once:
go build xteve.goxteve -dev
❗ To not to get CreateFile error, do not forget to switch your binary to "regular" mode after runnning with-dev
flag:
xteve -branch master
orxteve -branch beta
go build xteve.go
Or use convenient cross-compile tool. To build binaries for every OS / architecture pair into./xteve-build/
folder:
go get github.com/mitchellh/goxgo install github.com/mitchellh/goxgox -output="./xteve-build/{{.Dir}}_{{.OS}}_{{.Arch}}" ./
When creating a fork, the xTeVe GitHub account must be changed from the source code or the update function disabled.
xteve.go - Line: 29
varGitHub=GitHubStruct{Branch:"master",User:"SCP002",Repo:"xTeVe",Update:true}// Branch: GitHub Branch// User: GitHub Username// Repo: GitHub Repository// Update: Automatic updates from the GitHub repository [true|false]
About
M3U Proxy and EPG aggregator for Plex DVR and Emby Live TV
Topics
Resources
License
Stars
Watchers
Forks
Packages0
Languages
- Go74.7%
- JavaScript12.3%
- TypeScript10.7%
- CSS1.3%
- HTML0.8%
- Dockerfile0.2%