YouTube Changed URLs and other things a bit ago. Check Recode branch for a recoded version. Currectly being worked on. (There isn't a recoded client yet)
This project is currectly dead. After I am done working on other projects, I will continue working on this. It broke because YouTube changed something else.
Downloads Youtube Livestreams (and now sometimes working Twitch. Twitch isn't the priority) streams for given specific channels automatically.
This is a server program. You will need to use the client in order to control this program. This program is tested on PYTHON VERSION 3.7.2. This program does not work anything below PYTHON VERSION 3.
This idea came from when I wanted to record livestreams from a YouTuber called Skeppy. When he ends his livestreams, he deletes the VOD of the stream. If I were to miss a livestream or want to watch and look back on it. I can't. Since sometimes I am unable to watch Skeppy's streams when he was live, I made the program to record it automatically so I can watch it later! (NOTE SKEPPY LIVE STREAMS MAINLY ON HIS SECOND CHANNEL, SKEP)
Thanks to people of youtube-dl! Some code came from youtube-dl.
https://youtu.be/tCKmHynj5O8 (SKEP CHANNEL 10/31/19)
https://youtu.be/Ao1ZkJ8XwjE (SKEP CHANNEL 6/22/19)
To use the server-side, you need the required packages:
colorama: Used for color.
google-auth-oauthlib: Used for youtube API.
oauth2client: Used for youtube API. (May be installed with "google-api-python-client")
PyYAML: data handling.
flask: Web Server.
gevent: Web Server.
win10toast: Windows Toast Notifications [ONLY NEEDED IF ON WINDOWS]
tzlocal: Used to get TimeZone. [OPTIONAL, ONLY NEEDED IF USING {TIMEZONE} IN DATA.YML FOR UPLOAD SETTINGS]
pytz: Used to get pacific time for YouTube Upload Queue. Allows the program to wait until midnight when YouTube API Quota resets in YouTube API Quota timezone (Pacific time). [OPTIONAL, ONLY NEEDED IF USING YOUTUBE UPLOAD QUEUE AND NOT IN PACIFIC TIMEZONE]
websocket-client: TO CONNECT TO TWITCH'S WEBSOCKET.
Download Youtube Live Chanenl Recorder [MASTER] OR [RELEASES]
Download FFMPEG: [WINDOWS/macOS] [LINUX]
Add FFMPEG to path. How to: [WINDOWS]
Extract Server files.
run __main__.py in the server files folder with argument -p <port_name> to specify port.
To use the client, you need the required packages:
colorama: Used for color.
httplib2: Web.
win10toast: Windows Toast Notifications [ONLY NEEDED IF ON WINDOWS]
Download Youtube Live Chanenl Recorder [MASTER] OR [RELEASES]
Extract Client files.
run __main__.py in the client files folder. The client will then ask for ip and port.