网页在线视频下载教程(m3u8格式介绍及下载教程)「建议收藏」

简介:m3u8文件是苹果公司使用的HTTPLiveStreaming(HLS)协议格式的基础。HLS是新一代流媒体传输协议,其基本实现原理为将一个大的媒体文件进行分片,将该分片文件资源路径记录与m3u8文件(即playlist)内,其中附带一些额外描述(比如该资源的多带宽信息等…)用于提供给客户端。客户端依据该m3u8文件可获取对应的媒体资源,进行播放。因此,客户端获取HLS流文件,主…

大家好,又见面了,我是你们的朋友全栈君。

简介:

m3u8文件是苹果公司使用的HTTP Live Streaming(HLS)协议格式的基础。HLS是新一代流媒体传输协议,其基本实现原理为将一个大的媒体文件进行分片,将该分片文件资源路径记录与m3u8文件(即playlist)内,其中附带一些额外描述(比如该资源的多带宽信息等…)用于提供给客户端。客户端依据该m3u8文件可获取对应的媒体资源,进行播放。因此,客户端获取HLS流文件,主要是对m3u8文件进行解析操作。

m3u8文件实质是一个播放列表(playlist),其可能是一个媒体播放列表(Media Playlist),或者是一个主列表(Master Playlist)。但无论是哪种播放列表,其内部文字使用的都是utf-8编码。

(1)当m3u8文件作为媒体播放列表(Media Playlist)时,其内部信息记录的是一系列媒体片段资源,顺序播放该片段资源,即可完整展示多媒体资源。其格式如下所示:

#EXTM3U
#EXT-X-TARGETDURATION:10

#EXTINF:9.009,
http://media.example.com/first.ts
#EXTINF:9.009,
http://media.example.com/second.ts
#EXTINF:3.003,
http://media.example.com/third.ts

对于点播来说,客户端只需要顺序下载上述片段资源,依次进行播放即可。而对于直播来说,客户端需要定时重新请求该m3u8文件,看下是否有新的片段数据需要进行下载并播放。

(2)当m3u8作为主播放列表(Master Playlist)时,其内部提供的是同一份媒体资源的多份流列表资源(Variant Stream)。其格式如下所示:

#EXTM3U
#EXT-X-STREAM-INF:BANDWIDTH=150000,RESOLUTION=416x234,CODECS="avc1.42e00a,mp4a.40.2"
http://example.com/low/index.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=240000,RESOLUTION=416x234,CODECS="avc1.42e00a,mp4a.40.2"
http://example.com/lo_mid/index.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=440000,RESOLUTION=416x234,CODECS="avc1.42e00a,mp4a.40.2"
http://example.com/hi_mid/index.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=640000,RESOLUTION=640x360,CODECS="avc1.42e00a,mp4a.40.2"
http://example.com/high/index.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=64000,CODECS="mp4a.40.5"
http://example.com/audio/index.m3u8

该备用流资源制定了多种不同的码率,不同格式的媒体播放列表,并且,该备用流资源也可同时提供不同版本的资源内容,比如不同语言的音频文件,不同角度拍摄的视频文件等等。客户可以根据不同的网络状态选取合适码率的资源,并且最好根据用户喜好选择合适的资源码率。

教程:

我们在用网页观看在线视频时,很多视频是不提供下载接口的,并且使用google强大的插件都无济于事,这里提供使用m3u8格式来破解并下载视频的教程。

目标:下载某在线网页的电视剧《风筝》第五集,视频链接为:https://www.wandouys.com/video/play/35616-4-5.html

网页在线视频下载教程(m3u8格式介绍及下载教程)「建议收藏」

步骤一:目前使用Google浏览器,按F12进入开发者模式,打开Network,并刷新,找到这个视频的m3u8文件,双击即可下载。如图所示:

网页在线视频下载教程(m3u8格式介绍及下载教程)「建议收藏」

用记事本打开下载好的playlist.m3u8文件,这里面保存着把各个被分段之后的视频的排序,此处媒体片段的路径采用了相对路径表示。如图所示:

网页在线视频下载教程(m3u8格式介绍及下载教程)「建议收藏」

为了后续下载方便,需要把相对路径转化为绝对路径。这里我们选取其中的一个媒体片段,点击媒体片段out001.ts,右侧Headers栏会显示出当前选取的媒体片段的绝对路径。如图所示:

网页在线视频下载教程(m3u8格式介绍及下载教程)「建议收藏」

复制该绝对地址,并对刚刚下载好的m3u8文件中的相对路径进行替换。如图所示:

网页在线视频下载教程(m3u8格式介绍及下载教程)「建议收藏」

至此,替换m3u8文件完成,接下在的任务就是下载这些媒体文件了。

步骤二:下载并安装IDM软件,这里使用Internet Download Manager(IDM) v6.25.24 绿色汉化特别破解注册版.zip,解压即可,稍后将上传该压缩包。软件效果如图所示:

网页在线视频下载教程(m3u8格式介绍及下载教程)「建议收藏」

使用记事本打开修改好的m3u8文件,全选替换好的m3u8文件,在IDM中,选择“任务”——->“”从剪切板中添加批量下载”,即可弹出需要下载的视频列表,如图所示:

网页在线视频下载教程(m3u8格式介绍及下载教程)「建议收藏」

选择文件保存目录,并点击“确定”,即可开始下载。如图所示:

网页在线视频下载教程(m3u8格式介绍及下载教程)「建议收藏」

步骤三:使用格式工厂,将下载好的ts文件合并,并转码为mp4格式。即可得到该网页视频文件。如图所示:

网页在线视频下载教程(m3u8格式介绍及下载教程)「建议收藏」

 

 

 

 

 

 

 

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/124883.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Owasp top10 小结[通俗易懂]

    Owasp top10 小结[通俗易懂]Owasptop101.SQL注入原理:web应用程序对用户输入的数据合法性没有过滤或者是判断,前端传入的参数是攻击者可以控制,并且参数带入数据库的查询,攻击者可以通过恶意的sql语句来实现对数据库的任意操作。2.失效的身份认证和会话管理原理:在开发web应用程序时,开发人员往往只关注Web应用程序所需的功能,所以常常会建立自定义的认证和会话方案。但是要正确的实现这些方案却是很难的。结果就在退出,密码管理,超时,密码找回,账户更新等方面存在漏洞。危害:由于存在以上的漏洞,恶意用户可能会窃取

  • Kotlin学习之路(4)函数的运用

    Kotlin学习之路(4)函数的运用

  • iptables命令

    iptables命令

  • [图像]Canny检测的Matlab实现(含代码)「建议收藏」

    [图像]Canny检测的Matlab实现(含代码)「建议收藏」图象的边缘是指图象局部区域亮度变化显著的部分,该区域的灰度剖面一般可以看作是一个阶跃,既从一个灰度值在很小的缓冲区域内急剧变化到另一个灰度相差较大的灰度值。Canny边缘检测基本特征如下:(1)必须满足两个条件:①能有效地抑制噪声;②必须尽量精确确定边缘的位置。(2)根据对信噪比与定位乘积进行测度,得到最优化逼近算子。这就是Canny

  • PHP审计之PHP反序列化漏洞

    PHP审计之PHP反序列化漏洞前言一直不懂,PHP反序列化感觉上比Java的反序列化难上不少。但归根结底还是serialize和unserialize中的一些问题。在此不做多的介绍。魔术方法

    2021年12月13日
  • tcpdump抓包命令详解_tcpdump抓udp包命令详解

    tcpdump抓包命令详解_tcpdump抓udp包命令详解linux抓包-tcpdump命令:enp4s0f0—ifconfig—>网卡名称-s0—->不限制抓包的大小port25228—->只抓取服务器上25228端口的数据流量-whk2.pcap—>保存的文件名称-v—>显示抓包的大小数字

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号