Nymbo commited on
Commit
b4f142c
·
verified ·
1 Parent(s): 13138bf

Create Skills/music-downloader/SKILL.md

Browse files
Filesystem/Skills/music-downloader/SKILL.md ADDED
@@ -0,0 +1,299 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ name: music-downloader
3
+ description: This skill should be used when users need to download audio or music from online platforms like YouTube, SoundCloud, Spotify, or other streaming services. It provides yt-dlp and spotdl command templates for high-quality audio extraction, playlist downloads, metadata embedding, and multi-platform support.
4
+ ---
5
+
6
+ # Music Downloader
7
+
8
+ ## Overview
9
+
10
+ This skill enables downloading high-quality audio from various platforms (YouTube, SoundCloud, Spotify, etc.) using yt-dlp and spotdl. It provides command templates for single tracks, playlists, albums, and advanced features like metadata embedding, thumbnail extraction, and format conversion.
11
+
12
+ If the user did not provide a specific link to a song or playlist, you must search the web using tools in your environment to find what the user is looking for.
13
+
14
+ When using the `Web_Search` tool, set the Search Type to `videos` and prefer official YouTube links.
15
+
16
+
17
+ ## When to Use This Skill
18
+
19
+ Use this skill when users request:
20
+ - Downloading audio/music from YouTube, SoundCloud, Spotify, or other platforms
21
+ - Extracting audio from videos in MP3, Opus, or other formats
22
+ - Downloading entire playlists or albums
23
+ - High-quality audio with metadata and album art
24
+ - Batch downloading multiple tracks
25
+ - Converting video content to audio files
26
+
27
+ ## Quick Start
28
+
29
+ **Most Common Use Case - Download MP3 from YouTube:**
30
+ ```bash
31
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "%(title)s.%(ext)s" "VIDEO_URL"
32
+ ```
33
+
34
+ **Download from Spotify:**
35
+ ```bash
36
+ spotdl --audio-quality 320k --embed-metadata --output "{artist}/{title}.{ext}" "SPOTIFY_TRACK_URL"
37
+ ```
38
+
39
+ **Note:** If you encounter issues, try downloading or updating yt-dlp via pip: `pip install --upgrade yt-dlp`
40
+
41
+ ## General Commands
42
+
43
+ ## List Available Formats
44
+ ```bash
45
+ yt-dlp -F "URL"
46
+ ```
47
+
48
+ ## Download MP3 at Max Quality
49
+ ```shell
50
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --postprocessor-args "-b:a 320k" -o "%(title)s.%(ext)s" "https://www.youtube.com/watch?v=xYJki23aeTQ&ab_channel=OnlyRealHipHop49"
51
+ ```
52
+
53
+ ## Basic High-Quality MP3 Download
54
+ ```shell
55
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "%(title)s.%(ext)s" "VIDEO_URL"
56
+ ```
57
+
58
+ ## Download Custom Bitrate
59
+ ```shell
60
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --postprocessor-args "-b:a 192k" -o "%(title)s.%(ext)s" "VIDEO_URL"
61
+ ```
62
+
63
+ ## Download and add Metadata Tags
64
+ ```shell
65
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --embed-metadata -o "%(title)s.%(ext)s" "VIDEO_URL"
66
+ ```
67
+
68
+ ## Download Entire Playlist
69
+ ```shell
70
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "%(playlist_title)s/%(title)s.%(ext)s" "PLAYLIST_URL"
71
+ ```
72
+
73
+ ## Download Playlist (Specific Range)
74
+ ```shell
75
+ yt-dlp --playlist-items 1-5 -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "%(playlist_title)s/%(title)s.%(ext)s" "PLAYLIST_URL"
76
+ ```
77
+
78
+ ## Download HQ from SoundCloud
79
+ ```shell
80
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "SoundCloud/%(uploader)s - %(title)s.%(ext)s" "SOUNDCLOUD_TRACK_URL"
81
+
82
+ ```
83
+
84
+ ## Embed Album Art Automatically
85
+ ```shell
86
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --embed-thumbnail --audio-quality 0 -o "%(title)s.%(ext)s" "VIDEO_URL"
87
+ ```
88
+
89
+ ## Download Specific Formats
90
+ *Opus instead of MP3*
91
+ ```shell
92
+ yt-dlp -f bestaudio --extract-audio --audio-format opus -o "%(title)s.%(ext)s" "VIDEO_URL"
93
+ ```
94
+
95
+ ## Skip Already Downloaded Files
96
+ ```shell
97
+ yt-dlp --download-archive "downloaded.txt" -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "%(title)s.%(ext)s" "VIDEO_URL"
98
+ ```
99
+
100
+ ## Download Multiple Individual Files
101
+ ```shell
102
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --add-metadata --embed-thumbnail --write-description --postprocessor-args "-b:a 320k" -o "%(title)s.%(ext)s" "https://www.youtube.com/watch?v=xYJki23aeTQ&ab_channel=OnlyRealHipHop49" "https://www.youtube.com/watch?v=xKJaew2gMSo&ab_channel=OnlyRealHipHop49" "https://www.youtube.com/watch?v=zLJkO3RnWUk&ab_channel=OnlyRealHipHop49"
103
+ ```
104
+
105
+ ## Download and Automatically Split by Chapters
106
+ ```shell
107
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --split-chapters -o "%(title)s.%(ext)s" "VIDEO_URL"
108
+ ```
109
+
110
+ ## Extract Only a Portion of a Video (by Time)
111
+ ```shell
112
+ yt-dlp -f bestvideo+bestaudio --external-downloader ffmpeg --external-downloader-args "ffmpeg_i:-ss 00:01:00 -to 00:05:00" -o "%(title)s.%(ext)s" "VIDEO_URL"
113
+ ```
114
+
115
+ ## Update Metadata of Existing Files
116
+ ```shell
117
+ yt-dlp --download-archive "downloaded.txt" --skip-download --embed-metadata --embed-thumbnail --write-description "VIDEO_URL"
118
+ ```
119
+
120
+ ## Auto-Rename Duplicate Files
121
+ ```shell
122
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --force-overwrites -o "%(title)s.%(ext)s" "VIDEO_URL"
123
+ ```
124
+
125
+ ## Download from a URL List File
126
+ ```shell
127
+ yt-dlp -a "urls.txt" -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "%(title)s.%(ext)s"
128
+ ```
129
+
130
+ ## Download and Limit Download Speed
131
+ ```shell
132
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --rate-limit 1M -o "%(title)s.%(ext)s" "VIDEO_URL"
133
+ ```
134
+
135
+ ## Download from Vimeo
136
+ ```shell
137
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "Vimeo/%(uploader)s - %(title)s.%(ext)s" "VIMEO_VIDEO_URL"
138
+ ```
139
+
140
+ ## Download from Facebook
141
+ ```shell
142
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "Facebook/%(uploader)s - %(title)s.%(ext)s" "FACEBOOK_VIDEO_URL"
143
+ ```
144
+
145
+ ## Download from Instagram
146
+ ```shell
147
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "Instagram/%(uploader)s - %(title)s.%(ext)s" "INSTAGRAM_VIDEO_URL"
148
+ ```
149
+
150
+ ## Download from Twitter
151
+ ```shell
152
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "Twitter/%(uploader)s - %(title)s.%(ext)s" "TWITTER_VIDEO_URL"
153
+ ```
154
+
155
+ ## Download from TikTok
156
+ ```shell
157
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "TikTok/%(uploader)s - %(title)s.%(ext)s" "TIKTOK_VIDEO_URL"
158
+ ```
159
+
160
+ ## Download from Reddit
161
+ ```shell
162
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "Reddit/%(uploader)s - %(title)s.%(ext)s" "REDDIT_VIDEO_URL"
163
+ ```
164
+
165
+ ## Download from Dailymotion
166
+ ```shell
167
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "Dailymotion/%(uploader)s - %(title)s.%(ext)s" "DAILYMOTION_VIDEO_URL"
168
+ ```
169
+
170
+ ## Download YouTube Transcript as Text
171
+ ```shell
172
+ yt-dlp --write-auto-subs --sub-lang en --skip-download -o "%(title)s.%(ext)s" "VIDEO_URL"
173
+ ```
174
+
175
+ ## Download YouTube Transcript as Markdown
176
+ ```shell
177
+ yt-dlp --write-auto-subs --sub-lang en --skip-download --convert-subs srt -o "%(title)s.md" "VIDEO_URL"
178
+ ```
179
+
180
+ ## Download Video Info and Save as JSON
181
+ ```shell
182
+ yt-dlp --write-info-json --skip-download -o "%(title)s.json" "VIDEO_URL"
183
+ ```
184
+
185
+ ## List Available Formats without Downloading
186
+ ```shell
187
+ yt-dlp -F "VIDEO_URL"
188
+ ```
189
+
190
+ ## Download from YouTube Age-Restricted Content
191
+ ```shell
192
+ yt-dlp --username "YOUR_YOUTUBE_EMAIL" --password "YOUR_PASSWORD" -f bestvideo+bestaudio -o "%(title)s.%(ext)s" "AGE_RESTRICTED_VIDEO_URL"
193
+ ```
194
+
195
+ ---
196
+
197
+ # SoundCloud Commands
198
+
199
+ ## List Available Formats
200
+ ```bash
201
+ yt-dlp -F "URL"
202
+ ```
203
+
204
+ ## Download High-Quality MP3 from SoundCloud
205
+ ```bash
206
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "SoundCloud/%(uploader)s - %(title)s.%(ext)s" "SOUNDCLOUD_TRACK_URL"
207
+ ```
208
+
209
+ ## Download HQ with Metadata from SoundCloud
210
+ ```bash
211
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --embed-metadata -o "SoundCloud/%(uploader)s - %(title)s.%(ext)s" "SOUNDCLOUD_TRACK_URL"
212
+ ```
213
+
214
+ ## Download Entire Playlist from SoundCloud
215
+ ```bash
216
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "SoundCloud/%(playlist_title)s/%(title)s.%(ext)s" "SOUNDCLOUD_PLAYLIST_URL"
217
+ ```
218
+
219
+ ## Download Entire Playlist from SoundCloud with Metadata
220
+ ```bash
221
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --embed-metadata --add-metadata --embed-thumbnail -o "%(playlist_title)s/%(title)s.%(ext)s" "SOUNDCLOUD_PLAYLIST_URL"
222
+ ```
223
+
224
+ ## Download Multiple Playlists with Metadata
225
+ ```bash
226
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --embed-metadata --add-metadata --embed-thumbnail -o "SoundCloud/%(playlist_title)s/%(title)s.%(ext)s" "x" "x" "x" "x" "x" "x" "x"
227
+ ```
228
+
229
+ ## Download Playlist with Specific Range
230
+ ```bash
231
+ yt-dlp --playlist-items 1-5 -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "SoundCloud/%(playlist_title)s/%(title)s.%(ext)s" "SOUNDCLOUD_PLAYLIST_URL"
232
+ ```
233
+
234
+ ## Download and Embed Album Art
235
+ ```bash
236
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --embed-thumbnail -o "SoundCloud/%(uploader)s - %(title)s.%(ext)s" "SOUNDCLOUD_TRACK_URL"
237
+ ```
238
+
239
+ ## Skip Downloading Already Downloaded SoundCloud Files
240
+ ```bash
241
+ yt-dlp --download-archive "downloaded_soundcloud.txt" -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "SoundCloud/%(uploader)s - %(title)s.%(ext)s" "SOUNDCLOUD_TRACK_URL"
242
+ ```
243
+
244
+ ## Download Multiple Tracks from SoundCloud
245
+ ```bash
246
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "SoundCloud/%(uploader)s - %(title)s.%(ext)s" "SOUNDCLOUD_TRACK_URL_1" "SOUNDCLOUD_TRACK_URL_2" "SOUNDCLOUD_TRACK_URL_3"
247
+ ```
248
+
249
+ ## Limit Download Speed for SoundCloud
250
+ ```bash
251
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --rate-limit 1M -o "SoundCloud/%(uploader)s - %(title)s.%(ext)s" "SOUNDCLOUD_TRACK_URL"
252
+ ```
253
+
254
+ ## Download from SoundCloud and Split by Chapters (if available)
255
+ ```bash
256
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --split-chapters -o "SoundCloud/%(uploader)s - %(title)s.%(ext)s" "SOUNDCLOUD_TRACK_URL"
257
+ ```
258
+
259
+ ## Download SoundCloud Track and Extract a Specific Portion
260
+ ```bash
261
+ yt-dlp -f bestaudio --external-downloader ffmpeg --external-downloader-args "ffmpeg_i:-ss 00:01:00 -to 00:05:00" -o "SoundCloud/%(uploader)s - %(title)s.%(ext)s" "SOUNDCLOUD_TRACK_URL"
262
+ ```
263
+
264
+ ## Update Metadata of Existing SoundCloud Downloads
265
+ ```bash
266
+ yt-dlp --download-archive "downloaded_soundcloud.txt" --skip-download --embed-metadata --embed-thumbnail "SOUNDCLOUD_TRACK_URL"
267
+ ```
268
+
269
+ ## Auto-Rename Duplicate SoundCloud Files
270
+ ```bash
271
+ yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --force-overwrites -o "SoundCloud/%(uploader)s - %(title)s.%(ext)s" "SOUNDCLOUD_TRACK_URL"
272
+ ```
273
+
274
+ ## Download from SoundCloud URL List File
275
+ ```bash
276
+ yt-dlp -a "soundcloud_urls.txt" -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "SoundCloud/%(uploader)s - %(title)s.%(ext)s"
277
+ ```
278
+
279
+ ---
280
+
281
+ # SpotifyDL Commands
282
+
283
+ ## Download Single Song
284
+ ```bash
285
+ spotdl --audio-quality 320k --embed-metadata --output "{artist}/{title}.{ext}" "SPOTIFY_TRACK_URL"
286
+ ```
287
+ ## Download Entire Playlist
288
+ ```bash
289
+ spotdl --playlist "SPOTIFY_PLAYLIST_URL" --audio-quality 320k --embed-metadata --output "{playlist}/{title}.{ext}"
290
+ ```
291
+ ## Download Entire Album
292
+ ```bash
293
+ spotdl --album "SPOTIFY_ALBUM_URL" --audio-quality 320k --embed-metadata --output "{album}/{title}.{ext}"
294
+ ```
295
+ ## Download Multiple Albums & Playlists at Once
296
+ ```bash
297
+ spotdl --playlist "SPOTIFY_PLAYLIST_URL1" "SPOTIFY_PLAYLIST_URL2" --audio-quality 320k --embed-metadata --output "{playlist}/{title}.{ext}"
298
+ spotdl --album "SPOTIFY_ALBUM_URL1" "SPOTIFY_ALBUM_URL2" --audio-quality 320k --embed-metadata --output "{album}/{title}.{ext}"
299
+ ```