有人知道在开始的20秒内将图像添加到视频的最快方法吗? 我已经尝试过了,但是FFMPEG似乎重新编码了整个视频,即使经过了20秒,这也花费了很长时间。
这是我的代码:
ffmpeg -i input.mp4 -i logo.png -filter_complex "overlay=5:5:enable='between(t,0,20)'" output.mp4
答案 0 :(得分:0)
使用更快的-preset
和stream copy(重新混合)音频,而不是重新编码:
SEXP awesomefun(SEXP x)
{
int nprot = 0;
if(MAYBE_SHARED(x)) {
PROTECT(x = duplicate(x)); nprot++;
}
/* do awesome things to x that modify it inline
protect other things as necessary but always increment nprot when you do,
decrement nprot if you ever unprotect */
if(nprot) UNPROTECT(nprot);
return x;
}
您可以对〜20段进行编码,使其符合与主输入相同的参数,然后在流复制模式下与concat demuxer串联。但是,这将很麻烦,因为对于大多数用户而言,一致性参数并不是一件容易的事,concat ffmpeg -i input.mp4 -i logo.png -filter_complex "overlay=5:5:enable='between(t,0,20)'" -preset fast -c:a copy output.mp4
指令不能保证在非内部输入的情况下仍能准确查找,并且无论如何您最终都可能遇到时间戳问题。
最快的方法是使用播放器覆盖徽标:
inpoint