about summary refs log tree commit diff
path: root/nix/profiles/home-manager/media.nix
blob: e3fc3a9036242fd146acf9a5a52f2e1e0de4b882 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
{ ... }: {
  programs.yt-dlp = {
    enable = true;

    extraConfig = ''
      # Do not overwrite files
      --no-overwrites

      # Add metadata to the video files
      --add-metadata

      # Write video description to a .description file
      --write-description

      # Restrict filenames to only ASCII characters, and avoid "&" and spaces in filenames
      --restrict-filenames

      # Select the best audio quality (when extracting audio with -x/--extract-audio)
      --audio-quality 0

      # Save videos under "~/Movies/WebsiteName/" with the filename "VideoTitle---FormatNote-VideoId.VideoExtension"
      --output "~/Movies/%(extractor_key)s/%(title)s---%(format_note)s-%(id)s.%(ext)s"

      # Download subtitles for English, French and German
      --sub-langs en,fr

      # Embed subtitles in the video (only possible with mp4, webm and mkv files)
      --embed-subs

      # Download with the best resolution and if possible, in the video format mp4 and audio format m4a.
      # If the video format isn't mp4 already, it will be converted to mp4
      --format-sort res,ext:mp4:m4a --recode mp4
    '';
  };
}