• Zarobi@aussie.zone
    link
    fedilink
    English
    arrow-up
    7
    ·
    edit-2
    1 day ago

    I dunno if I would call it rough; it’s just a CLI tool. You write yt-dlp and then paste in the URL.

    Maybe I’m doing that xkcd comic where I overestimate average people’s familiarity with CLI though. It only gets complicated if you want to customise it beyond the basic flags in your global config file. I set it to include chapters and download subtitles for example. Once I get home I’ll try and remember to paste my config file here.

    Edit: ~/yt-dlp.conf

    # Save the files to this directory with this format
    --paths /mnt/Vidoes/inprogress/youtube
    --output "%(uploader)s - %(title)s.%(ext)s"
    
    # Include subtitles and chapter metadata
    --write-subs
    --embed-chapters
    
    # Resume incomplete downloads
    --continue
    
    # I use Vivaldi exclusively with a burner account to find videos to download so that Google thinks my activity is more organic
    --cookies-from-browser vivaldi
    
    # Optional - Only needed if you have issues downloading subtitles. I had to git clone and build "bgutil-ytdlp-pot-provider" to generate tokens to download files properly. This part was just copy pasted from their instructions
    --extractor-args "youtubepot-bgutilscript:server_home=/home/[username]/git/bgutil-ytdlp-pot-provider/server"
    
    # Optional quality filter - Possibly the only complicated part. This tells YT-DLP to prefer downloading H264 MP4 files, because my old as fuck android tablet doesn't support any other format. It also forces 1080p video, because I found after downloading too many videos YouTube will downgrade you to 360p and I'd rather get an error message than watch a 360p video. Some 720p only videos I edit this temporarily
    --format "bv[height=1080][vcodec^=avc1][ext=mp4]+ba[ext=m4a]/b[height=1080][vcodec^=avc1][ext=mp4]/bv*[height=1080]+ba/b[height=1080]"
    

    You will need to delete any # comments in your own config - I don’t think they’re supported. I included them for explanation.