|
|
发表于 2019-3-9 10:32:58
|
显示全部楼层
本帖最后由 jackz007 于 2019-3-9 10:39 编辑
可以借助 ffmpeg.exe 实现无损拼接。具体方法是,先把需要合并的所有 mp4 文件复制到一个单独的目录下,下载 ffmpeg.exe,并与待拼接的 mp4 文件存放在一起,然后编写一个脚本文件,代码如下:
- @Echo off
- Setlocal EnableDelayedExpansion
- If exist ffmpeg.exe goto Begin
- Echo.
- Echo.
- echo ffmpeg.exe not exist!
- echo.
- echo.
- Goto End
- :Begin
- For %%i in (*.mp4) Do (
- If Exist %%~ni.ts (
- Del/Q/F %%~ni.ts
- )
- )
- Set c=0
- For %%i in (*.mp4) Do (
- ffmpeg -y -i %%i -codec copy -bsf h264_mp4toannexb %%~ni.ts
- set/a c=!c!+1
- )
- echo.
- echo.
- echo Total of !c! file(s) have been converted.
- echo.
- echo.
- :End
- Pause
复制代码
将以上代码取名 mp4tots.cmd 保存到与 ffmpeg.exe 相同目录内,用鼠标双击该文件,即可将当前目录内所有的 mp4 文件自动转换为 ts 文件。
用 Copy /B 命令,按先后顺序将所有 ts 文件拼接到一起,这个文件已经可以播放了。如果你希望再转回 mp4 文件,也很简单,老规矩,还是利用 ffmpeg.exe,使用下面的命令即可:
- ffmpeg -y -i <ts_FileName> -c:v libx264 -c:a copy -bsf:a aac_adtstoasc <mp4_FileName>
复制代码
|
|