Skip to content

A command-line application that passively downloads YouTube Livestreams

License

Notifications You must be signed in to change notification settings

JakeGuy11/youtube-archive-cpp

Repository files navigation

Contents

Dependencies

  1. ffmpeg version n4.3.1 or higher:
#Check version
ffmpeg -version
  1. youtube-dl version 2021.02.04 or higher:
#Check version
youtube-dl --version
  1. Python version 3.9.1 or higher:
#Check version
python --version
  1. Requests version 2.25.1 or higher:
#Check version
pip show requests

Installation

To install on UNIX:

  1. Download the latest release
  2. Extract it into a new folder
cd ~/Downloads/
mkdir ./youtube-archive-extracted/
tar -xpvzf ./youtube-archive-X.X.X.tar.gz -C ./youtube-archive-extracted/
  1. Add the executable permission to the install script
cd ./youtube-archive-extracted/
chmod +x ./install.sh
  1. Execute the install script as root
sudo ./install.sh
  1. Remove the install folder
cd ../
rm -r ./youtube-archive-extracted/
  1. youtube-archive is ready to be used!\

Uninstallation/Updates

To uninstall the program, run sudo /opt/youtube-archive/uninstall.sh. Currently, the only way to update is by uninstalling and reinstalling.

No windows or mac packages are officially available yet.

Description and Disclaimer

Youtube-archive is a command line only tool that passively archives YouTube livestreams. It has a customizeable saved and temporary queue that can be different for each user. It is built mainly in C++ but uses a python script for web interactions.

As mentioned in the help page, youtube-archive uses web scraping as an alternative to the YouTube API. This means that it requests the page source from YouTube instead of using the intended YouTube interface. The upside to this (and the reason I chose it) is that it's completely free! The downside is that it breaks often, really whenever YouTube has a major update. Also, it requires extra security so that YouTube doesn't flag your computer as a bot. I've taken most of the usual precautions to ensure this doesn't happen(and it's very nulikely that it will), but still know that there's a chance YouTube might flag your computer. If this app stops working, please open an error on the github page. If you're not sure what the problem is, or you suspect that YouTube's flagged your computer as a bot, I'd appreciate it if you attach a copy of the page source of one of the YouTube channels in your queue.

Options and Examples

This app has quite a few features which are all described in the help page and can be found by running youtube-archive --help, however I'll still briefly explain how to get a working session running.

Add an entry to the saved queue:

youtube-archive --add https://www.youtube.com/channel/CHANNELCODE EntryNickname

Add an entry to the temporary queue(this will not do anything since it is not being run in the same session):

youtube-archive --temp https://www.youtube.com/channel/CHANNELCODE EntryNickname

Start downloading with credentials(Untested):

youtube-archive -username "YourYoutubeEmail@gmail.com" --password "YourYoutubePassword" --start

Start the program scanning for entries in the saved queue:

youtube-archive --start

Start the program scanning for entries in the saved queue, and download them at 1080p and 60fps or higher

youtube-archive --quality-args "res=1080,fps>=60" --start

Contact Me

If you have any feedback, suggestions, errors or just general comments, please email me at Jake_Guy_11@protonmail.ch, or open an error through GitHub.

About

A command-line application that passively downloads YouTube Livestreams

Resources

License

Stars

Watchers

Forks