m3u8 文件的播放方法

[软件开发] 季雨林 2023/2/7 15:32:57

最近在一个小众视频网站看了自己想看的电视剧三体,但是有几次打开是没法观看的,源站访问不到。所以就顺道研究了一下他的视频资源。

对方使用了cdn,很显然视频本身不再这个视频网站的源站,也就是说,我完全可以避开源站观看视频,然后就有了如下过程。


1,通过浏览器可以查看到视频播放的形式,是采用 m3u8 格式文件

2,顺着这个格式了解到,.m3u8标准是apple制定的,这个文件本身是个文本索引文件,也就是说可以直接用记事本打开查看。我看到的这个文件,里面是分片的 .ts 文件,按照这些文件可以拿到原始视频。

3,知道了 .ts是分片的,接下来的思路就是:要么自己写个程序下载全部ts文件,然后或者找个工具按顺序播放,或者自己重新拼接为一个大视频文件

3.1,对于下载,我暂时没有太大兴趣。我可能只是想看一次,没计划去长久离线存储。所以先不继续考虑这个方向了。

3.2,对于播放,我发现了几点:

a,既然是apple公司的标准,那么apple自家产品的支持应当很到位,果然使用iphone或者mac系统的自带浏览器可以直接播放。

b,既然是公开标准,那么其他地方也应该支持或者经过扩展能支持,安卓手机端试了几个浏览器,可以直接播放m3u8。电脑端windows系统下,则可能需要下载插件来支持,试了下firefox,chrome可以通过Native HLS Playback插件实现。

c,通过vlc等视频播放工具,直接使用打开网络串流方式,可以填写m3u8文件的本地或者网络路径进行解析,实现自动拼接播放。

3,接下来就简单了,我要做的事,就是从目前没出故障的源站,去抓取每一集的 .m3u8文件地址即可。通过这个地址,摆脱对源站的依赖,只要原始地址能访问,我就能联网看这个视频。


回归主题总结下,如何播放.m3u8文件:

1,抓取.m3u8网址,保存下来或者直接使用都行。如果保存下来用则需要同时记录网络路径,以便于拼接用的时候补齐同路径;

2,本地工具播放,例如VLC播放器,使用网络串流方式进行播放,填写.m3u8文件路径即可;

3,安卓手机,直接浏览器访问公网.m3u8文件可以播放;

4,windows电脑下,使用chrome或者firefox可以通过Native HLS Playback插件实现访问.m3u8播放;

5,可以自行利用.m3u8下载每一个分片,自己拼接播放;


原文地址: https://www.opengps.cn/Blog/View.aspx?id=1030 文章的更新编辑依此链接为准。欢迎关注源站原创文章!

评论

暂无评论!

发表评论:

用于接收作者回复信息
点击更换验证码 - openGPS提示