O que é o formato de ficheiro M3U8?
Arquivos com a extensão .m3u8 são playlists multimídia codificadas em UTF-8. Estes são arquivos de texto padrão - eles não contêm nenhum dado real de áudio ou vídeo, mas apenas referências a arquivos multimídia ou subpastas que os armazenam. Além das referências, eles também incluem informações sobre a playlist por meio de linhas de comentário que começam com #. Toda playlist estendida deve começar com a tag de cabeçalho #EXTM3U em sua primeira linha.
As referências a multimídia contidas em arquivos .m3u8 podem ocorrer de três formas: como um caminho relativo, um caminho absoluto ou um endereço URL.
Streaming HLS. Hoje, os arquivos .m3u8 são amplamente utilizados como manifestos de HTTP Live Streaming (HLS) - uma tecnologia introduzida pela Apple em 2009 e posteriormente padronizada como RFC 8216. Nesta função, o arquivo descreve onde buscar pequenos segmentos de vídeo .ts (geralmente de 2 a 10 segundos cada) e, em uma playlist mestre, quais variantes de qualidade estão disponíveis. Diretivas específicas de HLS usam o prefixo #EXT-X- - por exemplo, #EXT-X-STREAM-INF declara uma taxa de bits variante, e #EXT-X-ENDLIST sinaliza que um stream está completo.
Arquivos .m3u8 podem ser comumente encontrados em serviços de streaming, players de IPTV e estações de rádio na Internet. Eles também são usados para armazenar playlists que incluem nomes de músicas multilíngues, devido ao padrão de codificação de símbolos UTF-8 garantir que caracteres não-ASCII sejam exibidos corretamente.
.m3u8 e .m3u são formatos muito semelhantes entre si - são arquivos de playlist reconhecidos por múltiplos players multimídia. A única coisa que os diferencia é a garantia de codificação: .m3u8 é explicitamente UTF-8, enquanto arquivos .m3u podem usar qualquer codificação de 8 bits dependendo da localidade do sistema, o que pode fazer com que títulos com acentos ou caracteres não latinos sejam exibidos incorretamente.
Segurança e proteção
RISCO: LOWO arquivo .m3u8 em si é um texto simples inofensivo. Duas precauções práticas: (1) ele pode apontar para URLs remotas, então uma playlist maliciosa pode direcionar um player para conteúdo indesejado - inspecione playlists desconhecidas em um editor de texto primeiro. (2) Salvar vídeos transmitidos via m3u8 pode violar os termos de um site ou direitos autorais; baixe apenas streams aos quais você tem direito. Evite sites suspeitos de «m3u8 downloader» que exibem anúncios/PUP - use o yt-dlp ou o ffmpeg diretamente.
Detalhes do formato
em resumoProgramas que abrem arquivos M3U8
Detalhes técnicos
especificação profunda| Tipo de arquivo | Texto UTF-8 simples; legível por humanos e editável em qualquer editor de texto sem software especial |
| Tipos MIME | `application/vnd.apple.mpegurl` (HLS); `audio/x-mpegurl` (playlist local legada) |
| Cabeçalho mágico | `#EXTM3U` deve aparecer na primeiríssima linha de cada playlist `.m3u8` estendida |
| Codificação de caracteres | Estritamente UTF-8; o `8` na extensão sinaliza isso explicitamente, permitindo títulos de faixas e caminhos de arquivos não-ASCII |
| Tipos de referência | Caminhos de arquivo relativos, caminhos de arquivo absolutos e URLs completas HTTP/HTTPS/RTSP |
| Formato de segmento HLS | Arquivos MPEG-2 Transport Stream (`.ts`) ou MP4 fragmentado (`.fmp4`) buscados sequencialmente pelo player |
| Prefixo de diretiva HLS | Tags `#EXT-X-` controlam o comportamento do stream - ex: `#EXT-X-TARGETDURATION`, `#EXT-X-STREAM-INF`, `#EXT-X-ENDLIST` |
| Duração do segmento | Geralmente de 2 a 10 segundos por segmento, declarado por `#EXTINF` por entrada e limitado por `#EXT-X-TARGETDURATION` |
| Taxa de bits adaptável | Um `.m3u8` mestre lista playlists filhas em diferentes taxas de bits e resoluções via `#EXT-X-STREAM-INF` |
| Criptografia | Criptografia AES-128 por segmento declarada com `#EXT-X-KEY`; suporta entrega de chave baseada em URI |
| Integração DRM | Compatível com Apple FairPlay, Google Widevine e Microsoft PlayReady via `#EXT-X-SESSION-KEY` |
| Ao vivo vs. VOD | Streams ao vivo omitem `#EXT-X-ENDLIST`; playlists de VOD concluídas terminam com ela para que o player saiba que o stream acabou |
| Faixas de legendas | Faixas WebVTT ou TTML referenciadas via `#EXT-X-MEDIA TYPE=SUBTITLES` ou `TYPE=CLOSED-CAPTIONS` |
| Sintaxe de comentário | Qualquer linha começando com `#` que não seja uma tag reconhecida é tratada como um comentário; usada para metadados como artista e título |
| Lançado | M3U from Winamp (late 1990s); m3u8 = UTF-8 M3U; HLS use of m3u8 since 2009 (Apple), RFC 8216 in 2017 |
| Padrão aberto | Sim · livre de royalties |
| Especificação | datatracker.ietf.org |