On 06-02-2019 12:57 AM, Christian Johannesen wrote:
It's my understanding that the -t option can be used before or after the
input file. I've found that its more accurate with some input files if I
place the option after the input file. However, this impacts the ability to
use the concat video filter to combine multiple clips. When I set the -t
duration after the input last input clip does not appear in the output file
after using the concat video filter. If move the -t duration before the
input, the concat video filter outputs both clips.

Thanks,
Chris

-t before input:

ffmpeg -y -ss 86.086 -t 4.004 -i countdownclock_720p2398_21min.mp4 -ss
1257.256 -t 4.004 -i countdownclock_720p2398_21min.mp4 -filter_complex
"[0:v:0][1:v:0]concat=n=2:v=1:a=0[concat_v]" -map "[concat_v]" -pix_fmt
yuv420p t_after_input.mp4

-ss and -t when used as output options, take effect *after* filtering, so you're actually trimming the output from the concat filter.

Use the trim filters instead.

    ffmpeg -y  -i countdownclock_720p2398_21min.mp4 -filter_complex \
         "[0]split=2[v1][v2]; [v1]trim=st=86.086:d=4.004,setpts=PTS-STARTPTS[v1]; [v2]trim=st=1257.256:d=4.004,setpts=PTS-STARTPTS[v2]; \
           [v1][v2]concat=n=2:v=1:a=0,format=yuv420p" t_after_input.mp4

In this case, you can also use the select filter since you're working on one input.

    ffmpeg -y  -i countdownclock_720p2398_21min.mp4 -vf "select='between(t,86.086,86.086+4.004)+between(t,1257.256,1257.256+4.004)',setpts=PTS-STARTPTS ,format=yuv420p" t_after_input.mp4

Note that both these methods will be slower than input ss/t.

Gyan
_______________________________________________
ffmpeg-user mailing list
[email protected]
http://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[email protected] with subject "unsubscribe".

Reply via email to