m3u8 是什么?(核心概念)
m3u8 文件本身并不是视频,而是一个“播放列表”或“索引文件”。

想象一下你去电影院看电影:
- 电影文件:就是完整的一整卷电影胶片。
- m3u8 文件:就像电影院门口的节目单,这个节目单上写着:“第一部分在第1号放映厅,第二部分在第2号放映厅...”
m3u8 文件的格式叫做 M3U(MP3 Uniform Resource Locator),它最初是用来播放MP3列表的,后来被扩展以支持视频流,特别是基于 HLS (HTTP Live Streaming) 协议的流媒体。
HLS 协议 是由苹果公司提出的,现在已成为主流的流媒体协议之一,它的核心思想是:
- 切片:将一个大的、连续的视频文件(比如一场球赛)切分成无数个小的、连续的视频片段(通常是
.ts文件,每个几秒钟)。 - 索引:创建一个 m3u8 播放列表文件,里面记录了所有这些小视频片段的下载地址,以及它们的播放顺序。
- 自适应码率:可以同时提供多个不同清晰度(如 480p, 720p, 1080p)的 m3u8 播放列表,播放器会根据你当前的网络状况,自动选择最合适的清晰度进行播放,保证流畅性。
m3u8 文件的结构(长什么样?)
一个 m3u8 文件是纯文本文件,你可以用任何文本编辑器打开它,它通常包含两种类型的行:

- 标签行:以 开头,用来描述信息。
- 媒体片段行:以
http://或https://开头,是实际视频片段的下载链接。
示例:一个简单的 m3u8 文件内容
#EXTM3U #EXT-X-VERSION:3 #EXT-X-TARGETDURATION:6 #EXTINF:5.8, https://example.com/streams/segment001.ts #EXTINF:5.9, https://example.com/streams/segment002.ts #EXTINF:5.7, https://example.com/streams/segment003.ts #EXT-X-ENDLIST
逐行解释:
#EXTM3U:这是一个 M3U 文件的标准开头。#EXT-X-VERSION:3:表示 HLS 协议的版本是 3。#EXT-X-TARGETDURATION:6:告诉播放器,视频片段的最大时长是 6 秒。#EXTINF:5.8,:一个非常重要的标签。8表示下一个视频片段的时长是 5.8 秒,逗号后面可以是可选的片段标题。https://example.com/streams/segment001.ts:这是一个实际的视频片段文件(.ts 文件)的 URL,播放器会下载并播放它。#EXT-X-ENDLIST:这个标签非常重要! m3u8 文件末尾有这个标签,说明这是一个点播 或一个完整的直播回放,列表是固定的,如果没有这个标签,说明这是一个直播 流,播放器会不断请求 m3u8 文件以获取新的片段地址。
如何获取和使用 m3u8 直播地址?
m3u8 地址通常不是直接公开给你的,需要通过一些技巧找到。
如何获取 m3u8 地址?(以浏览器为例)
这是最常见的方法,适用于观看大多数网页端的直播。

步骤:
- 打开目标网页:在浏览器中打开你想要观看直播的网页(比如某个体育赛事直播网站)。
- 打开开发者工具:
- 按
F12键。 - 或者右键点击页面,选择“检查”。
- 按
- 切换到“网络” (Network) 面板:
- 在开发者工具中,找到并点击
Network标签页。
- 在开发者工具中,找到并点击
- 开始筛选:
- 在网络面板的筛选框中,输入
m3u8或master.m3u8,这样可以快速过滤出所有 m3u8 文件。
- 在网络面板的筛选框中,输入
- 刷新页面或播放视频:
现在刷新一下页面,或者点击页面上的“播放”按钮。
- 找到目标 m3u8 文件:
- 在列表中,你可能会看到好几个 m3u8 文件,你需要找的是
master.m3u8(主播放列表)或者一个清晰度较高的.m3u8文件(如1080p.m3u8)。 - 右键点击这个文件,选择 “Copy” -> “Copy link address” (复制链接地址)。
- 在列表中,你可能会看到好几个 m3u8 文件,你需要找的是
注意:很多网站为了防盗链,会对 m3u8 地址进行加密或者设置 Referer、User-Agent 等请求头,直接复制出来的链接有时无法播放,需要配合特定的播放器或工具。
如何播放 m3u8 地址?
获取到 m3u8 地址后,你有几种方式可以播放它。
使用专业播放器(推荐)
- VLC Media Player:免费、开源、跨平台,对 m3u8 支持最好。
- 打开 VLC。
- 点击 “媒体” -> “打开网络串流” (或按
Ctrl + N)。 - 将你复制的 m3u8 地址粘贴进去,点击 “播放”。
- PotPlayer:功能强大的 Windows 平台播放器。
- 右键点击播放器主界面 -> “打开” -> “打开链接”。
- 粘贴 m3u8 地址,点击 “确定”。
使用命令行工具(适合开发者)
- FFmpeg:一个非常强大的多媒体处理工具。
- 你可以用它来将 m3u8 流保存为本地视频文件,或者直接播放。
- 播放命令:
ffmpeg -i "你的m3u8地址" -c copy -f sdp -
(这个命令会输出到标准输出,通常配合其他工具使用)
- 保存命令:
ffmpeg -i "你的m3u8地址" -c copy output.mp4
在线播放器(方便但注意隐私)
- 网上有很多在线的 m3u8 播放器,你只需要把地址粘贴进去即可,但请注意,不要播放涉及版权或隐私的内容,并且注意保护自己的隐私。
m3u8 直播地址示例
一个真实的 m3u8 地址看起来就像一个普通的网页链接,但通常以 直播地址(主播放列表):
直播地址(特定清晰度):
希望这个详细的解释能帮助你完全理解 m3u8 直播地址!.m3u8
https://example-live.com/live/stream.m3u8https://example-live.com/live/1080p.m3u8
https://example-live.com/live/720p.m3u8
#EXT-X-ENDLIST 标签,而点播有。
