Skip to main content

Terminal UI for IPTV with EPG browsing

Project description

tvTUI

tvTUI logo

tvTUI is a fast terminal UI for browsing IPTV channels with EPG (now/next) information, favorites, categories, and quick search.

Features

  • Search-as-you-type channel list with category tags.
  • EPG preview with now/next details and descriptions.
  • Favorites and history.
  • Mouse support (scroll, click, double-click).
  • Configurable player and subtitle defaults.

Install (pipx)

pipx install .

For a published package:

pipx install tvtui

Run

tvtui
tvtui -f
tvtui --categories

Keybindings

  • Enter play selected channel
  • f toggle favorites view
  • F add/remove favorite
  • c categories
  • m content mode (tv/movie/series)
  • s sort (default/name/category)
  • r refresh channels/EPG
  • / search mode
  • Left/Right cycle description
  • t subtitles on/off (next playback)
  • h toggle help panel
  • q quit

Mouse:

  • Wheel scroll
  • Click select
  • Double-click play

Configuration

Config file defaults to ~/.config/tvtui/config.json.

{
  "epg_url": "https://raw.githubusercontent.com/doms9/iptv/refs/heads/default/EPG/TV.xml",
  "source_url": "https://s.id/d9Base",
  "streamed_base": "https://raw.githubusercontent.com/doms9/iptv/default/M3U8",
  "show_help_panel": true,
  "use_emoji_tags": false,
  "player": "auto",
  "player_args": ["--ontop"],
  "custom_command": ["myplayer", "--flag"],
  "custom_subs_on_args": ["--subs=on"],
  "custom_subs_off_args": ["--subs=off"],
  "mpv_subs_on_args": ["--sub-visibility=yes", "--sid=auto"],
  "mpv_subs_off_args": ["--sub-visibility=no", "--sid=no"],
  "vlc_sub_track": 1,
  "subs_enabled_default": false,
  "xtream_base_url": "http://xtreamcode.ex:8080",
  "xtream_username": "Mike",
  "xtream_password": "1234",
  "xtream_use_for_tv": true
}

Xtream API

If xtream_base_url, xtream_username, and xtream_password are set, use m to toggle content mode between live TV, movies, and series. The TV mode uses Xtream live streams when xtream_use_for_tv is true; otherwise it falls back to the M3U source.

Requirements

  • Python 3.9+
  • mpv or vlc for playback

Disclaimer

The default channel and EPG sources are provided for inspiration and testing. tvTUI is not affiliated with, endorsed by, or sponsored by those sources or their authors.

License

MIT. See LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tvtui-2.0.0.tar.gz (2.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tvtui-2.0.0-py3-none-any.whl (15.5 kB view details)

Uploaded Python 3

File details

Details for the file tvtui-2.0.0.tar.gz.

File metadata

  • Download URL: tvtui-2.0.0.tar.gz
  • Upload date:
  • Size: 2.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for tvtui-2.0.0.tar.gz
Algorithm Hash digest
SHA256 f702cd8e80f6e0a92b1c4e38f2e302491e1bd48bdd15840b712a5b57854158d3
MD5 c4677f0052d50c733f2d5888703fefa3
BLAKE2b-256 b042daead368e152f77af1124413f2a7dc1b896e5d14dce46e3ad1a6fa400de3

See more details on using hashes here.

File details

Details for the file tvtui-2.0.0-py3-none-any.whl.

File metadata

  • Download URL: tvtui-2.0.0-py3-none-any.whl
  • Upload date:
  • Size: 15.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for tvtui-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1574abc1b905a000d3c76a2812a67ee5c05d0492d73191cd59be9100a8d4ad69
MD5 04500aebfd264bb31b41c89b0a9ee2e9
BLAKE2b-256 de0899142cc63cdf55f34c38b4a7230be3a94cea094a6a9f396cac1e88f9772e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page