Download an HLS stream from its .m3u8 URL and save it as a single .ts or .mp4 file. Choose a quality from a master playlist and fetch segments in parallel. Segments are fetched directly by your browser and joined locally, so it only works with unencrypted streams whose server allows cross-origin (CORS) requests.
HLS (HTTP Live Streaming) delivers video as a playlist file (.m3u8) that points to many short segment files. This tool reads the playlist, downloads every segment in your browser and joins them into one video file you can save. No conversion is done: MPEG-TS segments become a .ts file and fragmented MP4 segments become an .mp4 file.
| Stream type | Output |
|---|---|
| MPEG-TS segments (.ts) | One .ts file (plays in VLC, mpv and similar players) |
| Fragmented MP4 segments (with EXT-X-MAP) | One .mp4 file, with the init segment placed first |
Only download content you have the right to save, and follow the terms of the service you are using.
No. Your browser requests the playlist and segments directly from the streaming server and joins them locally.
Most browsers do not play MPEG-TS files directly. Open the saved file in a player such as VLC, or remux it to MP4 with a tool like ffmpeg.
The server probably does not send CORS headers allowing other sites, or the URL requires cookies or tokens that only the original player has.