Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/2bc4/streamlink-ttvlol
Streamlink Twitch plugin modified to work with the TTV.LOL API
https://github.com/2bc4/streamlink-ttvlol
adblock plugin proxy streaming streamlink twitch
Last synced: 3 months ago
JSON representation
Streamlink Twitch plugin modified to work with the TTV.LOL API
- Host: GitHub
- URL: https://github.com/2bc4/streamlink-ttvlol
- Owner: 2bc4
- License: bsd-2-clause
- Created: 2022-12-05T10:16:03.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2024-03-20T01:43:23.000Z (8 months ago)
- Last Synced: 2024-03-20T02:39:10.199Z (8 months ago)
- Topics: adblock, plugin, proxy, streaming, streamlink, twitch
- Language: Python
- Homepage:
- Size: 214 KB
- Stars: 138
- Watchers: 4
- Forks: 7
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# streamlink-ttvlol
## About[Streamlink](https://streamlink.github.io) Twitch plugin modified to work with the [TTV.LOL](https://github.com/TTV-LOL/extensions) API. This proxies the playlist request to a country where Twitch does not serve ads. Note that TTV.LOL-like APIs can still rarely return a playlist with ads, if this happens you'll need to restart streamlink to get a different playlist or switch between proxies.
Currently not compatible with TTV-LOL-PRO v2 proxies.
## Installation
***Follow the instructions below for your specific operating system.***[Windows](#windows), [Linux](#linux), [MacOS](#macos).
If you wish to install manually, you can get the latest release [here](https://github.com/2bc4/streamlink-ttvlol/releases/latest/download/twitch.py). ***(If you're not using git Streamlink please use the twitch.py from the releases page. The twitch.py from the master branch tracks Streamlink master and may break on stable Streamlink releases.)***
After installation you will need to point Streamlink at a playlist proxy server with [plugin arguments](#arguments).
More info on Streamlink plugin sideloading [here](https://streamlink.github.io/latest/cli/plugin-sideloading.html).
## Windows
### AutomaticallyCopy the command below and paste it into powershell. ***Do not run powershell as admin.***
If you don't know how to open powershell. Press windows key + r and type `powershell` into the box and press enter. Copy the contents of the box below and then right click in the powershell window and press enter:
```powershell
$null= New-Item -ItemType Directory -Path .\AppData\Roaming\streamlink\plugins -Force; iwr -Uri 'https://github.com/2bc4/streamlink-ttvlol/releases/latest/download/twitch.py' -OutFile .\AppData\Roaming\streamlink\plugins\twitch.py```
**NOTE:** If you cannot resolve the URL (receive an error), this is likely due to your TLS version. Run the command below to set your TLS version to 1.2 and re-run the above command:
```powershell
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
```### Manually
Navigate to:```
C:\Users\%username%\AppData\Roaming\streamlink
```Then create the `plugins` folder and drop the `twitch.py` inside of it.
## Linux
### AutomaticallyRun the below command in a terminal:
```sh
INSTALL_DIR="${XDG_DATA_HOME:-${HOME}/.local/share}/streamlink/plugins"; mkdir -p "$INSTALL_DIR"; curl -L -o "$INSTALL_DIR"/twitch.py 'https://github.com/2bc4/streamlink-ttvlol/releases/latest/download/twitch.py'
```### Manually
Copy the `twitch.py` file to:```
~/.local/share/streamlink/plugins
```## MacOS
### AutomaticallyRun the below command in terminal:
```sh
INSTALL_DIR="${HOME}/Library/Application Support/streamlink/plugins"; mkdir -p "$INSTALL_DIR"; curl -L -o "$INSTALL_DIR"/twitch.py 'https://github.com/2bc4/streamlink-ttvlol/releases/latest/download/twitch.py'
```### Manually
Copy the `twitch.py` file to:```
${HOME}/Library/Application Support/streamlink/plugins
```## Arguments
streamlink-ttvlol adds the following plugin arguments:`--twitch-proxy-playlist`
Proxy playlist request through a server that supports the TTV.LOL API (or a server that doesn't with a custom URL, see [here](https://github.com/2bc4/streamlink-ttvlol/releases/tag/5.3.0-20230313)). It can also be pointed at multiple comma separated servers which will try each server in order until successful.
Example:
--twitch-proxy-playlist=https://eu.luminous.dev,https://lb-eu.cdn-perfprod.com
---
`--twitch-proxy-playlist-exclude`Can be used to exclude channels from being proxied (eg. you're subscribed to the channel and want to use your OAuth token to avoid ads instead)
Example:
--twitch-proxy-playlist-exclude=forsen,twitch,twitchgaming
---
`--twitch-proxy-playlist-fallback`Enable if Streamlink should fallback to Twitch servers if all requests to playlist proxies fail.
## Known compatible public proxy servers
[TTV-LOL-PRO](https://github.com/younesaassila/ttv-lol-pro/discussions/37#discussioncomment-5426032) v1 servers:
- `https://lb-eu.cdn-perfprod.com` (Europe)
- `https://lb-eu2.cdn-perfprod.com` (Europe 2)
- `https://lb-eu4.cdn-perfprod.com` (Europe 4)
- `https://lb-eu5.cdn-perfprod.com` (Europe 5)
- `https://lb-na.cdn-perfprod.com` (NA)
- `https://lb-as.cdn-perfprod.com` (Asia)
- `https://lb-sa.cdn-perfprod.com` (SA)[luminous-ttv](https://github.com/AlyoshaVasilieva/luminous-ttv) servers:
- `https://eu.luminous.dev` (Europe)
- `https://eu2.luminous.dev` (Europe 2)
- `https://as.luminous.dev` (Asia)## streamlink-twitch-gui
If you're using [streamlink-twitch-gui](https://github.com/streamlink/streamlink-twitch-gui) then you'll need to check the "Enable advanced settings and features" box on the `Main` tab in settings. You can then add the above argument of your choosing to the "Custom parameters" box on the `Streaming` tab.## Chatterino
If you're using [Chatterino](https://github.com/Chatterino/chatterino2) with Streamlink you'll need to add the above argument of your choosing to Settings -> External Tools -> Streamlink -> Additional options.