Comment by ddtaylor
2 months ago
When I first got with my wife I seemed a bit crazier than I am because I am a media hoarder for 30+ years. I don't have any VHS, DVDs, etc. laying around because I only keep digital copies, but I have pretty decent archives. Nothing important really, just normal stuff and some rare or obscure stuff that disappears over time.
My wife was interested in the idea that I was running "Netfix from home" and enjoyed the lack of ads or BS when we watched any content. I never really thought I would be an "example" or anything like that - I fully expected everyone else to embrace streaming for the rest of time because I didn't think those companies would make so many mistakes. I've been telling people for the last decade "That's awesome I watch using my own thing, what shows are your favorites I want to make sure I have them"
In the last 2 years more family members and friends have requested access to my Jellyfin and asked me to setup a similar setup with less storage underneath their TV in the living room or in a closet.
Recently-ish we have expanded our Jellyfin to have some YouTube content on it. Each channel just gets a directory and gets this command ran:
yt-dlp "$CHANNEL_URL" \
--download-archive "downloaded.txt" \
--playlist-end 10 \
--match-filters "live_status = 'not_live' & webpage_url!*='/shorts/' & original_url!*='/shorts/'" \
-f "bv*[height<=720]+ba/b[height<=720]" \
--merge-output-format mp4 \
-o "%(upload_date>%Y-%m-%d)s - %(title)s.%(ext)s"
It actually fails to do what I want here and download h264 content so I have it re-encoded since I keep my media library in h264 until the majority of my devices support h265, etc. None of that really matters because these YouTube videos come in AV1 and none of my smart TVs support that yet AFAIK.
I have set up a Plex server and started ripping shows from various streaming providers (using StreamFab mostly) specifically because my wife got frustrated with 1) ads starting to appear even on paid plans and 2) never-ending game of musical chairs where shows move from provider to provider, requiring you to maintain several subscriptions to continue watching. She's not a techie at all, she's just pissed off, and I know she's not the only one.
Let's make sure that when all those people come looking for solutions, they'll find ones that are easy to set up and mostly "just work", at least to the extent this can be done given that content providers are always going to be hostile.
First I ran a simple script, now I use ytdltt [1] to allow my mother via telegram bot to download YT videos (in her case its more like audiobooks) and sort them in directories so she can access/download it via jellyfin. Shes at around 1.2TB audiobooks in like 3 years.
1: https://github.com/entropie/ytdltt
> It actually fails to do what I want here and download h264 content so I have it re-encoded
I struggled with that myself (yt-dlp documentation could use some work). What's currently working for me is:
Checkout https://github.com/meeb/tubesync
Thanks for the mention :)
Do you have any plans for the target to be S3 compatible in addition to a posix file system? If I wanted to sync a YouTube channel to a Backblaze B2 bucket or Minio, for example.
1 reply →
use the new preset feature to get h264: -t mp4
you can also skip the match filters by running the /videos URL instead of the main channel url.
if you want 720p, use -S res:720
I recently discovered Pinchflat [1], which seems like an *arr-inspired web alternative, and works great for me - I just need to add the videos I want downloaded to a playlist and it picks them up. Also uses yt-dlp under the hood.
1. https://github.com/kieraneglin/pinchflat
Tried this: "yt-dlp -f 'bestvideo*[ext=mp4]+bestaudio[ext=m4a]/best[ext=mp4]/best' -S vcodec:h264 -other_options …" ? I'm still getting proper h264 with that (my Raspberry PI 3 only wants a proper codec too… none of that mushy new-era codec stuff. ;) )
I'll just mention ytcc here. Not a recommendation, but might be suitable for someone.
https://pypi.org/project/ytcc/
>fails to do what I want here and download h264 content
you are missing [vcodec^=avc1] ?
Do you have to put in cookies to avoid the sign in/bot prompt? Do you use a vpn to download yt videos?