동영상 자를 부분이 한개일 경우
예; 동영상의 10~ 30초 부분만 자를때
ffmpeg -ss 10 -i "동영상위치" -t 20 o.mp4
-ss는 동영상의 시작위치, -t는 시작위치로부터 자를 시간 입력. -t를 입력안하면 지정한 시작위치부터 동영상 끝까지 자름
동영상 자를 구간이 여러개일 경우 (여러 구간을 자르나 출력은 파일 한개로 할때)
예; 10~20.1초 + 5분 10초~ 5분 30초 + 6분 ~6분 10.5초일 경우
ffmpeg -i "동영상위치" \
-vf "select='between(t,10,20.1)+between(t,310,330)+between(t,360,370.5)', setpts=N/FRAME_RATE/TB" \
-af "aselect='between(t,10,20.1)+between(t,310,330)+between(t,360,370.5)', asetpts=N/SR/TB" \
o.mp4
만약 자를 구간이 더 많으면 계속 +between(t,시작구간(초),끝구간(초)) 붙여주면 됨.
위 두가지 방법에서 주의해야 할 점은 모두 초 단위를 입력받는다는 점임.
ffmpeg 특성상 "동영상위치"에 로컬 파일 경로를 입력해도 되고
웹 http나 rtmp, hls링크를 첨부해도 동영상 자르기가 된다는 것임. (알아서 동영상 추출, 저장까지 해줌).
단, 두번째 방법으로 온라인 동영상(통상 http url)을 자를땐 시간이 겁나게 오래걸릴수있으니 권장하진 않음.
그럴땐 로컬에 저장한 뒤에 자르거나하면 빠를수있음.
ffmpeg 다운로드
https://ffmpeg.org/download.html