A terminal iptv player written in bash
termv
is a small bash script that allows you to select an iptv stream using fzf
and play it using mpv
.
The list of channels is obtained from https://github.com/iptv-org/iptv.
For an example for a custom channels list and how to make one yourself, visit this gist.
For windows support, consider using termv-rs, a rewrite of termv in rust.
Usage: termv [OPTIONS] query
Options:
General Options:
-h, --help Print this help text and exit.
-v, --version Print program version and exit.
-u, --update Update channel list to latest version.
Player Options:
-f, --full-screen Open mpv in fullscreen.
-s, --swallow Swallow terminal during playback (X11 only) based on devour; https://github.com/salman-abedin/devour.sh
Environment variables:
TERMV_AUTO_UPDATE Auto update channel list to latest version. (default: true)
TERMV_SWALLOW Always swallow terminal during playback. (default: false)
TERMV_FULL_SCREEN Always open mpv in fullscreen. (default: false)
TERMV_DEFAULT_MPV_FLAGS Default arguments which are passed to mpv. (default: --no-resume-playback)
TERMV_CHANNELS_URL URL to the channel list. (default: https://iptv-org.github.io/api/channels.json)
Any other URL must be in the same format as the default one.
TERMV_STREAMS_URL URL to the streams list. (default: https://iptv-org.github.io/api/streams.json)
Any other URL must be in the same format as the default one.
Improve me on GitHub:
https://github.com/Roshan-R/termv
sudo wget -O /usr/local/bin/termv -q --show-progress https://raw.githubusercontent.com/Roshan-R/termv/main/termv && sudo chmod +x /usr/local/bin/termv
Install from the AUR (with your preferred AUR helper)
yay -S termv
Users of the Nix package manager with flakes
support can execute termv using
nix run github:Roshan-R/termv
For MacOs users with the homebrew package manager
brew tap Roshan-R/termv https://github.com/Roshan-R/homebrew-termv
brew install termv
git clone https://github.com/Roshan-R/termv
cd termv
- Install with the Makefile
sudo make install
- Uninstall with the Makefile
sudo make uninstall
A big thank you to all the contributors
Thanks to ytfzf
for the Makefile and
tmpmail
as a reference on how to structure bash scripts.