ffmpeg: 흔들림 없이 부드러운 줌팬

ffmpeg: 흔들림 없이 부드러운 줌팬

이미지 중앙에 기본 5초 줌팬을 만들려고 합니다(예제의 경우).ffmpeg.org 웹사이트). 아래 명령은 작동하지만 커피를 5잔 마시고 나면 손이 더 많이 떨립니다.

ffmpeg -framerate 25 -loop 1 -i island.jpg -filter_complex "[0:v]scale=-2:480,zoompan=z='min(zoom+0.0015,1.5)':x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)':d=125,trim=duration=5[v]" -map "[v]" -y out.mp4

jpg 입력. mp4 출력.

나는 알고있다ffmpeg 버그 #4298. 게시된 제안 해결 방법은 scale이전에 필터를 사용하는 것입니다 zoompan. 그러나 내 예에서 볼 수 있듯이 이것은 여전히 ​​효과가 없는 것 같습니다.

임의의 x 또는 y 값으로 인해 흔들림/움직임/흔들림 효과가 발생하는 것 같습니다.

누구든지 효과적인 해결 방법을 제공할 수 있습니까? 감사해요!

버전 정보:

ffmpeg version 3.1.2-static http://johnvansickle.com/ffmpeg/  Copyright (c) 2000-2016 the FFmpeg developers
  built with gcc 5.4.0 (Debian 5.4.0-6) 20160609

답변1

피하다아래에미리 스케일링을 해보세요. x 및 y 표현식에 trunc 함수를 적용하십시오. 아니면 그 전에 고급화하세요. 후자가 바람직합니다. 이것은 나를 위해 대부분의 불안감을 제거합니다.

ffmpeg -framerate 25 -loop 1 -i island.jpg -filter_complex "[0:v]scale=8000x4000,zoompan=z='min(zoom+0.0015,1.5)':x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)':d=125,trim=duration=5[v]" -map "[v]" -y out.mp4

기본적으로 필터는 xy표현식의 값을 반올림하거나 반올림할 수 있습니다. 팬 방향의 변화로 인해 고르지 않은 움직임이 발생합니다. 미리 해상도를 높이면 반올림이 더 작아집니다.

관련 정보