首页 > 编程知识 正文

合并ts文件,腾讯视频缓存ts合并转换器

时间:2023-05-06 06:46:35 阅读:107355 作者:1529

PHP可以合并ts视频文件吗? 好像不可以。 用正则视频格式的想法进行合并是不行的。

然而,ts视频文件格式与MP4格式不同,由连续的帧数据构成,不像MP4那样包括视频头部的头结构。 由于ts以每帧构成视频块,因此也可以进行分割预览。

简而言之,一个ts文件就是一个可以单独播放视频片,多个ts文件连续播放,就构成了一段视频。

因此,php合并视频文件实际上是将每个ts文件的数据一一拼接成一个大的ts视频块。

原则上,在PHP中,可通过重复调整file_get_content和file_put_content(APPEND )来合并多个ts文件。

但是,调用file函数容易导致内存上升。 即使iset是无上限存储器,文件数量多的时候也很困难。

有其他合并方法吗? 有!

在Linux下直接cat即可,在Windows下有copy命令的话也可以合并。

Winddows整合理念:

1 )使用php脚本扫描目录中的所有ts文件

2 )然后,连接命令字符串,将file_put_content发送到bat文件,运行explorer文件管理器,打开此bat目录。

3 )双击bat运行中的批处理脚本,处理完成后合并为一个大ts文件。

为什么要用PHP呢? 因此,PHP文件仅通过读写函数的一行代码就能够增加。 用Java和C#编写多行代码以实现同样的功能。 new一些对象开始读,然后返回到while循环以成为EOF。 Oh My God!

以CLI格式运行以下脚本,根据您的实际情况修改传入参数。

? php/* * PHP集成ts文件* @version :原始alpha版* @ author https://blog.csdn.net/roadtotheexpert */function combine _ ts //打印合并的文件名$files=scandir($dir ); $cmd=' '; foreach($filesas$f ) if ) is_file ) ) dir.'"f ) ) if ) pathinfo ) $f,PATHINFO_EXTENSION )==} else $ }$cmd .=$f . '/b '; }}}$cmd .=' ' . $out_ts . '.ts '; //echo $cmd; $out_ts=$dir.'_'.$out_ts.'.bat '; echo $out_ts; file_put_contents($out_ts,$cmd ); //免责声明:程序仅供参考,千万不要作为不良行为使用哦! combine_ts (;

但是,可以使用copy /b *.ts out.ts直接进行。 只是,文件的排序和过滤可能会有一些麻烦。 部分网站上的ts片也不一定是ts后缀,也不一定是固定长度命名。 只要对代码稍加修改,就可以按顺序输出不等长命名的ts命名文件。

在for循环中插入mcrypt_decrypt函数也可以解密aes-128文件。 因此,一些ts格式可使用AES128加密,并且向量IV在m3u8内部,该向量能使用mcrypt_decrypt函数将其解码。 具体资料自己检索研究,在此不再赘述。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。