首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将mp4合并成mp4批处理

将mp4合并成mp4批处理
EN

Ask Ubuntu用户
提问于 2019-01-22 14:24:12
回答 1查看 1.7K关注 0票数 1

嗨,对不起,如果这已经被问到了,但是我已经在另一个文件夹中得到了intro.mp4和超过1000个mp4,我需要的是使用ubuntu将intro.mp4添加到文件夹im中的每个mp4中,这样做最好的方法是什么。

所有的mp4都有相同的编码

代码语言:javascript
复制
ffmpeg -i intro.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts intermediate1.ts
ffmpeg -i 1.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts intermediate2.ts
ffmpeg -i "concat:intermediate1.ts|intermediate2.ts" -c copy output.mp4

这个命令一次一个字,这是我在批处理中的尝试,但是var不工作

代码语言:javascript
复制
for f in *.mp4; do ffmpeg -i "$f" -c copy -bsf:v h264_mp4toannexb -f mpegts "$f.ts"; done

这段代码工作正常

代码语言:javascript
复制
 for i in *.mp4;  
do
test="concat:intro.mp4.ts|"${i%.*}".mp4.ts";
ffmpeg -i  "$test" -c copy anime2/"${i%.mp4}.mp4"; done

让它使用这两个命令在一个脚本中完成整个批处理

代码语言:javascript
复制
 for f in *.mp4; do ffmpeg -i "$f" -c copy -bsf:v h264_mp4toannexb -f mpegts "$f.ts"; done


     for i in *.mp4;  
    do
    test="concat:intro.mp4.ts|"${i%.*}".mp4.ts";
    ffmpeg -i  "$test" -c copy anime2/"${i%.mp4}.mp4"; done

谢谢

EN

回答 1

Ask Ubuntu用户

发布于 2019-01-24 19:44:15

参数必须匹配,所以首先您必须符合介绍,以匹配其他视频(反之亦然)。

使用ffprobe查看差异:

代码语言:javascript
复制
ffprove -loglevel error -show_streams intro.mp4
ffprove -loglevel error -show_streams 1.mp4

重新编码intro.mp4以匹配1.mp4

代码语言:javascript
复制
ffmpeg -i intro.mp4 -filter_complex "[0:v]fps=500/21,scale=848:480:force_original_aspect_ratio=increase,crop=848:480,setsar=171/170[v]" -map "[v]" -map 0:a -c:v libx264 -profile:v main -c:a aac -ar 44100 intro_b.mp4

现在使用凹式破碎机。创建一个文本文件,列出要连接的输入:

代码语言:javascript
复制
file 'intro_b.mp4'
file '1.mp4'

然后连接:

代码语言:javascript
复制
ffmpeg -f concat -i input.txt -c copy output.mp4
票数 1
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1111975

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档