Smooth Sliding Transition Between Multiple Videos Using xfade Filter
Syntax/Format of Command
ffmpeg \ -i video1.mp4 \ -i video2.mp4 \ -filter_complex xfade=transition=<FADE_TYPE>:\ duration=<TRANSITION_DURATION_IN_SECONDS>:\ offset=<OFFSET_RELATIVE_TO_FIRST_STREAM_IN_SECONDS> \ outputVideo.mp4
Explanation
Here video1.mp4
is the first video and video2.mp4
is the second video
And in place of duration
you can replace how much seconds
you need to put of transition
time
And in place of offset
you need to replace the offset
time in seconds
And then in place of fade_type
you can replace many effects that xfade
supports. They are listed are as follows
slice
filter :-> One such filter is circle transition
filter. The command will look something like this
hlslice Transition using FFmpeg
ffmpeg -i inputVideo1.mp4 -i inputVideo2.mp4 -filter_complex xfade=transition=hlslice:duration=5:offset=0 hlsliceVideo.mp4
hrslice transition command in FFMPEG
ffmpeg -i inputVideo1.mp4 -i inputVideo2.mp4 -filter_complex xfade=transition=hrslice:duration=5:offset=0 hrsliceVideo.mp4
vuslice transition command in FFMPEG
ffmpeg -i inputVideo1.mp4 -i inputVideo2.mp4 -filter_complex xfade=transition=vuslice:duration=5:offset=0 vusliceVideo.mp4
vdslice transition command in FFMPEG
ffmpeg -i inputVideo1.mp4 -i inputVideo2.mp4 -filter_complex xfade=transition=vdslice:duration=5:offset=0 vdsliceVideo.mp4