Timestretch Audio and Video Using 'Rubberband' Filter
0
0
The following command will be a video that plays at half speed with audio that’s both slowed down and pitched down by an octave.
Note: To enable compilation of this filter, you need to configure FFmpeg with --enable-librubberband.
librubberband also support amazing time stretching capability (i.e.: slowdown the audio without changing the pitch). To achieve that, remove the pitch=0.5 or set it to 1.
Filter chain breakdown
Video Processing (aka [v]): setpts=2.0*PTS: multiplies the presentation timestamps by 2.0, effectively slowing the video to half speed.
Audio Processing (aka [a]): rubberband=tempo=0.5:pitch=0.5: tempo=0.5 slow down the audio to half speed and pitch=0.5 lower the pitch by one octave.
Video Explanation
00-15: The original video clip
15-30: Video slowdown using setpts=2.0*PTS and atempo=0.5
30-45: Video slowdown and rubberband=tempo=0.5
45-60: Video slowdown and rubberband=tempo=0.5:pitch=0.5
Refer to the ffmpeg documentation for more info about Rubberband filter.