Zero Signup ToolsFree browser tools

Converter Tools

M3U Playlist Parser and Builder

Parse an M3U or M3U8 playlist into a clean track list with decoded titles and durations, or build a valid Extended M3U file and download it. No signup.

0 chars
Paste a playlist on the left. The parser runs in your browser and builds a track table with each entry's URL or path, plus the decoded #EXTINF title and duration when the file is an extended playlist. Use the sample buttons to see an extended .m3u and a simple one-URL-per-line list.

How to use

  1. Choose a mode: Parse a playlist to read an existing .m3u or .m3u8 file, or Build a playlist to create one from scratch.
  2. To parse, paste the playlist text into the box, or click Load extended sample or Load simple sample to see how each is read.
  3. Read the track table: each entry shows its URL or path, a URL or Local path tag, and, for Extended M3U files, the decoded #EXTINF title and duration. The summary shows the playlist type, track count, and total runtime.
  4. Check the Warnings and Notes panels for common issues such as a missing #EXTM3U header or a #EXTINF with no title, and use Copy titles or Copy URLs to grab either column.
  5. To build, set an optional playlist name, then add a track path or URL with an optional title and duration in seconds. Leave the duration blank for a live or unknown-length stream.
  6. Reorder tracks with the Up and Down buttons, then copy the generated playlist or pick .m3u or .m3u8 and click Download.

About this tool

M3U Playlist Parser and Builder does the two jobs people search for around .m3u and .m3u8 files: reading what is inside one and creating a correct one. An M3U file is a plain-text playlist, one file path or URL per line, used by VLC, foobar2000, Kodi, IPTV apps, and most media players. The .m3u8 extension is the same format saved as UTF-8, which matters when track names use non-ASCII characters. The Extended M3U variant adds a #EXTM3U header and a #EXTINF line before each track that carries the duration in seconds and a title, usually written as artist and track. Paste any playlist into the Parse view and the tool builds a numbered track table: every entry shows its path or URL, whether it is a local path or an absolute URL, and, when an Extended playlist provides them, the title and the duration shown both in seconds and as mm:ss. A duration of -1 means a live stream or unknown length and is labeled as such rather than counted. The summary reports the playlist type (simple, header-only, or extended), how many tracks carry a duration, the playlist name from a #PLAYLIST directive, and the combined runtime of the tracks whose length is known. Directives that real files use are recognized and explained, including #PLAYLIST, #EXTGRP group labels that apply to the tracks beneath them, #EXTVLCOPT, #EXTALB, and #EXTART, and HLS #EXT-X- tags are shown for reference since an .m3u8 streaming manifest reuses this base grammar. The parser is forgiving in the ways that matter: it strips a UTF-8 byte order mark, accepts Windows or Unix line endings, ignores blank lines, tolerates a #EXTINF with attributes before the comma the way IPTV playlists write them, and raises clear warnings for the common mistakes, a #EXTINF with no comma and therefore no title, a #EXTINF with no numeric duration, two #EXTINF lines with no track between them, and a #EXTM3U header that is not on the first line. When a track has no #EXTINF title, the tool derives a readable name from the file name so the list is still useful. The Build view goes the other way. Add tracks with an optional title and duration, reorder them, and the tool emits a valid Extended M3U document with the #EXTM3U header, an optional #PLAYLIST name, and one #EXTINF line per track that has metadata. Leave a duration blank and it is written as -1 for a live or unknown-length entry. You can copy the result or download it as a .m3u or a UTF-8 .m3u8 file. One honest limit: this is a playlist reader and writer, not a downloader or transcoder. It does not fetch the URLs, play the audio, or split an HLS stream into segments; it works only on the text of the playlist itself. Everything runs locally in your browser, and the playlist you paste or build is never uploaded or logged.

Free to use. Works in your browser. No signup, no login.

Related tools

You may also like

All tools
All toolsConverter Tools