* 仕様書

[REFS[
- [2] [CITE@en[RFC 8216 - HTTP Live Streaming]] ([TIME[2018-04-11 20:05:57 +09:00]]) <https://tools.ietf.org/html/rfc8216#section-2>
- [5] '''[CITE@en[RFC 8216 - HTTP Live Streaming]] ([TIME[2018-04-22 20:10:35 +09:00]]) <https://tools.ietf.org/html/rfc8216#section-4>'''
]REFS]

* 構成

[3] [[HLS]] の[DFN[[RUBYB[プレイリスト]@en[Playlist]]]]は、
[[媒体プレイリスト]]または[[マスタープレイリスト]]です [SRC[>>2]]。

[4] [[プレイリスト][HLSプレイリスト]]は、 [[URL]] と[RUBYB[記述的タグ]@en[descriptive tag]]を含んだ
[[UTF-8]] [[テキストファイル]]です [SRC[>>2]]。

[6] [[RFC 8216]] 第4章の[[プレイリスト][HLSプレイリスト]]の規定における [MUST[MUST]]
要件は、[[合法]]の[[プレイリスト][HLSプレイリスト]]の構文と構造の規則を定めるものであり、
違反は[[非妥当]]であります。[[クライアント]]は[[構文解析]]に[RUBYB[失敗]@en[fail]]しなければ[MUST[なりません]]。
[SRC[>>5]]

* MIME型と拡張子

[1] [[プレイリスト][HLSプレイリスト]]の[[ファイル]]は、
[[URL path]] の[[末尾][拡張子]] [DFN[[CODE[.m3u8]]]] または [DFN[[CODE[.m3u]]]]
により、または
[[MIME型]] [CODE(MIME)@en[application/vnd.apple.mpegurl]] または
[CODE(MIME)@en[audio/mpegurl]] により識別しなければ[MUST[なりません]]。 [SRC[>>5]]

[7] [[クライアント]]は、[[プレイリスト][HLSプレイリスト]]であると識別されていないものの[[構文解析]]を拒む[SHOULD[べきです]]
[SRC[>>5]]。

[8] 
現実にはこの他に

- [CODE[audio/x-mpegurl]]
- [CODE[application/x-mpegurl]]
- [CODE[video/x-mpegurl]]
- [CODE[video/x-mpegurl]]

が使われることがあります。

* メモ