记一次m3u8多个视频文件合并为整体法三(未加密)

第三篇了,继续简短,直接上代码(经过多次改动,请读者先看最后再回头看!!!)

下面这一行代码就是本篇的核心内容,殊途同归,起始也没有太大差异。

 1 ffmpeg -i concat:"1.mpg|2.mpg|3.mpg" -c copy output.mp4 

 1 #include<iostream>
 2 #include<string.h>
 3 using namespace std;
 4 int main()
 5 {
 6     string total="ffmpeg -i concat:""; 
 7     for(int i=1;i<4;i++)
 8     {
 9         string s="C:\Users\17724\Desktop\test\xx"+to_string(i)+".ts|";
10         total+=s;
11     }
12     //这里注意最后一个文件后面多了一个|,代码就不想改了,读者手动删除就好。 
13     total+="" -c copy "C:\Users\17724\Desktop\test\outputVideo.mp4"";
14     cout<<total<<endl;
15 }

注意路径就好了。循环次数,还有起始条件,终止条件,读者自己根据情况该改动即可。

最后将运行出来的结果复制后键入控制台,应该就万事大吉了。如果有什么问题的话,读者根据错误自己进行改动即可。

本来写到这里已经结束了,不过读者又测试了一下上千个文件的合并。发觉文件太多的时候,命令过长,不能完全粘贴到控制台。

起初以为是自己没有复制完,后来才发觉是粘贴不完。没办法,这个方法就不做推荐了。

不过,还是有了小小改动。

1 #include<iostream>
2 #include<fstream>
3 using namespace std;
4 int main()
5 {
6     ofstream mycout("C:\Users\17724\Desktop\test\temp.txt");
7     mycout<<"hello world
";
8 }

担心不好复制的话,将这两个c++代码综合就好了,这样还是不好粘贴,起码好复制了。

作者后来又把那个txt文件,改成bat的后缀来执行。直接把我给卡了半天,所以这种方法了解一下就好了。容易卡顿,只做了解即可!!!

原文地址:https://www.cnblogs.com/dayq/p/12467184.html