https://github.com/drdbanner/startstreams
Open multiple video streams in one batch -while consuming very little CPU power. YouTube, Twitch, and many more.
https://github.com/drdbanner/startstreams
macos video-streaming vlc
Last synced: 2 months ago
JSON representation
Open multiple video streams in one batch -while consuming very little CPU power. YouTube, Twitch, and many more.
- Host: GitHub
- URL: https://github.com/drdbanner/startstreams
- Owner: DrDBanner
- License: mit
- Created: 2024-10-14T16:21:58.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-06-15T20:59:49.000Z (about 1 year ago)
- Last Synced: 2025-06-15T21:50:36.574Z (about 1 year ago)
- Topics: macos, video-streaming, vlc
- Language: Shell
- Homepage:
- Size: 77.1 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Open multiple video streams (YouTube, Twitch, etc.) via VLC in one batch
**startstreams.sh** --macOS only!
This script allows you to enjoy video streams in beautifully arranged small windows while keeping CPU usage minimal.

Just start with `./startstreams.sh` and all your preconfigured streams start instantly in one batch.
## YouTube, Twitch - and more.
- Youtube channel mode: casts for all live broadcasts of a channel and opens them individually.
- Twitch streams: Plays twitch streams side by side with other sources.
- Streamlink: This script makes usage of streamlink. So a TON of sources possible. [Streamlink Plugins](https://streamlink.github.io/plugins.html)
## Notes
- You can restart all streams by running the script again. To stop all streams, use the command:
```./startstreams.sh kill```
- If you have a Twitch channel subscription and do not provide your OAuth key, you may encounter commercial breaks during streams.
- If you put in a channel URL (e.g.: https://www.youtube.com/@k1m6a) instead of a video url (https://www.youtube.com/@k1m6a/live) the script casts for ALL live streams and starts them automatically.
- Title/note fields in configuration file lack of whitespace support. Jq breaks then. So, just don't put whitespaces.
## Installation and usage
To get started, follow these steps:
1. Open Terminal by pressing **[CMD] + [Space]**, typing "Terminal", and hitting **[ENTER]**.
2. Copy and paste the following command into the terminal for installation and for updating the script to the latest version:
```bash
curl -O https://raw.githubusercontent.com/DrDBanner/startstreams/refs/heads/main/startstreams.sh && chmod +x startstreams.sh
```
3. Execute the script with:
`sh startstreams.sh`
or
`./startstreams.sh`
> #### Note
> - The script automatically installs VLC and Streamlink if they are not already present on your system.
> - If you want to update those at a later point of time put this into the terminal `brew update && brew upgrade` which updates all programs installed with brew in one batch.
> - During first run a json file is created. It comes prepopulated to you, so it starts with content from the get go. Within that file you can customize the streams and channels and put your twitch oauth key.
### How to Obtain Your Twitch OAuth Key
To get your personal OAuth token from Twitch:
1. Visit **Twitch.tv** and log into your account.
2. Open your browser's Developer Tools (press **F12** or **CTRL + SHIFT + I**).
3. Navigate to the **Console** tab and execute the following JavaScript code:
`document.cookie.split("; ").find(item => item.startsWith("auth-token="))?.split("=")[1]`

4. Copy the resulting 30-character alphanumeric string and paste it into the automatically created `video_channels.json` file.
