Changes between Version 9 and Version 10 of How to speed up / slow down a video
- Timestamp:
- Feb 10, 2015, 7:05:54 PM (12 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
How to speed up / slow down a video
v9 v10 1 1 = Speeding up/slowing down video = 2 2 3 You can change the speed of your video using [http://ffmpeg.org/ffmpeg.html#asetpts_002c-setpts setpts] video filter. The "old way" of creating timelapse or still frame was to first split up a video into individual frames, (for instance, as jpg's) then delete some and recombine the frames. Using the setpts filter is the new way and is faster and possibly less lossy :)3 You can change the speed of a video stream using the [http://ffmpeg.org/ffmpeg.html#asetpts_002c-setpts setpts] video filter. 4 4 5 To speed up your video, you can type:5 To double the speed of the video, you can use: 6 6 {{{ 7 7 ffmpeg -i input.mkv -filter:v "setpts=0.5*PTS" output.mkv 8 8 }}} 9 9 10 Note that this method will drop frames to achieve your desired speed. You can avoid dropping frames by specifying a higher "output frame rate" than the input, for example, to go from an input of 4 to one that is sped up to 4x that (16 fps): 10 The filter works by changing the presentation timestamp (PTS) of each video frame. For example, if there are two succesive frames shown at timestamps 1 and 2, and you want to speed up the video, those timestamps need to become 0.5 and 1, respectively. Thus, we have to multiply them by 0.5. 11 11 12 Note that this method will drop frames to achieve the desired speed. You can avoid dropped frames by specifying a higher output frame rate than the input. For example, to go from an input of 4 FPS to one that is sped up to 4x that (16 FPS): 12 13 {{{ 13 14 ffmpeg -i input.mkv -r 16 -filter:v "setpts=0.25*PTS" -an output.mkv 14 15 }}} 15 16 16 17 To slow down your video, you can type: 17 To slow down your video, you have to use a multiplier greater than 1: 18 18 {{{ 19 19 ffmpeg -i input.mkv -filter:v "setpts=2.0*PTS" output.mkv … … 22 22 == Speeding up/slowing down audio == 23 23 24 You can speed up or slow down *audio* with the atempo audio filter. To double the speed of audio: 25 24 You can speed up or slow down audio with the [http://ffmpeg.org/ffmpeg-all.html#atempo atempo] audio filter. To double the speed of audio: 26 25 {{{ 27 26 ffmpeg -i input.mkv -filter:a "atempo=2.0" -vn output.mkv … … 29 28 30 29 The atempo filter is limited to using values between 0.5 and 2.0 (so it can slow it down to no less than half the original speed, and speed up to no more than double the input). If you need to, you can get around this limitation by stringing multiple atempo filters together. The following with quadruple the audio speed: 31 32 30 {{{ 33 31 ffmpeg -i input.mkv -filter:a "atempo=2.0,atempo=2.0" -vn output.mkv … … 35 33 36 34 Using a complex filtergraph, you can speed up video and audio at the same time: 37 38 35 {{{ 39 36 ffmpeg -i input.mkv -filter_complex "[0:v]setpts=0.5*PTS[v];[0:a]atempo=2.0[a]" -map "[v]" -map "[a]" output.mkv
