photo_2020-07-21_01-56-10.jpg

via 春潮频道

I. 主理人序

首先你得找到 M3U8文件,其次要安装对应的 M3U8-Downloader下载器,这样才能解析 M3U8文件 ,然后进行分段下载再合并为MP4格式文件;

II. 背景知识(HLS/M3U8是什么?)

HLS协议介绍

HLS&M3U8.jpg

HLS(全称:Http Live Streaming)是由Apple公司定义的用于实时流传输的协议,HLS基于HTTP协议实现,传输内容包括两部分,1个是 M3U8描述文件,第2个是TS媒体文件。

hls指的是流媒体视频,m3u8是一个索引文件,记录了流媒体视频的片段信息。目前大多数网络视频都是 hls 流媒体视频。通过m3u8文件下载视频片段并将其整合为mp4文件是该扩展的功能之一。

M3U8文件介绍

m3u8图示介绍.png

M3U8 是 Unicode 版本的 M3U,用 UTF-8 编码。"M3U" 和 "M3U8" 文件都是苹果公司使用的 HTTP Live Streaming(HLS) 协议格式的基础,这种协议格式可以在 iPhone 和 Macbook 等设备播放。

实际上 m3u8 文件(大小几百Kb-几兆不等)是一个包含UTF-8编码文字的m3u播放列表,m3u文件是记录了一个索引纯文本文件,打开它时播放软件并不是播放它,而是根据它的索引找到对应的音视频文件的网络地址进行在线播放。这种格式被用来作为HTTP Live 媒体流索引文件的格式(HLS)。

HLS 的工作原理是把整个流分成一个个小的基于 HTTP 的文件来下载,每次只下载一些。当媒体流正在播放时,客户端可以选择从许多不同的备用源中以不同的速率下载同样的资源,允许流媒体会话适应不同的数据速率。在开始一个流媒体会话时,客户端会下载一个包含元数据的 extended M3U (m3u8) playlist文件,用于寻找可用的媒体流。

HLS 只请求基本的 HTTP 报文,与实时传输协议(RTP)不同,HLS 可以穿过任何允许 HTTP 数据通过的防火墙或者代理服务器。它也很容易使用内容分发网络来传输媒体流。

因此,客户端获取 HLS 流文件,主要就是对 m3u8 文件进行解析操作。

via 维基百科m3u8 文件格式详解

III. 如何找到视频对应的M3U8文件?

要下载 hls 流视频(Pornhub等视频网站使用),必须先找到 m3u8 文件,可以使用 猫爪浏览器扩展/FetchV浏览器扩展自行手动抓取,找到 m3u8 文件地址后,再使用下方 M3U8-Downloader M3U8下载器解析 m3u8 文件即可下载并合并成 mp4 文件

猫爪浏览器扩展

FetchV 浏览器扩展

FetchV 浏览器扩展介绍.png

IV. M3U8下载器(for Mac/Windows/Linux)

通过 M3U8-Downloader 下载器解析并下载 m3u8 对应 HLS 流文件内容(.ts文件),最后合成转码为.mp4。

支持Windows/Linux/Mac
M3U8-Downloader https://github.com/HeiSir2014/M3U8-Downloader
应用下载发布页https://github.com/HeiSir2014/M3U8-Downloader/releases

M3U8-Downloader是基于Electron框架开发的一款可以下载、播放HLS视频流的APP(带图形操作界面),功能特点如下:
功能 支持
HLS协议点播源
自定义Http协议头下载
自定义KEY和IV解密
本地M3U8文件下载
HLS协议直播源
标准 AES-128-CBC加密
标准 AES-196-CBC加密
标准 AES-256-CBC加密
非标准 AES-*-CBC加密 ㄨ(可定制)

HLSDownloadShow-3-1.gif

V. 其他M3U8下载器(for Android/ For Mac/PC With Chrome/Firefox)

针对其他操作系统(Android)或浏览器(如PC/Mac平台下Chrome/Firefox等浏览器)在线解析M3U8与视频下载转换Mp4 可看如下介绍;

VI. M3U8下载器(for Android)

Lj 视频下载器 (m3u8, mp4, mpd):Google Play;(这个应用支持在线网页解析无需额外手动提取 M3U8 文件

更多M3U8应用:Google Play

手机没有 Google Play? 那就在网页下载谷歌商店的应用;

VII. M3U8下载器(For chrome & Firefox/FetchV)

M3U8下载器 - 浏览器扩展版.png

chrome 应用商店搜索下载

1.FetchV ;(附带嗅探与M3U8解析下载转换为Mp4;抓取下载网页m3u8视频,自动合并.ts文件,输出mp4格式文件。);

2.M3U8 Downloader;(不带嗅探功能,需提供M3U8资源链接;下载91porn的短视频(30分钟内)很方便,一键即可下载;)

VIII. FAQ:如何避免下载失败?

设置HTTP附加头(避免解析下载失败)

HLSDownloadShow.png

附加头可选:(部分M3U8文件需带User-agent才可进行下载)

Mozilla/5.0 (Macintosh; Intel Mac OS X 11_1_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.182 Safari/537.36

设置HTTP代理(部分资源需要FQ)

HTTP代理设置可选:(有些海外资源需要进行代理加速,配置好后可以说相当快)

HTTP代理设置-M3U8下载.png

http://127.0.0.1:7890

不清楚应该填哪个端口?参考此文 为终端配置Http代理(端口号设置)

M3U8-Downloaderhttps://github.com/topics/m3u8-downloader (更多项目)

最后修改:2023 年 11 月 15 日 10 : 42 AM