# This example shows how we can use the `kodi_music_videos_config.yaml` preset # to download music videos in a few different ways. We will use made-up artists # in each example ############################################################################### # LEVEL 1 - DOWNLOAD MUSIC VIDEO PLAYLIST # Subscription names are defined by you. We will call this one john_smith # for simplicity, and it will download every single video in john_smith's music # video playlist. Many artists maintain a playlist of all their music videos, # which makes this an easy way to grab all of them. john_smith: # We must define a preset to use from our config. We named the one in the # config example "yt_music_video", so set that here. preset: "yt_music_video" # Since our preset download strategy is set to 'playlist', set the playlist id. youtube: playlist_id: "UCsvn_Po0SmunchJYtttWpOxMg" # Overrides can be defined per-subscription. If you noticed, we used {artist} # and {sanitized_artist} in our "yt_music_video" preset. We intended to reserve # that variable to be defined for each individual subscription. Each override # defined here will create a 'sanitized_' version that is safe for file systems. # # A note for Kodi music videos, it is important to make sure your artist name # exactly matches how it is formatted in Kodi itself, otherwise it will be # read in as a new artist overrides: artist: "John Smith and the Instrument Players" ############################################################################### # LEVEL 2 - DOWNLOAD SINGLE MUSIC VIDEO # It is not always ideal to download all of an artist's music videos. # Maybe you only like one song of theirs. We can reuse our preset # to download a single video instead. # # The only difference between this example and the one above is # - youtube.after # This is saying 'only download videos in the last 14 days' # - ytdl_options.break_on_reject # This is getting into YTDL voodoo. By default, YTDL will try to # download all channel videos beginning with the most recent one. # By setting break_on_reject, we will break this full-download on # the first video that gets rejected. Since we have youtube.after # defined, all videos after today-14days will be rejected. Therefore, # the first video that is out of range that it tries to download, it # will stop there, and save a significant amount of time. john_smith_one_hit_wonder: preset: "yt_channel_as_tv" youtube: download_strategy: "video" video_id: "QhY6r6oAErg" overrides: tv_show_name: "John /\ Smith" ytdl_options: break_on_reject: True ############################################################################### # LEVEL 3 - ROLLING ARCHIVE # If you put the recent archive example in a cron job, then in a year or so # you will basically be datahoarding that channel unless you manually delete # old videos. We automate because we are lazy. This example shows how to # only keep the last 14-days worth of videos, and delete the rest. # # The only difference between this example and the one above is # - output_options.keep_files.after # This is saying "only keep files if they were uploaded in the last 14 days". # All other files that this subscription had previously downloaded will be # deleted. john_smith_rolling_archive: preset: "yt_channel_as_tv" youtube: channel_id: "UCsvn_Po0SmunchJYtttWpOxMg" after: today-14days overrides: tv_show_name: "John /\ Smith" ytdl_options: break_on_reject: True output_options: keep_files: after: today-14days