网页视频下载
在浏览器里完成,不经过转码服务器

先播放,再把正在看的视频保存到本机。

扩展在视频播放时识别页面已经加载的 MP4 和 m3u8。完整文件直接保存。播放列表会选择最高清晰度,把分片按顺序合并,并在浏览器里封装成一个可以本地播放的 MP4。

使用步骤

  1. 在 Chrome 或 Edge 安装扩展,打开正在播放视频的网页。
  2. 让视频播放几秒。扩展图标上的数字,是当前页面已经识别到的视频条数。
  3. 点击扩展,在列表里选择要保存的条目。同一条片子的多个清晰度会保留最高的一档。
  4. 文件进入浏览器的下载目录。MP4 可以直接用系统播放器打开。

分别怎么处理

完整 MP4、WebM

地址本身就是一个文件时,直接保存。不重新编码,画质和原来一致。

m3u8 播放列表

先读取主播放列表,选带宽或分辨率最高的版本,再逐个下载分片。普通 AES-128 分片会先解密,然后封装成一个 MP4。

抓不到地址时

可以录下播放器已经缓冲的内容。MediaSource 播放器保存原始缓冲;没有原始数据时,录当前画面为 WebM。

保存时会带上什么

下载使用这次播放真正发出的请求头,并补上该视频地址需要的登录 Cookie。这样已登录页面里的普通视频也能按原请求保存。请求头只用于这一次保存。

做不到的情况

DRM 加密

Widevine 等受保护视频,播放器拿到的是加密样本。扩展不能把它变成可播放文件。

音视频分开

有的 m3u8 把画面和声音分成两条流。当前版本优先保存最高的视频流,声音可能不在同一个文件里。

只缓冲了一部分

录制只能保存播放器已经缓冲的片段。需要先把进度拖回开头,或继续播放让缓冲变长。