Hvad er M3U8-filformatet?
Filer med filtypen .m3u8 er UTF-8-kodede multimedie-playlister. Dette er standard tekstfiler - de indeholder ikke nogen reelle lyd- eller videodata, men kun referencer til multimediefiler eller undermapper, hvor de er gemt. Udover referencerne indeholder de også information om playlisten via kommentarlinjer, der begynder med #. Enhver udvidet playliste skal starte med header-tagget #EXTM3U på den første linje.
Referencer til multimedier i .m3u8-filer kan forekomme i tre former: som en relativ sti, en absolut sti eller en URL-adresse.
HLS-streaming. I dag bruges .m3u8-filer mest udbredt som HTTP Live Streaming (HLS) manifester - en teknologi introduceret af Apple i 2009 og senere standardiseret som RFC 8216. I denne rolle beskriver filen, hvor man kan hente korte .ts videosegmenter (typisk 2-10 sekunder hver), og i en master-playliste, hvilke kvalitetsvarianter der er tilgængelige. HLS-specifikke direktiver bruger præfikset #EXT-X- - for eksempel erklærer #EXT-X-STREAM-INF en variant-bitrate, og #EXT-X-ENDLIST signalerer, at en stream er færdig.
.m3u8-filer kan ofte findes i streamingtjenester, IPTV-afspillere og internetradiostationer. De bruges også til at gemme playlister med flersprogede navne på sange, da UTF-8-symbolets kodningsstandard sikrer, at ikke-ASCII-tegn vises korrekt.
.m3u8 og .m3u er formater, der minder meget om hinanden - de er playlistefiler, der genkendes af flere multimedieafspillere. Det eneste, der adskiller dem, er garantien for kodning: .m3u8 er eksplicit UTF-8, mens .m3u-filer kan bruge enhver 8-bit kodning afhængigt af systemets sprogindstillinger, hvilket kan medføre, at titler med accenter eller ikke-latinske tegn vises forkert.
Sikkerhed og tryghed
RISIKO: LOWSelve .m3u8-filen er harmløs almindelig tekst. To praktiske forholdsregler: (1) den kan pege på eksterne URL'er, så en ondsindet playliste kan dirigere en afspiller til uønsket indhold - inspicer ukendte playlister i et tekstredigeringsprogram først. (2) Lagring af streamet video via m3u8 kan overtræde et websteds vilkår eller ophavsret; download kun streams, du har ret til. Undgå tvivlsomme «m3u8 downloader»-websteder, der promoverer reklamer/PUP - brug yt-dlp eller ffmpeg direkte.
Formatdetaljer
kort fortaltProgrammer der åbner M3U8-filer
Tekniske detaljer
dyb specifikation| Filtype | Simpel UTF-8 tekst; læsbar og redigerbar i ethvert tekstredigeringsprogram uden specialsoftware |
| MIME-typer | `application/vnd.apple.mpegurl` (HLS); `audio/x-mpegurl` (forældet lokal playliste) |
| Magic header | `#EXTM3U` skal fremgå på den allerførste linje i enhver udvidet `.m3u8`-playliste |
| Tegnkodning | Strengt UTF-8; `8`-tallet i filtypen signalerer eksplicit dette, hvilket muliggør ikke-ASCII sangtitler og filstier |
| Referencetyper | Relative filstier, absolutte filstier og fulde HTTP/HTTPS/RTSP URL'er |
| HLS-segmentformat | MPEG-2 Transport Stream (`.ts`) eller fragmenterede MP4 (`.fmp4`) filer hentet sekventielt af afspilleren |
| HLS-direktivpræfiks | `#EXT-X-` tags styrer stream-adfærd - f.eks. `#EXT-X-TARGETDURATION`, `#EXT-X-STREAM-INF`, `#EXT-X-ENDLIST` |
| Segmentvarighed | Typisk 2-10 sekunder pr. segment, erklæret af `#EXTINF` pr. post og begrænset af `#EXT-X-TARGETDURATION` |
| Adaptiv bitrate | En master `.m3u8` viser under-playlister med forskellige bitrater og opløsninger via `#EXT-X-STREAM-INF` |
| Kryptering | AES-128 kryptering pr. segment erklæret med `#EXT-X-KEY`; understøtter URI-baseret levering fra nøgleserver |
| DRM-integration | Kompatibel med Apple FairPlay, Google Widevine og Microsoft PlayReady via `#EXT-X-SESSION-KEY` |
| Live vs. VOD | Live-streams udelader `#EXT-X-ENDLIST`; færdige VOD-playlister afslutter med det, så afspilleren ved, at streamen er slut |
| Undertekst- og tekstningsspor | WebVTT- eller TTML-spor refereret via `#EXT-X-MEDIA TYPE=SUBTITLES` eller `TYPE=CLOSED-CAPTIONS` |
| Kommentarsyntaks | Enhver linje, der begynder med `#`, og som ikke er et genkendt tag, behandles som en kommentar; bruges til metadata som kunstner og titel |
| Udgivet | M3U from Winamp (late 1990s); m3u8 = UTF-8 M3U; HLS use of m3u8 since 2009 (Apple), RFC 8216 in 2017 |
| Åben standard | Ja · royaltyfri |
| Specifikation | datatracker.ietf.org |