我有一个长长的视频,其中有不同的场景。我想使用ffmpeg 2.1.4从视频中提取并连接2个场景(这些场景不是从I帧开始的)。
为了争辩,说我要从01:00和02:00起5秒。
我可以做这个:
ffmpeg -ss 01:00 -i in.mkv -ss 02:00 -i in.mkv -filter_complex "
[0:v]select='lt(t,5)'[v0];
[0:a]aselect='lt(t,5)'[a0];
[v0][a0][1:v][1:a]concat=n=2:v=1:a=1
" -c:a libvorbis -t 10 out.mkv
那给了我我想要的电影,但是选择实际上迫使ffmpeg解码电影的其余部分。那么,我如何告诉它截断第一部电影而不是对其进行解码?
如果可能的话,我宁愿使用ffmpeg复杂过滤器进行此操作。我知道我只能-t
先对单独的电影进行重新编码,但是对于我来说,额外的编码步骤非常慢,并且此视频的质量也相当可观。
我似乎找不到能截断蒸汽长度的过滤器。是否存在与-t
或-ss
参数相对应的过滤器节点?