| Title: How to remove a part of a video using ffmpeg | |
| Author: Solène | |
| Date: 02 October 2019 | |
| Tags: ffmpeg | |
| Description: | |
| If you want to remove parts of a video, you have to cut it into pieces | |
| and then | |
| merge the pieces, so you can avoid parts you don't want. | |
| The command is not obvious at all (like in all ffmpeg uses), I found | |
| some parts | |
| on differents areas of the Internet. | |
| Split in parts, we want to keep from 00:00:00 to 00:30:00 and 00:35:00 | |
| to 00:45:00 | |
| ffmpeg -i source_file.mp4 -ss 00:00:00 -t 00:30:00 -acodec copy | |
| -vcodec copy part1.mp4 | |
| ffmpeg -i source_file.mp4 -ss 00:35:00 -t 00:10:00 -acodec copy | |
| -vcodec copy part2.mp4 | |
| The -ss parameter tells ffmpeg where to start the video and -t | |
| parameter tells | |
| it about the duration. | |
| Then, merge the files into one file: | |
| printf "file %s\n" part1.mp4 part2.mp4 > file_list.txt | |
| ffmpeg -f concat -i file_list.txt -c copy result.mp4 | |
| instead of printf you can write into file_list.txt the list of files | |
| like this: | |
| file /path/to/test1.mp4 | |
| file /path/to/test2.mp4 | |