如何手动拼接从m3u8链接下载的ts切片视频?
注意是手动拼接!!用那些能自动合并的m3u8下载器等软件就不用考虑了。
本文基于Windows系统,其它的话也许能参考着思路。知道ffmpeg、cmd批处理概念好办,不知道的话可以看看下文里我给出的传送门,都通俗易懂。
ffmpeg也在cmd里运行,入门了解请看下面这本文集:

想了解cmd可以看我下面另一本文集。现在一般社会上都不怎么了解学习这些了好像,但它非常实用又免费。

问题引导:打算用ffmpeg下载m3u8请看下文的方法一。
如果是已用ffmpeg下载m3u8得到的一堆ts视频,比如命令行像“ffmpeg -i "xxx.m3u8xxxx" C:\Users\.m3u8”,或是已有一堆其它方法下载好的ts视频,但它们的命名有某种规律。另外也可以自行整理命名,比如用cmd或软件来批量重命名之类。请看下文的方法二。
方法一:用ffmpeg下载m3u8时加上-c copy,前提是视频的码率没有被限制。我以前下1080p用这方法结果码率给我砍到1000k就离谱……
例如下面这个命令行:
ffmpeg -i "xxx.m3u8xxxx" -c copy C:\Users\123.mp4
随便写的例子,后面输出123.mp4的保存路径可以自行改变
这样最后得到从m3u8链接下载的123.mp4,就搞定了
如果码率受限,可用下面命令行:
ffmpeg -i "xxx.m3u8xxxx" -c:a copy C:\Users\.m3u8
或者
ffmpeg -i "xxx.m3u8xxxx" C:\Users\.m3u8
对,都是问题引导那样的意思,区别是是否复制音频流信息。(不复制的话ffmpeg会自己重编码,默认音频码率128k,当然这些还可以自行在命令行里设置的。(不过人家实际多少就多少,这样码率充了水的话没意义))
然后转方法二。
方法二:利用win自带的cmd命令。很简单,你需要有excel,或wps就行了。
首先我们要知道一串命令行,如下:
copy/b 0.ts+1.ts+2.ts+3.ts new.ts
意思是把名字是0、1、2、3这四个ts视频,按从左到右顺序合并成一个名为new.ts的视频
所以这就好办了,我们打开记事本

就这么写,越多越好,写多了照样可以只用来合并几个ts视频
虽说一劳永逸,但这样手打几十上百也是很有趣的x
所以我们用到excel,像下面这样直接往右拉

然后复制粘贴到记事本


复制出现的空白,选择“编辑-替换”

把空白粘贴到“查找内容”,直接点击“全部替换”

(记得注意“copy/b 0.ts”、“+333.ts new.ts”这两个本身是带空格的)
最后给这个txt文本起个名字,把后缀改为“.bat”就完成啦

这里我只是以数字名字举例,其它道理相通的都可以
那么这个bat文件怎么用呢?
将bat文件放到和ts视频一个文件夹里,双击运行

大功告成!例子是全部按这顺序拼起来生成一个`new.ts
最后转封装成mp4就行了。
什么意思怎么转封装?可看我下面这篇中间部分:

其实我以前在《如何下载腾讯优酷a站mp4视频》都有些提到,但讲得不够好,后面有点错误,修改次数又已经用完了……所以就在那边评论区置顶了。这次再专门说一说。
最后想说,选m3u8下载器得考虑一下,软件是否支持(m3u8是否加密,什么方式的加密),本身的目的性好不好(捆绑全家桶、忽悠性质)。这里我推荐一个nilaoda出品的N_m3u8DL-CLI软件来下载m3u8,这个大佬就在b站噢(即是id),他还有另外一个下b站视频的软件biliparser也很推荐~
地址奉上:https://github.com/nilaoda/N_m3u8DL-CLI
https://github.com/nilaoda/BilibiliParser/releases
(还是一个热心的粉丝告诉我我才知道的,非常感谢!)
感谢你观看到这里。