I’m still new to it, and for all I know, the slowest guy in the room …
… but I found a tool on github that downloads an entire youtube channel, using yt-dlp, the replacement for youtube-dl.
This project is ripe for a github PR with a ‘Plex’ feature where the downloaded channel is 'Plex’ified into a named(?) directory, with all the fancy metadata…
… thereby making this tool a Youtube channel → Plex ‘show’ converter.
I’m curious tho if there are already other tools like this.
regardless, this youtube channel downloader (and maybe plex-ifier) has been working too well to not post it here.
Hmmm… When I download stuff from YouTube or elsewhere I just download it to the directories that my Plex have configured and wham, Plex sucks it in. Not sure how this “Plex feature” would be that useful…
I actually didn’t get this part, I’m now trying to download and subscribe to YouTube channels with this tool, set the storage location to Plex’s scan directory can be added directly to the Plex library, not sure what your method is.
me neither. I’m still figuring out how to get this channel downloader tool (which is better than anything else i’ve seen) to place the archived files into Plex in a plexy format.
Whoever figures this out could post their findings to the github. Just sayin
Well, there’s https://www.jwz.org/hacks/youtubedown, which is a Perl script that will download YouTube videos. Being a Perl developer myself I tend to use that one though not all people have Perl installed (cough, Windows, cough…).
Then the task is simply to put the downloaded .mp4 file into the directory of one of your Plex libraries. So, on my desktop LInux box I have my videos NFS mounted to /Videos. So then, to get Paul McCartney: Live from NYC - YouTube I would just:
Earth:cd /Videos/Concerts
Earth:youtubedownload.pl https://youtu.be/1QGxFpSb6Sc
youtubedownload.pl: reading "Paul McCartney - Live from NYC (2018).video-only.mp4"
youtubedownload.pl: wrote "Paul McCartney - Live from NYC (2018).video-only.mp4"
youtubedownload.pl: 1373 MB, 1920 x 1080 downloaded in 0:13:04, 14.0 Mbps
youtubedownload.pl: reading "Paul McCartney - Live from NYC (2018).audio-only.m4a"
youtubedownload.pl: wrote "Paul McCartney - Live from NYC (2018).audio-only.m4a"
youtubedownload.pl: 256 MB, 384 kbps downloaded in 0:02:27, 13.9 Mbps
youtubedownload.pl: merging audio and video...
youtubedownload.pl: wrote "Paul McCartney - Live from NYC (2018).mp4"
youtubedownload.pl: 1631 MB, 1920 x 1080
Earth:ll -h Paul\ McCartney\ -\ Live\ from\ NYC\ \(2018\).mp4
-rw-rw-r-- 1 andrew defaria 1.6G Jun 21 07:41 'Paul McCartney - Live from NYC (2018).mp4'
Earth:
(Linux is pretty cool!)
And viola! Plex will notice the new .mp4 file (Tdarr will convert it to a smaller HEVC .mkv file) and it’ll be part of my Plex Concerts library.
In short, there are many ways. You haven’t googled for a solution very much although I think all the ways above tend to get the YouTube video in mediocre resolutions.
If you want the downloaded video to show more information in Plex, depending on what you download, the sources of information that Plex can show are basically TMDB, TVDB, IMDB, and if the data of the video is not on these platforms, adding it to the Plex library will not show additional information.
If the video data is available on those platforms, you need to set the name of the saved file in a reasonable way, and you need to follow the naming convention as described in these two articles.
For example, if I download the video of this channel and name the file by the format %(upload_date)s %(title)s.%(ext)s, I will get 20230614 Sci-Fi Short Film "Visitors" | DUST.mkv. Since youtube_channel_archiver can’t set the file name in too much detail, I can only rename the file name after downloading by other means to 2023-06-14 Sci-Fi Short Film "Visitors" | DUST.mkv , so that it can be scraped in Plex to get additional information.
If the video has data on TMDB, TVDB, IMDB, just rename it correctly to get additional information in Plex, if the video has no data on TMDB, TVDB, IMDB you need to let Plex scanner scan the file by proper naming, but Plex can’t provide additional information.
If you mean because youtube_channel_archiver can download metadata, such as the video page’s profile and other content, and you want to display that content and author pictures and other information within the plex, I don’t know how to do that, and I don’t think it could be done unless someone makes a agent data source that is YouTube.
This agent can scrape metadata from YouTube, you need to create a YouTube API yourself, and then the filename needs to include the video ID to match up.