How to Download M3U8 Videos: Complete Step-by-Step Guide
Learn how to download M3U8 streaming videos using our free online tool. This guide covers everything from finding the M3U8 URL to bypassing CORS restrictions and saving the final video file.
Quick Navigation
Method 1: Using Our Online M3U8 Downloader (Recommended)
The easiest way to download M3U8 videos is using our free tool. No software installation required. Here is how:
Find the M3U8 URL
Open the video page, press F12 to open DevTools, go to the Network tab, filter for "m3u8", and copy the playlist URL.
Paste the URL in Our Tool
Go to our homepage, paste the M3U8 URL in the input field, and click "Load". The player will start streaming the video immediately.
Configure Proxy Settings (If Needed)
If the video does not load due to CORS errors, enable the CORS proxy and set the correct Referer/Origin headers to match the source website.
Switch to Downloader Tab & Start Download
Click the "Downloader" tab, select your preferred export format (TS or MP4), adjust concurrency if needed, click "Analyze M3U8", then "Start Download". The browser will download all segments in parallel.
Save the Merged Video
Once all segments are downloaded, click "Save as .ts" (or .mp4). The merged file will be automatically downloaded to your computer through the browser.
Method 2: Using Browser Developer Tools
For advanced users, you can extract and download M3U8 content directly from browser DevTools:
- Open the video page and press F12 — Open Developer Tools in your browser.
- Go to the Network tab — Switch to the network monitor.
- Filter by m3u8 or .ts — Type m3u8 or .ts in the filter box to find the playlist.
- Copy the playlist link — Find the playlist request, right-click, and select Copy > Copy link address.
- Paste into our tool or FFmpeg — Paste the URL into our tool or use FFmpeg to download.
Note: Note: Many modern streaming sites use DRM (Widevine/FairPlay) to encrypt their content. Our tool and standard download methods cannot bypass DRM protection. This tool is intended for unprotected or self-owned content.
Method 3: Command Line with FFmpeg
For power users, FFmpeg can download M3U8 streams directly from the command line:
ffmpeg -i "https://example.com/path/playlist.m3u8" -c copy output.mp4
Note: Replace the URL with your playlist. Add -headers if the source requires a Referer or User-Agent. This method downloads and merges all segments into a single MP4 file.
How to Find the M3U8 URL
Before downloading, you need the M3U8 playlist URL. The fastest way:
- Open the video page — Load the page that is playing the video.
- Open Developer Tools — Press F12 (or right-click Inspect) to open DevTools.
- Go to Network tab — Switch to the Network tab and reload the page.
- Filter for m3u8 — Type m3u8 in the filter box to find playlist requests.
- Copy the URL — Right-click the .m3u8 request and choose Copy > Copy URL.
Note: If you see multiple .m3u8 files, the media playlist (with the most segments) is usually the one you want. A master playlist lists quality variants.
Solving CORS & Hotlink Issues
If your M3U8 download fails to load, it is almost always a CORS or hotlink issue. Here is how to fix it:
- Enable the built-in CORS proxy in our tool to fetch segments server-side.
- Set the correct Referer header to match the original video page.
- Set the correct Origin or User-Agent header if required by the source.
- Try a different stream or source if the origin strictly blocks cross-site access.
Note: Our free tool uses a built-in Cloudflare Worker proxy so segments are fetched where CORS does not apply, then merged and returned to your browser.
Troubleshooting Common Problems
When a download fails, one of these is usually the cause:
- CORS blocked — enable the proxy and set Referer/Origin headers.
- Expired URL — grab a fresh playlist URL; signed links often expire quickly.
- DRM protected — our tool cannot bypass Widevine/FairPlay encryption.
- Encrypted segments — AES-128 segments need the decryption key.
- Wrong format — choose the correct export format (TS or MP4).
- Network limits — reduce concurrency if downloads stall.