Youtube-Downloader lets you download the audio from Youtube videos and have them automatically uploaded to a specified location. It also creates the correct folder structure and sets ID3 tags. Works well with Plex!
The following steps assume that you have already installed Node
- Get Spotify API credentials from https://developer.spotify.com
- Log in with a Spotify account
- Go to the dashboard and click 'create an app'
- Fill out the form and click next
- Once you get to the project dashboard, copy the client ID and secret
cd
to where you want the app to be installed (ex:cd ~/user/Documents
)- Clone the repo (ex:
git clone https://github.com/samr28/Youtube-Downloader.git
) - cd into the directory:
cd Youtube-Downloader
- Make the install script executable (
chmod +x install
) and run it:./install
- This creates a run script, installs foreverjs, ytdl, ffmpeg, id3tool, python, and runs
npm install
- This creates a run script, installs foreverjs, ytdl, ffmpeg, id3tool, python, and runs
- Edit
run
- Set
DOWNLOAD_LOCATION
to the folder that you want to store music in - Set
PASSWORD
to whatever you want - Set
WEB_PORT
to whatever port you want to use - Set
SPOTIFY_API_KEY
andSPOTIFY_SECRET
to the credentials provided by Spotify (API Key is your client ID and secret is your client secret) - Modify the foreverjs command to use the correct log file
- Set
- Type
./run
to start the app (if you encounter any errors, open an issue)
- Navigate to YOUR_IP:WEB_PORT (set in
run
) - Paste in a Youtube video URL into the link field
- Hit
tab
or click on a different textbox (like the password box) - The server will make a request to the Spotify API and attempt to autofill the song metadata
- In the case of incorrect metadata, scroll down to the autofill box and pick the correct suggestion
- Next fill out the password field and click download
Note that Plex defaults to updating libraries about once a day. If you don't see your music in Plex, you can force it to scan library files through the Plex webapp.