首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

php与ffmpeg实现vip视频m3u8的解析下与自动合并ts

某些个视频网站弄一些vip来恶心人,具体是谁,咱不说大家也都知道。

直接来说具体的做法,首先是抓包得到对应请求链接(如果是web端,更简单了)。

我这里抓到一个视频主链接是相当于webview的形式,也就是web端直接可以打开的网页,但vip限制仍然在。

接下来f12审查元素,发现里面有请求一个key文件,说明这个m3u8是有key加密的。

直接新标签另存为这个key文件,比如另存为enkey.key。

接下来下载他的主m3u8文件,这个之前有说过,这里不再重复。

这里也主要是基于之前的情况进行修改。

可以导航到

解决ffmpeg下载远程m3u8视频大量ts分片失败重试成本高的问题 (gaojiupan.cn)

这里查看之前的实现。

之前没有考虑到key的情况。

那么这里在之前的情况下将生成的

new.m3u8中

#EXT-X-KEY:METHOD=AES-128,URI="/api/app/media/enkey"

修改为

#EXT-X-KEY:METHOD=AES-128,URI="enkey.key"

另外就是将之前的脚本

m3u8_download.php中的ffmpeg命令之前的参数前面加上如下参数

-allowed_extensions ALL -protocol_whitelist "file,http,crypto,tcp"

那么最终的ffmpeg命令输出将由脚本输出如:

D:\software\ffmpeg-master-latest-win64-gpl\ffmpeg-master-latest-win64-gpl\bin\ffmpeg.exe -allowed_extensions ALL -protocol_whitelist "file,http,crypto,tcp"  -threads 0 -i "C:\Users\Administrator\e118f39713ba19ff0276e89c42a8c437\new.m3u8" -c copy -y "C:\Users\Administrator\PhpstormProjects\untitled\weiyoulaisheng.mp4"

由于之前做过缓存处理,所以中间修改new.m3u8后再次执行时就可以直接合并,不用重复下载了。

  • 发表于:
  • 原文链接https://page.om.qq.com/page/Oi7agdD3JVKUjb1Rs3e7fKCg0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券