Whop DownloaderWhop Downloader

    How to Download Whop Videos Manually with yt-dlp (No Extension)

    4 min read

    Step-by-step guide to downloading Whop course videos using yt-dlp directly from the command line — no browser extension, full control, completely free.

    Download Whop videos with yt-dlp — guide cover showing the command-line route and the signed Mux stream URLs it needs

    Downloading Whop videos with yt-dlp is the manual version of what every Whop downloader extension — including this one — does under the hood: finding the video stream URL and handing it to a tool that fetches and merges it. That tool, in almost every case, is yt-dlp, the open-source command-line downloader that's become the de facto standard for this kind of job. Whop Downloader's own local helper app uses it for large videos that need extra processing headroom.

    If you're comfortable with a terminal, you can skip the extension entirely. Here's exactly how.

    Terminal showing yt-dlp installed via brew or winget, then run against a token-signed Mux m3u8 URL to download and merge a Whop lesson into an MP4
    The whole manual route — the hard part is finding the signed URL, not the command.

    This is for downloading content you already have legitimate access to on Whop — the same personal-backup use case an extension covers. It doesn't bypass paywalls or DRM, and it won't work on content you can't already play in your browser.

    Why this works: Whop's video infrastructure

    Whop streams video through Mux, a third-party video platform used by a lot of course/community sites. Mux serves video as HLS (HTTP Live Streaming) — instead of one downloadable file, the player fetches a manifest (a .m3u8 file) that lists dozens of small video/audio segment URLs, plus a short-lived access token in the query string. Right-clicking the player and choosing "Save video" doesn't work because there's no single file to save — that's exactly the gap yt-dlp is built to close.

    Step 1: Install yt-dlp

    Mac (Homebrew):

    brew install yt-dlp
    

    Windows:

    pip install yt-dlp
    

    (Requires Python. If you don't have it, install Python from python.org first, or use winget install yt-dlp if you have winget available.)

    Linux:

    sudo apt install yt-dlp
    # or, for the latest version:
    pip install --upgrade yt-dlp
    

    Verify it installed correctly:

    yt-dlp --version
    

    Step 2: Capture the stream URL

    1. Open the Whop lesson in Chrome (or any Chromium browser) and open DevTools (F12 or right-click → Inspect).
    2. Go to the Network tab. In the filter box, type m3u8.
    3. Press play on the video. Nothing will appear in the Network tab until playback actually starts — Mux generates the stream URL on demand, not ahead of time.
    4. Within a few seconds you should see one or more requests ending in .m3u8 with a long token in the query string. Right-click the request and choose Copy → Copy link address.

    That URL is your source. It's time-limited — usually valid for a fairly short window — so move on to the next step promptly rather than saving it for later.

    Step 3: Download with yt-dlp

    Run:

    yt-dlp "PASTE_YOUR_M3U8_URL_HERE" \
      -f "bv*+ba/b" \
      --merge-output-format mp4 \
      --concurrent-fragments 8 \
      -o "lesson-name.mp4"
    

    What each flag does:

    • -f "bv*+ba/b" — grab the best available video stream and best available audio stream separately, and merge them (falling back to a combined stream if separates aren't available). This is what gets you full quality instead of whatever single low-bitrate variant the player might default to.
    • --merge-output-format mp4 — output as a standard MP4 rather than yt-dlp's default container choice, so it plays everywhere.
    • --concurrent-fragments 8 — download 8 segments in parallel instead of one at a time. HLS streams are chopped into many small chunks; fetching them in parallel is the difference between a five-minute download and a thirty-second one. You can push this higher (16, 24) on a fast connection, or lower it if you hit rate limiting.
    • -o "lesson-name.mp4" — sets the output filename. Swap in whatever you want to call it.

    If the download requires ffmpeg for the merge step (it usually does) and you don't have it installed:

    # Mac
    brew install ffmpeg
    
    # Windows
    winget install ffmpeg
    
    # Linux
    sudo apt install ffmpeg
    

    Common issues

    "HTTP Error 403: Forbidden" — the token in your URL expired. Mux tokens are short-lived by design. Go back to Step 2, get a fresh URL, and run the command again promptly.

    Download completes but there's no audio — you likely used a simpler format selector like -f best instead of -f "bv*+ba/b", which can grab a video-only stream if Whop's adaptive manifest separates video and audio tracks. Use the exact flag above.

    "Requested format is not available" — run yt-dlp -F "YOUR_URL" first to list every format Mux actually offers for that video, then adjust the -f selector to match one of the listed format codes if bv*+ba/b doesn't resolve cleanly.

    Nothing appears in the Network tab — you pressed play on a tab that had already loaded the stream. Reload the page first, then press play. Same root cause as the extension's most common failure.

    Video is DRM-protected — if a creator has applied DRM, the captured .m3u8 will fail no matter what flags you use; yt-dlp and every other tool are equally unable to decrypt it. A hard technical limit, not a bug in your command. Rare on standard Whop course video.

    When it's worth just using the extension instead

    The manual method gives you full control and zero ongoing cost, but it has real friction: DevTools every time, watching for token expiry, and no built-in fallback if Whop changes something in their player. If you're downloading dozens of lessons across a whole course, or you'd rather not open a terminal at all, Whop Downloader automates every step above — finding the stream, picking the best rendition, and merging — and keeps 3 merged downloads free every week with no signup. It also saves subtitles and attached course PDFs, which the manual route won't do for you.

    Two things worth knowing before you choose: video-only and audio-only downloads in the extension are unlimited and never spend a credit, so the free tier goes further than the "3 per week" headline suggests — the full explanation is here. And Pro adds a whole-course download that walks every lesson automatically, which is the case where the DevTools dance really stops being worth it.

    Skip the Terminal — Get the Free ExtensionFree to start — 3 full downloads/week, audio & video-only always free.

    Frequently asked questions

    Keep reading