Once you have Homebrew and yt-dlp installed, downloading a YouTube video as an MP3 takes less than a minute. This page walks you through your first run of YouTube Rip from opening the script to finding the finished file.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/mr-sunset/youtube-rip/llms.txt
Use this file to discover all available pages before exploring further.
Download your first MP3
Open the script in Script Editor
Navigate to
YouTube Rip.applescript in Finder and double-click it to open it in Script Editor. If you previously exported it as a .scpt or .app file, you can double-click that instead — a .app bundle will launch and run immediately without needing Script Editor at all.Click the Run button
In the Script Editor toolbar, click the ▶ Run button (or press ⌘R). The script will start executing immediately — no configuration needed.
Enter a YouTube URL
A native macOS dialog will appear with the title YouTube Rip and the prompt:Both full
Enter the video URL:The input field is pre-filled with
https://youtu.be/. Clear it and paste your YouTube URL — for example:https://www.youtube.com/watch?v=... URLs and short https://youtu.be/... links are accepted by yt-dlp.Click OK to start the download
Click OK. The dialog closes and yt-dlp begins running in the background. Depending on video length and your internet connection, this may take a few seconds to a minute. Script Editor will appear to be busy (the Stop button becomes active) while yt-dlp is working.
Review the result dialog
When yt-dlp finishes, a second dialog appears displaying the raw shell stdout from yt-dlp — exactly what yt-dlp printed to standard output during the download and conversion. Click OK to dismiss it.
The yt-dlp command under the hood
When you click OK in the URL dialog, the script runs the following shell command:| Flag | Purpose |
|---|---|
-x | Extract audio only (no video) |
--audio-format mp3 | Convert the extracted audio to MP3 |
-P "$HOME/Downloads" | Save the file to your Downloads folder |
--extractor-args "youtube:player_client=default,-android_sdkless" | Selects the YouTube player client to avoid 403 errors |
quoted form of givenUrl — an AppleScript built-in that shell-escapes the string before it is handed to the shell. This prevents URLs containing special characters (such as & in query strings) from being misinterpreted by the shell.
The
--extractor-args "youtube:player_client=default,-android_sdkless" flag tells yt-dlp which YouTube player client to use when fetching the video stream. Excluding the android_sdkless client works around a common class of 403 Forbidden errors that YouTube returns when that client is used.