All Projects → BasioMeusPuga → Twitchy

BasioMeusPuga / Twitchy

Licence: gpl-3.0
CLI streamlink wrapper for twitch.tv

Programming Languages

python
139335 projects - #7 most used programming language

Labels

Projects that are alternatives of or similar to Twitchy

Streamlink
Streamlink is a CLI utility which pipes video streams from various services into a video player
Stars: ✭ 6,883 (+8503.75%)
Mutual labels:  cli, twitch
Twitch Dl
CLI tool for downloading videos from Twitch.
Stars: ✭ 194 (+142.5%)
Mutual labels:  cli, twitch
Sparrow
Sparrow - script distribution platform for Linux OS
Stars: ✭ 77 (-3.75%)
Mutual labels:  cli
Nord Terminator
An arctic, north-bluish clean and elegant Terminator color theme.
Stars: ✭ 78 (-2.5%)
Mutual labels:  cli
Labeler
Manage labels on GitHub as code
Stars: ✭ 78 (-2.5%)
Mutual labels:  cli
Pilgo
Configuration-based dotfiles manager
Stars: ✭ 78 (-2.5%)
Mutual labels:  cli
Mvn Search
command-line interface for the haters of the search.maven.org UI
Stars: ✭ 79 (-1.25%)
Mutual labels:  cli
Batchit
simple jobs submission via command-line for AWS batch
Stars: ✭ 77 (-3.75%)
Mutual labels:  cli
Figaro
Real-time voice-changer for voice-chat, etc. Will support many different voice-filters and features in the future. 🎵
Stars: ✭ 80 (+0%)
Mutual labels:  cli
Cra Generate
Scaffold a React component.
Stars: ✭ 78 (-2.5%)
Mutual labels:  cli
Spam Bot 3000
Social media research and promotion, semi-autonomous CLI bot
Stars: ✭ 79 (-1.25%)
Mutual labels:  cli
Ppx deriving cmdliner
Ppx_deriving plugin for generating command line interfaces from types (Cmdliner.Term.t)
Stars: ✭ 78 (-2.5%)
Mutual labels:  cli
Taskline
Tasks, boards & notes for the command-line habitat
Stars: ✭ 78 (-2.5%)
Mutual labels:  cli
Spellchecker
SpellChecker for Xcode
Stars: ✭ 79 (-1.25%)
Mutual labels:  cli
Emus
Start the Android Emulator and the iOS Simulator from the command line
Stars: ✭ 78 (-2.5%)
Mutual labels:  cli
Window Size
Reliable way to to get the height and width of the terminal/console in a node.js environment.
Stars: ✭ 79 (-1.25%)
Mutual labels:  cli
Json2go
Create go type representation from json
Stars: ✭ 76 (-5%)
Mutual labels:  cli
Xa
Beautiful & Customizable logger ❤️
Stars: ✭ 78 (-2.5%)
Mutual labels:  cli
Tsv Utils
eBay's TSV Utilities: Command line tools for large, tabular data files. Filtering, statistics, sampling, joins and more.
Stars: ✭ 1,215 (+1418.75%)
Mutual labels:  cli
Find Process
find process by port/pid/name etc.
Stars: ✭ 80 (+0%)
Mutual labels:  cli

twitchy

CLI streamlink wrapper for twitch.tv

Requires streamlink, python >= 3.6, python-requests

This script hopefully fulfills the needs of the discerning git cloner who wants to watch Twitch, and hates the CPU utilization of having a browser/flash running, especially since the current status of hardware accelerated video on Linux browsers is somewhere between non existent and abysmal.

Features:

  • Tracking of most watched channels.
  • Custom layouts: User adjustable colors and columns
  • VOD support
  • Sync your followed accounts to a local sqlite database that does not judge you.
  • Stream multiple... streams at once.
  • Integration with your conky / dmenu / rofi
  • The ability to display alternate names for games / streamers. If your happiness is somehow contingent upon displaying "Hearthstone: Heroes of Warcraft" as "Wizard Poker", well, you've come to the right place.

Installation

  1. Clone the repository

  2. In the root directory, type:

     $ python setup.py build
     # python setup.py install
    
  3. Launch with twitchy

Alternatively, use the AUR package: https://aur.archlinux.org/packages/twitchy-git

Please delete ~/.config/twitchy3/* and restart twitchy before reporting any issues.

Usage

$ twitchy [ARGUMENT] [OPTIONS]

[ARGUMENT] to the script is used as a search string for channels in the local database.

[OPTIONS]
-h, --help                      This helpful message
-a <channel name>               Add channel(s)
-an [*searchstring*]            Set/unset alternate names
--configure                     Configure options
-d [*searchstring*]             Delete channel(s) from database
--non-interactive [go / kickstart]
                                Generate parsable data for integration elsewhere
--reset                         Delete everything and start over
-s <username>                   Sync followed channels from specified account
-v <channel name>               Watch channel's recorded videos
-w <channel name>               Watch specified channel(s)

First run:
Will create both the database and an editable config file in ~/.config/twitchy3/

While playing:
<q / Ctrl + C> to quit

Run in non-interactive mode. This is useful for integration with dmenu / rofi / conky.
--non-interactive go            Get customizable comma separated list of channel / game data
--non-interactive kickstart <>  Start channel directly without asking for confirmation

Examples

Using no argument while launching the script will check the status of every channel in the local database: alt tag

Add channels to local database:

$ twitchy -a bobross <channel2> <channel3> ...
$ twitchy -s <your twitch username>

Display all strings matching obr:

$ twitchy obr
Checking channels...
Creative
1 bobross                   80085           The Joy of Painting Monday Season 7 Marathon #painting...
Sonic: Generations
2 mariobro                  123             #WhereMuhPrincessAt?
Wizard Poker
3 flatulentcobra            6969            Playing secret Paladin. Killing a puppy later.
Channel number(s): 1-h 2-s 3-l

Custom quality settings: Specify with hyphen next to channel number.
E.g. <1-h 2-s 3-l> will simultaneously play
channel 1 in high quality, 2 in source quality, and 3 in low quality.

Watch specified channel(s) - Do not have to be in local database:

$ twitchy -w northernlion cobaltstreak
Checking channels...
The Binding of Isaac: Afterbirth
1 northernlion                5757          Egg
Channel number(s): 1

Plugins

Thanks to twitchy's --non-interactive flag, it is easy to integrate it with various tools, like the ones below.

Albert

Supports the excellent Albert launcher

Move twitchy_albert.py in the plugins directory to /usr/share/albert/org.albert.extension.python/modules

Py3status

Supports the excellent py3status

Move twitchy_py3status.py in the plugins directory to somewhere in your py3status module paths as twitchy.py.

Rofi

Supports a custom rofi mode

Move rofi-twitchy in the plugins directory to somewhere on your PATH, and invoke it with:

$ rofi -modi twitchy:rofi-twitchy -show twitchy

Of course, you probably want to bind this command to a keyboard shortcut in your window manager.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].