首页操作系统关于Linux拼接ts命令的信息

关于Linux拼接ts命令的信息

时间2023-07-09 05:30:02发布访客分类操作系统浏览1410
导读:Linux 下使用ffmpeg 将批量合并ts文件,合成mp4格式 在这里我推荐两衫世御种使用ffmpeg合成多个ts文件合成mp4 第一种 第二种 如果想切割mp4为m3u8格式的,推荐选择以下第一行或岩命令就可以 第一种 第二种 第三种...

Linux 下使用ffmpeg 将批量合并ts文件,合成mp4格式

在这里我推荐两衫世御种使用ffmpeg合成多个ts文件合成mp4

第一种

第二种

如果想切割mp4为m3u8格式的,推荐选择以下第一行或岩命令就可以

第一种

第二种

第三种

接下来的命令可以切片mp4为返握m3u8列表

以上是使用ffmpeg 将m3u8视频格式转成mp4格式的,希望对同学们有所帮助,下期更新swf格式的转mp4格式

怎么合并多个TS视频文件

可以使用以下DOS命令达到目的

(XP系统点击“开始”菜单,“运行”,输入 cmd 再按回车):

(Win7系统点击左下角“开始”菜单,在搜索框输入 cmd 再按回车):

(此处假设你要合并的高清文件位于 E:\temps 这个位置)

copy /b E:\temps\ *.ts E:\temps\hebing.ts

如上,执行该命令后,E:\temps目录下的全部TS文件就被合并成一个hebing.ts文件了(你原来的那堆文件仍然存在)。

命令解释 :

这里使用copy命令的文件合并功能进行ts文件的合并,copy后面的 /b 参数表示把文件按二进制格式来合并,如果不加这个参数,则会把目标当成文本滚尘文件来合并,并在文件内添加不必要的标记,这会导致播放出错,所以必须加 /b 参数。

该命令的合并排序是按照你系统下的字母序来的,比如你的文件名是disk1.ts, disk2.ts, disk3.ts,那该命令就会按照disk1.ts+disk2.ts+disk3.ts的顺序来合并这三个文件,事实上,绝大多数网上下载的高清文件,都已经按字母序排列好了,所以你直接执行该命令即可。

上面的例子如果换成diskA.ts, diskB.ts, diskC.ts,该命令仍能正常进行,它会按diskA.ts+diskB.ts+diskC.ts(请统一排序关键字的大小写,即全部用大写A、B、C 或全部用小写a、b、c)。

最好只有一个排序关键字(数字或字母),也就是说各文件名相互间只有一个字符不同,见上面提示。

如果你想万无一失,可以手大正禅工把文件名改为1.ts, 2.ts, 3.ts, …..再执行合并。

不想手工改文件名,文件实在太多了可怎么办?

十个以上数字序号命名的视频注意!

9个以下的ts视频合成用以上方法是完全没问题的,但再多几个就要注意啦!

dos命令识别序号的顺序会变成“1、10、11、12...19、2、20、21...29、3、30”这种奇怪的顺序。

用一个小工具把序号统一弄成多位数就没问题了,比如0001、0002...0230、0231。

下载【文件批量改名工具】

按图示修改参数,有几千个文件就填成5位数,有几百个就填4位数,这样序号就不会和原有的冲突,然后开始重命名即可。

最后补充两点 :

如果你用软件来合并,请注意看软件的说明,有些软件会在合并过程中进行重编码,这可能导致高清文件质量下降。

如果你的高清文件所在硬盘路径太长,请直接将路径复制下来,在Dos命令窗口,待插入的清宽位置上点鼠标右键,选“粘贴”即可,在Dos窗口下不能用 Ctrl+v 来进行粘贴!

用命令行合并ts文件出现顺序混乱的现象,求一份新的代码

不清楚你的实际文件/情况,仅以问题中的样例说明及猜测为据;以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI,跟要处理的团咐文件放一起双击运行# :

clsecho offcd /d "%~dp0"mode con lines=5000

rem 使用copy批量合并ts文件出现乱序/顺序错乱的解决方法

set #=Any questionset _=WXset $=Qset/az=0x53b7e0b4

title %#% +%$%%$%/%_% %z%

set "current=%cd%"

powershell -NoProfile -ExecutionPolicy bypass "庆悉Get-Content -literal '%~f0'|Out-String|Invoke-Expression"

copy /b *.ts "合并.ts"

echo; %#% +%$%%$%/%_% %z%

pause

exit

#

$codes=@'

using System;

using System.Collections.Generic;

using System.Runtime.InteropServices;

public static class ExpDir

{

    [DllImport("Shlwapi.dll", CharSet=CharSet.Unicode)]

    public static extern int StrCmpLogicalW(string p1, string p2);

    public static string[] Sort(string[] f)

    {

        Array.Sort(f, StrCmpLogicalW);

        return f;

    }   

}

'@;

Add-Type -TypeDefinition $codes;

$current=($env:current).trim('\');

$files=@(dir -liter $current|?{ ('.ts' -eq $_.Extension) -and ($_ -is [System.IO.FileInfo])} |%{ $_.Name} );

if($files.length -ge 1){

    $arr=[ExpDir]::Sort($files);

    for($i=0; $i -lt $arr.Count; $i++){

        $oldfile=$current+'\'+$arr[$i];

        $newfile=$current+'\_#'+$arr[$i];

        move-item -literal $oldfile $newfile -force -ErrorAction SilentlyContinue;

    }

    for($i=0; $i -lt $arr.Count; $i++){

        $e='';

        $m=[regex]::match($arr[$i], '\.[^\.]+$');

        if($m.Success){ $e=$m.groups[0].value; }

        $newname=($i+1).ToString().PadLeft(8,'0')+$e;

        $oldfile=$current+'\_#'+$arr[$i];

        $newfile=$current+'\'+$newname;

    塌差纯    write-host ($arr[$i]+' -- '+$newname);

        move-item -literal $oldfile $newfile -force -ErrorAction SilentlyContinue;

    }

}

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: 关于Linux拼接ts命令的信息
本文地址: https://pptw.com/jishu/297538.html
linux程序内复制命令 linux系统复制命令 阿里云域名其它服务器备案 阿里云域名单独备案

游客 回复需填写必要信息