Documentation Index
Fetch the complete documentation index at: https://docs.m3u8.dev/llms.txt
Use this file to discover all available pages before exploring further.
Preview
Download
Windows
Download M3U8 Downloader Desktop for WindowsmacOS
Coming soon…Linux
Coming soon…What It Does
M3U8 Downloader Desktop helps you download or record video streams on desktop.- Paste an M3U8, MP4, or page URL
- Capture hidden stream URLs from the built-in browser
- Download normal videos or record live streams
- Inspect failed tasks and retry with the right headers
Quick Start
Most users only need one of these two methods.Method 1: Paste a URL
Use this when you already have an M3U8, MP4, or page URL.
Best for:
- Known media URLs
- Page URLs handled by yt-dlp
- Fast one-off downloads
Method 2: Capture from the built-in browser
Use this when the real media URL is hidden.
Best for:
- Pages that load the stream only after playback
- Sites with hidden M3U8 URLs
- Cases where desktop and mobile User-Agent return different results
Which Method Should You Use?
| Situation | Recommended method |
|---|---|
| You already have an M3U8 or MP4 URL | Paste a URL |
| You only have a page URL | Paste a URL first |
| The page hides the real stream URL | Capture view |
| The site needs login or session data | Capture view or add Cookie |
| You want to record a live stream | Paste the live M3U8 URL |
Real Examples
These examples show the most common ways people use the app.Check yt-dlp Supported Sites
If you want to know which websites yt-dlp may support, check the official list: https://github.com/yt-dlp/yt-dlp/blob/master/supportedsites.md Important:- This list is maintained by yt-dlp, not by this app.
- A site being listed does not guarantee it will work normally.
- Site updates, login requirements, region limits, or anti-bot checks may still cause failures.
Example 1: You already have an M3U8 URL
If you already extracted the stream URL from another tool or from page source, use the direct method. Example URL:- Click Add download.
- Paste the M3U8 URL.
- Click Add to queue.
- The task usually goes to Downloading quickly.
- After it finishes, you can open the file from the queue.
Example 2: The page plays video, but you cannot find the real stream URL
If the site only requests the media after playback starts, use the built-in browser. Example page:- Open Capture view.
- Open the page and start playback.
- Wait for the stream to appear in the capture list.
- Add the detected stream to the queue.
- The app captures the real media request for you.
- This is the easiest way to handle hidden M3U8 URLs.
Example 3: You want to record a live stream
If the stream is live, the app can keep saving it until you stop the task. Example URL:- Click Add download.
- Paste the live M3U8 URL.
- Start the task and let it run.
- Stop it when you want to finish recording.
- The task shows Recording or LIVE.
- When you stop it, the app finalizes the output file.
Example 4: You only have a page URL and want yt-dlp to extract it
If you do not have the real media URL, you can paste a supported page URL and let the app hand it to yt-dlp. Example URLs:- Click Add download.
- Paste the page URL.
- If the site requires login, add Cookie first.
- Click Add to queue.
- The task usually starts with Extracting.
- If extraction succeeds, it continues to Downloading.
- Some sites, especially Instagram, may require a valid login session.
- Even if a site appears in the yt-dlp supported list, it may not always work normally.
Download Queue
The queue is where you manage all tasks. It shows progress, errors, and actions. Common states:- Queued: waiting to start
- Extracting: reading a page URL or preparing the stream
- Downloading: saving a normal file
- Recording: saving a live stream
- Merging / Finalizing: finishing the output file
- Completed: finished successfully
- Failed: stopped with an error
- Pause or continue
- Retry the download
- Open the output file
- Reveal the file in its folder
- Open the recovery page
- Debug request headers
If a Download Fails
Start with these checks:- Read the full error message in the queue.
- Check whether the site needs Cookie, Referer, or User-Agent.
- If the URL came from a web page, try adding it again from Capture view.
- If it is a live stream, make sure the page session is still valid.
Settings
The main setting is FFmpeg M3U8 threads.- Range:
1 - 32 - Default:
1 - Increase it slowly if a source supports faster downloading
Notes
- The update button opens the changelog page.
- In-app auto update is not available yet.
- Download success depends on the source site.
- yt-dlp support depends on the target site and may break after site updates.
- Not every site in the yt-dlp supported list will work correctly at all times.
- Only download content you are allowed to access and save.