- Shell 100%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| .gitignore | ||
| mediathek.sh | ||
| README.md | ||
Mediathek
Download season playlists from ARD Mediathek, ZDF, and other sites yt-dlp supports.
Episodes are saved as:
Series/Staffel 01/001 - Episode title.mp4
Colons in the series name or title are replaced with -. Subtitles are embedded in the video, and the separate .vtt file is removed after that succeeds.
Requirements
- bash
- curl, used only when uv is missing
- ffmpeg and ffprobe, or Docker
The script installs and updates uv and yt-dlp into ~/.local/bin.
Usage
./mediathek.sh --preview seasons.txt
./mediathek.sh --dest "/mnt/video/Doku" seasons.txt
./mediathek.sh "https://www.ardmediathek.de/..."
./mediathek.sh "https://www.zdf.de/..."
With no arguments, the script asks for one season URL or a text file.
--preview lists the file names and downloads nothing. --dest sets the output directory. The default is ..
A text file holds one season URL per line. Blank lines and lines starting with #, ;, or ] are skipped.
ffmpeg
Host ffmpeg and ffprobe are used when both are installed. Otherwise the script runs lscr.io/linuxserver/ffmpeg as the current user. It tries docker first, then sudo -n docker, and checks that ffmpeg actually runs before downloading. If that check fails, the download does not start.