FFmpeg로 비디오의 프레임을 조정하는 방법은?
_____A1: `-vf scale=width:height` 옵션을 사용합니다. 예를 들어, 1920x1080 비디오를 1280x720으로 줄이려면:
```
ffmpeg -i input.mp4 -vf scale=1280:720 output.mp4
```
Q2: 비디오의 프레임 속도(frames per second)를 변경하고 싶을 때는?
A2: `-r` 옵션을 사용합니다. 예를 들어, 30fps 비디오를 60fps로 변경하려면:
```
ffmpeg -i input.mp4 -r 60 output.mp4
```
Q3: 프레임 단위로 특정 구간을 추출하려면 어떻게 해야 하나요?
A3: `-ss` (시작 시간)와 `-t` (지속 시간) 옵션을 조합하거나 `-frames:v` 옵션을 사용합니다. 예:
- 00:00:10부터 5초간 추출:
```
ffmpeg -ss 00:00:10 -i input.mp4 -t 5 -c copy output.mp4
```
- 첫 100 프레임만 추출:
```
ffmpeg -i input.mp4 -frames:v 100 output.mp4
```
Q4: 프레임별 이미지 파일로 추출하는 방법은?
A4: `-vf fps=FPS` 옵션과 출력 파일명을 지정합니다. 예: 초당 1 프레임씩 추출하여 PNG로 저장
```
ffmpeg -i input.mp4 -vf fps=1 img%04d.png
```
Q5: 프레임 크기만 변경하고 비디오 품질과 비트레이트를 유지하려면?
A5: 리사이징 후 코덱과 비트레이트를 동일하게 지정합니다. 예:
```
```
Q6: 프레임 간 간격을 일정하게 맞추면서 프레임 수를 변경하려면?
A6: `-filter:v "setpts=PTS*X"`를 사용하여 재생 속도를 조절할 수 있습니다. 예를 들어 2배 느리게 하여 프레임 간 간격을 늘림:
```
ffmpeg -i input.mp4 -filter:v "setpts=2.0*PTS" output.mp4
```
Q7: 영상 프레임 비율(aspect ratio)을 유지하면서 크기를 변경하는 방법은?
A7: `scale` 필터에 `-1`을 사용하여 한 축 비율을 자동 조정합니다. 예: 세로 크기를 720으로 유지하고 가로는 자동 계산
```
ffmpeg -i input.mp4 -vf scale=-1:720 output.mp4
```
Q8: 입력 비디오가 특정 프레임 크기를 지원하지 않는 경우 에러가 발생할 때는?
A8: 짝수 크기로 맞춰주는 필터 `scale=width:height:flags`를 사용하거나 `rectangular` 옵션을 활용하세요. 예:
```
ffmpeg -i input.mp4 -vf "scale=iw-mod(iw\,2):ih-mod(ih\,2)" output.mp4
```
Q9: 프레임 수를 고정하거나 최대 프레임 수로 제한하려면?
A9: `-frames:v` 옵션을 사용합니다. 예를 들어 최대 200 프레임만 인코딩:
```
ffmpeg -i input.mp4 -frames:v 200 output.mp4
```
Q10: 비디오의 프레임 속도를 시간 기반이 아닌 프레임 기반으로 변경하려면?
A10: `fps` 필터를 사용합니다. 예: 24fps로 정확히 맞추기
```
ffmpeg -i input.mp4 -vf fps=24 output.mp4
```
작성자:
이시현 [비회원]
| 작성일자: 1년 전
2024-09-10 19:04:48
조회수: 153 | 댓글: 0 | 좋아요: 0 | 싫어요: 0
조회수: 153 | 댓글: 0 | 좋아요: 0 | 싫어요: 0
내용이 부정확하다면 싫어요를 클릭해주세요.