6 comments

[ 3.2 ms ] story [ 114 ms ] thread
Here's the one-liner I use for downloading playlists in parallel: \n yt-dlp --flat-playlist --print id $(cat dl-target-playlist) | parallel yt-dlp -x --wait-for-video 3 --download-archive ~/archive https://www.youtube.com/watch?v={} /n I'm not sure if it's faster than the default yt-dlp in parallel but with this script you just have to modify the file named dl-target-playlist.
PSA: yt-dlp has a feature that it fails to create output files(including temporary "part X of Y" chunk files) if filename is too long for the filesystem driver. It will NOT retry with shorter filenames. This can be problematic for ephemeral links.

As a workaround, add `-o "%(title).150B [%(id)s].%(ext)s"` to the command. Alias it, or do whatever you have to.

On Windows where I'm just doing one off downloads, I put this in an "init.cmd" file in the root of my user directory to create a windows version of an alias. Inside it are:

```

@echo off

doskey yt=yt-dlp "-o [%%(uploader)s] [%%(upload_date)s] [%%(id)s] %%(title).150s.%%(ext)s" $*

doskey yt-u=python -m pip install -U yt-dlp

doskey py-u=python.exe -m pip install --upgrade pip

```

Hopefully that saves someone some extra googling.

For more hardcore automated archival, I do this on linux (which doesn't have the character length issues) and I'd recommend looking at the following for inspiration

- https://github.com/TheFrenchGhosty/TheFrenchGhostys-Ultimate... (Supports sponsorblock, and it turns out truly finding the best quality is pretty complex)

- https://github.com/dmn001/youtube_channel_archiver (A <config>.conf file is very nice to use.)

- https://github.com/dbeley/youtube-archiver (how to set up a systemd service)

I read at the link that yt-dl uses ffmpeg and doesn't endorse avconv. Just curious if this is the place to ask, Does anyone know what the differences are between avconv and ffmpeg? Do they still basically do the same thing, or is there any reason to use one over the other. I remember years ago reading that one was a fork due to a disagreement or something, but I don't know how things have come along currently. I've mostly exclusively used ffmpeg any time I needed to convert a video, or more commonly for my use case, converted a directory full of images to a video.
I don't know the details of what happened between the two projects, but according to Wikipedia [1], libav was abandoned a bit over 5 years ago. Looks like their website (and main git repo) no longer exist.

[1] https://en.wikipedia.org/wiki/Libav