网页视频流m3u8/ts视频下载

2023-05-16

现在很多视频网站播放流视频,都不是采用mp4/flv文件直接播放,而是采用m3u8/ts这种方式播放。

简单说就是,网站后台把视频切片成成百上千个xx.ts文件,一般10秒一个,每个都几百kb很小。然后通过xx.m3u8播放列表把这些文件连接起来。

通过Chrome DevTool的Network栏,我们可以清楚的看到加载过程:

image

我们直接点击这个playlist.m3u8播放列表文件,在旁边的preview栏中查看内容,可以看到:

#EXTM3U
#EXT-X-VERSION:3
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-ALLOW-CACHE:YES
#EXT-X-TARGETDURATION:11
#EXTINF:5.250000,
out000.ts
#EXTINF:9.500000,
out001.ts
#EXTINF:8.375000,
out002.ts
#EXTINF:5.375000,
out003.ts
#EXTINF:9.000000,
out004.ts
...........

那我们怎么下载呢?

下载视频所有的ts切片文件

一般的思路是,想办法把所有的ts切片文件下载下来,然后合成一个完整的视频。
然而,配合xx.m3u8播放列表文件,我们可以直接用ffmpeg在线下载播放列表中所有的视频,然后直接用ffmpeg合并为一个视频。

我们就直接执行这一句命令即可:

$ ffmpeg -i <m3u8-path> -c copy OUTPUT.mp4
$ ffmpeg -i <m3u8-path> -vcodec copy -acodec copy OUTPUT.mp4

# 例如:
ffmpeg -i https://v6.438vip.com/2018/10/17/3JAHPTdvPhQb9LrE/playlist.m3u8 -c copy  OUTPUT.mp4

然后就会看到这样的下载过程:

image

为什么下载播放列表就能下载所有的切片文件?
因为播放列表里的都是相对路径,既然我们有了播放列表的绝对路径,那么其它所有文件的绝对路径也就不难获取了。
好在ffmpeg直接实现了这种播放列表一键下载的方式。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

