从一个从视频中获取到 m3u8 地址,怎样从这个地址中截取一段视频而不用下载完整的视频
1
b821025551b 2019-12-23 10:47:27 +08:00
需要看 m3u8 里面的内容,如果是一堆文件片段,自己选时间点分别解析拼接就好;如果是直播流,没办法。
|
2
1596384882 OP @b821025551b 感觉有点麻烦哈哈哈
|
3
kimiler 2019-12-23 12:08:25 +08:00
m3u8 文件里是许多 ts 文件,你把你想要的 ts 下载下来是否是你想要的。
|
4
1596384882 OP @kimiler 那怎么判断视频片段对应的 ts 文件应该是哪一部分
|
5
ss098 2019-12-23 12:39:30 +08:00
将 ffmpeg 的输入设为这个 m3u8 然后截取指定片段试试?
m3u8 文件里面有描述 ts 文件的时间长度,是可以判断某个时刻属于哪个部分的。 |
6
kimiler 2019-12-23 12:40:00 +08:00
@1596384882 有标记的,你打开 m3u8 文件可以看到
|
7
1596384882 OP @kimiler 好滴好滴
|
8
HTSdTt3WygdgQQGe 2019-12-23 13:15:39 +08:00 via Android
把所有切片文件下载下来,删除不需要的,用 ffmpeg 合并剩下的
|
9
1596384882 OP @ss098 好滴我试试
|
10
HTSdTt3WygdgQQGe 2019-12-23 13:16:26 +08:00 via Android
或者自己做一个 m3u8 文件,只保留需要的 ts
|
11
1596384882 OP @q409640976 这个方法感觉比整个视频下载再剪切还麻烦 0.0
|
12
byfar 2019-12-23 13:31:27 +08:00
最简单的方法还是全部下载,然后截取。
m3u8 是一个配置文件,里面包含了所有段的实际地址。要想只下载部分,那只有解析配置文件,找到需要的分片列表,下载过来后再合并。 |
13
fengbjhqs 2019-12-23 14:04:43 +08:00
播放这个文件,打开浏览器开发中工具,拖动到你要剪切的地方,在网络标签下面就会看见当前正在加载的文件,记下来, 然后编辑 m3u8 文件就对了
|
14
hu8245 2019-12-23 14:26:46 +08:00
除非了自己写个程序 parse 一下 m3u8,然后 setPos 开始下载。能这样搞还不如 F12 XHR 里拿试试
|
15
ji39 2019-12-23 14:27:14 +08:00
自己计算,根据一个 ts 的时间,这个时间是固定的,算出所需时间所在的 ts 文件 url
|
16
bigmama 2019-12-23 17:27:29 +08:00
直接录屏啊。。。方便多了
我用的是 oCam |