M3U format reference

Exactly how this editor parses and writes M3U/M3U8 — documented parser and generator behaviour.

What the parser reads

What the generator writes

EXTINF attributes

AttributeMeaningEditable in the UI
tvg-idEPG channel identifierYes
tvg-nameChannel name used by EPG sources; also the fallback display nameYes
tvg-logoChannel logo URLYes
group-titleGroup the channel is listed underYes
timeshiftCatch-up offset in hoursNo — preserved unchanged
catchup-daysNumber of days of catch-up availableNo — preserved unchanged
catchup-typeCatch-up mechanism advertised by the providerNo — preserved unchanged
url-tvgEPG source URL — an #EXTM3U header attribute, not per channelNo — preserved unchanged

Round-trip example

The input line on the left, what export writes on the right.

Input

#EXTINF:-1 group-title="News" tvg-id="bbc.uk" tvg-logo="https://example.com/bbc.png",BBC News
https://example.com/bbc/index.m3u8

Output

#EXTINF:-1 tvg-id="bbc.uk" group-title="News" tvg-logo="https://example.com/bbc.png",BBC News
https://example.com/bbc/index.m3u8

Link-check statuses

StatusMeaning
okThe stream responded successfully.
redirectA redirect response; the resolved address is reported as final_url.
timeoutNo response within the allotted time.
errorTransport failure or an HTTP error code.
forbiddenThe server refused access.