Basic script written with GPT.
Adds a mini menu in tampermonkey that when clicked copies a yt-dlp terminal command to your clipboard for the current video.
Video Download Options:
Allows downloading videos at the best available resolution or at specific resolutions (480p, 720p, 1080p, 4K). The command merges video and audio into an MKV format and modifies the output filename to include the actual video resolution determined during download.
Format: %(uploader)s - %(title)s %(height)sp (via yt-dlp).mkv
Audio Only:
Extracts audio in M4A format. This option is ideal for music or content where only audio is required.
Format: %(uploader)s - %(title)s (via yt-dlp).m4a
Chat:
Downloads the live chat (if available) as subtitles.
Format: %(uploader)s - %(title)s (via yt-dlp).%(ext)s
Comments:
Downloads the video comments, description, and metadata as a JSON file, preserving a comprehensive snapshot of the video's accompanying information.
Format: %(uploader)s - %(title)s comments and description (via yt-dlp).json
For playlists or channels it also works - but beware download times. It stores those in a new folder in the given directory.
Updated to add following customized logic
3 variables exist at the top of the script. Modify to change behavior
let folderLocation = '.'; // Default folder location, current directory yt-dlp terminal is running in. Change it if needed.
let disableViaYtDlp = false; // Set to true to remove " (via yt-dlp)" from filenames.
let setToTrueToMoveChannelNameToEnd = false; // Set to true to move channel name to the end of the filename.
So title - channelname instead of channelname - video title