网页视频流m3u8/ts视频下载 的相关文章

  • css修改代码,网站模板修改中常用到的CSS代码详解

    在上一篇文章中 xff0c 提到了一些修改网站模板中常用到的方法 xff0c 工具 但其中也牵涉到不到关于CSS样式表的一些知识 xff0c 对于这些知识 xff0c 缺乏的还占大多数 xff0c 今天我就将常用的一些CSS样式表语法整理一
  • 网络热门知识点,Linux内核——网络协议栈基本知识

    1 网络协议分层 按照分层的思想把网络协议栈进行分层主要有以下好处 xff1a 1 促进标准化工作 xff0c 允许各个供应商进行开发 2 各层间相互独立 xff0c 把网络操作分成低复杂单元 3 灵活性好 xff0c 某一层变化不会影响到
  • js原生的ajax请求,Javascript封装的原生Ajax请求

    由于工作需要长期使用Ajax 一个页面重复的AJAX请求太多 于是封装起来 只需要编写回调函数 使用方法 1 ajaxrequest 函数执行准备的参数 1 请求地址2 发送数据字符串拼接3 type值可选get post4 回调函数名称
  • 服务器ibmc无法加载js文件,weUI应用之JS常用信息提示弹层的封装

    weUI应用 xff0c 自己用JS封装了几个常用的信息提示的弹层 测试页面的代码在后面有贴出 几个弹层如下图 HTML页面代码 xff1a weUI test 测试 function 提示弹层 xff0c 取消关闭 xff0c 确定做相应
  • 学习ASP.NET Core Razor 编程系列八——并发处理

    学习ASP NET Core Razor 编程系列目录 学习ASP NET Core Razor 编程系列一 学习ASP NET Core Razor 编程系列二 添加一个实体 学习ASP NET Core Razor 编程系列三 创建数据
  • putty和ssh远程登陆报错的解决方法

    putty和ssh远程登陆报错的解决方法 问题 xff1a 使用putty登录linux报错 xff1a server unexpectedly closed network connection 在另一台Linux服务器使用ssh登录 x
  • 数据归一化和两种常用的归一化方法

    数据标准化 xff08 归一化 xff09 处理是数据挖掘的一项基础工作 xff0c 不同评价指标往往具有不同的量纲和量纲单位 xff0c 这样的情况会影响到数据分析的结果 xff0c 为了消除指标之间的量纲影响 xff0c 需要进行数据标
  • 使用 Beautiful Soup 解析网页内容

    安装Beautiful Soup Beautiful Soup是一个Python的HTML解析框架 xff0c 我们可以利用它方便的处理HTML和XML文档 Beautiful Soup有3和4两个版本 xff0c 目前3已经停止开发 所以
  • XIV(4)--Flash caching

    1 xff0c Flash Cache简介 Flash cache 本身是Facebook的一个开源项目 xff0c xff08 准确的说是一个Linux的模块 xff09 xff0c 可以动态加载 Flashcache通过在文件系统 xf
  • 在Google Earth中显示中国城市和机场(动态生成KML的Demo)

    受到上次写的 在Google Earth上显示等高线 镜像1 镜像2 的启发 xff0c 写了个动态实现在Google Earth中显示中国城市和机场 xff0c 效果见最下面的图 也可以打开Google Earth后 xff0c 在临时目
  • ros 开源物体检测_ROS下物体检测和识别功能(ROS下find_object_2d)

    效果 xff1a 安装步骤 xff1a ROS Kinetic sudo apt get install ros kinetic find object 2d cd catkin ws git clone https github com
  • 安装 Ubuntu 20.04 分辨率显示不全解决方案。

    确实这个 安装20 04 版本的ubuntu 存在分辨率的缺陷 xff0c 旧版本不会出现这个现象 既然问题出现了那肯定有方案去解决的 xff0c 不需要在浪费时间去下载镜像了 解决方案 xff1a 1 win 43 鼠标左键 2 xran
  • 嵌入式工程师必读100本专业书籍

    很高兴这么多朋友阅读本篇嵌入式干货书籍汇总 xff0c 编者通过大数据调查 xff0c 经调查汇总如下 xff0c 希望对想要从事嵌入式行业或者已经是行业人士的朋友有所帮助 xff01 在调查过程中得到华清远见 星创客精英训练营的大力支持
  • 程序员工作中的一些建议

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 一 尽早地添加日志记录和错误处理 在开发新系统时 xff0c 我做的第一件事就是添加日志和错误处理 xff0c 因为这两者从一开始就非常有用 如果系统不能照常工作 xff0
  • VINS(七)estimator_node 数据对齐 imu预积分 vision

    首先通过vins estimator mode监听几个Topic xff08 频率2000Hz xff09 xff0c 将imu数据 xff0c feature数据 xff0c raw image数据 xff08 用于回环检测 xff09
  • C++多态性的总结

    抽空总结下对一直以来对C 43 43 多态性的一点个人理解 1 什么叫早绑定和晚绑定 早绑定指在对象声明的时候就和它的类型建立了关联 晚绑定是指代码在运行时再检查对象是否提供了我们所需要的方法和属性 静态关联 早绑定 和动态关联 晚绑定 2
  • 解决不能正常访问workerman的问题

    问题描述 xff1a 在阿里云ECS上部署了workerman的应用 xff08 ECS是专有网络 xff09 xff0c 在ECS安全组里已经允许workerman需要的全部端口 xff0c 但是外网一直不能正常打开 xff08 注 xf
  • 谈谈技术面试

    只要是招一个技术人员 xff0c 不管是初级的程序员还是高级软件工程师 xff0c 技术上的考核都必不可少 很荣幸作为面试官参与过公司的一些技术面试 xff0c 从中也体会到了一些东西 首先 xff0c 我觉得技术面试是需要讲究技巧的 xf
  • H3C交换机配置详解

    一 用户配置 lt H3C gt system view H3C super password H3C 设置用户分级密码 H3C undo super password 删除用户分级密码 H3C localuser bigheap 1234
  • PCL—综述—三维图像处理

    点云模型与三维信息 三维图像是一种特殊的信息表达形式 xff0c 其特征是表达的空间中三个维度的数据 和二维图像相比 xff0c 三维图像借助第三个维度的信息 xff0c 可以实现天然的物体 背景解耦 除此之外 xff0c 对于视觉测量来说

随机推荐