嗅探网站视频 |
您所在的位置:网站首页 › 傲游嗅探器合并视频 › 嗅探网站视频 |
前置知识
MP4是我们常见的视频格式,往往我们在播放服务器视频时直接就是请求的MP4视频源。但其实这样并不好,MP4头文件[ftyp+moov]较大,初始化的播放需要下载完整的头文件并进行解析,之后再下载一定长度的可播视频片段才能进行播放。另外随着视频尺寸的增大头文件也会不断变大,这个初始播放时间也会更长。针对这种情况需要一种能加快视频初始解析的方法,HLS就是苹果提出的用于解决这种问题的方案。 HLS为HTTP Live Streaming的缩写,是由苹果公司提出的基于HTTP的流媒体网络传输协议,它可以同时支持直播和点播,还支持多清晰度、音视频双轨、字幕等功能。它的原理是将一整条视频分成多段小的视频,完整的播放是由这一个个片段拼接而成的。 HLS在移动端使用很广泛,当前支持HLS协议的客户端有: iOS 3.0及以上,AVPlayer原生支持HLSAndroid 3.0及以上Adobe Flash Player 11.0及以上它的大致原理是这样的: 实现HLS的一个关键步骤是上面的第四步,即索引文件和ts播放列表的组织。这里用到的就是M3U8格式。M3U8是Unicode版本的M3U,8代表使用的是UTF-8编码,M3U和M3U8都是多媒体列表的文件格式。 M3U8文件的具体内容就不介绍了,这里只需知道它是视频的索引文件。 实操方法手机的X浏览器支持嗅探视频的链接,mp4文件的话当然直接下载该文件就可以了,但是大多数情况嗅探出来的链接都是m3u8文件,手机的IDM支持解析m3u8文件,基于它去下载视频。 但是电脑的IDM没法解析m3u8文件。电脑也有一些插件支持嗅探出来链接,如Edge浏览器的FetchV。 但是这些浏览器上的插件都会有一个关键缺陷,它们都是使用浏览器的资源来工作的,这就导致它们直接把数据放到内存里面缓存! 而且,很多浏览器会有标签睡眠的功能,一旦一个选项卡太久没用就会进入睡眠状态,这个会释放该选项卡的部分内存。 如下面是对Edge浏览器的选项卡睡眠功能的介绍。 https://blogs.windows.com/msedgedev/2021/03/04/edge-89-performance/ https://techcommunity.microsoft.com/t5/articles/sleeping-tabs-faq/m-p/1705434 虽然选项卡睡眠功能只会释放部分内存,从而实现瞬间唤醒选项卡的效果,而不是关闭选项卡,关闭选项卡是所有内存都释放掉,唤醒时就得重新加载所有内容了。 但是,睡眠功能到底会不会错误地释放插件的视频缓存数据还是一个未确定的问题。 因此,很有必要找到一个好用的m3u8解析工具!下面就是一个很好的开源工具N_m3u8DL: https://github.com/nilaoda/N_m3u8DL-CLI 这个是使用文档 https://nilaoda.github.io/N_m3u8DL-CLI/ N_m3u8DL基于.NET Framework 4.6框架开发,调用系统类库进行HTTP下载。 还需要ffmpeg,为了方便就下载这个文件,内置了ffmpeg,不用自己下载。 ![]() |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |