FFMPEG 将一个介绍视频连接到目录中的多个文件 - 全部为 mp4

FFMPEG 将一个介绍视频连接到目录中的多个文件 - 全部为 mp4

我正在尝试编写一个连接脚本(windows)以将 intro.mp4 视频添加到目录中的一百多个其他 mp4 视频中。

编解码器将保持相同的 mp4,介绍文件名将保持不变,但主视频名称将会改变,但都位于同一目录中。

我已经开始写 bash 脚本

#!/bin/bash
for file in *.mp4; do ffmpeg -i CONCAT COMMAND HERE; done

任何帮助将非常感激。

谢谢大家!

答案1

就像是:

ffmpeg -f concat -safe 0 -i filelist.txt -c copy output.mp4

的细节连接可以找到命令这里。输入需要是一个文件列表,否则会ffmpeg出现带有未知关键字的错误。

-safe 0如果文件路径是相对的,则不需要。

因此你的 bash 脚本看起来应该是这样的:

#! /bin/bash
set -eou pipefail
NAME="file"
NEW="new-"
for file in *.mp4; 
do
    touch input.txt
    echo $NAME 'intro.mp4' >> filelist.txt
    echo $NAME $file  >> filelist.txt
    ffmpeg -f concat -safe 0 -i filelist.txt -c copy $NEW$file;
    rm filelist.txt
done

看起来应该filelist.txt是这样的:

file intro.mp4
file nextvideo.mp4

相关内容