MCPcopy
hub / github.com/vexorian/dizquetv

github.com/vexorian/dizquetv @1.7.0 sqlite

repository ↗ · DeepWiki ↗ · release 1.7.0 ↗
474 symbols 1,115 edges 77 files 30 documented · 6%
README

dizqueTV 1.7.0

Discord GitHub top language Docker Pulls

Create live TV channel streams from media on your Plex servers.

dizqueTV ( dis·keˈtiːˈvi ) is a fork of the project previously-known as pseudotv-plex or pseudotv. New repository because of lack of activity from the main repository and the name change is because projects with the old name already existed and were created long before this approach and it was causing confusion. You can migrate from pseudoTV 0.0.51 to dizqueTV by renaming the .pseudotv folder to .dizquetv and running the new executable (or doing a similar trick with the volumes used by the docker containers).

Configure your channels, programs, commercials and settings using the dizqueTV web UI.

Access your channels by adding the spoofed dizqueTV HDHomerun tuner to Plex, Jellyfin or emby or utilize the M3U Url with any 3rd party IPTV player app.

EPG (Guide Information) data is stored to .dizquetv/xmltv.xml

Features

  • A wide variety of options for the clients where you can play the TV channels, since it both spoofs a HDHR tuner and a IPTV channel list.
  • Ease of setup for xteve and Plex playback by mocking a HDHR server.
  • Configure your channels once, and play them just the same in any of the other devices.
  • Customize your channels and what they play. Make them display their logo while they play. Play filler content ("commercials", music videos, prerolls, channel branding videos) at specific times to pad time.
  • Docker image and prepackage binaries for Windows, Linux and Mac.
  • Supports nvidia for hardware encoding, including in docker.
  • Select media (desired programs and commercials) across multiple Plex servers
  • Includes a WEB TV Guide where you can even play channels in your desktop by using your local media player.
  • Subtitle support.
  • Auto deinterlace any Plex media not marked "scanType": "progressive"
  • Can be configured to completely force Direct play, if you are ready for the caveats.
  • It's up to you if the channels have a life of their own and act as if they continued playing when you weren't watching them or if you want "on-demand" channels that stop their schedules while not being watched.

Limitations

  • If you want to play the TV channels in Plex using the spoofed HDHR, Plex pass is required.
  • dizqueTV does not currently watch your Plex server for media updates/changes. You must manually remove and re-add your programs for any changes to take effect. Same goes for Plex server changes (changing IP, port, etc).. You'll have to update the server settings manually in that case.
  • Most players (including Plex) will break after switching episodes if video / audio format is too different. dizqueTV can be configured to use ffmpeg transcoding to prevent this, but that costs resources.
  • If you configure Plex DVR, it will always be recording and transcoding the channel's contents.
  • In its current state, dizquetv is intended for private use only and you should be discouraged from running dizqueTV in any capacity where other users can have access to dizqueTV's ports. You can use Plex's iptv player feature to share dizqueTV streams or you'll have to come up with some work arounds to make sure that streams can be played without ever actually exposing the dizquetv port to the outside world. Please use it with care, consider exposing dizqueTV's ports as something only advanced users who know what they are doing should try.

Releases

  • https://github.com/vexorian/dizquetv/releases

Wiki

  • For setup instructions, check the wiki

App Preview

Development

Building/Packaging Binaries: (uses browserify, babel and pkg)

npm run build
npm run compile
npm run package

Live Development: (using nodemon and watchify)

npm run dev-client
npm run dev-server

Contribute

License

Thanks

  • DEFENDORe , George and everyone that worked on PseudoTV
  • Ahmed Said Al-Busaidi , for reporting exploits in advance before publishing in exploit-db.
  • Nathan for working on automation addons.
  • Timebomb, Rafael for the contributions during dizqueTV's active days.

Core symbols most depended-on inside this repo

log
called by 185
src/plexTranscoder.js
push
called by 170
src/services/event-service.js
get
called by 82
src/services/tv-guide-service.js
updateChannelDuration
called by 28
web/directives/channel-config.js
update
called by 15
src/dao/program-play-time-db.js
safeString
called by 13
src/api.js
getChannel
called by 13
src/dao/channel-db.js
push
called by 11
src/services/tv-guide-service.js

Shape

Function 234
Method 190
Class 50

Languages

TypeScript100%

Modules by API surface

src/database-migration.js35 symbols
web/directives/channel-config.js25 symbols
src/services/tv-guide-service.js24 symbols
src/plexTranscoder.js21 symbols
src/services/active-channel-service.js16 symbols
src/dao/plex-server-db.js16 symbols
src/ffmpeg.js15 symbols
src/channel-cache.js14 symbols
src/services/on-demand-service.js13 symbols
src/services/filler-service.js13 symbols
src/plex.js13 symbols
web/ext/lazyload.js12 symbols

Dependencies from manifests, versioned

@babel/cli7.8.4 · 1×
@babel/core7.9.0 · 1×
@babel/plugin-proposal-class-properties7.8.3 · 1×
@babel/preset-env7.9.5 · 1×
@commitlint/cli12.1.4 · 1×
@commitlint/config-conventional12.1.4 · 1×
JSONStream1.0.5 · 1×
angular1.8.0 · 1×
angular-router-browserify0.0.2 · 1×
angular-sanitize1.8.2 · 1×
angular-vs-repeat2.0.13 · 1×
axios0.21.1 · 1×

For agents

$ claude mcp add dizquetv \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact