合并ts文件
合并ts文件
合并ts文件
文件在手机中的存储:
├── fe2cd5a64fe78a69f90a7c0a2b08a240e1444082.ts
├── ff5b590b44e676dc0a72d127fd165adaa0a478ec.ts
├── ff7085e695211f5e0b8cd239d51ad7870889c14b.ts
├── ....
├── ffec91db3441fd42adab27d0dbe26f424fc23a1d.ts
├── index.m3u8
├── index.m3u8.play
├── task.info
1) 根据猎豹浏览器中的download.db,使用sqlite3打开文件,查看对应文件在手机浏览器中的真实路径.
2) 通过手机插上U盘/移动硬盘,将文件拷贝到电脑
3) 根据index.m3u8.play中的ts片段文件,生成一个总的ts文件.
可以使用C/OC/python等,读取index.m3u8.play文件,生成类似下面的shell语句,即可合并为一个ts文件.
windows:
copy /b “1.ts”+“2.ts”+…+”n.ts” /y “combine.ts”
mac:
cat 1.ts 2.ts > combine.ts
相关程序代码:
//读文件
NSString *fullFilePath = @"/xxx/index.m3u8.play";
NSFileHandle *handle = [NSFileHandle fileHandleForReadingAtPath:fullFilePath ];
NSData *data3 = [handle readDataToEndOfFile];
NSString *temp = [[NSString alloc]initWithData:data3 encoding:NSUTF8StringEncoding];
NSArray *tempArray = [temp componentsSeparatedByString:@"\n"];
NSMutableArray *fileMArray = [NSMutableArray array];
for (NSInteger index = 0 ; index < tempArray.count; index++) {
NSString *fileContentLine = tempArray[index];
if ([fileContentLine hasSuffix:@".ts"]) {
[fileMArray addObject:fileContentLine];
}
}
NSString *fileNames = [fileMArray componentsJoinedByString:@" "];
//写入文件
NSString *toPath = @"/yyy/combineTSFile.sh";
NSFileHandle *handle2 = [NSFileHandle fileHandleForWritingAtPath:toPath];
NSLog(@"%s [LINE:%d] fileNames=%@", __func__, __LINE__,fileNames);
NSData *data = [fileNames dataUsingEncoding:NSUTF8StringEncoding];
[handle2 writeData:data];
[handle2 synchronizeFile];
[handle2 closeFile];
4) 将ts文件转换为mp4文件
ffmpeg -i combine.ts -acodec copy -vcodec copy -bsf aac_adtstoasc output.mp4
合并ts文件的更多相关文章
- python爬虫:抓取下载视频文件,合并ts文件为完整视频
1.获取m3u8文件 2.代码 """@author :Eric-chen@contact :sygcrjgx@163.com@time :2019/6/16 15:32 ...
- python爬虫:抓取下载电影文件,合并ts文件为完整视频
目标网站:https://www.88ys.cc/vod-play-id-58547-src-1-num-1.html 反贪风暴4 对电影进行分析 我们发现,电影是按片段一点点加载出来的,我们分别抓取 ...
- 合并.ts文件 无需软件
cmd 命令直接输入: copy /b D:\temp\*.ts D:\new.ts D盘temp目录的ts文件 合并 并输出到 D盘 new.ts文件
- 如何合并ts文件?
答: 使用ffmpeg工具,使用方法如下: ffmpeg -i <m3u8 file name> <output file name> 注意:要先将m3u8文件中描述的ts文件 ...
- Linux 下使用 ffmpeg 大批量合并 ts 文件, mp4切割文件为m3u8
见范例 ffmpeg -i "concat:file001.ts|file002.ts|file003.ts|file004.ts......n.ts" -acodec copy ...
- python合并大量ts文件成mp4格式(ps:上限是450,亲测)
import os #exec_str = r'copy /b ts/c9645620628078.ts+ts/c9645620628079.ts ts/1.ts' #os.system(exec_s ...
- 网络视频m3u8解密及ts文件合并
网络视频m3u8解密及ts文件合并 参考了两篇博客: https://blog.csdn.net/weixin_41624645/article/details/95939510 https://bl ...
- 合并ts到mp4
这个比较好用. copy /b d:\xxx\download_ts\* d:\xxx\download_ts\new.mp4 用python ffmpeg也可以,不过我合出来有卡顿或者掉声问题, ...
- 加密的m3u8、ts文件合并
加密后的ts文件不能直接合并或播放,需要使用key对每个ts文件进行解密. 分为两种情况: (1).如果ts文件已经全部下载好,则可以直接在本地通过ffmpeg快速解密合并. (2).如果ts文件没有 ...
随机推荐
- numpy 中的axis轴问题
在numpy库中,axis轴的问题比较重要,不同的值会得到不同的结果,为了便于理解,特此将自己的理解进行梳理 为了梳理axis,借助于sum函数进行! a = np.arange(27).reshap ...
- thinkphp C函数的实现原理
在写一个php原生函数的时候,想起使用thinkphp的C函数读取数据库配置非常方便,于是看了看源码的实现,原理很简单,分享一下: 下面是common.php,实现了C函数: if(is_file(& ...
- Linux内核同步:RCU
linux内核 RCU机制详解 简介 RCU(Read-Copy Update)是数据同步的一种方式,在当前的Linux内核中发挥着重要的作用.RCU主要针对的数据对象是链表,目的是提高遍历读取数据的 ...
- FreeSWITCH在会议室中持续播放音频文件
最近遇到一个客户需求,希望在会议室建立起来后,自动播放一段指定的声音. 已知会议室命令,假设建立起一个会议室号码3000,很容易实现以下功能: 一.播放一个声音文件一次 conference 3000 ...
- stm8 io口重映射
STM8S003F3端口可以设置重映射,如pin16的PC6管脚,默认复用功能是SPI_MOSI功能,可以重映射为TIM1_CH1,也就是timer1的1通道.映射方式并不像STM32那样有个AFR寄 ...
- Objective-C如何使用对象集合学习系列之一
本章介绍如何通过 Foundation 框架使用 Objective-C 处理数组与字典.本章内容: ● 使用 NSArray 与 NSMutableArray 创建数组 ● 在数组中添加.删除与 ...
- Java 利用 poi 生成 Excel文件的通用例子
在用java 写数据库应用的时候, 通常会生成各种报表,而这些报表可能会被导出为各种格式的文件,比如Excel文档,pdf 文档等等. 今天先做了一个生成Excel 文档的例子,主要解决以下问题: 生 ...
- php实现ZIP压缩文件解压缩(转)
测试使用了两个办法都可以实现: 第一个:需要开启配置php_aip.dll <?php //需开启配置 php_zip.dll //phpinfo(); header("Content ...
- mysql存储过程批量向表插入数据
业务需要,往某个表中批量插入数据,使用存储过程插入 首先,要建立一张mysql表,表明为phone_number, 三个字段,id 自增,number 就是要插入的表格,is_used 表示十分已经使 ...
- Caffe搭建:常见问题解决办法和ubuntu使用中遇到问题(持续更新)
严正声明: 在linux下面使用命令行操作时,一定要懂得命令行的意思,然后再执行,要不然在不知道接下来会发生什么的情况下输入一通命令,linux很有可能崩掉. 因为在linux下面,使用sudo以及r ...