Month: January 2022

  • Trimming and fading out video/audio with ffmpeg

    I recently wanted to trim and fade out an MP4 file. I wasn’t inclined at the effort of putting it in a non-linear editor and was looking for a quick way to achieve this.

    I found that ffmpeg had the necessary functionality to do this. The command I used in the end was:

    ffmpeg -i in.mp4 -ss 00:00:00 -t 00:05:00 -vf "fade=t=out:st=297:d=3" -af "afade=t=out:st=297:d=3" out.mp4

    The commands are:

    • -i in.mp4 is the input file
    • -ss 00:00:00 is where the video should start from (set this to other than zero to trim the start)
    • -t 00:05:00 is the duration of the video, trimming any video after that
    • -vf "fade=t=out:st=297:d=3" is a video filter which fades out at 297 seconds (4:57) over a 3 second duration
    • -af "afade=t=out:st=297:d=3" is the corresponding audio filter which fades out at 297 seconds (4:57) over a 3 second duration
    • out.mp4 is the output file

    The video and audio filters have several more properties you can play with, such as if you want to fade to white using a log curve for the audio fade.

    You can also combine filter commands by separating them with a comma, if you want both a fade in and fade out, for example:

    -vf "fade=t=in:st=0:d=3,fade=t=out:st=297:d=3" -af "afade=t=out:st=0:d=3,afade=t=out:st=297:d=3"